home *** CD-ROM | disk | FTP | other *** search
/ The Datafile PD-CD 3 / PDCD_3.iso / pocketbk / developmen / charm / CHARM.TXT < prev   
Text File  |  1994-03-24  |  4KB  |  138 lines

  1.                              CHARM
  2.                           Version 2.0
  3.              Copyright (c) Tom Dolbilin 1993, 1994
  4.  
  5. Charm 2.0 is a nice little character map for Psion S3a.
  6.  
  7. Features include:
  8. =================
  9.  
  10. * Support for all built-in fonts
  11. * Displays character codes in decimal and hex
  12. * 'Bring' support
  13. * Optionally displays all sizes for Roman or Swiss characters
  14. * Ctrl- and Psion-arrow key combinations for quick getting around
  15. * Pseudo-multithreading (eg, you don't have to wait for the screen to redraw)
  16. * Programming interface with other OPL programs
  17.  
  18. Version history:
  19. ================
  20.  
  21. 1.0    Dec 21, 1993
  22.  
  23.  - The original public release
  24.  
  25.  
  26. 1.1    Dec 24, 1993
  27.  
  28.  - Added optional display of all 4 sizes for Roman and Swiss characters
  29.  - The code has been substantially optimized for speed
  30.  - Better pseudo-multithreading
  31.  - Newer icon (more consistent with the built-in apps)
  32.  - Bug removed: Charm can now be closed from a group list
  33.  - In the About dialog "1.0" is replaced with "1.1" <g>
  34.  
  35. 1.1a    Dec 25, 1993  Maintenance release
  36.  
  37.  - Bug, introduced in version 1.1, that sometimes caused the character box not to redraw, has been removed
  38.  - Caps Lock being ON used to disable hot-keys -- not anymore
  39.  - Other minor changes
  40.  
  41. 1.2    Jan 6, 1994
  42.  
  43.  - Added ability to use Charm from within other OPL programs
  44.  
  45. 2.0    Mar 24, 1994
  46.  
  47.  - Added support for the 'Bring' feature in the built-in applications
  48.  
  49.  
  50. Disclaimer
  51. ==========
  52.  
  53. The author of this software is not responsible for any damage
  54. due to use of this program. This software is provided without
  55. warranty of any kind.
  56.  
  57.  
  58. CHARM1.ZIP includes three files: CHARM.OPA, CHARM.TXT
  59.  
  60. Please e-mail suggestions to my CompuServe address 72730,1176.
  61.  
  62. Thanks,
  63.  
  64. Tom Dolbilin
  65. Mar 24 1994
  66.  
  67. ===============================================================================
  68.  
  69. The following describes how to bring Charm character map into your own OPL programs. You can use Charm in your own programs free of charge even if those programs are shareware or commercial (in which case they should be considerably bigger than Charm itself). I only ask for two things -- credit me in your README file and let me know. Thanks.
  70.  
  71. The subroutine displays the character map the same way it appears in Charm. However, the Font and Code fields, 4 characters of different sizes, and all the menu options are missing. As before, user can use arrow keys to move around and select a desired character. When Enter is pressed, the code of the selected character is returned.
  72.  
  73. USAGE:
  74.     CHARM%:( code%, font%, x%, y% )
  75.  
  76. PARAMETERS:
  77.     code%    - ASCII code of the character to be initially selected
  78.     font%    - font to use:    1 = S3 normal
  79.                 2 = S3 digits
  80.                 3 = Mono
  81.                 4 = Roman
  82.                 5 = Swiss
  83.     x%    - X position of the main window (width = 450)
  84.     y%    - Y position of the main window (height = 114)
  85.  
  86. RETURN VALUE:
  87.     0-255    - ascii code for the selected character when Enter was pressed
  88.     <0    - error code
  89.     -114    - Esc was pressed
  90.     $404    - While the character map was active, your program has received an Exit message.
  91.  
  92.  
  93. NOTES:
  94. - When positioning the main window keep in mind that the character box may be out of its bounds by 5 pixels in all directions.
  95. - CHARM%:() creates 2 windows so make sure you have 6 or less windows/bitmaps before calling it.
  96. - You can use LOCK ON/OFF before and after calling CHARM%:() if you don't want the System to send an Exit message.
  97. - VER$: procedure returns current version of Charm, eg, "1.2"
  98. - CHARM%:() doesn't appear to contain any bugs, but no programmer can guarantee it.
  99.  
  100. EXAMPLE:
  101.  
  102. --------------------8<---------------------
  103. PROC test:
  104. local k%, oldk%, fname$(15)
  105. fname$ = "\app\charm.opa"
  106. oldk% = %A
  107. trap cache 2000, 2000
  108. print "Press Tab to select from character map"
  109. print "Press Psion-Esc to quit"
  110. loadm fname$
  111. print "Charm version "; ver$:
  112. unloadm fname$
  113. while 1
  114.     k% = get
  115.     if k% = 9
  116.         rem LOCK ON could go here
  117.         loadm fname$
  118.         k% = charm%:( oldk%, 5, 15, 30 )
  119.         unloadm fname$
  120.         rem LOCK OFF could go here
  121.         if k% = $404
  122.             rem ----- Exit message
  123.             print "Should save changes and exit here"
  124.         elseif k% < 0
  125.             rem ----- k% is error code *or* if k%=-114 Esc was pressed
  126.             print err$( k% )
  127.         else
  128.             rem ----- k% is ascii code
  129.             print chr$( k% );
  130.             oldk% = k%
  131.         endif
  132.     else
  133.         print chr$( k% );
  134.     endif
  135. endwh
  136. ENDP
  137. --------------------8<---------------------
  138.