TmoDBNav - TmoNavBtnSwitches
TmoNavBtn - TmoDBNav} { TmoNavBtn
TmoNavBtnSwitches - New
TNavDataLink - TmoNavBtn} { TNavDataLink
Register - TNavDataLink
New
ENavClick
TmoBtnSet
TmoGetBtn
TmoNavBtns
TmoNavButtonStyle
TmoNavOrientation
TmoSetBtn
TNavGlyph
DefaultBookmarkMessage
InitRepeatPause
RepeatPause
SpaceSize
procedure Register;
TNavDataLinkNew
ENavClick = procedure (Sender: TObject; Button: TmoNavBtns) of object
TmoBtnSet = set of TmoNavBtns
TmoGetBtn = function: TmoBtnSet of object
New
TmoNavBtns = (nbLookupHelp, nbLocate, nbLocateNext, nbBkSet, nbBkGoto,
nbBkClear, nbFirst, nbPriorSet, nbPrior, nbNext, nbNextSet, nbLast,
nbInsert, nbDelete, nbEdit, nbPost, nbCancel, nbRefresh);
Note the new buttons below: nbLookupHelp (Lookup Help), nbLocate (Locate
record), nbLocateNext (Locate next record), nbBkSet (Set Bookmark), nbBkGoto
(Go to bookmark), nbBkClear (Clear Bookmark), nbPriorSet (move back 10
record) and nbNextSet (move forward 10 records). nbLookupHelp, nbLocate and
nbLocateNext are initially disabled. These three buttons require
event-handling procedures in order to do anything.
TmoNavButtonStyle = set of (nsAllowTimer, nsFocusRect)
TmoNavOrientation = (noHorizontal, noVertical);
TmoSetBtn = procedure(Value: TmoBtnSet) of object
New
TNavGlyph = (ngEnabled, ngDisabled);
DefaultBookmarkMessage =
'The bookmark you are trying to use belongs to a different data set than the one you are on.'
+ #13+
'Continue anyway?'
size of space between special buttons
InitRepeatPause = 400
Copyright (c) 1995 by Maggie Owens.
Please send bug reports, suggestions & comments to mmowens@panix.com.
Updates (if any) will also be avialable for download from:
http://www.panix.com/~mmowens/
Revision history:
This is version 1.1, finished 7/25/96.
Corrects the Vertical Orientation bug.
Version 1.0 first released to the public June 10, 1996.
If you would like to included on the update notification mailing list,
please send email to mmowens@panix.com with "subscribe navigator" as
the subject.
I would also appreciate it if you send me your name if you use this
navigator, so I can maintain a usage count.
Revision history:
This component was originally developed in early '95 by modifying a copy of
Delphi 1.0's DBNavigator to correct the resource leak and add functionality:
lookuphep, locate and locatenext buttons; direct access to the enabled /
disabled state of the buttons, and the ability to override the state of any
given button. This version of the navigator is in use in numerous production
applications.
The set bookmark, goto bookmark and clear bookmark buttons were added in
early '96 for my Borland conference paper. The newer version navigator has
been thoroughly tested and debugged, but has not yet been included in any
production applications.
Code that differs from the Delphi 1.0 DBNavigator has been marked with the
comment "New".
Special thanks to:
Ed Jordan, for helping me solve the problem of more than 16 elements in
the set of published properties, by providing sample code for the
TmoNavBtnSwitches object.
Bill Morgenthein, for the set bookmark, goto bookmark and clear bookmark
bitmaps (My drawing abilities rate -1 on a scale of 1 to 10).
Everyone at the Burgiss group, for using the navigator.
My mother, Terry Winter Owens (http://www.panix.com/~twowens/)
for her tireless help in editing my conference papers.
Lizards, in general, for eating the bugs.
DISCLAIMER: I have provided these components and source code to the public
free of charge. You accept these components AS IS without any representation
or warranty of any kind, including but not limited to the warranty of
merchantability or fitness for a particular purpose. You may not sell these
components.
RepeatPause = 100
pause before repeat timer (ms)
SpaceSize = 5
pause before hint window displays (ms