Unit ACKeybrd |
Renamed from Keyboard.pas 6/14/1998 Paul Rice to avoid conflicts with others' work.} { TKeyboard component } { } { Copyright (c) 1997 Andrea Carli } { Portions Copyright (c) 1995,96 Borland International } { } { Relevant design-runtime properties: KeyCaptions: TStrings; } { KeyIndex: TKeyboardBtn; [R/O] } { NullValue: String; } { } { Relevant runtime properties: Value: String; [R/O] } { } { Relevant runtime methods: } { Enable(Index: TKeyboardBtn; Value: Boolean); } { Down(Index: TKeyboardBtn; Value: Boolean); } { } { KeyIndex as KeyCaptions.Strings[index] start from 0. } { } { Limitations: Max 30 keys (TKeyboardBtn goes from 0 to 29) may be } { increased changing the source code and recompiling the component. } { Change the 'MaxKeys' constant. } { } { This component display a keyboard in wich each key had a caption } { given by the 'KeyCaptions' property; setting this property make the } { corresponding button visible and enabled. } { Only a key remain pressed at time or none at all, in the first } { case the 'Value' property (runtime) of the component is the caption } { of the pressed key; otherwise the 'NullValue' property is returned. } { 'KeyIndex' property (runtime) represent the current button selected } { (not necessarily pressed!). } { The method 'Enable' Enable/Disable the button specified } { The method 'Down' Push/Pull the button specified } { The component could be expanded for the use of: Glyphs, Hints, ecc. } { but i wrote this component only to have a Keyboard to simplify and } { speed up user input in some applications. } { } { I would be pleased to receive all modifications of this source code } { expecially those who mantain the purpose I have create it for (look } { the example acclosed). } { } { } { For information, BUG REPORT and suggestions (very appreciated) } { e-mail me at: } { a.carli@leonet.it } { } { } { I DECIDED TO MAKE THIS COMPONENT FREEWARE SINCE I BELIEVE IN THIS } { KIND OF SOFTWARE DISTRIBUTION, I HAVE SOLVE LOT OF PROBLEMS, BUGS } { AND LEARN MORE ABOUT THIS LANGUAGE THANKS TO SOURCE LISTINGS FOUNDED} { IN FREEWARE WAY. } { LET'S GIVE OUR CONTRIBUTION TO THIS CAUSE! } { } { SINCE I AM NOT A COMPONENT OR LOW LEVEL PROGRAMMER EXPERT I DO NOT } { GRANT YOU THAT THIS COMPONENT WILL FUNCTION AS DESCRIBED OR MAY NOT } { CAUSE DAMAGES OF ANY KIND, IT'S THE FIRST COMPONENT I WROTE! } { } { I PLEASE EVERY ONE WHO USE THIS SOURCE CODE TO MENTION MY NAME AND } { BORLAND COPYRIGHT IN THEIR MODIFICATIONS. } { } {
Classes |
TKeyboard - TKeyboard
TKeyButton - TKeyButton } { TKeyButton
Functions |
Register -
Types |
EKeyClick
TButtonSet
TKeyArray
TKeyboardBtn
Constants |
Variables |
Functions |
Types |
EKeyClick = procedure (Sender: TObject; Button: TKeyboardBtn) of object
TButtonSet = set of TKeyboardBtn
TKeyArray = array[TKeyboardBtn] of TKeyButton;
TKeyboardBtn = 0..MaxKeys
Constants |
Variables |