home *** CD-ROM | disk | FTP | other *** search
- SHORT: requesters - obligatory for programmers
-
- This is obligatory stuff for programmers !!! Save yourself many hours using
- these POWERFUL and SYSTEM CONFORMANT requesters in your programs.
-
- Users can replace req.library, arp.library and asl.library's requesters by
- these using an enclosed utility called RTPatch.
-
- -Ives
-
- Excerpt from the enclosed readme file:
-
-
- **********************************
-
- reqtools.library
-
- The requester toolkit.
-
- Release 2.0
-
- (c) 1991/1992 Nico Franτois
-
- **********************************
-
-
- 1. Introduction
- ===============
-
- reqtools.library is a standard Amiga shared, runtime library. The purpose
- of ReqTools is to make it a lot quicker and easier to build standard requesters
- into your programs. ReqTools is designed with Commodore's style guidelines in
- mind, all requesters have the look-and-feel of AmigaDOS Release 2.
-
- If you use ReqTools in your programs you do not have to worry about
- requesters too much. You'll have a lot more time to concentrate on the
- really important stuff your program does.
-
- The library has been inspired by req.library (by Colin Fox & Bruce Dawson)
- and Commodore's own asl.library. You will find it shares a lot of the
- features with these two libraries, while it has some additional ones as well.
- While asl.library was great in look-and-feel I felt it lacked quite a bit in
- the power department. This power _is_ mostly available in req.library, but
- this doesn't fit in too well with AmigaDOS Release 2. So the idea for a new
- requester library was born.
-
- I tried to make all requesters in ReqTools very powerful, easy to use and
- with a very nice new-look 3D interface. Efficiency was also considered very
- important. The 2.0 version of the library is about 34K large. I'm sure you
- will agree this is not too much considering what ReqTools offers.
-
- ReqTools features the following requesters: a query requester, a string
- requester, a number requester, a file requester, a font requester, a palette
- requester and new in release 2.0 of ReqTools a volume requester and a screen
- mode requester.
-
-
- 2. Features
- ===========
-
- The requesters have following features (features marked with *NEW* are new
- features for release 2.0, version 38 of ReqTools):
-
- All requesters:
-
- o have a pixel-perfect Workbench 2.0 3D look, also on Kickstart 1.3.
- *NEW* o Completely localized! If you are using Workbench 2.1 or higher the
- text in ReqTools requesters will appear in the language of your
- Workbench (if the catalog for this language is available).
- o adjust to interlaced screens and to the screen's font (rtEZRequest,
- rtGetLong, rtGetString) or to any fixed-width font if the screen's
- font is proportional (rtPaletteRequest/rtFileRequest/rtFontRequest).
- *NEW* Requesters can also use any suitable font you specify.
- o can appear under the mouse pointer, centered on the
- screen/in a window or at the top left of the screen/a window.
- o can be used asynchronously.
- o check pr_WindowPtr of your process is to find the screen they should
- appear on (can be overridden).
- o use tags for maximum future extendibility. All standard 2.0 tags are
- supported (like TAG_SKIP, TAG_MORE, etc.).
- o bring the screen they appear on to the front. The screen that was
- in front previously will be put in front again when the requester
- finishes (if it is still open).
- *NEW* This behaviour can be switched off.
- o will always appear in the visible portion of the screen (support of
- virtual screens).
- o are extensively tested using enforcer and mungwall debugging tools.
- *NEW* o have the ability to lock the parent window from all user input and
- give it a standard wait pointer automatically.
- *NEW* o can share the IDCMP port of the parent window.
- *NEW* o support a callback hook for handling IDCMP messages from a shared
- IDCMP port.
- *NEW* o have keyboard shortcuts for gadgets (key underlined in gadget label).
- Use Right Amiga key with shortcut if a string gadget is active.
-
- rtEZRequest, the query requester:
-
- o easy keyboard shortcuts:
- - Left Amiga V and Left Amiga B (like the standard requesters).
- - Y for positive response.
- - N, R, Esc for negative response.
- - Return can also be used as a shortcut and can be
- associated with any response. The gadget in question
- will have its text printed bold.
- Default response for Return is the positive response.
- - buttons give visual feedback when keyboard shortcuts
- are used.
- - keyboard shortcuts can be canceled by pressing Shift
- before releasing the key.
- *NEW* - keyboard shortcuts can be defined to be any character in the
- button's label. The character in question will be underlined.
- o number of responses only limited by screen width.
- o allows for multiple lines of text.
- o text can be centered in requester (great for about requesters).
- o supports the use of 'printf' formatting codes in text
- and in responses.
- o can be terminated by IDCMP events.
-
- rtFileRequest, the file requester:
-
- o similar in use and look-and-feel as Asl file requester.
- o buffers directories in memory.
- o files and directories can be added or removed from the buffer
- by the calling program.
- o can be put in save mode, disabling double-clicks and asking you if
- directories that can't be found (entered manually) should be created.
- o optional callback hook for verification of files before they are
- added to the buffer.
- o supports multiple selection of files and optionally of directories.
- o when multi-select is on All, Clear and Match.. buttons are available.
- All selects, and Clear unselects all files. Match.. brings up a
- requester where the user can enter a pattern to select files.
- o can be used as a directory requester (showing no files).
- o optional pattern gadget to match files on.
- o shows all devices (with volume names) and all assigns made.
- o supports TABCYCLE under 2.0
- o pattern matching supports _ALL_ AmigaDOS 2.0 patterns.
- *NEW* o can be used as a volume requester to get a device or an assign
- from the user.
- *NEW* o can be resized in height to show more files.
- *NEW* o Shows disk percentage used next to volume names.
- *NEW* o Allows you to enter paths in the filename string gadget. If the
- requester finds a path in the filename it will change the directory
- to that path. So if you e.g. enter 'Devs:mountlist' in the filename
- gadget the requester will read the 'Devs:' directory and set the
- filename gadget to 'mountlist'. If you enter 'printers/' it will go
- into the printers directory. Enter '/' to go to the parent directory.
- *NEW* o Completely keyboard controlable: use up and down cursor keys to
- select files or directories. Use Shift-Up and Shift-Down to jump
- by one window-full.
-
- rtFontRequest, the font requester:
-
- o buffers all fonts in memory.
- o shows sample of font you click on.
- o can be also be used to select the font's style.
- o supports color fonts, can change the screen's palette.
- o supports scaled fonts (AmigaOS Release 2 only).
- o optional callback hook for verification of fonts before they are
- added to the buffer.
- o supports TABCYCLE under 2.0
- *NEW* o can be resized in height to show more fonts.
- *NEW* o makes sure selected font is visible in listview when it comes up.
-
- *NEW* rtScreenModeRequest, the display mode requester (Kickstart 2.0+ only!):
-
- *NEW* o all modes in the DisplayInfo database can be displayed.
- *NEW* o displays visible and nominal size.
- *NEW* o user may enter prefered size or choose to get the defaults.
- *NEW* o number of colors selectable.
- *NEW* o can be put up with the attributes from a given screen.
- *NEW* o optional callback hook for examining a display mode before it is
- added to the requester.
- *NEW* o can be resized in height to show more modes.
- *NEW* o makes sure selected mode is visible in listview when it comes up.
-
- rtPaletteRequest, the palette requester:
-
- o features Copy, Swap and Spread functions.
- o current values of red, green and blue are displayed.
- o returns the selected color.
-
- rtGetLong, the long integer requester:
-
- o width of requester can be set by caller.
- o a minimum and maximum can be supplied and will be displayed
- in the requester.
- o a value to show up when the requester appears can be supplied.
- *NEW* o can display buttons with several possible responses.
- *NEW* o invisible entry is possible (useful for getting a code number).
- *NEW* o patterned backfill of requester can be switched on or off.
- *NEW* o some line(s) of (centered) text may be displayed above the entry
- gadget to give the user some extra information.
-
- rtGetString, the string requester:
-
- o width of requester can be set by caller.
- o a string to show up when the requester appears can be supplied.
- *NEW* o can display buttons with several possible responses.
- *NEW* o invisible entry is possible (useful for getting a password).
- *NEW* o patterned backfill of requester can be switched on or off.
- *NEW* o some line(s) of (centered) text may be displayed above the entry
- gadget to give the user some extra information.
-
-