Copyright: Copyright ® ... 1996 Oakley Data Services


Contents
TODSHelp Component

Copyright ©1996 Oakley Data Services
74774.1347@compuserve.com or cmessitt@cix.compulink.co.uk

Introduction

General Information

Distribution Requirements

Running the Demo

The TODSHelp Component

Installation Instructions

Methods, Properties and Events

The Legal Stuff

Licence, copyright and disclaimer

Ordering, Contact and Other Information

How to order the TODSHelp Component

16/32 bit versions

Upgrade Policy

Getting Support - PLEASE READ THIS

Frequently Asked Questions


General Information

Copyright ©1996 Oakley Data Services
74774.1347@compuserve.com or cmessitt@cix.compulink.co.uk

Welcome to the TODSHelp Popup Help Control component for 32-Bit Delphi.

Warning: Using an unlicensed version of this component in a program that is running outside the Delphi development environment will cause "Unlicensed" messages to be issued.

Using this component will allow you to add Popup Help to all your Delphi programs with the minimum of code. Your users will find your programs more professional in appearance and easier to use, and you will save time and effort because you won't need to put screenshots throughout your Help File to illustrate the very dialog box or window that the user was probably just looking at. In short it can help turn good software into great software and will help sell more of your products!

The style of Popup Help is very similar to that used by Microsoft in Windows 95's dialogs. However, using the TODSHelp component allows you to provide Popup style Help for any window, whereas the WS_EX_CONTEXTHELP style available in Windows 95 can only be used in windows that do not have minimize or maximize buttons.

User access to the Popup Help can be via the F1 key, a right mouse button " What's This? " type menu, or via the familiar "arrow+question mark" type mouse pointer that the user can click on any control.

Also, the TODSHelp component extends the functionality by allowing the specification of a Context Id that will lead to the correct section of your application's Help File. If you specify a Context Id then an additional "hot spot" appears on the Popup Help window with the words "Click here or Press F1 for more..." that can lead the user to a more in-depth discussion about the subject. The hot spot text can be changed for foreign language or other special requirements.

The TODSHelp component is very easy to use. It is a pure Delphi VCL which links into your application and does not require any additional files to be distributed with your application. All that is required is for you to add a TODSHelp component to the form you want to add Popup Help for (probably every form in every application you write!) and then set the properties and Help Text that you want for the other controls via the Custom Property Editor. One line of code is then enough to activate Popup Help in response to presumably a speedbutton, one line will supply F1 style Popup Help, and one more line can enable Right Mouse Button " What's This? " style Popup Help.

For a complete understanding of what is possible, and how to implement it, play with the supplied demo application and look at the supplied source code for it.


Distribution Requirements

Copyright ©1996 Oakley Data Services
74774.1347@compuserve.com or cmessitt@cix.compulink.co.uk

The evaluation version of this component may be freely distributed in any way, electronically via BBS's, the Internet and On-Line Services, via Disk Vendors or attached to books, magazines and the like.

The evaluation version is defined as a version that does not contain a licensed copy of the ODSHELPR.DCU file, and therefore issues "unlicensed" messages if linked and distributed with a program that executes independently of the Delphi development environment.

No one may distribute a licensed version of this component.

If you intend to bundle this component with a book, magazine or similar you can make sure you have the latest version by visiting our Internet site at http://www.smartcode.com or by FTP'ing the file ODSHPU.ZIP from ftp://ftp.smartcode.com or by downloading it from UKSHARE library 4 on CompuServe, again filename ODSHPU.ZIP.


Running the Demo

Copyright ©1996 Oakley Data Services
74774.1347@compuserve.com or cmessitt@cix.compulink.co.uk

We have supplied a demo application, called ODSHDEMO.EXE, which you can play around with to get a quick idea of the capabilities of the component.

Notice that we have built the demo using an unlicensed copy of the component, so the demo will issue "unlicensed" messages unless you also have Delphi running at the same time.

We have also supplied the source for the application, so you can see how various things have been implemented. To load the source into your Delphi environment after you have installed the component you need to open the ODSHDEMO.DPR file.


Installation Instructions

Copyright ©1996 Oakley Data Services
74774.1347@compuserve.com or cmessitt@cix.compulink.co.uk

Installing the TODSHelp Component

You might like to print this page out if you are unsure about adding components to Delphi.

Before you can use the TODSHelp component you have to install it into your Delphi Component Library. To do so follow these steps:-

•	Back up (take a copy of) COMPLB32.DCL which will be in your DELPHI\BIN directory. This is a sensible precaution in case something goes wrong during the process of adding the component and the file becomes corrupted. This rarely happens, but a corrupt COMPLB32.DCL file can prevent Delphi from even starting. If that should happen restoring the original will save you having to re-install it from the Delphi distribution CD and then having to re-install any other components you may have added.

•	Copy the files ODSHELPP.DCU; ODSHELPR.DCU; ODSHELPE.DCU; ODSHELPP.DFM; ODSHELPE.DFM; ODSHELPP.DCR; ODSHELPC.RES; ODSHELPP.HLP and ODSHELPP.KWF to the directory you want to keep your components in.

•	Start DELPHI.

•	Choose Install Components... from the Options menu.

•	Choose Add to open the Add Module dialog box.

•	In the Add Module dialog box, choose Browse.

•	Select the directory that contains the files you copied, and then select the ODSHELPP.DCU file.

•	Choose OK to close the browse dialog box.

•	Choose OK to close the Add Module dialog box.

•	Choose OK to close the Install Components dialog box and rebuild the component library.

The ODSHelp component will appear on a new "ODSControls" page at the end of the current palette (you may need to use the tiny arrows to scroll right to see it). You can move the control to a different page of the palette and delete the ODSControls page if you want to after installation, by using Delphi's Components/Configure Palette menu.

Integrating the TODSHelp component Help File with Delphi

Delphi allows you to integrate a components help file into the Delphi environment. To integrate the TODSHelp help file, follow these steps:

•	Start the Help File Installer from the Delphi group (file HELPINST.EXE). It is in the Tools directory.

•	Choose Open... from the File menu.

•	Select the Delphi directory, select the BIN directory, and then select the DELPHI.HDX file.

•	Choose Add Keyword File... from the Keywords menu.

•	Select the directory that contains the files you previously copied, and then select the ODSHELPP.KWF file

•	Choose Save from the File menu.

The Help File for the TODSHelp component should now be integrated with Delphi's, and pressing F1 while a TODSHelp component is selected in the form designer, or pressing F1 when modifying the properties of a TODSHelp component, should access the relevant Help pages from the ODSHELPP.HLP file.


Methods Properties and Events
Methods, Properties and Events

Copyright ©1996 Oakley Data Services
74774.1347@compuserve.com or cmessitt@cix.compulink.co.uk

TODSHelp Component

The TODSHelp component is a non-visual component that allows you to add Context Sensitive Popup Help to your application. To use the component simply add a TODSHelp component to each form that requires Popup Help and modify the properties as required to specify the Help Text for each control, font, color etc. Then when the user requests Popup Help, call the appropriate method.

Properties

In addition to standard component properties, the TODSHelp component adds the following properties:-

About

HelpText

MaxWidth

MoreText

Methods

To initiate Popup Help via the mouse, call the

MouseHelp Method

To initiate Popup Help for the control that currently has the focus, call the

FocusHelp Method

or to invoke Popup Help for a named control, call the

ControlHelp Method.

Events

OnHelpDone Event

More Information

For more information see the

Help File Contents


About
About Property

Copyright ©1996 Oakley Data Services
74774.1347@compuserve.com or cmessitt@cix.compulink.co.uk

The About property is a "dummy" property that when editted (double-click on it) gives you the version number of the TODSHelp component that you have installed.

If the TODSHelp component you have installed is fully licenced it will also show your Support Id and support telephone number.

If you need support, refer to the

Getting Support

topic.


Getting Support

Copyright ©1996 Oakley Data Services
74774.1347@compuserve.com or cmessitt@cix.compulink.co.uk

Please don't call the ordering number!

Order-taking and shipment are subcontracted to and undertaken by a completely different company, and they don't have any in-depth technical knowledge about Delphi Components.

If you need support:-

Before you reach for the phone or compose an E-Mail or send a fax, please make sure you have looked through this Help File first. If you have a question that this Help File doesn't answer, or are reporting what appears to be a bug then we will be pleased to hear from you. But if it is a question that is answered in this Help file then all we will do is point you to the relevant section, and you will just get an answer a little bit slower. This is not meant to be awkward, but we try to keep our costs down to allow us to produce this high quality software at value-for-money prices, and answering support calls is an expensive undertaking. After all, some of the major software companies either charge for support or provide it on premium-price phone numbers. We don't want to have to do that.

Please be aware that we can't teach you how to program, or debug your code.

OK, so the answer is not in the Help File or you've found a bug. What now-

If you have a licensed copy

By Phone

If you double-click on the About property of a TODSHelp component in the Object Inspector you will get details of your Support Id and the support telephone number. You can call that number (be ready to give your support ID) but please remember we are located in the U.K. so if it is 10 a.m. where you are it may be the middle of the night in the U.K. and nobody is going to be here to answer! Our normal office hours are 9.00 a.m. to 5.00 p.m. U.K. time. Also, please don't call off-hours and just leave a message (or a fax) asking us to call you back - so many people have abused that in the past that we simply don't any more.

By E-Mail

Alternatively you can E-Mail your queries direct to us on 74774.1347@compuserve.com, but please quote your Support Id at the top of the message so it can be separated out and passed on to the correct person immediately. We try to respond to E-Mail queries from licensed users by return. This is probably the better choice if you are E-Mail capable as we can be sure the right person is available to give you the best answer and if needs be send you a fix.

Other mechanisms

You can also use any of the mechanisms described below for users of unlicensed copies.

If you have an unlicensed copy

On-Line

This is the quickest way to get support. We have support forums on a variety of On-Line Services and we monitor them daily, or your question might be answered even quicker by a fellow user. Even if you aren't directly connected to one of these on-line services then you may be able to access them (for example the Internet Newsgroups) from a service you are connected to. We offer support on the following services:-

Compuserve

GO UKSHARE and ask in section 4, Oakley Data (this is our own support forum), or you can GO DELPHI and ask in section 22 - Third Party Products if you don't want to join another forum. If you use the DELPHI forum please include the word TODSHelp in the message header or we probably won't spot it.

CIX

Join the oakley conference and ask in the odshelp topic.

Internet

Ask in the comp.lang.pascal.delphi.components newsgroup. Include the text TODSHelp in the message header and we will spot it.

By Mail

You can write to us at:-

Oakley Data Services,
TODSHelp Support,
3, Oakley Close,
Sandbach,
CW11 9RQ,
United Kingdom.

By Fax

You can fax us at +44 (0)1270 765272. We batch the faxes up and answer them once a week or so, although if you are a licensed user, include your Support-Id and if we spot it we will try to answer quicker.

By E-Mail

You can E-Mail us on 74774.1347@compuserve.com - queries are batched up and answered once a week. We often update the FAQ if lots of people ask similar questions, and then send you that, but if you do have a unique query we will respond individually.


HelpText
HelpText Property

Copyright ©1996 Oakley Data Services
74774.1347@compuserve.com or cmessitt@cix.compulink.co.uk

The HelpText Property defines the text that each of the other controls on the form will use for their Popup Help Text, and the Context Id (if any) in the application's Help File that will be called if the user requests additional Help.

This property is modified via a custom Property Editor that displays the names of each of the other controls on the form. As you select each control in the top list-box you can type the text and context-id in the two controls at the bottom of the page. Note the following points:-

•	When the Property Editor is activated it builds a list of any controls on the form, ready for you to specify the text you require. Text and Context-Ids entered previously for a control are maintained. If you delete a control the associated text and Context-Id are scrapped. If you rename a control then you will lose any text and Context-Id's you previously specified for it.

•	The limit for the length of text is approximately 32K.

•	You can use carriage returns to space text. You can also use extended characters to build "bullet-lists" for example.

•	If you don't specify a Context-Id (you leave it at 0) then the Context-Id specified for the actual control will be used, unless that is also 0.

•	To save retyping if multiple controls require the same text and Context-Id you can reference one control from another. For example, if you had two labels, Label1 and Label2, and they both needed the same Text and Context Id, you could add the Text and Context-Id to Label1, and then for Label2 you should specify the text as ->Label1 and they will share the text and Context-Id. (That is a dash - followed by a greater than sign >). Beware that the names of the controls are case-sensitive, and that if you form a loop doing this, once control referencing a second which refers back to the first, that is exactly what your program will do - loop!


MaxWidth
MaxWidth Property

Copyright ©1996 Oakley Data Services
74774.1347@compuserve.com or cmessitt@cix.compulink.co.uk

The MaxWidth property specifies the maximum width the Help Popup will stretch to before it starts wrapping text across multiple lines. The default is 300 pixels.


MoreText
MoreText Property

Copyright ©1996 Oakley Data Services
74774.1347@compuserve.com or cmessitt@cix.compulink.co.uk

The MoreText property specifies the text that will be added to the bottom right of the Help Popup to signal the user that there is additional information in the Help File that can be accessed by clicking on this text or by pressing the F1 Key.

The default is "Click here or press F1 for more..." but you can change it as required, perhaps to support a foreign language.


MouseHelp Method

Copyright ©1996 Oakley Data Services
74774.1347@compuserve.com or cmessitt@cix.compulink.co.uk

Executing the MouseHelp method causes the cursor to change to a mouse/question mark combination. The user can then click on any of the controls on the form and if Popup Help is assigned it will appear.

In certain circumstances the user can also click on another form and still get Popup Help. This has been enabled to allow easy support for MDI children.

Note that Popup Help is available wherever a standard Borland "Hint" would be available in the same circumstances. Hints are sometimes not available on disabled controls - which was apparently a design decision which we don't actually understand - you very often want to know why a control is disabled!

Example

The following code is all that is required to initiate mouse activated Popup Help. It assumes the TODSHelp control is named ODSHelp1 and that it is in response to a click on a SpeedButton

procedure TForm1.SpeedButtonClick(Sender: TObject);
begin
ODSHelp1.MouseHelp;
end;


FocusHelp Method

Copyright ©1996 Oakley Data Services
74774.1347@compuserve.com or cmessitt@cix.compulink.co.uk

Executing the FocusHelp method causes the currently active control on the form to pop up it's Popup Help (assuming a control actually has the focus and some Popup Help text has been specified for it).

Example

The following code is all that is required to initiate Popup Help for the active control. It assumes the TODSHelp control is named ODSHelp1 and that it is in response to a press of the F1 key. (Note you need to set KeyPreview to True for the form).

procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
if Key = VK_F1 then ODSHelp1.FocusHelp;
end;


ControlHelp Method.

Copyright ©1996 Oakley Data Services
74774.1347@compuserve.com or cmessitt@cix.compulink.co.uk

Executing the ControlHelp method and passing as parameter another control on the form causes the passed control it's Popup Help (assuming some Popup Help text has been specified for it).

Example

The following code is all that is required to initiate Popup Help for a specific control. It assumes the TODSHelp control is named ODSHelp1. The call to the ControlHelp method is inside a response method for an event caused by a click on a Popup Menu with the text " What's This? ". Note the parameter being passed is the Popup Menu's PopupComponent property, which contains a reference to the Component that last "popped up" the Popup Menu. In this way you can assign the same popup menu with a " What's This? " item to all controls and use a single method to implement the Popup Help. For more information see the source for the demo.

procedure TForm1.WhatsThis1Click(Sender: TObject);
begin
ODSHelp1.ControlHelp(PopupMenu1.PopupComponent);
end;


OnHelpDone Event

Copyright ©1996 Oakley Data Services
74774.1347@compuserve.com or cmessitt@cix.compulink.co.uk

The OnHelpDone event is executed when Popup Helpfor a control terminates. This can either be when the user clears the Help Popup from the screen, or if there is no Popup assigned for the control that a user has clicked on, or for a specific control when using the FocusHelp or ControlHelp method calls.

The usual use of this event is to raise a depressed "Help" speedbutton, as in the example below.

procedure TForm1.ODSHelp1HelpDone(Sender: TObject);
begin
SpeedButton.Down := False;
end;


Licence copyright and disclaimer
Licence, copyright and disclaimer

Copyright ©1996 Oakley Data Services
74774.1347@compuserve.com or cmessitt@cix.compulink.co.uk

Agreement

The use of this component indicates your understanding and acceptance of the following terms and conditions. This license shall supersede any verbal or written statement or agreement to the contrary. If you do not understand or accept these terms you must cease using this product immediately.

Copyright

This product is © Copyright 1996 by Oakley Data Services. This product is protected by United Kingdom copyright law and various international treaties. This software product and documentation may not, in whole or in part, be copied, photocopied, translated, or reduced to any electronic medium or machine readable form, without prior consent in writing from Oakley Data Services.

Disclaimer

This product and/or license is provided as is, without any representation or warranty of any kind, either express or implied, including without limitation any representations or endorsements regarding the use of, the results of, or performance of the product, its appropriateness, accuracy, reliability, or correctness. The entire risk as to the use of this product is assumed by the user and/or licensee. Oakley Data Services do not assume liability for the use of this product beyond the original purchase price of the software. In no event will Oakley Data Services be liable for additional direct or indirect damages including any loss of profits or other incidental or consequential damages arising from any defects, or the use or inability to use the software, even if Oakley Data Services have been advised of the possibility of such damages.

Restrictions

You may not use, copy, modify, translate, or transfer the software, documentation, or any copy except as expressly defined in this agreement. You may not attempt to unlock or bypass any licensing algorithm utilized by the program. You may not remove or modify any copyright notices.

The evaluation version of this product may be freely distributed. The licence enabling file which disables the reminder screen when this product is used outside of the Delphi development environment, and that you receive when purchasing a full licence to the product may not be distributed by anyone without the prior written authorization of Oakley Data Services.

Licence for usage during program development

You have the non-exclusive right to use the Delphi component only by a single person, on a single computer at a time. You may physically transfer the component from one computer to another, provided that the component is only installed on a single computer at a time. In group projects where multiple persons will use the component, you must purchase an individual license for each member of the group. Network deployment is only permitted if you have purchased licences sufficient to cover the number of copies concurrently in use or included on the component pallete of concurrently open copies of Delphi.

Licence for distribution when linked with other code

You may not use this component as part of another component that you distribute if any function of that component is to provide a developer with means to provide Help or Documentation to the end-user, without our prior written approval. You can of course ship completed applications which include this component in order to provide help documentation for the end-user.

In order to link and distribute compiled TODSHelp component code in accordance with this license, you must be registered with Oakley Data Services as an authorized licensee. By registering you agree to be bound by the terms and conditions of this licence. You may not reproduce or distribute copies of the complete package, any of the source, interface, or code (.DCU) units, any of the documentation, nor may you supply any means by which your users could create, modify, or incorporate the TODSHelp component in their own products. Violations will be prosecuted to the maximum extent possible under the law. The licence enabling file supplied when registering can identify the original licensee of the component.

Back-Up Copies

You may make one copy of the software solely for "back-up" purposes. The backup copy must include any copyright notices contained in the original.

Licence Transfer

You may transfer the product to another party only if the other party agrees to all the terms and conditions of this agreement. You must advise Oakley Data Services of any licence transfer to avoid the risk of a distributed copy of a program appearing to contain an unlicensed copy of the TODSHelp component. If you transfer the program you must at the same time transfer any documentation and the back-up copy, or transfer any documentation and destroy the back-up copy. You may not retain any portion of the program, in any form, under any circumstance.

Terms

This license is effective until terminated. You may terminate it by destroying the software, the documentation and copies thereof. This license will also terminate if you fail to comply with any terms or conditions of this agreement. You agree upon such termination to destroy all copies of the program and of the documentation, or return them to Oakley Data Services.

Other Rights

All other rights not specifically granted in this licence are reserved by Oakley Data Services.


How to order the TODSHelp Component
How to order the TODSHelp 32Bit  Component

Copyright ©1996 Oakley Data Services
74774.1347@compuserve.com or cmessitt@cix.compulink.co.uk
Order Phone:- +44 (0)1270 759739
Order Fax:- +44 (0)1270 765272
Order Address:-
Oakley Data Services, 3, Oakley Close,
Sandbach, CW11 9RQ, United Kingdom.

To Order

You can order the TODSHelp component by E-Mail, regular mail, CompuServe SWREG service, phone or Fax. If you want to order multiple copies, or site or corporate licences for the use of this component then please contact us for a quote.

Ordering Via SWREG

You can order this component via CompuServe's SWREG service. The Id for this 32 bit version of the component is #10567. We will ship within 24 hours or so of receiving the order notification from CompuServe (weekends excepted). The price via this mechanism is 59.95 US Dollars. The id of the 16bit version of this component is #9301. The Id to order both the 16 and 32 bit versions together at the price of 89.95 US Dollars is #10568 . If you want one version of the component but you already own the other (i.e. you have the 16bit and want the 32bit or vice-versa) then don't just straight order the one you want - it will cost you more than you need to pay - please contact us for advice.

Ordering By Credit Card

You can order this component by Credit Card by Phone, Fax, Mail or E-Mail. We accept Visa/MasterCard and American Express. The price via this mechanism for the 32bit version alone is 39.95 Pounds UK Sterling, including any applicable taxes, which will be debited from your card account by your bank in your local currency (at January 1996 the exchange rate was around 1.56 US Dollars to 1 Pound Sterling). The price for the 16 and 32bit versions together is 59.95 Pounds UK Sterling. We will require the following details:-

•	Credit Card Number.

•	Cardholder Name.

•	Address the Credit Card is registered at.

•	Card Expiry Date.

We will ship as soon as we have an authorization from the Credit Card company, usually within 24 hours or so.

Please make clear whether you want the 16 bit, 32 bit or both versions of the component!

By E-Mail

To 74774.1347@compuserve.com.

By Phone

On +44 (0)1270 759739. Please don't use this number for support queries - the staff there have no technical knowledge of Delphi Components. If you need support please see the

Getting Support

topic. Be ready to supply your E-Mail address if you want the product shipped via E-Mail (see "What we ship you" below).

By Fax

On +44 (0)1270 765272. Remember to give us your E-Mail address if you want the product shipped via E-Mail (see "What we ship you" below).

By Mail

To:-

Oakley Data Services,
3, Oakley Close,
Sandbach,
Cheshire CW11 9RQ,
United Kingdom.

Ordering by Cheque

You can also order by cheque to the address given above. Note that we can only accept cheques drawn in Sterling and payable in the UK. The price is again 39.95 Sterling for just the 32bit component, or 59.95 Sterling for both the 16 and 32bit versions. Don't forget to give us an E-Mail address if you want the product shipped that way.

What We Ship You

When you register via any mechanism and provide us with an E-Mail address we will send you via E-Mail (CompuServe or UUENCODED via the Internet, whichever is appropriate) a replacement for the ODSHELPR.DCU file which you should use to replace the same-named file that comes with the evaluation version, and you should then rebuild your component library. The file will be sent in a small ZIP file (around 2K). This file is unique to you and may not be redistributed.

For more explanation of the use of this ODSHELPR.DCU file please see the section

Upgrade Policy

If you don't supply us with an E-Mail address, or you desperately want a disk as well as E-Mail, we will ship the product on disk via normal mail (first class Air-Mail if outside the UK) but we must unfortunately charge an additional 2.00 Sterling to cover the disk, postage and handling costs.

Other Things

What about source?

Sorry, but we don't offer the source for this component, even if it means we lose a sale.

What about COD, or Purchase Orders?

Sorry, we don't do COD. And we never ship product outside the UK without first receiving the funds. Purchase Orders within the UK are acceptable from major companies (i.e. ones we are likely to have heard of), but it will be slightly slower. Corporate Credit Card or registering via CompuServe SWREG is much easier!


Upgrade Policy

Copyright ©1996 Oakley Data Services
74774.1347@compuserve.com or cmessitt@cix.compulink.co.uk

Free Interim Upgrades

The majority of the code for the licensed and evaluation versions of this component are identical. It is the presence of a replacement for the ODSHELPR.DCU file that is supplied with the licensed version that causes the component to behave in a licensed fashion and prevents the issuing of the "not paid for" message when an application containing an evaluation version runs outside of the Delphi environment . The presence of the licensed ODSHELPR.DCU file will also cause any further versions of the TODSHelp component that still bear the 1.xx release number to behave as licensed versions, wherever you obtain them from. Versions that bear the 1.xx release number will generally be for minor enhancements and bug-fixes. Any release containing major new functionality will bear the release number 2.xx, and an upgrade fee will probably be chargeable.

We will make new versions of the TODSHelp component available via the usual sources, online on services such as CompuServe,CIX and the Internet and via disk vendors, cover disks and CD's.

The prime locations for new releases are our support section on CompuServe, section 4 of the UKSHARE forum and our Internet site at www.smartcode.com.

If you do acquire a newer version of TODSHelp component simply replace the ODSHELPR.DCU file in the new version with the one received when you purchased your licensed copy and recompile your program.


1632 bit versions
16/32 bit versions

Copyright ©1996 Oakley Data Services
74774.1347@compuserve.com or cmessitt@cix.compulink.co.uk

This is the 32bit Delphi/2 version of this component

We will not drop support for the 16 bit version at this time - we would expect users may need to develop both 16 and 32 bit versions of Delphi applications for some time to come and may therefore need to use both versions of the component.

The price for the 32 bit version is the same as the 16 bit version, but users who require both components will be able to purchase them together for 1.5 times the price of an individual component. Users who already own one of the components will be able to purchase the other at half the single component price direct from Oakley Data Services.


Frequently Asked Questions

Copyright ©1996 Oakley Data Services
74774.1347@compuserve.com or cmessitt@cix.compulink.co.uk

How do I find out what version I am using?

Double-Click on the "About" property of the Component. (This information doesn't get compiled in to your program).

I'm not getting Help for a disabled control.

TODSHelp uses some of the same code employed by the normal Borland "Hints" and these exhibit the same behaviour. The behaviour seems inconsistent to us, with disabled controls sometimes giving hints and sometimes not, seemingly depending on whether they are hosted by a parent control or not. According to Borland in the UK this is "by design" but we hope they change it to make it more consistent in the future - it's sometimes nice to know why a control is disabled.

If you aren't getting Popup Help where you think you should see if you also don't get a normal hint. If not, there isn't much we can do.

I've specified a Context-Id of 0 in the Property Editor, but I'm still getting "Click Here or press F1 for More...".

The HelpContext Property of the control itself is non-zero, and TODSHelp is using that.

Will I need a control like this when I move to Win95 and Delphi/2

We think so - the new Window Style WS_EX_CONTEXTHELP is only supported for windows that don't have minimize and maximize buttons in Win95. And we think this is easier and more flexible to use anyway.