home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / palvue.zip / PalView.HLP (.txt) < prev    next >
OS/2 Help File  |  1994-10-26  |  61KB  |  763 lines

  1.  
  2. ΓòÉΓòÉΓòÉ 1. General Help for Palview ΓòÉΓòÉΓòÉ
  3.  
  4.   PalView is a utility which allows the hardware color palette of the video 
  5. display device to be monitored in real-time. It displays the colors that the 
  6. hardware palette is currently set to, and will show any color changes as they 
  7. happen. PalView can also display information about the individual color entries 
  8. of the hardware color palette. 
  9.  
  10.   PalView was designed to be used exclusively with the Presentation Manager's 
  11. (PM) Palette Manager subsystem. The Palette Manager subsystem allows the 
  12. "limited resource" of the hardware color palette to be fairly shared among PM 
  13. applications which may want to set the hardware color palette to their own 
  14. liking. PalView displays the results of the Palette Manager subsystem's 
  15. arbitration of palette requests as they happen. 
  16.  
  17.   The capabilities of PalView make it both a fun utility for the casual 
  18. computer user and a handy debugging aid for the serious graphics application 
  19. developer. PalView was designed so that it can be run continuously, constantly 
  20. monitoring the color palette, with negligible impact on the total system 
  21. performance. The serious graphics developer or aficionado may want to have 
  22. PalView be a permanent fixture of their PM/WPS desktop. 
  23.  
  24.   This help system contains information on all features and operations of 
  25. PalView. It also contains information on color palettes, color palette 
  26. manipulating PM applications, and PalView's relationship and interaction with 
  27. both. 
  28.  
  29.   Help is available for any of the following items: 
  30.  
  31. o How Color Palettes Work. 
  32. o Menu Choices 
  33. o Mouse Actions 
  34. o Limitations 
  35. o Technical Support 
  36. o Legalities 
  37.  
  38.  
  39. ΓòÉΓòÉΓòÉ 2. Menu Choices ΓòÉΓòÉΓòÉ
  40.  
  41.   The main menu for PalView is a "pop-up" style context menu (i.e. it is not a 
  42. menu invoked from a menu bar). It can be invoke by clicking the mouse with the 
  43. right mouse button anywhere in the palette entry display field (i.e. on any of 
  44. the colored squares ) or by pressing Shift-F10 while the PalView window is the 
  45. active window. 
  46.  
  47. This menu offers the following choices of action: 
  48.  
  49. o Settings... 
  50. o Device Color Info... 
  51. o Reset Palette 
  52. o Help 
  53.  
  54.  
  55. ΓòÉΓòÉΓòÉ 3. 'Settings...' Menu Choice ΓòÉΓòÉΓòÉ
  56.  
  57.   Select Settings... to  bring up the Settings Dialog. The Settings Dialog 
  58. allows the user to configure PalView. 
  59.  
  60.  
  61. ΓòÉΓòÉΓòÉ 4. 'Device Color Info..." Menu Choice ΓòÉΓòÉΓòÉ
  62.  
  63.   Select Device Color Info... to bring up the Device Color Info Dialog The 
  64. Device Color Info Dialog lists color capabilities of the Screen. 
  65.  
  66.  
  67. ΓòÉΓòÉΓòÉ 5. 'Reset Palette' Menu Choice ΓòÉΓòÉΓòÉ
  68.  
  69.    Select Reset Palette to cause the system color palette to be reset to it's 
  70. default (i.e. start-up) values. The results of the reset depend upon whether 
  71. any running applications are manipulating the palette or not. When this menu 
  72. choice is selected, the system color palette is immediately reset to it's 
  73. default values. The PM system then broadcasts a message to all running 
  74. applications, asking the applications to "realize" their custom palettes. At 
  75. that point, the applications can claim and set any unclaimed palette entries. 
  76. Note that all entries in the default palette are considered  unclaimed. In 
  77. other words, if palette manipulating applications are running, resetting the 
  78. default palette may only trigger a quick round of palette arbitration, with the 
  79. resulting palette being identical to the palette before the arbitration (i.e. 
  80. resetting the palette has no lasting effect). 
  81.  
  82.   However, if there are no palette manipulation applications running and the 
  83. system palette is set to a custom color palette, resetting the palette can have 
  84. long term effects. This situation is often the case when an app that changes 
  85. the system palette doesn't "cleanup" after itself when it is closed. Currently 
  86. PM doesn't immediately reset the system palette to the default palette when all 
  87. palette manipulating apps are closed. This can leave the desktop and any 
  88. running applications "discolored". It is in these cases where this menu item is 
  89. most handy. 
  90.  
  91.   For more information on how the system color palette works and arbitrates the 
  92. system colors among palette manipulating applications, please see the section 
  93. How Color Palettes Work. 
  94.  
  95. Note:  PalView provides a quick "short-cut for selecting the reset feature: the 
  96. system palette may also be reset by double-clicking the left mouse button 
  97. anywhere in the palette entry display field (i.e. on any of the colored 
  98. squares). 
  99.  
  100.  
  101. ΓòÉΓòÉΓòÉ 6. 'Help' Menu Choice ΓòÉΓòÉΓòÉ
  102.  
  103.   Select Help to display the PalView help submenu allowing selection from the 
  104. following help categories: 
  105.  
  106. o Help Index 
  107. o General Help 
  108. o Using Help 
  109. o About PalView 
  110.  
  111.  
  112. ΓòÉΓòÉΓòÉ 7. 'Help Index' Menu Choice ΓòÉΓòÉΓòÉ
  113.  
  114.   Select Help Index to display an alphabetic list of references to the help 
  115. topics in PalView. Select an index entry to display the help topic that is 
  116. related to that index entry. 
  117.  
  118. Note:  To see all text of the index entries, maximize the Index window. 
  119.  
  120.  
  121. ΓòÉΓòÉΓòÉ 8. 'General Help' Menu Choice ΓòÉΓòÉΓòÉ
  122.  
  123.   Select General Help as the starting point for help on PalView. General Help 
  124. brings up a top level contents page and provides access to most all help 
  125. entries. 
  126.  
  127. Note:  Help for specific windows, features, and controls can be displayed by 
  128. setting the cursor focus on the control or window in question and pressing the 
  129. F1 key. 
  130.  
  131.  
  132. ΓòÉΓòÉΓòÉ 9. 'Using Help' Menu Choice ΓòÉΓòÉΓòÉ
  133.  
  134.   Select Using Help to find out how to use this help facility. 
  135.  
  136.  
  137. ΓòÉΓòÉΓòÉ 10. 'About PalView' Menu Choice ΓòÉΓòÉΓòÉ
  138.  
  139.   Select About PalView to get a window displaying version, copyright, and 
  140. acknowledgement information about the application. 
  141.  
  142.  
  143. ΓòÉΓòÉΓòÉ 11. Keys Help ΓòÉΓòÉΓòÉ
  144.  
  145.   There is no key specific help for PalView, as there is no special key input 
  146. for the application. However PalView does, in general, handle key input as 
  147. defined for WPS/PM (e.g. Shift-F10 for context menu, spacebar for select, 
  148. accelerator keys, etc). For information on default WPS/PM key input see the 
  149. section Key Assignments section in the OS/2 Master Help Index. For information 
  150. on mouse specific assignments or actions, see the section Mouse Actions 
  151.  
  152.  
  153. ΓòÉΓòÉΓòÉ 12. Settings Dialog ΓòÉΓòÉΓòÉ
  154.  
  155.   The Settings Dialog allows the operation and features of PalView to be 
  156. configured. Changes to the Settings information are automatically saved each 
  157. time PalView is run. 
  158.  
  159.   The following features can be configured from the Settings Dialog: 
  160.  
  161. o 'Size' Setting 
  162. o 'Floating Window' Settings 
  163. o 'RGB Component Display' Setting 
  164.  
  165.   There is also help available for the buttons on the Setting Dialog: 
  166.  
  167. o The 'Set' Button 
  168. o The 'Cancel' Button 
  169. o The 'Defaults' Button 
  170. o The 'Help' Button 
  171.  
  172.  
  173. ΓòÉΓòÉΓòÉ 13. 'Size' Setting ΓòÉΓòÉΓòÉ
  174.  
  175.   Currently, PalView can be sized to any of three fixed-dimension sizes: Small, 
  176. Medium, and Large. The size can be changed by looping through the choices, 
  177. either by using the keyboard "Up" and "Down" arrow keys, or by clicking on the 
  178. arrow buttons with the mouse. 
  179.  
  180. These fixed sizes are based on the unit size of a single palette entry color 
  181. square: 
  182.  
  183. Size      Unit Size of Color Square 
  184. Small     @ 8x8 pels or pixels 
  185. Medium    @ 16x16 pels or pixels 
  186. Large     @ 32x32 pels or pixels 
  187.  
  188.   The PalView window dimensions are based upon a square lay-out of entry color 
  189. squares. For example, for a 256 color palette, the palette entry display field 
  190. is an area of 16 rows and 16 columns of entry color squares. This leads to the 
  191. rough window dimensions as follows: 
  192.  
  193. Size      Rough Dimensions of Window 
  194. Small     @ 146x198 pels or pixels 
  195. Medium    @ 274x326 pels or pixels 
  196. Large     @ 530x582 pels or pixels 
  197.  
  198. Note that the above listed window sizes assume that the RGB Component Display 
  199. feature is enable and is being drawn. 
  200.  
  201. Default:  The default size is Medium 
  202.  
  203.  
  204. ΓòÉΓòÉΓòÉ 14. 'Floating Window' Settings ΓòÉΓòÉΓòÉ
  205.  
  206.   PalView has an optional feature that allows it to maintain it's window on top 
  207. of the PM Window Z-order stack; that is, there is a feature which allows 
  208. PalView to remain on top of and completely unobscured by all other PM Windows. 
  209. This allows the user to monitor the palette entry color field, even with a 
  210. maximized active window which would otherwise hide the PalView window. The 
  211. PalView window will always "float to the top". 
  212.  
  213.   Since there is no functionality built in to OS/2 or PM to allow a window to 
  214. automatically "float" above all other windows, PalView uses a technique of 
  215. periodically checking it's position and moving itself to the top if necessary. 
  216. The interval, or frequency with which PalView checks it's position is 
  217. configurable. 
  218.  
  219. Note:  This feature in no way affects which window is the active or focus 
  220. window. Normally, the top level window is the active or focus window (i.e. it 
  221. is the window that currently receives all user input). If this feature "floats" 
  222. the PalView window on top of the current active window, the active window 
  223. retains it's active status and will continue to receive all user input. 
  224.  
  225. Enabling the "Floating Window" Feature 
  226.  
  227.   The floating window feature is completely optional, and can be enabled or 
  228. disable by the user. To enable the floating window feature, put a check (by 
  229. clicking with the mouse, or by pressing the space bar) in the check-box control 
  230. labeled "Enable Float Feature". 
  231.  
  232. Default:  The default setting is enabled 
  233.  
  234. Setting the "Floating Window" Interval 
  235.  
  236.   The "Floating Window Interval" is the number of seconds PalView waits in 
  237. between checking whether it is covered by a window or not. If PalView finds it 
  238. is covered, it will move itself on top of all other windows. The fewer number 
  239. of seconds the interval is set to, the quicker PalView will move itself to the 
  240. top; however, the quicker PalView checks on it's position the more demand it 
  241. will place on the System. While a one second interval will not, in general, 
  242. slow the overall system performance, it is, in most cases, over-kill and 
  243. unnecessary short. At the other end of the spectrum, the maximum interval of 60 
  244. second is probably too long to be of any practical use. Experimentation and 
  245. usage should dictate the "best" setting. 
  246.  
  247.   The interval can be changed by looping thru the number of seconds ( from 1 to 
  248. 60 ) by using the keyboard "Up" and "Down" arrow keys, or by clicking on the 
  249. arrow buttons with the mouse. 
  250.  
  251. Note:  If the Float Feature is disabled, then the interval input control (i.e. 
  252. the spin button) is "grayed-out", and the interval timeout value cannot be 
  253. changed. 
  254.  
  255. Default:  The default interval timeout is three seconds. 
  256.  
  257.  
  258. ΓòÉΓòÉΓòÉ 15. 'RGB Component Display' Setting ΓòÉΓòÉΓòÉ
  259.  
  260.   The RGB Component Display is an optional feature and is one of the most 
  261. powerful aspects of PalView. This feature allows each individual color palette 
  262. entry to be queried and will report the entry color by the intensity value of 
  263. each of it's RGB (i.e. Red, Green, Blue ) components. The possible intensity 
  264. value range for a component is 0 to 255. As an example, a pure, bright red 
  265. would be reported as RED=255, GREEN=0, BLUE=0; as another example, a pure, 
  266. bright cyan would be reported as RED=0, GREEN=255, BLUE=255. 
  267.  
  268.   When this feature is enabled, PalView's window is expanded to display an area 
  269. above the palette entry display field where the RGB components and the palette 
  270. index of a selected entry is displayed. 
  271.  
  272.   The RGB component display area can look like: 
  273.  
  274.   Starting from the left, the first number is the entry index in the hardware 
  275. palette slot. Note that hardware palette indices do not, in general, match the 
  276. "logical" palette indices set by the application creating the palette. The next 
  277. three numbers are the values of the Red, Blue, and Green 
  278. components,respectively, for this color entry. 
  279.  
  280.   The entry to be displayed is selected with the mouse pointer. When the 
  281. feature is enable, the mouse pointer is changed from it's default (normally an 
  282. arrow) to a magnifying glass whenever it is over the PalView window. 
  283.  
  284.   The magnifying glass pointer looks like: 
  285.  
  286.   An entry is selected by placing the magnifying glass pointer so that the 
  287. center of the glass is over the color square of the entry of interest. The RGB 
  288. Component Display updates as pointer moves over the color squares. 
  289.  
  290. Note:  Normally, the RGB Component values for a given entry are sampled once 
  291. (when the magnifying glass pointer first moves over the entry color square) and 
  292. is not updated until the pointer moves off the entry color square and then back 
  293. on. This greatly improves performance and is fine for most cases of querying a 
  294. static palette. However, this sampling rate may not prove sufficient if the 
  295. palette is being "animated", or the palette entry is being changed rapidly due 
  296. to palette switches. For these cases, PalView has a feature that allows it to 
  297. monitor a dynamic palette entry. If the left mouse button is press and held 
  298. down while the magnifying glass pointer is over a color entry square, the RGB 
  299. Component value will be sampled and the RGB Component Display updated 
  300. approximately every 1/10th of a second. For more information about this feature 
  301. see the section Mouse Actions 
  302.  
  303.  
  304. ΓòÉΓòÉΓòÉ 16. The 'Set' Button ΓòÉΓòÉΓòÉ
  305.  
  306.   The Set button configures PalView according to the settings entered via the 
  307. PalView Settings Dialog. The settings take effect immediately. The Set button 
  308. also closes the Settings Dialog. 
  309.  
  310. Note:  These settings will be automatically stored when PalView is closed, and 
  311. will be used the next time it is run. 
  312.  
  313.  
  314. ΓòÉΓòÉΓòÉ 17. The 'Cancel' Button ΓòÉΓòÉΓòÉ
  315.  
  316.   The Cancel button closes the Settings Dialog without changing the 
  317. configuration of PalView. Any changes entered via the Settings Dialog are 
  318. discarded. 
  319.  
  320.  
  321. ΓòÉΓòÉΓòÉ 18. The 'Defaults' Button ΓòÉΓòÉΓòÉ
  322.  
  323.   The Defaults button sets all the settings on the Settings Dialog to their 
  324. default state and value. The default state and value for each Setting item is: 
  325.  
  326. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  327. ΓöéSETTING                  ΓöéDEFAULT STATE/VALUE Γöé
  328. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  329. ΓöéSize                     ΓöéMedium              Γöé
  330. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  331. ΓöéFloating Window          ΓöéEnabled             Γöé
  332. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  333. ΓöéFloating Window Interval ΓöéThree seconds       Γöé
  334. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  335. ΓöéRGB Component Display    ΓöéEnabled             Γöé
  336. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  337.  
  338. Note:  The Default button only sets the values/states but does not re-configure 
  339. PalView or activate the new settings.The Set button must be pressed to activate 
  340. the new settings, or the Cancel button must be pressed to discard the changes 
  341. and retain the old settings. 
  342.  
  343.  
  344. ΓòÉΓòÉΓòÉ 19. The 'Help' Button ΓòÉΓòÉΓòÉ
  345.  
  346.   The Help button brings up help for the Settings Dialog. Information about 
  347. each Settings option and feature is explained. 
  348.  
  349.  
  350. ΓòÉΓòÉΓòÉ 20. The Screen Device Color Info Dialog ΓòÉΓòÉΓòÉ
  351.  
  352.   The Screen Device Color Info Dialog is an informational dialog which lists 
  353. the graphic and color capabilities of the current PM screen device as reported 
  354. by the screen presentation driver. For an description of all the capabilities 
  355. and characteristics reported on, see the section The Device Color Info List 
  356.  
  357. Note:  None of the capabilities listed may be changed with this dialog; this 
  358. dialog is informational only. 
  359.  
  360.  
  361. ΓòÉΓòÉΓòÉ 21. The Device Color Info List ΓòÉΓòÉΓòÉ
  362.  
  363. The capabilities and characteristics reported on are: 
  364.  
  365. Driver version 
  366.           The release version of the Screen Presentation Driver. 
  367. Width in pels 
  368.           The maximum horizontal width of the Screen in pels or pixels. 
  369. Height in pels 
  370.           The maximum vertical height of the Screen in pels or pixels. 
  371. Horizontal resolution 
  372.           The maximum horizontal resolution of the Screen in pels or pixels per 
  373.           meter. 
  374. Vertical resolution 
  375.           The maximum vertical resolution of the Screen in pels or pixels per 
  376.           meter. 
  377. Number of color planes 
  378.           The number of color planes supported by the Screen. Most commonly, 
  379.           this is one. 
  380. Number of color bits 
  381.           The number of color bits per pel (per plane) supported by the Screen. 
  382.           Color bits are used to represent color indices (or RGB values for 
  383.           24-bits). Normally, one bit allows for monochrome support, four bits 
  384.           for 16 colors, 8 bits for 256 color, and 16 bits for 64K colors. 
  385. Max colors supported 
  386.           The maximum number of distinct colors simultaneously support by the 
  387.           Screen. 
  388. Max 'physical' colors supported 
  389.           The maximum number of distinct physical colors support by the Screen. 
  390.           These may or may not be supported simultaneously. Commonly, this 
  391.           number is equal to that reported by Max colors supported. 
  392. Max color index available 
  393.           The maximum index value supported by the Screen for color palettes 
  394.           and logical color tables. Note that the range of color indices start 
  395.           at zero, rather than one. 
  396. Color table support 
  397.           A category of features relating to Color Table support. The possible 
  398.           reported features in this category are: 
  399.  
  400.    Min. 8 bits per RGB component support 
  401.              A color table with a minimum of 8 bits per RGB component can be 
  402.              loaded. 
  403.    Other than 8 bits per RGB component support 
  404.              A color table with some number other than 8 bits per RGB component 
  405.              can be loaded. 
  406.    True color mixing support 
  407.              True color mixing of the realized color table can occur (assuming 
  408.              that the number of color entries in the table is less than or 
  409.              equal to number of supported colors as reported by Max colors 
  410.              supported). 
  411.    Realizable color table support 
  412.              Logical color tables can be realized into the hardware color 
  413.              table/palette by an application. 
  414.    None 
  415.              There is no special color table support. 
  416. Extended color graphics capabilities 
  417.           A category of miscellaneous features reported by the presentation 
  418.           driver. The possible reported features in this category are: 
  419.  
  420.    Palette Manager support 
  421.              Color palettes, as opposed to color tables, are supported by the 
  422.              Screen. For more information on color palettes, see the section 
  423.              How Color Palettes Work. 
  424.    Color cursor support 
  425.              Color cursors are supported by the Screen. 
  426.  
  427. Note:  None of the capabilities listed may be changed with this dialog; this 
  428. dialog is informational only. 
  429.  
  430.  
  431. ΓòÉΓòÉΓòÉ 22. The 'OK' Button ΓòÉΓòÉΓòÉ
  432.  
  433.   The OK button dismisses the Screen Device Color Info Dialog. 
  434.  
  435.  
  436. ΓòÉΓòÉΓòÉ 23. The 'Help' Button ΓòÉΓòÉΓòÉ
  437.  
  438.   The Help button brings up help for the Screen Device Color Info Dialog. 
  439. Information about each of the reported characteristics and features is 
  440. explained. 
  441.  
  442.  
  443. ΓòÉΓòÉΓòÉ 24. How Color Palettes Work ΓòÉΓòÉΓòÉ
  444.  
  445. How Color Palettes Work 
  446.  
  447.   All output devices, such as printers and monitors, have an associated 
  448. hardware color palette. This hardware color palette contains the colors which 
  449. are simultaneously supported in hardware by the device at a given instant. For 
  450. simple printers, this might be just two colors:  black and white. For VGA 
  451. displays, the hardware color palette will contain 16 colors.  For many SVGA and 
  452. XGA displays, the number is more commonly 256 supported colors. A device is 
  453. said to support "true-color" when it can support 24-bit color definitions, or 
  454. 16.7 million colors; that is, true-color devices can simultaneously support and 
  455. display the full color spectrum of human perception. For devices which don't 
  456. support true-color, only a subset of those colors can be displayed at any given 
  457. time. The art of color management on these devices is to manipulate the subset 
  458. of colors to simulate true-color display. The OS/2 Palette Manager system was 
  459. designed to facilitate and simplify color subset manipulation. 
  460.  
  461.   The OS/2 Palette Manager system is an Presentation Manager subsystem which 
  462. allows the equitable sharing among OS/2 applications of the "limited resource" 
  463. of the hardware color palette. Additionally, Palette Manager allows the 
  464. applications extensive control over the hardware color palette. The system is 
  465. typically available only on devices with hardware color palettes of 256 colors. 
  466. It should be noted that the Palette Manager system is implemented by the device 
  467. driver, not by OS/2 itself, and therefore may not be supported on all devices. 
  468.  
  469.   For the rest of this discussion, only screen devices with hardware color 
  470. palettes of 256 colors will be covered. These are the devices on which Palette 
  471. Manager is most commonly used, and the only devices that PalView monitors. 
  472.  
  473.   By default, OS/2 sets the hardware color palette of the screen to a color 
  474. palette that has been psychometrically tuned to provide a robust, generic 
  475. spectrum, suitable for most general applications. However, there are 
  476. specialized applications for which the default color palette is not sufficient; 
  477. these applications have a need to display custom colors not available in the 
  478. default palette. Take, for example, a photo touchup/editing application needing 
  479. to display a picture of a red balloon. Assume that to accurately display the 
  480. gradients of the balloon, the application needs 128 shades of red.  The default 
  481. color palette doesn't contain anywhere near 128 shades of red. The application 
  482. could override the default palette by directly setting the hardware color 
  483. palette to contain 128 shades of red.  This would make the balloon look great. 
  484. However, other applications running on the Desktop, which are depending on the 
  485. default color palette, will also be displayed with 128 shades of red; this is 
  486. probably not what the applications' authors had in mind, and would most likely 
  487. lead to horrendous looking results for these other applications. Now assume 
  488. that a second graphics application directly sets the hardware color palette to 
  489. 192 shades of green to accurately represent it's own graphic. Since the 
  490. hardware color palette was snatched away from the first application, the red 
  491. balloon won't display properly (because many of the red shades will now have 
  492. become green). It's important to note that the application displaying the red 
  493. balloon has no way to know that it has lost it's entries in the hardware color 
  494. palette, and that it's display is incorrect. These are the nature of problems 
  495. which OS/2's Palette Manager system addresses and prevents. 
  496.  
  497.   Palette Manager  provides a controlled mechanism for an application to set 
  498. the hardware color palette by making requests for custom colors. It provides 
  499. arbitration when multiple applications are trying to concurrently request 
  500. custom color be set. This arbitration follows a few simple rules: 
  501.  
  502.      o If the application is the active foreground window, then it gets all of 
  503.        it's color requests assigned to the hardware palette. If the active 
  504.        foreground  windows doesn't request all of the hardware palette slots, 
  505.        then the remaining colors slots are considered as unclaimed. 
  506.  
  507.      o If the application is a background window, then it is granted it's 
  508.        requests only from the color slots which are unclaimed. In this case the 
  509.        application may only be granted a subset of it's requests. The remaining 
  510.        color requests for the application are mapped to the closest matching 
  511.        color available in the hardware color palette. 
  512.  
  513.      o All slots of the default color palette are considered unclaimed. 
  514.  
  515.      o When a new application becomes the active foreground window, all the 
  516.        applications are notified by the system to reclaim their color requests. 
  517.        This allows the arbitration to start anew. It also allows the 
  518.        applications to repaint their windows, thereby utilizing the new color 
  519.        palette resulting from the arbitration. 
  520.  
  521.    With the Palette Manager's arbitration, the foreground application -- 
  522.  usually the one the user is concentrating on -- is always assured of being 
  523.  displayed with the most accurate color selection possible. The background 
  524.  applications are assured of, if not the most accurate color selection, then 
  525.  the best use of the colors available. 
  526.  
  527.  Other Functions 
  528.  
  529.    Palette Manager also allows applications a special function: animating color 
  530.  palette slots. The color value of an animated color palette slot can be 
  531.  changed very rapidly.  The change is visible immediately, without the need for 
  532.  window repainting.  PalView uses palette animation to create the color effect 
  533.  seen on the "About PalView" dialog box. 
  534.  
  535.  Special Notes 
  536.  
  537.    Palette Manager withholds 20 hardware color palette slots to maintain the 
  538.  default colors necessary for a consistent looking Desktop. These 20 slots are 
  539.  divided up as the first 10 and last 10 slots of the palette, as can be seen 
  540.  with PalView. This leaves a maximum 236 slots available for application usage. 
  541.  Although it is programmatically possible for an application to claim and 
  542.  override these 20 slots, thereby using the full 256 slots, it is generally 
  543.  discouraged. 
  544.  
  545.  More On Palettes 
  546.  
  547.  For more information on Palette Manager and color palette management, 
  548.  particularly from a programming standpoint, see: 
  549.  
  550.  "Color Palette Management with OS/2", John D. Webb, OS/2 Developer Magazine, 
  551.  November 1994. 
  552.  
  553.  
  554. ΓòÉΓòÉΓòÉ 25. Mouse Actions ΓòÉΓòÉΓòÉ
  555.  
  556.   This sections describes the mouse actions or assignments that are particular 
  557. to PalView. Mouse action that are, in general, standard for PM/WPS application 
  558. are not discussed; for information about the standard PM/WPS mouse action 
  559. assignments, see the manual OS/2 2.1 Using the Operating System or run the OS/2 
  560. Tutorial that is optionally installed with OS/2. 
  561.  
  562.   The following list describes the actions that can be performed with the 
  563. mouse, along with the necessary conditions and locations : 
  564.  
  565.  "Pop Up" the Main Menu 
  566.  
  567.     Action 
  568.               Single-click the right mouse button (i.e. mouse button 2). 
  569.     Location 
  570.               Anywhere on the palette entry display field (i.e. on any of the 
  571.               colored squares). 
  572.     Condition 
  573.               At any time. 
  574.  
  575.  Select color entry for the RGB Component Display 
  576.  
  577.     Action 
  578.               Move the mouse pointer over the palette entry display field (i.e. 
  579.               on any of the colored squares). 
  580.     Location 
  581.               Anywhere on the palette entry display field. 
  582.     Condition 
  583.               Only when the RGB Component Display has been enabled via the 
  584.               Settings Dialog. 
  585.     Note 
  586.               When the RGB Component Display is enabled, the mouse pointer is 
  587.               set to look like a magnifying glass: 
  588.  
  589.  Dynamically update the RGB Component Display of an "animated" palette entry 
  590.  
  591.     Action 
  592.               Click and hold the left mouse button (i.e. mouse button 1). 
  593.     Location 
  594.               Over the palette entry (i.e. the colored square) of interest. 
  595.     Condition 
  596.               Only when the RGB Component Display has been enabled via the 
  597.               Settings Dialog. 
  598.     Note 
  599.               For information on animated palette entries, see the section How 
  600.               Color Palettes Work. 
  601.  
  602.  Reset the default System Color Palette 
  603.  
  604.     Action 
  605.               Double-click the left mouse button. 
  606.     Location 
  607.               Anywhere on the palette entry display field (i.e. on any of the 
  608.               colored squares). 
  609.     Condition 
  610.               At any time. 
  611.  
  612.  Note:  This section describes PalView mouse actions for an OS/2 system using 
  613.  the default mouse mappings. If changes have been made to the default System 
  614.  mouse action settings via the Mappings page of the Mouse Settings object 
  615.  (under the System Setup object), then PalView will conform to these changes. 
  616.  For example, if the action to display pop-up menus is changed from the PM/WPS 
  617.  default of Single-clicking button 2 to Single-clicking button 1 with the ALT 
  618.  key pressed, then PalView will require the new action to display it's pop-up 
  619.  menu rather than the default action described in the section above. 
  620.  
  621.  
  622. ΓòÉΓòÉΓòÉ 26. Limitations ΓòÉΓòÉΓòÉ
  623.  
  624.   This section will describe the known caveats or limitations of PalView. 
  625.  
  626.  o PalView only works on machines capable of supporting Palette Manager. For 
  627.    example, VGA does not support Palette Manager, therefore if PalView is run 
  628.    on a VGA machine, it will report that Palette Manager is not supported and 
  629.    exit. Most current SVGA, XGA, and 8514A drivers support Palette Manager. If 
  630.    in doubt, check with the video driver manufacturer. 
  631.  
  632.  o PalView is currently only designed to work with palettes of 256 colors. This 
  633.    is due to the lack of palette arbitration in true-color (or near true color) 
  634.    configurations (i.e. there wouldn't be any changes for PalView to display); 
  635.    it is also due, in no small part, to the difficulties of displaying 65,536 
  636.    or more color entries in a meaningful way that doesn't also cover the entire 
  637.    screen area. 
  638.  
  639.  o The 'Reset Palette' feature of PalView may not work in all cases. There is 
  640.    no explicit function built into the PM system to reset the palette, so 
  641.    PalView must try to trick PM into resetting the palette. PM is not always 
  642.    fooled by the trick. Hopefully, this will change in the future. 
  643.  
  644.  o Because PalView saves information about it window size and position between 
  645.    invocations of the application, if the screen resolution is changed (e.g. 
  646.    changed from 1024x768 to 640x480) between invocations, the PalView window 
  647.    may size and position itself incorrectly the next time it is run. This is 
  648.    because, under OS/2, size and position are resolution dependent. Incorrect 
  649.    sizing can be easily corrected by pulling up the Settings panel and changing 
  650.    (i.e. setting) the size to another size and then changing it back. Incorrect 
  651.    positioning may be corrected by moving the window to the desired location. 
  652.  
  653.  o If one of PalView's dialog boxes is opened and then closed while monitoring 
  654.    a palette animating application, and the dialog was covering the main 
  655.    PalView window, the palette animation may suspend. This is caused by PalView 
  656.    repainting it's window (and grabbing the palette to do so) while being the 
  657.    active focus window; this takes away the reserved animating palette slots 
  658.    from the palette animating application. If the palette animating application 
  659.    is made the active focus window, then palette animation should resume as 
  660.    normal. 
  661.  
  662.  o If the "About PalView" dialog box (which is a palette animating window) is 
  663.    opened while monitoring a palette animating application, and another palette 
  664.    managing application is also running, it is possible that the palette 
  665.    managing application may not be draw properly when the "About PalView" 
  666.    dialog is close. To fix the drawing, simply cause a repaint of the palette 
  667.    animating application while it is the active focus window; an easy way to do 
  668.    this is to minimize and then restore the applications window. 
  669.  
  670.  o If the 'Floating Window' feature of PalView is enabled, then in a few 
  671.    special cases the PalView window may float to the top of OS/2's desktop 
  672.    Lockup window. The special cases are limited to when a message box is 
  673.    generated by the Lockup screen, as in the case of typing in an incorrect 
  674.    password or pressing the help button. This is due to how PM handles the 
  675.    Z-ordering during the Lockup Screen process. This is a cosmetic problem 
  676.    only; because PalView does not influence the active window or the window 
  677.    modal state of PM, this problem will never inhibit the user's ability to 
  678.    unlock the OS/2 desktop Lockup window ! 
  679.  
  680.  
  681. ΓòÉΓòÉΓòÉ 27. Technical Support ΓòÉΓòÉΓòÉ
  682.  
  683.   PalView, as stated in the section Legalities is provided free of charge on a 
  684. strictly "as is" basis. 
  685.  
  686.   However, the author will make a good faith effort to address: 
  687.  
  688.      o Errors, traps, unexpected behavior, and problems encountered with 
  689.        PalView. 
  690.      o Errors and typos in PalView's help system documentation. 
  691.      o Questions about PalView's general operation. 
  692.      o Questions about distributing PalView. 
  693.      o Comments and criticisms of PalView. 
  694.      o Feature suggestions and enhancements for PalView. 
  695.  
  696.    Please send all correspondence to the author, John D. Webb, at the following 
  697.  E-mail address: 
  698.  
  699.  Compuserve 
  700.            71075,1117 
  701.  Internet 
  702.            71075.1117@compuserve.com 
  703.  
  704.  Note:  The author cannot guarantee a timely response to all inquiries. 
  705.  
  706.  
  707. ΓòÉΓòÉΓòÉ 28. Legalities ΓòÉΓòÉΓòÉ
  708.  
  709. Copyright 
  710.  
  711. Program and documentation copyright(c) 1994, John D. Webb. All rights reserved. 
  712.  
  713. License 
  714.  
  715. The author, John D. Webb, licenses the program, PalView, to you under the 
  716. following conditions: 
  717.  
  718.  o There is no monetary charge or fee for your use of the program. 
  719.  
  720.  o You may make copies of the program. 
  721.  
  722.  o You may distribute copies of the program, under the following conditions: 
  723.  
  724.     - The components that comprise the PalView program, including the program 
  725.       executable file (.EXE) and the program help file (.HLP), are always 
  726.       distributed together. 
  727.  
  728.     - The components that comprise the PalView program, including the program 
  729.       executable file (.EXE) and the program help file (.HLP), are not tampered 
  730.       with or altered in any way. 
  731.  
  732.     - The copyright and warranty notices for the program are not tampered with, 
  733.       altered, or removed. 
  734.  
  735.     - There is never a direct monetary charge, sales fee, or rental fee 
  736.       attached to a distributed copy. If you want to include and distribute 
  737.       PalView in a collection of programs, where a charge or fee applies solely 
  738.       to the distribution media or to the collection as a whole, please first 
  739.       receive written permission from the author at the address listed in the 
  740.       Technical Support. 
  741.  
  742.  o You may not reverse engineer, decompile, disassemble or create derivative 
  743.    work from the program. 
  744.  
  745.  Disclaimer of Warranties 
  746.  
  747.    This program, PalView, is not warranted in any manner and is provided 
  748.  strictly "as is". There is no warranty, either express or implied, oral or 
  749.  written, including implied warranties of merchantability and fitness for a 
  750.  particular purpose. Note that your state laws may disallow exclusion of 
  751.  implied warranties. 
  752.  
  753.  Limitation of Liability 
  754.  
  755.    The author, John D. Webb, shall not be liable for any direct, indirect, 
  756.  incidental, consequential, special, or punitive damages arising out of your 
  757.  use, or inability to use, this program, even if he has been advised of the 
  758.  possibility of such damages. 
  759.  
  760.  Note:  If you do not agree to and accept all terms and conditions stated in 
  761.  this document, simply delete all copies of the PalView program in your 
  762.  possession. Your continued use of this program constitutes your acceptance of 
  763.  all the terms and conditions as stated.