home *** CD-ROM | disk | FTP | other *** search
- TdfsToolBar v1.13
-
-
- Description:
- A descendant of the TToolBar component (D3, C3, & D4) that adds a
- "maximize - restore" button. This mimics the behavior of the toolbar in
- Netscape Communicator. Clicking the button makes the toolbar small, hiding
- its controls. Clicking again returns it to normal.
-
-
- Contact Information:
- The lateset version will always be available on the web at:
- http://www.delphifreestuff.com
- If you have any questions, comments or suggestions, please use the Delphi
- Free Stuff Support Forum at:
- http://www.delphifreestuff.com/discus/
- If, for some reason, you can not use the web-based support forum, you can
- email me at bstowers@delphifreestuff.com. However, the support forum will
- always take precedence over direct email since it provides a resource that
- others can use when they have a problem. Every message posted to the forum
- is emailed directly to this account, so emailing me directly will not get
- your message to me any faster. It will only make the message less important
- for me to respond to since only one person (you) is benefiting from it
- instead of everyone interested. Having said all that, please do email me
- directly if it is regarding something that isn't really support related,
- i.e. just to say thanks (as novel as that idea is).
-
-
- Installation:
- Delphi 1, Delphi 2, C++Builder 1:
- * This component is not compatible with Delphi 1, 2, or C++Builder 1.
-
- Delphi 3 and up, C++Builder 3 and up:
- * Do one of the following:
- + Create a new package by selecting File | New and choosing Package from
- the New tab in the dialog.
- + Open an existing package file. I suggest you do this if you already
- have a package that you like to use for small, third party components.
- I specifically have a package named "3rdParty.dpk" that I use for
- small components that come from other people. Or, if you are using
- several of my components, you might create a "DFS.dpk" package and
- use it for all of my DFS components.
- * In the resulting package window, click the Add button.
- * In the Add dialog, on the Add Unit tab, enter the full path name of the
- component's registration unit (the unit that ends with 'Reg.pas', i.e.
- 'BrowseDrReg.pas') and click OK.
- * You may want to add the other source files (*.pas) to the package as
- well in the same manner as you did the registration unit. While this is
- not required, not doing it will cause compiler warnings when the package
- is compiled. The component will function fine either way, but I
- personally find the warnings very irritating and am not happy until
- every compiler warning and hint is gone.
- * If this package is new, or it has never been installed, click the
- Install button in the package window. If this package is already
- installed in Delphi, click the Compile button.
-
- C++Builder 5 and up:
- * Perform the "Delphi 3 and up, C++Builder 3 and up" steps above, except
- for the last step (Compile or Install).
- * Select the package the component has been added to, and choose
- Project | Edit Option Source to open the package options in the editor.
- * In the entry for PFLAGS, add the "-LUvcl50" option. For example:
- <PFLAGS value="-$YD -$W -$O -v -JPHNE -M -LUvcl50"/>
- * Perform the final step from above, Compile or Install.
- * For Borland's official word on this situation, open the C++Builder help
- file and search the index for "dsgnintf.dcu" and see the "Compiling
- packages with DsgnIntf" section.
-
- Delphi 6 and up:
- * Perform the "Delphi 3, 4, 5, C++Builder 3 & 4" steps above, except
- for the last step (Compile or Install).
- * Add the DesignIDE package to the Requires list of the package into which
- the component is being installed.
- * Perform the final step from above, Compile or Install.
- * This is necessary because of changes to the design-time support units
- introduced in Delphi 6. For complete information, see the Del6New.hlp
- file in your Delphi 6 Help directory. In the index, search for
- "upgrade issues" and in the resulting list of topics, select the
- "DsgnIntf renamed and related changes" topic.
-
-
- Notes:
- * If you like this Netscape style enhancement, you may also be interested in
- the TdfsSplitter component on my web site.
- * Version 2.0 (whenever that happens) will have the ability to collapse
- multiple toolbars into a single tab line like Netscape. At this point,
- I just want the single toolbar to work. Supporting multiples in a single
- line is going to be very complex internally, so I am putting it off until
- I'm satisfied with it as it is now.
-
-
- Known Issues:
- * If the toolbar is placed on a TControlBar, you will have to set the
- TControlBar's RowSnap property to FALSE. If you don't the TControlBar
- will come behind me and reset the toolbar's height (that's what RowSnap
- does) when it is being minimized, resulting in a really big tab button.
- * The toolbar does not like being drag-n-drop style (DragKind = dkDock).
- It gets really ugly. Don't do this unless *you* want to try to make it
- work. This applies to Delphi 4 only since there's no such thing in D3.
- * There were some problems with setting AutoSize to TRUE during early
- private betas, but I think it is all worked out. Still, you should be on
- the look out for any curious behavior with AutoSize set to TRUE.
- * The tab seems to get stuck with the highlight color sometimes in the IDE.
- It doesn't seem to happen at run-time, so I'm inclined not to wory about it.
- I had original thought to not even paint with the highlight color in the IDE
- but figured it would make selecting the TabHighlightColor property easier if
- you could actually see it at design-time.
- * It is possible to get the direction arrows to paint outside of the button
- if you use really big values for the TabSizeXXX properties. If you're silly
- enough to do it, you're silly enough to like it. I don't consider it worth
- the trouble to fix. If you can make a reasonable case otherwise, send me
- email.
-
-
- TdfsToolBar Revision History:
- 1.13: + Updated for Delphi 6 compatibility. See updated install directions
- above.
- 1.12: + Updated for C++Builder 5 compatibility.
- 1.11: + Fixed problem with Caption not appearing in some compilations.
- 1.10: + Added Caption property. Caption is displayed to the left or below the
- tab, depending on orientation, when the toolbar is minimized using the
- Font property. Also, note that only true-type fonts will rotate, so if
- your toolbar is oriented vertically you need to make sure you have a
- true-type font selected. If not, Arial will be substituted.
- + Adding the above feature also revealed a repaint problem that could
- occur when the maximized state was changed. This is related to the
- problem that was (partially) addressed in v1.05.
- + alNone alignment problems have been corrected.
- 1.05: + Fixed problem with buttons appearing in a minimized toolbar when the
- parent form was maximized.
- 1.04: + It's *really* D5 compatible now. Small change between the D5 eval
- version and the real, shipping D5 version broke it.
- 1.03: + D5 compatibility.
- 1.02: + With AutoSize set to false, button hints and click events could still
- occur.
- 1.01: + Added two known issues.
- + Added DFSToolBarReg unit. All IDE specific code (i.e. registering the
- component, property editors, etc.) are contained in this unit. This
- was done for two primary reasons: 1) Using the component in a Delphi
- or C++Builder expert would register the component as well. 2) Reduce
- code size in some cases -- usually the smart linker removes this sort
- of stuff since the app never references it, but now it's for certain
- since it isn't even in the unit. This change means that you need to
- install the component using the new "registration" unit instead of
- the unit containing the component.
- 1.00: + Initial release
-