home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / VSCPPv4.zip / VACPP / IBMCPP / HELP / IPFREF.INF (.txt) < prev    next >
OS/2 Help File  |  1995-03-14  |  877KB  |  21,420 lines

  1.  
  2. ΓòÉΓòÉΓòÉ 1. Notices ΓòÉΓòÉΓòÉ
  3.  
  4. First Edition (October 1994) 
  5.  
  6. The following paragraph does not apply to the United Kingdom or any country 
  7. where such provisions are inconsistent with local law:  INTERNATIONAL BUSINESS 
  8. MACHINES CORPORATION PROVIDES THIS PUBLICATION "AS IS" WITHOUT WARRANTY OF ANY 
  9. KIND, EITHER EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 
  10. WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Some states 
  11. do not allow disclaimer of express or implied warranties in certain 
  12. transactions, therefore, this statement may not apply to you. 
  13.  
  14. This publication could include technical inaccuracies or typographical errors. 
  15. Changes are periodically made to the information herein; these changes will be 
  16. incorporated in new editions of the publication. IBM may make improvements 
  17. and/or changes in the product(s) and/or the program(s) described in this 
  18. publication at any time. 
  19.  
  20. It is possible that this publication may contain reference to, or information 
  21. about, IBM products (machines and programs), programming, or services that are 
  22. not announced in your country.  Such references or information must not be 
  23. construed to mean that IBM intends to announce such IBM products, programming, 
  24. or services in your country. 
  25.  
  26. Requests for technical information about IBM products should be made to your 
  27. IBM authorized reseller or IBM marketing representative. 
  28.  
  29.  
  30. ΓòÉΓòÉΓòÉ 1.1. Copyright Notices ΓòÉΓòÉΓòÉ
  31.  
  32. COPYRIGHT LICENSE: This publication contains printed sample application 
  33. programs in source language, which illustrate OS/2 programming techniques. You 
  34. may copy, modify, and distribute these sample programs in any form without 
  35. payment to IBM, for the purposes of developing, using, marketing or 
  36. distributing application programs conforming to the OS/2 application 
  37. programming interface. 
  38.  
  39. Each copy of any portion of these sample programs or any derivative work, which 
  40. is distributed to others, must include a copyright notice as follows: "(C) 
  41. (your company name) (year).  All rights reserved." 
  42.  
  43. (C) Copyright International Business Machines Corporation 1994. All rights 
  44. reserved. 
  45. Note to U.S. Government Users - Documentation related to restricted rights - 
  46. Use, duplication or disclosure is subject to restrictions set forth in GSA ADP 
  47. Schedule Contract with IBM Corp. 
  48.  
  49.  
  50. ΓòÉΓòÉΓòÉ 1.2. Disclaimers ΓòÉΓòÉΓòÉ
  51.  
  52. References in this publication to IBM products, programs, or services do not 
  53. imply that IBM intends to make these available in all countries in which IBM 
  54. operates. Any reference to an IBM product, program or service is not intended 
  55. to state or imply that only IBM's product, program, or service may be used. Any 
  56. functionally equivalent product, program, or service that does not infringe any 
  57. of IBM's intellectual property rights or other legally protectable rights may 
  58. be used instead of the IBM product, program, or service. Evaluation and 
  59. verification of operation in conjunction with other products, programs, or 
  60. services, except those expressly designated by IBM, are the user's 
  61. responsibility. 
  62.  
  63. IBM may have patents or pending patent applications covering subject matter in 
  64. this document. The furnishing of this document does not give you any license to 
  65. these patents. You can send license inquiries, in writing, to the IBM Director 
  66. of Licensing, IBM Corporation, 500 Columbus Avenue, Thornwood NY 10594, U.S.A. 
  67.  
  68.  
  69. ΓòÉΓòÉΓòÉ 1.3. Trademarks ΓòÉΓòÉΓòÉ
  70.  
  71. The following terms are trademarks of the IBM Corporation in the United States 
  72. or other countries: 
  73.  
  74. Common User Access
  75. CUA
  76. IBM
  77. Operating System/2
  78. OS/2
  79. Personal System/2
  80. Presentation Manager
  81. Systems Application Architecture
  82.  
  83. The following terms are trademarks of other companies: 
  84.  
  85.  Adobe               Adobe Systems Incorporated 
  86.  Helvetica           Linotype AG 
  87.  Intel486            Intel Corporation 
  88.  PostScript          Adobe Systems Incorporated 
  89.  Times New Roman     Monotype Corporation 
  90.  
  91.  
  92. ΓòÉΓòÉΓòÉ 2. Introducing IPF ΓòÉΓòÉΓòÉ
  93.  
  94. The Information Presentation Facility (IPF) is a tool that enables you to 
  95. create online information, to specify how it will appear on the screen, to 
  96. connect various parts of the information, and to provide help information that 
  97. can be requested by the user. 
  98.  
  99. It is a tool for both the information author and the application programmer. 
  100. IPF implements guidelines recommended by the Common User Access* (CUA*) element 
  101. of the Systems Application Architecture* (SAA*) platform. 
  102.  
  103. *  Trademark of the IBM Corporation 
  104.  
  105.  
  106. ΓòÉΓòÉΓòÉ 2.1. What IPF Offers ΓòÉΓòÉΓòÉ
  107.  
  108. As an author of online information, you need to know what type of information 
  109. users need - tutorial, reference, or help. For example, they might need a 
  110. tutorial to learn a software program, reference information for additional 
  111. topics, or help information for assistance with the program. 
  112.  
  113. As a programmer implementing or customizing online information, you need to 
  114. know how the IPF programming interface supports your intended design. 
  115.  
  116. IPF features include: 
  117.  
  118.    o  A tagging language that formats text, provides ways to connect 
  119.       information units, and customizes windows 
  120.    o  A compiler that creates online documents and help windows 
  121.    o  A viewing program that displays formatted online documents 
  122.    o  A help manager programming interface that allows you to control and 
  123.       customize the display of online information. 
  124.  
  125.  
  126. ΓòÉΓòÉΓòÉ 2.1.1. The Tag Language ΓòÉΓòÉΓòÉ
  127.  
  128. The IPF tagging language provides the instructions for how online information 
  129. is to be displayed.  With these instructions, or tags, you can: 
  130.  
  131.    o  Highlight text 
  132.    o  Set margins 
  133.    o  Add lists, notes, and notices 
  134.    o  Create tables 
  135.    o  Change the size and style (font), and the color of displayed information 
  136.    o  Control the formatting of lines of text 
  137.    o  Illustrate with examples, figures, and art 
  138.    o  Customize windows 
  139.    o  Define ways to connect information units 
  140.    o  Establish communication links to other applications. 
  141.  
  142.  
  143. ΓòÉΓòÉΓòÉ 2.1.2. The IPF Compiler ΓòÉΓòÉΓòÉ
  144.  
  145. When you have finished writing and tagging, information is ready to be 
  146. compiled. The IPF compiler interprets the tags in your source file and converts 
  147. the information into the appropriate format.  The compiler is able to 
  148. distinguish between tags and text because each tag starts with a colon (:), is 
  149. immediately followed by the tag name, and then ends with a period (.). For 
  150. example, the tag that indicates a new paragraph is the :p. tag.  When the 
  151. compiler encounters this tag, it interprets it as, "Insert a blank line before 
  152. the paragraph tag and start the text that follows the paragraph tag." 
  153.  
  154. At compile time, you specify what format you want.  For online documents, you 
  155. direct IPF to generate a file with an INF extension.  For help information, you 
  156. specify a file with an HLP extension.  For information about compiler commands 
  157. and options, see Starting the IPF Compiler. 
  158.  
  159.  
  160. ΓòÉΓòÉΓòÉ 2.1.3. The View Program ΓòÉΓòÉΓòÉ
  161.  
  162. The View program (VIEW) enables you to display your compiled document. VIEW 
  163. retrieves files with an INF extension and displays the formatted information in 
  164. a standard OS/2 window. 
  165.  
  166. Note:  You cannot use VIEW to display files with an HLP extension. For 
  167.        information about how to use VIEW, see Viewing an Online Document or see 
  168.        the Command Reference. 
  169.  
  170.  
  171. ΓòÉΓòÉΓòÉ 2.1.4. The Help Manager Programming Interface ΓòÉΓòÉΓòÉ
  172.  
  173. You can use IPF to develop a user interface that provides help for application 
  174. windows and fields within windows. You can even customize help information by 
  175. writing Presentation Manager programs that communicate with IPF. 
  176.  
  177.  
  178. ΓòÉΓòÉΓòÉ 2.2. Features of the IPF Interface ΓòÉΓòÉΓòÉ
  179.  
  180. Online designs need to communicate information through a simple interface that 
  181. lets the user find information quickly and easily.  With IPF you can develop an 
  182. interface that provides unique usability features, including: 
  183.  
  184.    o  Hypertext links 
  185.    o  Push buttons 
  186.    o  Customized windows 
  187.    o  Master help index and glossary. 
  188.  
  189.  
  190. ΓòÉΓòÉΓòÉ 2.2.1. Hypertext and Hypergraphic Links ΓòÉΓòÉΓòÉ
  191.  
  192. IPF gives the user the ability to connect to different units of text and 
  193. graphics. The connections that join these units are known as hypertext or 
  194. hypergraphic links.  For example, a user can select a particular link to obtain 
  195. related information or perhaps to see a graphical description of the topic. 
  196.  
  197. An advantage of using hypertext or hypergraphic links is that the author can 
  198. present information in a nonlinear way. Users can then access information both 
  199. sequentially and randomly. This lets them explore or branch into subject matter 
  200. that may be unclear or that needs to be reviewed.  For information about 
  201. hypertext and hypergraphic links, see Linking. 
  202.  
  203.  
  204. ΓòÉΓòÉΓòÉ 2.2.2. Push Buttons ΓòÉΓòÉΓòÉ
  205.  
  206. Push buttons provide users with a fast and easy way to access commonly used IPF 
  207. tasks.  When a user selects a push button, the action represented by the text 
  208. on the push button is carried out immediately.  IPF provides one set of push 
  209. buttons for online documents and another set for Help windows.  IPF also 
  210. provides help on how to use the push buttons. 
  211.  
  212. As a designer, you can change the text of a push button, select which push 
  213. buttons you want to use, add your own push buttons, and specify the area of a 
  214. window to place them.  For more information, see Push Buttons. 
  215.  
  216.  
  217. ΓòÉΓòÉΓòÉ 2.2.3. Customized Windows ΓòÉΓòÉΓòÉ
  218.  
  219. A window is the area of the screen in which information is displayed. As an 
  220. author of online information, you can customize windows.  Different windowing 
  221. effects are achieved with the IPF tagging language. For example, a window can 
  222. be split so that scrollable text can be displayed beside a stationary 
  223. illustration that the text describes. 
  224.  
  225. The following figure shows an IPF split-window design that describes the IBM* 
  226. Personal System/2* Model 90 XP 486** series. 
  227.  
  228. * Trademark of the IBM Corporation 
  229.  
  230. ** Trademark of Intel Corporation 
  231.  
  232. IPF Split Window 
  233.  
  234. For more information, see Customizing Windows. 
  235.  
  236.  
  237. ΓòÉΓòÉΓòÉ 2.2.4. Master Help Index and Glossary ΓòÉΓòÉΓòÉ
  238.  
  239. The OS/2 operating system provides online help that can be accessed through 
  240. both a Master Help Index and a Glossary. The Master Help Index and the Glossary 
  241. are both collections of alphabetized pointers to information panels. Their 
  242. primary purpose is to provide quick access to help topics. With them, you can 
  243. provide such features as: 
  244.  
  245.    o  Availability of the Master Help Index from anywhere in the WorkPlace 
  246.       Shell 
  247.  
  248.    o  A side-by-side window design that lets the user scan index entries on one 
  249.       side, then display the help-text information on the other side 
  250.  
  251.    o  A menu and buttons that let the user perform a search, print help-text 
  252.       windows, or request assistance. 
  253.  
  254.  The following figure shows an example of the Master Index window and the 
  255.  opened help-text window, "Changing, Adding, and Deleting Fonts." 
  256.  
  257.  For more information, see Customizing Master Help Index and Glossary Objects 
  258.  
  259.  
  260. ΓòÉΓòÉΓòÉ 3. IPF User Interface ΓòÉΓòÉΓòÉ
  261.  
  262. This chapter describes the components of the IPF user interface.  As an author, 
  263. you will use these components when developing an online document or online 
  264. help. As a programmer, you should understand the IPF user interface before you 
  265. enable your application to work with online help. 
  266.  
  267. Online documents include reference or procedural information, such as converted 
  268. printed material, tutorials, and organization charts.  Online help includes 
  269. information that users of online documents or application programs might want 
  270. to access. 
  271.  
  272. Because they have varying backgrounds, interests, motivations, and experiences, 
  273. no two users of online information are exactly alike.  To accommodate 
  274. differences, IPF provides a flexible interface that can be customized according 
  275. to personal preference.  However, when an online document requires no special 
  276. design considerations, the IPF compiler provides an automatic default design 
  277. that includes: 
  278.  
  279.    o  A Contents window 
  280.  
  281.    o  Standard OS/2 windows 
  282.  
  283.    o  Help. 
  284.  
  285.  
  286. ΓòÉΓòÉΓòÉ 3.1. The Contents Window ΓòÉΓòÉΓòÉ
  287.  
  288. When users first select a document for viewing, IPF displays an OS/2 window 
  289. that includes a table of contents (Contents window) similar to the window shown 
  290. in the following figure. 
  291.  
  292. A Contents Window. Users select the highlighted item and go directly to a 
  293. window of text. 
  294.  
  295.  
  296. ΓòÉΓòÉΓòÉ 3.2. The Standard Window ΓòÉΓòÉΓòÉ
  297.  
  298. Unless special window characteristics are defined with IPF tags, the IPF 
  299. compiler formats a window that includes the following elements: 
  300.  
  301.    o  Menu bar 
  302.    o  Title bar icon 
  303.    o  Title bar 
  304.    o  Maximize button 
  305.    o  Hide button 
  306.    o  Horizontal scroll bar 
  307.    o  Vertical scroll bar 
  308.    o  Push buttons. 
  309.  
  310.  The following figure shows a standard window and its elements. 
  311.  
  312.  Standard Window and Elements 
  313.  
  314.  The title bar icon, and the maximize and hide buttons allow a user to change 
  315.  the size and position of a window.  The menu bar, push buttons, and scroll 
  316.  bars allow a user to work with the window's contents.  The window title 
  317.  indicates the subject of the information, or name of the object, seen in the 
  318.  window. 
  319.  
  320.  
  321. ΓòÉΓòÉΓòÉ 3.3. Help ΓòÉΓòÉΓòÉ
  322.  
  323. While using an online document or application program, a user occasionally 
  324. requires additional information about choices, fields, or procedures for a 
  325. task. CUA guidelines recommend that a product provide information to a user 
  326. about how to use the product. Information about how to use a product is known 
  327. as help information. The OS/2 user interface for help information is developed 
  328. with IPF and is accessible from the menu bar.  Help can also be accessed from 
  329. push buttons located at the bottom of the window or by pressing the F1 key. 
  330.  
  331.  
  332. ΓòÉΓòÉΓòÉ 3.3.1. Main Help Window ΓòÉΓòÉΓòÉ
  333.  
  334. When a user requests help from a window, IPF displays the main help window, the 
  335. characteristics of which are: 
  336.  
  337.    o  Menu bar 
  338.    o  Title bar icon 
  339.    o  Title bar 
  340.    o  Maximize button 
  341.    o  Horizontal scroll bar 
  342.    o  Vertical scroll bar 
  343.    o  Push buttons. 
  344.  
  345.  The main help window cannot be minimized. 
  346.  
  347.  Within the main help window is the help-text window. The help-text window 
  348.  contains the response to the user's request for help. The characteristics of 
  349.  this window are: 
  350.  
  351.    o  Title bar icon 
  352.    o  Title bar (shows title of the selected help window) 
  353.    o  Maximize button 
  354.    o  Hide button 
  355.    o  Horizontal scroll bar 
  356.    o  Vertical scroll bar. 
  357.  
  358.  The windows shown in the lower right corner of the following figure are main 
  359.  help and help-text windows. 
  360.  
  361.  An IPF Main Help Window with its Help-Text Window. The title "Help for Viewing 
  362.  a Document" that appears in the title bar was created by the author of the 
  363.  help-text window. 
  364.  
  365.  When the main help window is first opened, its position is such that it covers 
  366.  the smallest part of the online document or application window as possible. 
  367.  The help-text window is opened at its maximum size within the main help 
  368.  window. 
  369.  
  370.  However, when the main help window is opened, it can be moved and resized, as 
  371.  can the help-text window. If the user makes the help-text window larger or 
  372.  smaller, the text within the window is reformatted to fit the new window size. 
  373.  
  374.  
  375. ΓòÉΓòÉΓòÉ 3.3.2. Selection Lists ΓòÉΓòÉΓòÉ
  376.  
  377. Selection lists appear when some of the following menu bar choices are 
  378. selected: 
  379.  
  380.    o  Viewed pages, under Options 
  381.    o  Contents, under Options 
  382.    o  Help index, under Help 
  383.    o  Libraries 
  384.  
  385.  The following figure shows the Viewed Pages selection list. 
  386.  
  387.  View Pages Selection List 
  388.  
  389.  Search results also are displayed in a selection list. Selection lists differ 
  390.  from the help-text window in that they can be closed, either by selecting the 
  391.  Close symbol or by pressing the Esc key. 
  392.  
  393.  Selecting the hide button from the title bar while a help-text window, 
  394.  Contents window, Viewed Pages window, Index window, or Search results window 
  395.  is displayed, results in the window being replaced by an icon. 
  396.  
  397.  
  398. ΓòÉΓòÉΓòÉ 3.3.3. Menu Bar ΓòÉΓòÉΓòÉ
  399.  
  400. The following figure shows the menu bar that has the choices Services, Options, 
  401. and Help. 
  402.  
  403. When Services, Options, or Help is selected, a menu appears with a list of 
  404. entries that also can be selected. Some entries have an associated shortcut key 
  405. or key combination.  These are shown to the right of the menu item. 
  406.  
  407.  
  408. ΓòÉΓòÉΓòÉ 3.3.3.1. Services Menu ΓòÉΓòÉΓòÉ
  409.  
  410. The Services menu shows a list of available services. 
  411.  
  412. Services Menu 
  413.  
  414.  
  415. ΓòÉΓòÉΓòÉ 3.3.3.1.1. Search ΓòÉΓòÉΓòÉ
  416.  
  417. This choice, and the Search push button, display the window shown in the 
  418. following figure. The user can type a text string consisting of letters, 
  419. numbers, blank spaces, and special characters, then select any of the choices 
  420. to search for the text string. 
  421.  
  422. Search Window 
  423.  
  424. Global file-name characters (wildcards) can be used with the text string; for 
  425. example: 
  426.  
  427. *current directory*
  428.  
  429. The global file-name character, in this case an asterisk, automatically finds 
  430. all possibilities of the current directory string. 
  431.  
  432. Following are descriptions of Search window choices: 
  433.  
  434.  This section 
  435.          Searches the currently displayed help-text window and highlights all 
  436.          occurrences of the search string that are found. 
  437.  
  438.  Marked sections 
  439.          Searches the online-document windows or help windows whose titles were 
  440.          marked in the Contents window.  IPF does not search unmarked secondary 
  441.          windows, or windows attached to the marked window by hypertext links. 
  442.          Before selecting Marked sections, the user must select Contents then 
  443.          mark the help titles to be searched. If no help titles are marked, the 
  444.          Marked sections choice is dimmed. 
  445.  
  446.          Sections are marked with the mouse by pressing and holding the Ctrl 
  447.          key then clicking mouse button 1. Sections are marked with the 
  448.          keyboard by using the cursor keys to highlight the item and then 
  449.          pressing the spacebar.  The same key sequences are used to unmark the 
  450.          selection. 
  451.  
  452.          If the search is successful, IPF displays a list of the window titles 
  453.          where the text string was found.  The search string is shown in the 
  454.          title bar of the search results window. 
  455.  
  456.  All sections 
  457.          Searches the entire help library or online document and displays a 
  458.          list of the window titles where occurrences of the search string were 
  459.          found. The search string is shown in the title bar of the search 
  460.          results window. It does not search title text. 
  461.  
  462.  Index 
  463.          Searches the index and displays a list of index entries in which the 
  464.          text string was found. 
  465.  
  466.          If no search string is entered, this choice displays an alphabetic 
  467.          list of all index topics in the help library or online document. 
  468.  
  469.  Marked libraries 
  470.          Searches selected help libraries or online documents. The user must be 
  471.          in an active window of an online document or help library and follow 
  472.          this procedure: 
  473.  
  474.       1. Select Options then Libraries. 
  475.  
  476.       2. Mark one or more libraries. 
  477.  
  478.       3. Select Services, then Search, then Marked libraries. 
  479.  
  480.       4. Select the Search push button. 
  481.  
  482.  All libraries 
  483.          Searches all help libraries or online documents and displays a list of 
  484.          the window titles where the text string was found. The search string 
  485.          is shown in the title bar of the window. 
  486.  
  487.  
  488. ΓòÉΓòÉΓòÉ 3.3.3.1.2. Print ΓòÉΓòÉΓòÉ
  489.  
  490. This choice, and the Print push button, display the window shown in the 
  491. following figure. The output is the text within the window. The user can select 
  492. any of the choices to print online information. All of the printed output is 
  493. sent to the default printer. All of the information prints as WYSIWYG 
  494. (What-You-See-Is-What-You-Get). 
  495.  
  496. Print Window 
  497.  
  498. Following are descriptions of Print window choices: 
  499.  
  500.  This section 
  501.          Sends the contents of the current window to be printed. 
  502.  
  503.  Marked sections 
  504.          Sends the sections whose titles were marked in the Contents window to 
  505.          be printed. Before selecting this choice, the user must select 
  506.          Contents and mark the titles to be printed. If no titles are marked, 
  507.          Marked sections is dimmed. 
  508.  
  509.          Sections are marked with the mouse by pressing and holding the Ctrl 
  510.          key then clicking mouse button 1. Sections are marked with the 
  511.          keyboard by using the cursor keys to highlight the item and then 
  512.          pressing the spacebar.  The same key sequences are used to unmark the 
  513.          selection. 
  514.  
  515.  All sections 
  516.          Sends the entire online document or help library to be printed. 
  517.  
  518.  Index 
  519.          Sends the help-index or online document index to be printed. 
  520.  
  521.  Contents 
  522.          Sends the help library or online-document contents list to be printed. 
  523.  
  524.  
  525. ΓòÉΓòÉΓòÉ 3.3.3.1.3. Bookmark ΓòÉΓòÉΓòÉ
  526.  
  527. This choice displays the window shown in the following figure. 
  528.  
  529. Bookmark Window 
  530.  
  531.  Place       Saves the user's place in the document being viewed. 
  532.  
  533.  View        Redisplays a specific place that was marked. 
  534.  
  535.  Remove      Deletes one marked place. 
  536.  
  537.  Remove all  Deletes all marked places. 
  538.  
  539.  Note        The Bookmark selections are saved across invocations in a file 
  540.              with the same name as that of the book but with a CP extension. 
  541.              Bookmarks are only available in online books. 
  542.  
  543.  
  544. ΓòÉΓòÉΓòÉ 3.3.3.1.4. New window ΓòÉΓòÉΓòÉ
  545.  
  546. This choice opens a new window for the currently selected item (for example, 
  547. table of content entry, hypertext link, index list, or search list) so the user 
  548. can see more than one topic displayed at the same time. The user can resize the 
  549. new window so the previous window also can be seen, then resize both to view 
  550. both windows. 
  551.  
  552.  
  553. ΓòÉΓòÉΓòÉ 3.3.3.1.5. Copy ΓòÉΓòÉΓòÉ
  554.  
  555. Copies the window currently being viewed to the system clipboard. The user can 
  556. then select Paste from the menu of the OS/2 System Editor (or any other editor 
  557. with this capability) to view or edit the information. 
  558.  
  559.  
  560. ΓòÉΓòÉΓòÉ 3.3.3.1.6. Copy to file ΓòÉΓòÉΓòÉ
  561.  
  562. Copies the information to the file, TEXT.TMP. This file is placed in the 
  563. current directory. If TEXT.TMP already exists, it is replaced. 
  564.  
  565.  
  566. ΓòÉΓòÉΓòÉ 3.3.3.1.7. Append to file ΓòÉΓòÉΓòÉ
  567.  
  568. Copies the information to the file, TEXT.TMP. This file is placed in the 
  569. current directory. If TEXT.TMP already exists, the new information is added to 
  570. the existing information. 
  571.  
  572.  
  573. ΓòÉΓòÉΓòÉ 3.3.3.2. Options Menu ΓòÉΓòÉΓòÉ
  574.  
  575. Selecting Options displays the menu shown in the following figure. 
  576.  
  577. Options Menu 
  578.  
  579. The first five choices are active when the Contents window is active. If the 
  580. Contents window is not active, these choices are dimmed. These choices control 
  581. how the table of contents will be displayed. 
  582.  
  583. A tree-structured table of contents is created if more than one heading level 
  584. is specified with IPF heading tags when the windows are created. (For a 
  585. description of heading tags, see Headings.) 
  586.  
  587. If there are additional entries under a heading, "+" appears to the left of the 
  588. entry.  When an entry is expanded one level, the next level of entries 
  589. subordinate to the selected entry is displayed, and the "+" is replaced by a 
  590. "-". The user can click on the "+" or "-" symbols to expand or contract the 
  591. contents. 
  592.  
  593.  
  594. ΓòÉΓòÉΓòÉ 3.3.3.2.1. Expand one level ΓòÉΓòÉΓòÉ
  595.  
  596. Expands the first level subordinate to the selected entry. 
  597.  
  598.  
  599. ΓòÉΓòÉΓòÉ 3.3.3.2.2. Expand branch ΓòÉΓòÉΓòÉ
  600.  
  601. Expands all levels subordinate to the selected entry. 
  602.  
  603.  
  604. ΓòÉΓòÉΓòÉ 3.3.3.2.3. Expand all ΓòÉΓòÉΓòÉ
  605.  
  606. Displays the entire tree structure of the contents. 
  607.  
  608.  
  609. ΓòÉΓòÉΓòÉ 3.3.3.2.4. Collapse branch ΓòÉΓòÉΓòÉ
  610.  
  611. Contracts all levels subordinate to the selected entry. 
  612.  
  613.  
  614. ΓòÉΓòÉΓòÉ 3.3.3.2.5. Collapse all ΓòÉΓòÉΓòÉ
  615.  
  616. Displays only the highest level entries in the contents. 
  617.  
  618.  
  619. ΓòÉΓòÉΓòÉ 3.3.3.2.6. Contents ΓòÉΓòÉΓòÉ
  620.  
  621. Lists the table of contents for the document you are viewing. You can select 
  622. from the topics shown. This choice has the same function as the Contents push 
  623. button. 
  624.  
  625.  
  626. ΓòÉΓòÉΓòÉ 3.3.3.2.7. Index ΓòÉΓòÉΓòÉ
  627.  
  628. Displays an alphabetic list of the topics in the document.  You can select from 
  629. the index entries shown. This choice has the same function as the Index push 
  630. button. 
  631.  
  632.  
  633. ΓòÉΓòÉΓòÉ 3.3.3.2.8. Viewed pages ΓòÉΓòÉΓòÉ
  634.  
  635. This selection displays a list of all windows viewed during the current 
  636. session. Window titles are listed in the order that windows were viewed. If a 
  637. window is viewed more than once, its title appears as many times as it was 
  638. viewed. 
  639.  
  640. The maximum number of entries that can appear in the Viewed Pages window is 50. 
  641.  
  642.  
  643. ΓòÉΓòÉΓòÉ 3.3.3.2.9. Libraries ΓòÉΓòÉΓòÉ
  644.  
  645. Displays a list of online libraries that are available.  The libraries are 
  646. identified by their directory path. The help files are the directories 
  647. identified in the HELP environment variable.  The online books are the 
  648. directories identified in the BOOKSHELF. 
  649.  
  650.  
  651. ΓòÉΓòÉΓòÉ 3.3.3.2.10. Previous ΓòÉΓòÉΓòÉ
  652.  
  653. Displays the previously viewed window. Each time Previous is selected, the 
  654. previously viewed window is displayed, until the first window viewed in the 
  655. current session is shown. Selecting Previous again from a help window, ends the 
  656. current session. This choice has the same function as when the user selects the 
  657. Previous push button; or presses the Esc key. 
  658.  
  659.  
  660. ΓòÉΓòÉΓòÉ 3.3.3.3. Help Menu ΓòÉΓòÉΓòÉ
  661.  
  662. Selecting Help displays the menu shown in the following figure. 
  663.  
  664. Help Menu 
  665.  
  666.  
  667. ΓòÉΓòÉΓòÉ 3.3.3.3.1. Help index ΓòÉΓòÉΓòÉ
  668.  
  669. Displays an alphabetic list of topics for which help information is provided. 
  670.  
  671.  
  672. ΓòÉΓòÉΓòÉ 3.3.3.3.2. General help ΓòÉΓòÉΓòÉ
  673.  
  674. Displays general information describing the user interface and how to access 
  675. it. 
  676.  
  677.  
  678. ΓòÉΓòÉΓòÉ 3.3.3.3.3. Using help ΓòÉΓòÉΓòÉ
  679.  
  680. Displays a list that describes the different help information that is available 
  681. to users of the OS/2 operating system. 
  682.  
  683.  
  684. ΓòÉΓòÉΓòÉ 3.3.3.3.4. Keys help ΓòÉΓòÉΓòÉ
  685.  
  686. Displays information describing key assignments for the application. 
  687.  
  688. Note:  Providing Keys help is the responsibility of the application programmer. 
  689.        A simple help window can be created that lists each key combination 
  690.        assigned to an application function, and a brief description of what the 
  691.        function does. 
  692.  
  693.  
  694. ΓòÉΓòÉΓòÉ 3.3.3.3.5. Product information ΓòÉΓòÉΓòÉ
  695.  
  696. Displays copyright information. Providing product information also is the 
  697. responsibility of the application programmer. 
  698.  
  699.  
  700. ΓòÉΓòÉΓòÉ 3.3.3.3.6. Tutorial ΓòÉΓòÉΓòÉ
  701.  
  702. This choice is included in the Help menu if your application tells IPF that it 
  703. has created a Presentation Manager tutorial application. This choice has the 
  704. same function as the Tutorial push button. 
  705.  
  706. When the user selects Tutorial, IPF sends a message to the application that the 
  707. selection has been made.  The application then starts the tutorial. 
  708.  
  709.  
  710. ΓòÉΓòÉΓòÉ 3.3.3.4. Push Buttons ΓòÉΓòÉΓòÉ
  711.  
  712. Push buttons provide users with a fast and easy way to access commonly used IPF 
  713. functions.  When a user selects a push button, the action represented is 
  714. carried out immediately.  IPF provides the following set of push buttons: 
  715.  
  716.  
  717. ΓòÉΓòÉΓòÉ 3.3.3.4.1. Previous ΓòÉΓòÉΓòÉ
  718.  
  719. This push button lets the user see information from the previously viewed 
  720. window. This is the same function as when the user selects Options then 
  721. Previous from the menu bar, or presses the Esc key. 
  722.  
  723.  
  724. ΓòÉΓòÉΓòÉ 3.3.3.4.2. Search ΓòÉΓòÉΓòÉ
  725.  
  726. This push button displays a window that lets the user search for a word or 
  727. phrase.  This is the same function as when the user selects Services then 
  728. Search from the menu bar. 
  729.  
  730.  
  731. ΓòÉΓòÉΓòÉ 3.3.3.4.3. Print ΓòÉΓòÉΓòÉ
  732.  
  733. This push button displays a window that lets the user print one or more topics. 
  734. This is the same function as when the user selects Services then Print from the 
  735. menu bar. 
  736.  
  737.  
  738. ΓòÉΓòÉΓòÉ 3.3.3.4.4. Index ΓòÉΓòÉΓòÉ
  739.  
  740. This push button displays an alphabetic list of the index topics in a help 
  741. library or an online document.  This is the same function as when the user 
  742. selects Options then Index from the menu bar. 
  743.  
  744.  
  745. ΓòÉΓòÉΓòÉ 3.3.3.4.5. Contents ΓòÉΓòÉΓòÉ
  746.  
  747. This push button displays the Contents window.  This is the same function as 
  748. when the user selects Options then Contents from the menu bar. 
  749.  
  750.  
  751. ΓòÉΓòÉΓòÉ 3.3.3.4.6. Back ΓòÉΓòÉΓòÉ
  752.  
  753. This push button displays the previous page in the table of contents hierarchy. 
  754.  
  755.  
  756. ΓòÉΓòÉΓòÉ 3.3.3.4.7. Forward ΓòÉΓòÉΓòÉ
  757.  
  758. This push button displays the next page in the table of contents hierarchy. 
  759.  
  760.  
  761. ΓòÉΓòÉΓòÉ 3.3.3.4.8. Tutorial ΓòÉΓòÉΓòÉ
  762.  
  763. This push button is included only if a tutorial was specified in your 
  764. application.  This is the same function as when the user selects Help then 
  765. Tutorial from the menu bar. 1`.********* Start of Header 
  766. ********************************************** 
  767.  
  768.  
  769. ΓòÉΓòÉΓòÉ 4. Starting with the Tag Language ΓòÉΓòÉΓòÉ
  770.  
  771. As the author of online information, you can use the IPF tag language to define 
  772. various characteristics of text format. You also can use tags to define 
  773. characteristics of the window in which the text is displayed. 
  774.  
  775. There are 45 tags (excluding symbols) that make up the IPF tag language.  The 
  776. tags are mnemonic, making it easy to associate them with their functions. 
  777. However, before you can begin to use this language, you need to familiarize 
  778. yourself with the elements that make up the syntax of the tags, and special 
  779. rules that govern the use of the tags. 
  780.  
  781.  
  782. ΓòÉΓòÉΓòÉ 4.1. Syntax Conventions ΓòÉΓòÉΓòÉ
  783.  
  784. Each tag must start with a colon (:) and end with a period (.). (The period is 
  785. also known as a delimiter.) For example, the tag for a paragraph is: 
  786.  
  787. :p.
  788.  
  789. A tag indicates how the text that immediately follows it is to be processed. In 
  790. the following example, the text immediately after the paragraph tag (:p.) is 
  791. the actual text that is displayed in the window, and it will begin a new 
  792. paragraph. 
  793.  
  794. :p.There are fewer than 1200 manatees...
  795.  
  796.  
  797. ΓòÉΓòÉΓòÉ 4.1.1. End Tags ΓòÉΓòÉΓòÉ
  798.  
  799. Some tags require end tags. An end tag is e immediately followed by the tag. 
  800. For example, the end tag for the :userdoc. tag is: 
  801.  
  802. :euserdoc.
  803.  
  804. Most of the tags that have end tags affect text format or appearance. The end 
  805. tag tells the IPF compiler to end the operation associated with the tag.  If 
  806. you forget an end tag, the compiler displays an error message. 
  807.  
  808.  
  809. ΓòÉΓòÉΓòÉ 4.1.2. Nested Tags ΓòÉΓòÉΓòÉ
  810.  
  811. Nested tags are tags within other tags.  For example, a common way of 
  812. presenting information is in a list form; a tag begins the list, another tag 
  813. identifies each list item, and yet another tag ends the list.  An example of 
  814. the tagging for a simple list follows: 
  815.  
  816. :sl.
  817. :li.List item 1
  818. :li.List item 2
  819. :li.List item 3
  820. :esl.
  821.  
  822. The list-item tag (:li.) is required for each item in the list.  The :li. tags 
  823. are nested between the :sl. tag and the :esl. tag. 
  824.  
  825. Note:  After paragraph and heading tags, you will probably use list tags most 
  826.        often.  IPF provides general-purpose lists (simple, unordered, and 
  827.        ordered), and special-purpose lists (definition and parameter). 
  828.  
  829.  
  830. ΓòÉΓòÉΓòÉ 4.1.3. Text Strings ΓòÉΓòÉΓòÉ
  831.  
  832. Some tags have text strings associated with them. The string can immediately 
  833. follow the tag, or it can start the line immediately following the tag. For 
  834. example, the tagging for the title bar of a window is :h1. (one of the heading 
  835. tags) and a text string, which is called a title string.  You can enter it like 
  836. this: 
  837.  
  838. :h1.Save the Manatee
  839. or like this: 
  840.  
  841. :h1.
  842. Save the Manatee
  843.  
  844.  
  845. ΓòÉΓòÉΓòÉ 4.1.4. Attributes ΓòÉΓòÉΓòÉ
  846.  
  847. A tag also can have one or more attributes. An attribute contains additional 
  848. information about a tag's operation. The attribute has a name, which may have a 
  849. value or keyword assigned to it. 
  850.  
  851. In the following example, the attribute res= specifies a window identifier. 
  852.  
  853. :h1 res=001.Save the Manatee 
  854.  
  855. In this case, 001 is the assigned value.  The value assigned to a res= 
  856. attribute must be unique for each heading tag. This value also will be the 
  857. identifier for linking to the heading from elsewhere in the information. The 
  858. concept of linking is described in Hypertext Links. 
  859.  
  860. Notice that the period follows the attribute, not the heading tag.  The period 
  861. always follows the last attribute in the tag. 
  862.  
  863. You can specify many attributes in one tag, and they can extend over several 
  864. lines.  However, you cannot split an attribute.  For example, you cannot put 
  865. the res= attribute of the heading tag on one line, and its value, 001, on the 
  866. next line. 
  867.  
  868. Some attributes are optional and have a default (an assumed value) if they are 
  869. not included with the tag; other attributes are required. Tag attributes can be 
  870. specified in any order. 
  871.  
  872. As mentioned, some attributes are required.  For example, if you are creating a 
  873. help library, the res= attribute of a heading tag is required as a window 
  874. identifier (see Window Identifiers). 
  875.  
  876. An attribute also can have a keyword associated with it. For example, an 
  877. attribute of the :color. tag is fc= (foreground color), which is used to 
  878. specify the color of the text.  Its value can be equal to any of the following 
  879. keywords: 
  880.  
  881.    o  DEFAULT 
  882.    o  BLUE 
  883.    o  CYAN 
  884.    o  GREEN 
  885.    o  NEUTRAL 
  886.    o  RED 
  887.    o  YELLOW. 
  888.  
  889.  Not all attributes have values or keywords. For example, if you want a simple 
  890.  list with no blank lines between the list items, add the compact attribute to 
  891.  the simple-list tag (:sl.).  In the following example, notice the compact 
  892.  attribute stands by itself: 
  893.  
  894.   :sl compact.
  895.   :li.List item 1
  896.   :li.List item 2
  897.   :li.List item 3
  898.   :esl.
  899.  
  900.  
  901. ΓòÉΓòÉΓòÉ 4.1.4.1. Attribute Values with Blank Spaces ΓòÉΓòÉΓòÉ
  902.  
  903. If an attribute value includes blank spaces, the value must be enclosed in 
  904. single quotes.  For example: 
  905.  
  906. :font facename='Tms Rmn'.
  907.  
  908. Notice that the value has initial capitals.  For this particular case, they are 
  909. required; otherwise, the IPF compiler will not recognize them as valid values. 
  910.  
  911. Using some of the tags described thus far, you could produce a source file like 
  912. this: 
  913.  
  914. :userdoc.
  915. :h1 res=001.Save the Manatee
  916. :p.
  917. There are fewer than 1200 manatees in the state of Florida.
  918. Ten percent of the existing herds die each year
  919. because of:
  920. :sl compact.
  921. :li.Contact with boat propellers
  922. :li.Impact from boats and barges
  923. :li.Entrapment in locks and dams.
  924. :esl.
  925. :euserdoc.
  926.  
  927. The output produced from the source file is an OS/2 standard window. 
  928.  
  929. The menu-bar choices, Services, Options, and Help are provided automatically by 
  930. IPF. The title-bar line, "Save the Manatee," is generated by the :h1. tag. The 
  931. viewing area of the window displays the formatted information. 
  932.  
  933. An OS/2 Standard Window Produced from Source File 
  934.  
  935. The best way to learn about tags is to study the examples provided in the 
  936. following sections, then create some windows of your own. 
  937.  
  938.  
  939. ΓòÉΓòÉΓòÉ 4.2. Symbols ΓòÉΓòÉΓòÉ
  940.  
  941. You use symbols to produce characters that cannot be entered from the keyboard. 
  942. A symbol begins with an ampersand (&) and is followed by the symbol name and a 
  943. period.  For example, to produce a square bullet, which looks like this: 
  944.  
  945. Γûá
  946. Enter the symbol like this: 
  947.  
  948. &sqbul.
  949.  
  950. If you want the ampersand character (&) to appear in text, define it as the 
  951. symbol,  &.  Otherwise, the IPF compiler tries to interpret whatever text 
  952. follows the ampersand character as the name of a symbol, and will return the 
  953. error message, Invalid symbol. 
  954.  
  955. Symbols are case-sensitive.  That is, if you do not type them exactly as the 
  956. appear in the symbols table (see Symbols) you could get either the message, 
  957. Invalid Symbol, or a symbol different from the one you want. 
  958.  
  959. Note:  The symbols table is also available online when you install the Online 
  960.        Information component of the Developer's Toolkit for OS/2. 
  961.  
  962.  
  963. ΓòÉΓòÉΓòÉ 4.3. Headings ΓòÉΓòÉΓòÉ
  964.  
  965. Perhaps the most versatile tag is the heading tag. Heading tags enable 
  966. information to be displayed in windows, control entries in the Contents window, 
  967. control placement of push buttons in a window, and define the shape and size of 
  968. windows. With IPF, you can specify six levels of headings, :h1 through :h6. 
  969. For information about default heading levels that start a window and place 
  970. entries in the table of contents window, see the following topic on Controlling 
  971. Entries in the Contents Window. 
  972.  
  973.  
  974. ΓòÉΓòÉΓòÉ 4.3.1. Displaying Window Titles ΓòÉΓòÉΓòÉ
  975.  
  976. Every heading tag that starts a window must have an associated text string. The 
  977. text string becomes the window title and appears in the title bar of the 
  978. window.  The window title also becomes an entry in the Contents window, which 
  979. lists the headings of all topics in an online document. 
  980.  
  981. For a window that occupies the full width of the screen, the maximum length of 
  982. a text string, including spaces and blanks, is 70 characters. A narrower window 
  983. requires a shorter text string. The text string can be on the same line as the 
  984. heading tag, or at the beginning of the next line. 
  985.  
  986. The following example shows the tagging for the first three heading levels, 
  987. with a paragraph following each heading. 
  988.  
  989. :userdoc.
  990. :title.An Online Document
  991. :h1.First Heading Level
  992. :p.
  993. This window is defined by a first-level heading tag.
  994. :h2.Second-Level Heading
  995. :p.
  996. This window is defined by a second-level heading tag.
  997. :h3.Third-Level Heading
  998. :p.
  999. This window is defined by a third-level heading tag.
  1000. :euserdoc.
  1001.  
  1002. The Contents window for the formatted output shows the three heading-level 
  1003. entries. 
  1004.  
  1005. A Contents Window 
  1006.  
  1007.  
  1008. ΓòÉΓòÉΓòÉ 4.3.2. Hiding Window Titles ΓòÉΓòÉΓòÉ
  1009.  
  1010. If you do not want a title to appear in the Contents window, use the hide 
  1011. attribute. The heading definition would be entered like this: 
  1012.  
  1013. :h3 hide.
  1014. Another Third-Level Heading
  1015.  
  1016. Note:  Your source file must contain at least one heading tag without the hide 
  1017.        attribute. 
  1018.  
  1019.  
  1020. ΓòÉΓòÉΓòÉ 4.3.3. Controlling Entries in the Contents Window ΓòÉΓòÉΓòÉ
  1021.  
  1022. The following example shows some tagging that will control what entries appear 
  1023. in the Contents window, as well as what headings will start windows. 
  1024.  
  1025. :userdoc.
  1026. :docprof toc=12.
  1027. :h1.Heading Levels
  1028. :h2.Second-Level Heading
  1029. :p.
  1030. This window is defined by a heading-level 2 tag.
  1031. :h2.Second-Level Heading
  1032. :p.
  1033. This window also is defined by a heading-level 2 tag.
  1034. :p.
  1035. :h3.Third-Level Heading
  1036. :p.
  1037. Because the &colon.docprof. tag at the beginning of the file
  1038. specifies that only heading levels 1 and 2 can be entries in the
  1039. Contents window (toc=12), the preceding "Third-Level Heading"
  1040. and THIS text, which follows it, become part of the
  1041. window defined by the preceding heading-level 2 tag.
  1042. :h2 toc=123.Another Second-Level Heading
  1043. :p.
  1044. The heading-level 2 tag for this window contains
  1045. a toc=123 specification.
  1046. :h3.Third-Level Heading
  1047. :p.
  1048. Because the toc=123 in the preceding heading-level 2
  1049. tag overrides the toc=12 in the &colon.docprof. tag, this
  1050. heading-level 3 tag defines a new window and creates a
  1051. Contents entry.
  1052. :euserdoc.
  1053.  
  1054. Unless otherwise specified, the default set of heading tags that create entries 
  1055. in the Contents window and define the start of windows are :h1., :h2., and 
  1056. :h3.. To change this default, specify a numeric sequence with the table of 
  1057. content attribute (toc=) of the :docprof. tag. The :docprof. tag controls the 
  1058. heading levels displayed in the Contents window. The sequence must begin with 
  1059. level 1 and cannot skip a level in the descending hierarchy. For example, the 
  1060. :h4., :h5. and :h6. tags do not start separate windows, but control the 
  1061. appearance of the text of the window unless you specify: 
  1062.  
  1063. :docprof toc=123456.
  1064.  
  1065. To specify that only heading levels 1 and 2 are to define windows and appear as 
  1066. entries in the Contents window, the following tag was used: 
  1067.  
  1068. :docprof toc=12.
  1069.  
  1070. The value specified for the toc= attribute remains in effect for all the 
  1071. heading definitions in the file.  You can override it by specifying another 
  1072. value for the toc= attribute in a heading definition. The new value is then in 
  1073. effect for the rest of the headings in the file, or until overridden in another 
  1074. heading definition. 
  1075.  
  1076. In the preceding example, the toc= attribute of the :docprof. tag is overridden 
  1077. by the toc= attribute of a heading tag. 
  1078.  
  1079. The next example shows the results of the tagging. Notice the effect of 
  1080. including a heading level that is lower in the hierarchy than the range of 
  1081. heading levels specified with the :docprof. tag. 
  1082.  
  1083. Contents Window with Displayed Third-Level Heading Window 
  1084.  
  1085. When the file is viewed, the :h3. title and the text following it are included 
  1086. as part of the window defined by the preceding :h2. tag. 
  1087.  
  1088.  
  1089. ΓòÉΓòÉΓòÉ 4.3.4. Special Rules ΓòÉΓòÉΓòÉ
  1090.  
  1091. Sequential Coding for Heading Tags:  Headings for a series of windows must 
  1092. always start with :h1. and proceed in sequence. That is, you cannot have :h1. 
  1093. followed by :h3.. However, you can follow :h3. with :h1.. 
  1094.  
  1095. Source File Size between Heading Tags:  Do not exceed 16 000 words, numbers, 
  1096. and punctuation marks between two consecutive heading tags in your source file. 
  1097. This includes blank spaces, but does not include commented lines (see Comment). 
  1098. If the source file exceeds this limit, the compiler will generate an error 
  1099. message. To correct the error, use another heading tag. 
  1100.  
  1101. For more information about heading tags and attributes that define 
  1102. characteristics of windows, see Customizing Windows. 
  1103.  
  1104. Note:  At least one :h1. must not be hidden. 
  1105.  
  1106.  
  1107. ΓòÉΓòÉΓòÉ 4.4. Push Buttons ΓòÉΓòÉΓòÉ
  1108.  
  1109. Push buttons provide users with a fast and easy way to access commonly used IPF 
  1110. tasks.  When a user selects a push button, the action represented by the text 
  1111. on the push button is carried out immediately. Push buttons are displayed in a 
  1112. window called a control area.  A control area can be defined within the IPF 
  1113. coverpage window, or the IPF text window (the child of the coverpage window), 
  1114. or both.  For information about the IPF coverpage, see the following figure. 
  1115.  
  1116. IPF provides one set of push buttons for online documents and another set for 
  1117. help windows. 
  1118.  
  1119.  For online documents, the set of push buttons consists of: 
  1120.  
  1121.       Previous 
  1122.       Search 
  1123.       Print 
  1124.       Index 
  1125.       Contents 
  1126.       Back 
  1127.       Forward 
  1128.       Tutorial (only if a tutorial is available). 
  1129.  
  1130.  For help windows, the set of push buttons consists of 
  1131.  
  1132.       Previous 
  1133.       Search 
  1134.       Print 
  1135.       Index 
  1136.       Tutorial (only if a tutorial is available). 
  1137.  
  1138.  The following figure shows an online document with a set of push buttons in 
  1139.  the control area of the the coverpage window (the default control area). 
  1140.  
  1141.  The IPF Default Window for Push Buttons. These push buttons appear in the 
  1142.  control area of the coverpage window. 
  1143.  
  1144.  Notice the difference in the following figure. This example shows a help 
  1145.  window with a set of push buttons in the control area of the IPF text window. 
  1146.  
  1147.  A Help Window. These push buttons were defined in the control area of the IPF 
  1148.  page window. 
  1149.  
  1150.  If the user changes the size of the window, the push buttons in the control 
  1151.  area will wrap around onto the next line. The push buttons cannot be clipped 
  1152.  or scrolled horizontally, because the control area is not part of the 
  1153.  scrollable area of the IPF text window. 
  1154.  
  1155.  
  1156. ΓòÉΓòÉΓòÉ 4.4.1. Tagging Example for the Default Set of Push Buttons ΓòÉΓòÉΓòÉ
  1157.  
  1158. The following example shows the minimum tagging required for an online document 
  1159. that is to have a control area with the default set of push buttons displayed 
  1160. in the coverpage window. 
  1161.  
  1162. :userdoc.
  1163. :title.Coverpage Window
  1164. :h1.IPF Text Window
  1165. :p.Text goes here.
  1166. :euserdoc.
  1167.  
  1168. Notice no extra tagging is necessary. 
  1169.  
  1170.  
  1171. ΓòÉΓòÉΓòÉ 4.4.2. Specifying Push Buttons for the Control Area of a Window ΓòÉΓòÉΓòÉ
  1172.  
  1173. The control area tag (:ctrl.) specifies where push buttons are to be displayed, 
  1174. and which push buttons you want displayed.  When specifying a control area, 
  1175. always precede the tagging with :docprof., then imbed :ctrl. between the 
  1176. control-area definition tags (:ctrldef. and :ectrldef.). For example: 
  1177.  
  1178. :docprof toc=123.
  1179. :ctrldef.
  1180. :ctrl.
  1181. :ectrldef.
  1182.  
  1183.  
  1184. ΓòÉΓòÉΓòÉ 4.4.3. Attribute Values for the Control Area of a Window ΓòÉΓòÉΓòÉ
  1185.  
  1186. The controls= attribute of :ctrl. identifies the push buttons that you want in 
  1187. the control area of a window.  Push buttons are displayed in the order in which 
  1188. they are defined. Values that can be specified are: 
  1189.  
  1190.  Search         Specifies the Search push button.  When selected, this push 
  1191.                 button displays a window that lets the user search for a word 
  1192.                 or phrase. 
  1193.  
  1194.  Print          Specifies the Print push button.  When selected, this push 
  1195.                 button displays a window that lets the user print one or more 
  1196.                 topics. 
  1197.  
  1198.  Index          Specifies the Index push button.  When selected, this push 
  1199.                 button displays an alphabetic list of the topics in the 
  1200.                 document. 
  1201.  
  1202.  Contents       Specifies the Contents push button.  When selected, this push 
  1203.                 button displays the Contents window. 
  1204.  
  1205.  Esc            Specifies the Previous push button.  When selected, this push 
  1206.                 button lets the user see information from an earlier request. 
  1207.  
  1208.  Back           Specifies the Back push button.  When selected, this push 
  1209.                 button displays the previous page in the table of contents 
  1210.                 hierarchy. 
  1211.  
  1212.  Forward        Specifies the Forward push button.  When selected, this push 
  1213.                 button displays the next page in the table of contents 
  1214.                 hierarchy. 
  1215.  
  1216.  Note:  A value for the Tutorial push button is not provided because it is 
  1217.         displayed automatically if a tutorial exists. 
  1218.  
  1219.  Both the page and coverpage attributes of :ctrl. affect where push buttons are 
  1220.  displayed.  For example, you use page to specify that push buttons are to be 
  1221.  in the IPF text window; similarly, you use coverpage to specify that push 
  1222.  buttons are to be in the IPF coverpage window. 
  1223.  
  1224.  A control area also can have a value associated with it.  The ctrlid= 
  1225.  attribute specifies the value, which can be either alpha or alphanumeric, and 
  1226.  is referred to by a heading tag. In the following example, ctrlid= specifies a 
  1227.  window identifier, and instructs the compiler to display the Previous, 
  1228.  Forward, and Back push buttons in the control area of the coverpage window: 
  1229.  
  1230.   :docprof toc=123.
  1231.   :ctrldef.
  1232.   :ctrl ctrlid=new1 controls='ESC FORWARD BACK' coverpage.
  1233.   :ectrldef.
  1234.  
  1235.  Conversely, the following example shows the tagging for an online document 
  1236.  that will display the Previous, Forward, and Back push buttons in the control 
  1237.  area of an IPF page window. 
  1238.  
  1239.   :docprof toc=123 ctrlarea=page.
  1240.   :ctrldef.
  1241.   :ctrl ctrlid=new1 controls='ESC FORWARD BACK' page.
  1242.   :ectrldef.
  1243.  
  1244.  Notice the ctrlarea=page attribute of :docprof..  When the IPF compiler 
  1245.  encounters ctrlarea=page, it defines the control area as the IPF page window 
  1246.  and removes the push buttons from the control area of the coverpage window. 
  1247.  You must ALWAYS specify the ctrlarea= attribute in :docprof. when overriding 
  1248.  the default control area in a window. 
  1249.  
  1250.  Other values for ctrlarea= are: 
  1251.  
  1252.  coverpage     Identifies the control area as the bottom of the coverpage 
  1253.                window.  This is the default value. 
  1254.  
  1255.  both          Specifies both the control area within an IPF text window, and 
  1256.                the coverpage window. 
  1257.  
  1258.  none          Specifies that you do not want a control area (that is, you do 
  1259.                not want push buttons). 
  1260.  
  1261.  You can define more than one control area with different sets of push buttons 
  1262.  for the IPF text window; however, only one set of push buttons can be defined 
  1263.  for the coverpage window. 
  1264.  
  1265.  
  1266. ΓòÉΓòÉΓòÉ 4.4.4. Controlling the Display of Push Buttons in Designated Windows ΓòÉΓòÉΓòÉ
  1267.  
  1268. Suppose your document consisted of 100 windows, and you wanted only one window 
  1269. to display push buttons in the control area of the IPF text window.  The 
  1270. ctrlarea= attribute of a heading tag specifies which control area in a window 
  1271. you want to display push buttons.  You would tag your source file as follows: 
  1272.  
  1273. :docprof ctrlarea=none.
  1274. .
  1275. .
  1276. .
  1277. :h1 ctrlarea=page.One Window
  1278.  
  1279. When ctrlarea= is encountered in a heading tag, it overrides the ctrlarea= 
  1280. attribute specified by :docprof.. 
  1281.  
  1282.  
  1283. ΓòÉΓòÉΓòÉ 4.4.5. Disabling the Display of Push Buttons ΓòÉΓòÉΓòÉ
  1284.  
  1285. The following example shows the minimum tagging for an online document without 
  1286. push buttons. 
  1287.  
  1288. :userdoc.
  1289. :title.Coverpage Window Title
  1290. :docprof toc=123 ctrlarea=none.
  1291. :h1.IPF Text Window
  1292. :p.Text goes here.
  1293. :euserdoc.
  1294.  
  1295.  
  1296. ΓòÉΓòÉΓòÉ 4.4.6. Author-Defined Push Buttons ΓòÉΓòÉΓòÉ
  1297.  
  1298. IPF also supports author-defined pushbuttons. For example, you can define a 
  1299. push button for Examples that can be included in the control area of a 
  1300. coverpage or IPF text window.  When an author-defined push button is selected, 
  1301. the message HM_NOTIFY is sent to the application or communication object. It is 
  1302. the responsibility of the application or communication object to respond to 
  1303. this message.  For information about communication objects, see Controlling 
  1304. Windows with Applications (ACVIEWPORTS). 
  1305.  
  1306. The push button tag (:pbutton.) defines author-defined push buttons.  This tag 
  1307. must be imbedded within the :ctrldef. and :ectrldef. tags, and it must precede 
  1308. the :ctrl. tag. 
  1309.  
  1310. The following example shows how to override the default set of push buttons in 
  1311. the coverpage window with a set that consists of Search, Index, Previous, and 
  1312. Example. 
  1313.  
  1314. :userdoc.
  1315. :docprof toc=123 dll='example' objectname='xmpbutton'.
  1316. :ctrldef.
  1317. :pbutton id=xmp res=257 text='~Example'.
  1318. :ctrl ctrlid=new1 controls='SEARCH INDEX ESC XMP' coverpage.
  1319. :ectrldef.
  1320.  
  1321. Notice that a dynamic link library (DLL) is required to support the function 
  1322. you want to provide with an author-defined push button. For more information, 
  1323. see :pbutton. (Push Button). 
  1324.  
  1325.  
  1326. ΓòÉΓòÉΓòÉ 4.4.7. About the Tutorial Push Button ΓòÉΓòÉΓòÉ
  1327.  
  1328. When the Tutorial push button is selected, the message HM_TUTORIAL is sent to 
  1329. the application or communication object.  This is the same message that is sent 
  1330. when the Tutorial choice is selected from the Help pull-down, or when the 
  1331. tutorial attribute is specified with the heading tag. 
  1332.  
  1333. The Tutorial push button is included only if a tutorial was specified in the 
  1334. initialization structure (HMINIT) or with the tutorial attribute in a heading 
  1335. tag. 
  1336.  
  1337.  
  1338. ΓòÉΓòÉΓòÉ 4.5. Indexing ΓòÉΓòÉΓòÉ
  1339.  
  1340. IPF provides an index for both online documents and help windows from the 
  1341. following tags. 
  1342.  
  1343. :i1.
  1344. :i2.
  1345.  
  1346. The :i1. tag creates a primary entry, which means the entry is at the first 
  1347. level. The :i2. tag provides a secondary entry to the primary one. 
  1348.  
  1349. Index entries are imbedded in the text of a window.  You should create at least 
  1350. one index entry for each window, using the :i1. tag. The text of an index entry 
  1351. must be on the same line as the tag. 
  1352.  
  1353. You form an index for online documents and help windows the same way.  For 
  1354. example, to create the index entry: 
  1355.  
  1356. copy program
  1357.  
  1358. use the following tagging 
  1359.  
  1360. :i1.copy program
  1361.  
  1362. To create two levels of index entries, you use the :i1. tag with the id= 
  1363. attribute, and the :i2. tag, with the refid= attribute. Here is how to do it. 
  1364.  
  1365.    1. Create the primary index entry and give it an identifier; for example: 
  1366.  
  1367.             :i1 id=prnt.printers and plotters
  1368.  
  1369.    2. Create the secondary index entries that will be listed under the primary 
  1370.       index entry, and refer to the identifier of the primary entry; for 
  1371.       example: 
  1372.  
  1373.             :i2 refid=prnt.change printer
  1374.             :i2 refid=prnt.add printer
  1375.             :i2 refid=prnt.printer properties
  1376.  
  1377.  When an :i1. tag has an identifier that is referred to by refid= attributes of 
  1378.  :i2. tags, the :i1. tag must precede the :i2. tags in the file. Index entries 
  1379.  can be located in any of the windows defined in your source file; however, 
  1380.  they cannot be in a footnote. 
  1381.  
  1382.  After your source file is compiled and the user selects Index from the Options 
  1383.  menu, or the Index push button, the index entries look like this: 
  1384.  
  1385.   printers and plotters
  1386.      add printer
  1387.      change printer
  1388.      printer properties
  1389.  
  1390.  
  1391. ΓòÉΓòÉΓòÉ 4.5.1. Index-Synonyms ΓòÉΓòÉΓòÉ
  1392.  
  1393. As a way of helping the user search for index entries by using synonyms, IPF 
  1394. provides the index-synonym tag (:isyn.).  This tag requires the root= 
  1395. attribute.  With these, you can specify synonyms that will be associated with 
  1396. primary index entries.  The :i1. tags for these primary entries require a 
  1397. roots='' attribute that associates the entry with the synonyms. 
  1398.  
  1399. For example, assume you have the following entries in your file: 
  1400.  
  1401. :isyn root=copy.
  1402. copy copying duplicate duplicating
  1403. :isyn root=folder.
  1404. folder folders document documents
  1405. :i1 roots='copy folder'.
  1406. copying a document
  1407.  
  1408. The roots=' ' attribute of the :i1. tag associates "copying a document" with 
  1409. the synonyms of the root= attributes of the two :isyn. tags. 
  1410.  
  1411. Now if a user, when requesting a search of the index, specifies any of the 
  1412. words in either of the two :isyn. entries, the search results will include all 
  1413. :i1. entries that contain the specified word, as well as any :i1. entries that 
  1414. have been associated with the word by a roots= attribute. 
  1415.  
  1416. For example, the user enters "duplicating" in a search request.  When the 
  1417. search is completed, one of the entries in the search results window is: 
  1418.  
  1419. copying a document
  1420.  
  1421.  
  1422. ΓòÉΓòÉΓòÉ 4.5.2. Customizing Master Help Index and Glossary Objects ΓòÉΓòÉΓòÉ
  1423.  
  1424. OS/2 online information is accessible through the "Master Help Index" and 
  1425. "Glossary" Workplace Shell objects. Users can access alphabetized lists of 
  1426. index entries simply by double clicking on the icons for these objects. 
  1427.  
  1428. As an author who wants to create or modify Help Indexes and Glossaries, you 
  1429. need to understand that the Master Help Index object and Glossary object that 
  1430. are installed by default with the OS/2 operating system are the same class of 
  1431. object. In other words, they are the exact same kind of object. Like the rest 
  1432. of the Workplace Shell user objects, they can be created, shadowed, copied, and 
  1433. so on. This also means that they can be modified through the "Settings 
  1434. Notebook". To look at the Settings Notebook for the Master Help Index, simply 
  1435. do the following: 
  1436.  
  1437.    1. Select the Master Help Index user object by single-clicking on its icon 
  1438.       with mouse button 1. 
  1439.  
  1440.    2. Press mouse button 2 for the object's pop-up menu. 
  1441.  
  1442.    3. Select "Open" with mouse button 1, then select "Settings" from the pop-up 
  1443.       menu that appears. 
  1444.  
  1445.  The "Properties" page of the Master Help Index object's Settings Notebook can 
  1446.  be modified. On this page, the "Files/Environment name(s):" setting can be 
  1447.  modified. This setting specifies where online helps (.HLP files) containing 
  1448.  Master Help Index entries are located. The Master Help Index object's default 
  1449.  setting is defined in the file CONFIG.SYS by the "HELP" environment variable. 
  1450.  
  1451.  The global attribute of the :i1. and :i2. tags identifies index entries as 
  1452.  candidates for the Master Help Index or Glossary. Good candidates are pointers 
  1453.  to procedural and conceptual topics.  For example, a simple Master Help Index 
  1454.  entry for conceptual information about batch files might look like this: 
  1455.  
  1456.   :i1 global.batch files, creating
  1457.  When referring to an :i1. tag, use the global attribute in both the :i1. and 
  1458.  :i2. tags.  For example: 
  1459.  
  1460.   :i1 id=copy global.copying
  1461.   :i2 refid=copy global.help topics
  1462.   :i2 refid=copy global.document topics
  1463.  
  1464.  As an author, you can create product-specific indexes and glossaries, add 
  1465.  entries to the Master Help Index or Glossary (or customized, renamed copies of 
  1466.  either user object), change their Notebook "Files/Environment name(s):" 
  1467.  Settings to match online helps with global index entries, and so on. However, 
  1468.  it requires programming skills to enable applications to do these tasks at 
  1469.  installation or run time (see Creating Master Indexes and Glossaries with 
  1470.  Applications). 
  1471.  
  1472.  
  1473. ΓòÉΓòÉΓòÉ 4.6. Control Words ΓòÉΓòÉΓòÉ
  1474.  
  1475. In addition to tags, you can include control words in your source files to 
  1476. request special processing from the IPF compiler. A control word is placed at 
  1477. the beginning of a line, and starts with a period (.). Control words must begin 
  1478. in column one. 
  1479.  
  1480. The IPF compiler recognizes the following control words: 
  1481.  
  1482.  .im filename        Imbed this file in the current file. 
  1483.  
  1484.  .*                  Treat this line of text as a comment and do not interpret. 
  1485.  
  1486.  .br                 Start a new line of text. 
  1487.  
  1488.  .nameit             Perform compile time symbol substitution. 
  1489.  
  1490.  .ce                 Centers Text 
  1491.  
  1492.  
  1493. ΓòÉΓòÉΓòÉ 4.6.1. Imbed ΓòÉΓòÉΓòÉ
  1494.  
  1495. The IPF compiler can produce a single output document by processing one master 
  1496. source file that imbeds other source files. The imbed control word (.im) sends 
  1497. a signal to the compiler to process each file in the sequence listed in the 
  1498. master file. 
  1499.  
  1500. This process is most often associated with online documents.  A portion of the 
  1501. master file for the online IPF Reference looks like this: 
  1502.  
  1503. :userdoc.
  1504. .
  1505. .
  1506. .
  1507. .im ipfcch01.ipf
  1508. .im ipfcch02.ipf
  1509. .im ipfcch03.ipf
  1510. .
  1511. .
  1512. .
  1513.  
  1514. If you are imbedding files, the source file that begins with the :userdoc. tag 
  1515. is considered the master file. The imbedded files cannot have :userdoc. and 
  1516. :euserdoc.. 
  1517.  
  1518.  
  1519. ΓòÉΓòÉΓòÉ 4.6.2. Comment ΓòÉΓòÉΓòÉ
  1520.  
  1521. Occasionally, you might want to insert comments in your source file solely for 
  1522. the purpose of providing information. The .* enables you to do this.  Any text 
  1523. on the same line as this control word is ignored by the compiler. For example, 
  1524. the compiler would recognize the following lines as comment lines and ignore 
  1525. them. 
  1526.  
  1527. .*********************************
  1528. .* This file contains the
  1529. .* introduction to IPF.
  1530. .**********************************
  1531.  
  1532.  
  1533. ΓòÉΓòÉΓòÉ 4.6.3. Break ΓòÉΓòÉΓòÉ
  1534.  
  1535. The break control word (.br) interrupts the display of text on a line, and 
  1536. continues it on the next line.  The break control word must be the only entry 
  1537. on the line.  For example, assume the source file has the following lines. 
  1538.  
  1539. :p.These words
  1540. appear on
  1541. the same line.
  1542. .br
  1543. These words
  1544. .br
  1545. do not.
  1546.  
  1547. The output looks like this: 
  1548.  
  1549. These words appear on the same line.
  1550. These words
  1551. do not.
  1552.  
  1553. If you enter text on the same line as the break control word, the IPF compiler 
  1554. ignores the break control word. 
  1555.  
  1556.  
  1557. ΓòÉΓòÉΓòÉ 4.6.4. Nameit ΓòÉΓòÉΓòÉ
  1558.  
  1559. The nameit control word (.nameit) is a macro that allows you to create a 
  1560. special kind of symbol. Nameit has two operands that are used in IPF, SYMBOL 
  1561. and TEXT.  The operands can be in any order (.nameit symbol=name 
  1562. text='string'). 
  1563.  
  1564. Symbol=name identifies the name of the symbols (just the name, without the 
  1565. preceding & or the trailing period) you want to create. It can be up to 10 
  1566. characters long (A-Z, 0-9), with no blanks or special characters; the first 
  1567. character must be a letter. 
  1568.  
  1569. Text='string' identifies the content of the value to be assigned to the symbol 
  1570. and is what is printed. 
  1571.  
  1572. Here's an example of how .nameit could be used in your document: 
  1573.  
  1574. .nameit symbol=os text='operating system'
  1575. .
  1576. .
  1577. :p.The &os supports multitasking.
  1578.  
  1579. The output looks like this: 
  1580.  
  1581. The operating system supports multitasking.
  1582.  
  1583. Note:  You do not use the & in the .nameit when you actually use the symbol. 
  1584.        Also, you must use a period at the end of the symbol name when you use 
  1585.        the symbol. 
  1586.  
  1587.  
  1588. ΓòÉΓòÉΓòÉ 4.6.5. Center Text ΓòÉΓòÉΓòÉ
  1589.  
  1590. The ce control word (.ce) enables you to center text. For example, assume the 
  1591. source file has the following lines. 
  1592.  
  1593. :p.These words
  1594. appear as normal
  1595. text on the same
  1596. line.
  1597. .ce These words appear as centered text on the same line.
  1598.  
  1599. The output looks like this: 
  1600.  
  1601. These words appear as normal text on the same line.
  1602. These words appear as centered text on the same line.
  1603.  
  1604.  
  1605. ΓòÉΓòÉΓòÉ 5. Displaying Text and Graphics ΓòÉΓòÉΓòÉ
  1606.  
  1607. Once you have defined your window, you need to consider the various ways text 
  1608. can be displayed.  This chapter describes how you can use tags and symbols to: 
  1609.  
  1610.    o  Highlight text 
  1611.    o  Add notes, notices, and lists 
  1612.    o  Define tables for a structured display of data 
  1613.    o  Illustrate your text with examples, figures, and character graphics 
  1614.    o  Control the formatting of lines of text 
  1615.    o  Change the font and color of the displayed information 
  1616.    o  Set the margins of the text 
  1617.    o  Display art. 
  1618.  
  1619.  
  1620. ΓòÉΓòÉΓòÉ 5.1. Highlighted Phrases ΓòÉΓòÉΓòÉ
  1621.  
  1622. Text can be highlighted by using different type styles or color.  There are 
  1623. nine highlighted-phrase tags you can use to emphasize text (:hp1. through 
  1624. :hp9.). Each tag requires a corresponding end tag (:ehp1. through :ehp9.). 
  1625.  
  1626. In the following example, the highlighted phrases are shown as list items in a 
  1627. compact simple list. 
  1628.  
  1629. Input Example 
  1630.  
  1631.       :sl compact. 
  1632.       :li.:hp1.Highlighted phrase 1 looks like this.:ehp1. 
  1633.       :li.:hp2.Highlighted phrase 2 looks like this.:ehp2. 
  1634.       :li.:hp3.Highlighted phrase 3 looks like this.:ehp3. 
  1635.       :li.:hp4.Highlighted phrase 4 looks like this.:ehp4. (BLUE) 
  1636.       :li.:hp5.Highlighted phrase 5 looks like this.:ehp5. 
  1637.       :li.:hp6.Highlighted phrase 6 looks like this.:ehp6. 
  1638.       :li.:hp7.Highlighted phrase 7 looks like this.:ehp7. 
  1639.       :li.:hp8.Highlighted phrase 8 looks like this.:ehp8. (RED) 
  1640.       :li.:hp9.Highlighted phrase 9 looks like this.:ehp9. (PINK) 
  1641.       :esl. 
  1642.  
  1643.  The following example shows the output produced by these tags. 
  1644.  
  1645.  Formatted Output 
  1646.  
  1647.       Highlighted phrase 1 looks like this. 
  1648.  
  1649.       Highlighted phrase 2 looks like this. 
  1650.  
  1651.       Highlighted phrase 3 looks like this. 
  1652.  
  1653.       Highlighted phrase 4 looks like this. 
  1654.  
  1655.       Highlighted phrase 5 looks like this. 
  1656.  
  1657.       Highlighted phrase 6 looks like this. 
  1658.  
  1659.       Highlighted phrase 7 looks like this. 
  1660.  
  1661.       Highlighted phrase 8 looks like this. 
  1662.  
  1663.       Highlighted phrase 9 looks like this. 
  1664.  
  1665.  Highlighted Phrases 
  1666.  
  1667.  The type styles displayed for highlighted phrases correspond to the typeface 
  1668.  currently being used by IPF. You can change the typeface to Courier, 
  1669.  Helvetica** or Times New Roman** by using the :font. tag.  See Changing Fonts. 
  1670.  
  1671.  ** Helvetica is a trademark of Linotype AG 
  1672.  ** Times New Roman is a trademark of Monotype Corporation 
  1673.  
  1674.  
  1675. ΓòÉΓòÉΓòÉ 5.2. Notes ΓòÉΓòÉΓòÉ
  1676.  
  1677. To include notes in your information, you use a note tag: either :note. or :nt. 
  1678. (with its corresponding :ent.). 
  1679.  
  1680. The one you use depends on whether your note consists of one paragraph or more 
  1681. than one. 
  1682.  
  1683.  
  1684. ΓòÉΓòÉΓòÉ 5.2.1. :note. ΓòÉΓòÉΓòÉ
  1685.  
  1686. Use :note. for single-paragraph notes. You do not need an end tag. 
  1687.  
  1688. Following is an example of :note. and the resulting output. 
  1689.  
  1690. Input Example 
  1691.  
  1692. :note.Complete all entry fields before leaving
  1693. this window.  If you do not, all your information will be lost.
  1694.  
  1695. Formatted Output 
  1696.  
  1697. Note:  Complete all entry fields before leaving this window. If you do not, all 
  1698. your information will be lost. 
  1699.  
  1700.  
  1701. ΓòÉΓòÉΓòÉ 5.2.2. :nt. ΓòÉΓòÉΓòÉ
  1702.  
  1703. Use :nt. to create notes with more than one paragraph.  Remember to end the 
  1704. note with :ent.. In the following example, notice how the IPF compiler indents 
  1705. the text for the paragraphs in the note. 
  1706.  
  1707. Input Example 
  1708.  
  1709. :nt.Complete all entry fields before leaving
  1710. this window.  If you do not, all your information will be lost.
  1711. :p.If your information is lost, retype it in
  1712. the entry fields.
  1713. :ent.
  1714.  
  1715. Formatted Output 
  1716.  
  1717. Note:  Complete all entry fields before leaving this window.  If you do not, 
  1718.        all your information will be lost. 
  1719.  
  1720. If your information is lost, retype it in the entry fields. 
  1721.  
  1722.  Another Name for a Note:  Both :nt. and :note. provide the text= attribute, so 
  1723.  you can substitute your own word or phrase for the word "Note."  The following 
  1724.  shows the use of this attribute: 
  1725.  
  1726.  Input Example 
  1727.  
  1728.   :note text='Reminder'.Complete all
  1729.   entry fields before leaving this window.
  1730.  
  1731.  Formatted Output 
  1732.  
  1733.  Reminder:  Complete all entry fields before leaving this window. 
  1734.  
  1735.  
  1736. ΓòÉΓòÉΓòÉ 5.3. Notices ΓòÉΓòÉΓòÉ
  1737.  
  1738. Two tags enable you to include caution and warning notices in your information. 
  1739. Both tags require end tags. 
  1740.  
  1741.  
  1742. ΓòÉΓòÉΓòÉ 5.3.1. :caution. ΓòÉΓòÉΓòÉ
  1743.  
  1744. The following example shows how :caution. is used: 
  1745.  
  1746. Input Example 
  1747.  
  1748. :caution.
  1749. Be sure to save your data.  If you do not, all data will be lost.
  1750. :ecaution.
  1751.  
  1752. Formatted Output 
  1753.  
  1754. CAUTION:
  1755. Be sure to save your data.  If you do not, all data will be lost.
  1756.  
  1757.  
  1758. ΓòÉΓòÉΓòÉ 5.3.2. :warning. ΓòÉΓòÉΓòÉ
  1759.  
  1760. The following example shows how :warning. is used: 
  1761.  
  1762. Input Example 
  1763.  
  1764. :warning.
  1765. The disk contains bad sectors.
  1766. :ewarning.
  1767.  
  1768. Formatted Output 
  1769.  
  1770. Warning: The disk contains bad sectors. 
  1771.  
  1772. Place the caution and warning statements before the help information to which 
  1773. they apply so the user is cautioned or warned in advance. You can use the text= 
  1774. attribute if you want to use words other than "Caution" and "Warning" with 
  1775. these notices. 
  1776.  
  1777.  
  1778. ΓòÉΓòÉΓòÉ 5.4. Simple List ΓòÉΓòÉΓòÉ
  1779.  
  1780. Simple lists are vertical arrangements of items without any symbol or character 
  1781. preceding the items in the list.  Use simple lists when the order of the items 
  1782. is not important. 
  1783.  
  1784. To create a simple list, use the simple-list tag (:sl.) to begin the list and 
  1785. its corresponding end tag, :esl.. Identify each item in the list with a 
  1786. list-item tag (:li.). 
  1787.  
  1788. Input Example 
  1789.  
  1790. :p.Bring the following for lunch:
  1791. :sl.
  1792. :li.Fruit
  1793. :li.Sandwich
  1794. :li.Drink
  1795. :esl.
  1796.  
  1797. Formatted Output 
  1798.  
  1799. Bring the following for lunch: 
  1800.  
  1801.       Fruit 
  1802.  
  1803.       Sandwich 
  1804.  
  1805.       Drink 
  1806.  
  1807.  A Compact Simple List:  Use the compact attribute to produce a list with no 
  1808.  blank lines between the list items. 
  1809.  
  1810.  Input Example 
  1811.  
  1812.   :p.Bring the following for lunch:
  1813.   :sl compact.
  1814.   :li.Fruit
  1815.   :li.Sandwich
  1816.   :li.Drink
  1817.   :esl.
  1818.  
  1819.  Formatted Output 
  1820.  
  1821.  Bring the following for lunch: 
  1822.  
  1823.       Fruit 
  1824.       Sandwich 
  1825.       Drink 
  1826.  
  1827.  Nested Lists:  A nested list is a list that is contained within another list. 
  1828.  The following shows the tagging for a simple list nested within another simple 
  1829.  list, and the resulting output. 
  1830.  
  1831.  Input Example 
  1832.  
  1833.   :p.Bring the following for lunch:
  1834.   :sl.
  1835.   :li.Fruit, for example:
  1836.   :sl compact.
  1837.   :li.Apple
  1838.   :li.Orange
  1839.   :li.Pear
  1840.   :li.Banana
  1841.   :esl.
  1842.   :li.Sandwich
  1843.   :li.A drink
  1844.   :esl.
  1845.  
  1846.  Formatted Output 
  1847.  
  1848.  Bring the following for lunch: 
  1849.  
  1850.       Fruit, for example: 
  1851.  
  1852.            Apple 
  1853.            Orange 
  1854.            Pear 
  1855.            Banana 
  1856.  
  1857.       Sandwich 
  1858.  
  1859.       A drink 
  1860.  
  1861.  
  1862. ΓòÉΓòÉΓòÉ 5.5. Unordered List ΓòÉΓòÉΓòÉ
  1863.  
  1864. Unordered lists are vertical arrangements of items, with each item in the list 
  1865. preceded by a special character, usually the lowercase "o" (called a bullet). 
  1866.  
  1867. Use unordered lists when the order of the items is not important. 
  1868.  
  1869. To create an unordered list, use the unordered-list tag (:ul.) to begin the 
  1870. list and :eul. to end it.  Identify each item in the list with :li.. 
  1871.  
  1872. Input Example 
  1873.  
  1874. :ul.
  1875. :li.Information typed in Window A will be stored in the
  1876. STORES.DAT file in whatever directory you designate.
  1877. :li.Information typed in Window B will be stored in the
  1878. SALES.DAT file in the current directory.
  1879. :li.Information typed in Window C will be stored in the
  1880. LOSSES.DAT file in the C:\FINANCE directory.
  1881. :eul.
  1882.  
  1883. Formatted Output 
  1884.  
  1885.    o  Information typed in Window A will be stored in the STORES.DAT file in 
  1886.       whatever directory you designate. 
  1887.  
  1888.    o  Information typed in Window B will be stored in the SALES.DAT file in the 
  1889.       current directory. 
  1890.  
  1891.    o  Information typed in Window C will be stored in the LOSSES.DAT file in 
  1892.       the C:\FINANCE directory. 
  1893.  
  1894.  Note:  To change bullet or dash character, change the appropriate .NLS file 
  1895.         coding of ULITEM IDX=' ', located in the \TOOLKIT\IPFC subdirectory. 
  1896.  
  1897.  A Compact Unordered List:  Use the compact attribute to produce a list with no 
  1898.  blank lines between the list items. 
  1899.  
  1900.  Input Example 
  1901.  
  1902.   :ul compact.
  1903.   :li.Information typed in Window A will be stored in the
  1904.   STORES.DAT file in whatever directory you designate.
  1905.   :li.Information typed in Window B will be stored in the
  1906.   SALES.DAT file in the current directory.
  1907.   :li.Information typed in Window C will be stored in the
  1908.   LOSSES.DAT file in the C:\FINANCE directory.
  1909.   :eul.
  1910.  
  1911.  Formatted Output 
  1912.  
  1913.    o  Information typed in Window A will be stored in the STORES.DAT file in 
  1914.       whatever directory you designate. 
  1915.    o  Information typed in Window B will be stored in the SALES.DAT file in the 
  1916.       current directory. 
  1917.    o  Information typed in Window C will be stored in the LOSSES.DAT file in 
  1918.       the C:\FINANCE directory. 
  1919.  
  1920.  Nested Unordered Lists:  The following example contains two nested, unordered 
  1921.  lists. Notice that a bullet (lowercase "o") precedes items in the first-level 
  1922.  list and that a dash (-) precedes items in the second-level lists.  The 
  1923.  bullets and dashes alternate for each level of the list.  That is, third-level 
  1924.  list items would be preceded by bullets, fourth-level by dashes, and so on. 
  1925.  
  1926.  Input Example 
  1927.  
  1928.   :ul compact.
  1929.   :li.C:\REPORTS\SALES.89
  1930.   :ul compact.
  1931.   :li.FIRST.QTR
  1932.   :li.SECOND.QTR
  1933.   :li.THIRD.QTR
  1934.   :li.FOURTH.QTR
  1935.   :eul.
  1936.   :li.C:\REPORTS\SALES.90
  1937.   :ul compact.
  1938.   :li.FIRST.QTR
  1939.   :li.SECOND.QTR
  1940.   :li.THIRD.QTR
  1941.   :li.FOURTH.QTR
  1942.   :eul.
  1943.   :eul.
  1944.  
  1945.  Formatted Output 
  1946.  
  1947.    o  C:\REPORTS\SALES.89 
  1948.  
  1949.         -  FIRST.QTR 
  1950.         -  SECOND.QTR 
  1951.         -  THIRD.QTR 
  1952.         -  FOURTH.QTR 
  1953.  
  1954.    o  C:\REPORTS\SALES.90 
  1955.  
  1956.         -  FIRST.QTR 
  1957.         -  SECOND.QTR 
  1958.         -  THIRD.QTR 
  1959.         -  FOURTH.QTR 
  1960.  
  1961.  When nesting lists, make sure you end each list with an end-list tag. 
  1962.  
  1963.  
  1964. ΓòÉΓòÉΓòÉ 5.6. Ordered List ΓòÉΓòÉΓòÉ
  1965.  
  1966. Ordered lists are vertical arrangements of items, with each item in the list 
  1967. preceded by a number or letter.  Use ordered lists when the sequence of the 
  1968. items is important, such as in a procedure. 
  1969.  
  1970. To create an ordered list, use the ordered-list tag (:ol.) to begin the list 
  1971. and :eol. to end it.  Identify each item in the list with :li.. 
  1972.  
  1973. Input Example 
  1974.  
  1975. :ol.
  1976. :li.Open the diskette-drive door.
  1977. :li.Remove the diskette.
  1978. :li.Store the diskette in a safe place.
  1979. :eol.
  1980.  
  1981. Formatted Output 
  1982.  
  1983.    1. Open the diskette-drive door. 
  1984.  
  1985.    2. Remove the diskette. 
  1986.  
  1987.    3. Store the diskette in a safe place. 
  1988.  
  1989.  A Compact Ordered List:  Use the compact attribute to produce a list with no 
  1990.  blank lines between the list items. 
  1991.  
  1992.  Input Example 
  1993.  
  1994.   :ol compact.
  1995.   :li.Open the diskette-drive door.
  1996.   :li.Remove the diskette.
  1997.   :li.Store the diskette in a safe place.
  1998.   :eol.
  1999.  
  2000.  Formatted Output 
  2001.  
  2002.    1. Open the diskette-drive door. 
  2003.    2. Remove the diskette. 
  2004.    3. Store the diskette in a safe place. 
  2005.  
  2006.  Nested Ordered Lists:  The following example contains two nested, ordered 
  2007.  lists. Notice that sequential numbers precede items in the first-level list, 
  2008.  and sequential letters precede items in the second-level list. Numbers and 
  2009.  letters alternate for each level of the list.  That is, third-level list items 
  2010.  would be preceded by numbers, fourth-level by letters, and so on. 
  2011.  
  2012.  Input Example 
  2013.  
  2014.   :ol.
  2015.   :li.First item in the first-level list.
  2016.   :li.Second item in the first-level list.
  2017.   This item has a nested list within it.
  2018.   :ol.
  2019.   :li.First item in the second-level list.
  2020.   :li.Second Item in the second-level list.
  2021.   :eol.
  2022.   :li.Third item in the first-level list.
  2023.   :eol.
  2024.  
  2025.  Formatted Output 
  2026.  
  2027.    1. First item in the first-level list. 
  2028.  
  2029.    2. Second item in the first-level list. This item has a nested list within 
  2030.       it. 
  2031.  
  2032.         a. First item in the second-level list. 
  2033.  
  2034.         b. Second Item in the second-level list. 
  2035.  
  2036.    3. Third item in the first-level list. 
  2037.  
  2038.  When nesting lists, make sure you end each list with an end-list tag. 
  2039.  
  2040.  
  2041. ΓòÉΓòÉΓòÉ 5.7. Definition List ΓòÉΓòÉΓòÉ
  2042.  
  2043. A definition list is a special list that pairs a term and its description. 
  2044.  
  2045. To create a definition list, use the definition-list tag (:dl.) to begin the 
  2046. list and :edl. to end it.  Identify each term in the list with a 
  2047. definition-term tag (:dt.) and each description with a definition-description 
  2048. tag (:dd.). 
  2049.  
  2050. Column Width for Definition Terms:  :dl. has several attributes that let you 
  2051. control the appearance of definition lists.  The tsize= attribute specifies the 
  2052. width, in character spaces, for the term column. If tsize= is not specified, 
  2053. the default width for the term column is 10 character spaces. 
  2054.  
  2055. Definition-List Headings:  If you want headings for the columns of terms and 
  2056. definitions, use the definition-term heading tag (:dthd.) to identify the 
  2057. heading for the terms and the definition-description tag (:ddhd.) to identify 
  2058. the heading for the definition descriptions. 
  2059.  
  2060. Compact Definition List:  The compact attribute produces a list with no blank 
  2061. lines. 
  2062.  
  2063. The following example shows the tagging for a compact definition list with 
  2064. headings for the terms and descriptions.  It also shows the use of the tsize= 
  2065. attribute. 
  2066.  
  2067. Input Example 
  2068.  
  2069. :dl compact tsize=13.
  2070. :dthd.:hp2.Key:ehp2.
  2071. :ddhd.:hp2.Purpose:ehp2.
  2072. :dt.Insert key
  2073. :dd.Switches between insert and replace modes.
  2074. :dt.Home key
  2075. :dd.Moves the cursor to the beginning of the current line.
  2076. :dt.End key
  2077. :dd.Moves the cursor to the end of the current line.
  2078. :edl.
  2079.  
  2080. Formatted Output 
  2081.  
  2082.  Key          Purpose 
  2083.  Insert key   Switches between insert and replace modes. 
  2084.  Home key     Moves the cursor to the beginning of the current line. 
  2085.  End key      Moves the cursor to the end of the current line. 
  2086.  
  2087.  Specifying where the Definition Descriptions Start:  The break= attribute 
  2088.  defines where the descriptions appear in relation to their terms: 
  2089.  
  2090.  break=none     Places the description on the same line as the term.  This is 
  2091.                 the default.  If the term is longer than the specified or 
  2092.                 default tsize= value, the term extends into the description 
  2093.                 column. 
  2094.  
  2095.  break=all      Places the description on the line below the term. 
  2096.  
  2097.  break=fit      Places the description on the line below the term only when the 
  2098.                 term is longer than the tsize= value. 
  2099.  
  2100.  The following example shows the tagging that starts the definition 
  2101.  descriptions on the line below the term. 
  2102.  
  2103.  Input Example 
  2104.  
  2105.   :dl break=all tsize=3.
  2106.   :dt.:hp2.Insert key:ehp2.
  2107.   :dd.Switches between insert and replace modes.
  2108.   :dt.:hp2.Home key:ehp2.
  2109.   :dd.Moves the cursor to the beginning of the current line.
  2110.   :dt.:hp2.End key:ehp2.
  2111.   :dd.Moves the cursor to the end of the current line.
  2112.   :edl.
  2113.  
  2114.  Formatted Output 
  2115.  
  2116.  Insert key 
  2117.     Switches between insert and replace modes. 
  2118.  
  2119.  Home key 
  2120.     Moves the cursor to the beginning of the current line. 
  2121.  
  2122.  End key 
  2123.     Moves the cursor to the end of the current line. 
  2124.  
  2125.  A definition description can apply to more than one definition term; that is, 
  2126.  you can specify more than one :dt. in the sequence before specifying a 
  2127.  matching :dd.. 
  2128.  
  2129.  The following example shows the tagging for a definition list with 
  2130.  descriptions that apply to more than one term. 
  2131.  
  2132.  Input Example 
  2133.  
  2134.   :dl compact break=fit tsize=20.
  2135.   :dthd.:hp2.Grocery Item:ehp2.
  2136.   :ddhd.:hp2.Type:ehp2.
  2137.   :dt.:hp2.Orange:ehp2.
  2138.   :dt.:hp2.Apple:ehp2.
  2139.   :dd.A fruit.
  2140.   :dt.:hp2.Carrot:ehp2.
  2141.   :dt.:hp2.Celery:ehp2.
  2142.   :dd.A vegetable.
  2143.   :edl.
  2144.  
  2145.  Formatted Output 
  2146.  
  2147.  Grocery Item        Type 
  2148.  Orange 
  2149.  Apple               A fruit. 
  2150.  Carrot 
  2151.  Celery              A vegetable. 
  2152.  
  2153.  
  2154. ΓòÉΓòÉΓòÉ 5.8. Parameter List ΓòÉΓòÉΓòÉ
  2155.  
  2156. Parameter lists are similar to definition lists in appearance and the way you 
  2157. use tags to create them.  The only difference between the two types of lists is 
  2158. that a parameter list cannot have headings. 
  2159.  
  2160. The parameter-list tag (:parml.) begins the list; its corresponding :eparml. 
  2161. ends it.  Identify each term in the list with a parameter-term tag (:pt.) and 
  2162. each description with a parameter-description tag (:pd.). 
  2163.  
  2164. :parml. has the same attributes as :dl..  The tsize= attribute specifies the 
  2165. width for the term column.  If tsize= is not specified, the default width is 10 
  2166. character spaces. 
  2167.  
  2168. Compact Parameter List:  The compact attribute produces a list with no blank 
  2169. lines. 
  2170.  
  2171. Specifying where the Parameter Descriptions Start:  The break= attribute 
  2172. defines where the descriptions appear in relation to their terms: 
  2173.  
  2174.  break=none     Places the description on the same line as the term.  This is 
  2175.                 the default.  If the term is longer than the specified or 
  2176.                 default tsize= value, the term extends into the description 
  2177.                 column. 
  2178.  
  2179.  break=all      Places the description on the line below the term. 
  2180.  
  2181.  break=fit      Places the description on the line below the term only when the 
  2182.                 term is longer than the tsize= value. 
  2183.  
  2184.  Nested Parameter Lists:  Like simple, unordered, and ordered lists, parameter 
  2185.  lists can be nested. 
  2186.  
  2187.  Input Example 
  2188.  
  2189.   :parml compact tsize=3.
  2190.   :pt.:hp2.KEYWORD-1:ehp2.
  2191.   :pd.Is explained here.
  2192.   :pt.:hp2.KEYWORD-2:ehp2.
  2193.   :pd.Is explained here, and its nested subparameters:
  2194.   :parml compact.
  2195.   :pt.:hp2.SUBPARM1:ehp2.
  2196.   :pt.:hp2.SUBPARM2:ehp2.
  2197.   :pd.Are explained here.
  2198.   :eparml.
  2199.   :pt.:hp2.KEYWORD-3:ehp2.
  2200.   :pd.Is explained here.
  2201.   :eparml.
  2202.  
  2203.  Formatted Output 
  2204.  
  2205.  KEYWORD-1 
  2206.     Is explained here. 
  2207.  KEYWORD-2 
  2208.     Is explained here, and its nested subparameters: 
  2209.  
  2210.       SUBPARM1 
  2211.       SUBPARM2 
  2212.                 Are explained here. 
  2213.  KEYWORD-3 
  2214.     Is explained here. 
  2215.  
  2216.  A parameter description can apply to more than one parameter; that is, you can 
  2217.  specify more than one :pt. in the sequence before specifying a matching :pd.. 
  2218.  
  2219.  The following example shows the tagging for a parameter list with descriptions 
  2220.  that apply to more than one term. 
  2221.  
  2222.  Input Example 
  2223.  
  2224.   :parml compact tsize=3.
  2225.   :pt.:hp2.KEYWORD-1:ehp2.
  2226.   :pt.:hp2.KEYWORD-2:ehp2.
  2227.   :pd.Is explained here.
  2228.   :pt.:hp2.KEYWORD-3:ehp2.
  2229.   :pd.Is not explained here.
  2230.   :eparml.
  2231.  
  2232.  Formatted Output 
  2233.  
  2234.  KEYWORD-1 
  2235.  KEYWORD-2 
  2236.     Is explained here. 
  2237.  KEYWORD-3 
  2238.     Is not explained here. 
  2239.  
  2240.  
  2241. ΓòÉΓòÉΓòÉ 5.9. Tables ΓòÉΓòÉΓòÉ
  2242.  
  2243. Table tags enable you to display text in an arrangement of rows and columns. 
  2244. The system font used to create tables is the monospace font. 
  2245.  
  2246. The table tag (:table.) signals the start of the table.  It requires a 
  2247. corresponding :etable. at the end of the table. 
  2248.  
  2249. The row tag (:row.) specifies the start of each row in the table.  Each row 
  2250. must have at least one column-entry tag (:c.).  This tag specifies the text for 
  2251. each column in the table. 
  2252.  
  2253. The cols=' ' attribute of :table. specifies numeric values that represent the 
  2254. column widths, in character spaces, of each column in the table.  The combined 
  2255. values cannot exceed 250 characters. 
  2256.  
  2257. The number of columns in your table is determined by the number of column width 
  2258. values you have specified with the cols=' ' attribute.  For example, if you 
  2259. enter the values shown in the following, your table will have three columns, 
  2260. each of which will be eleven characters spaces wide. 
  2261.  
  2262.       cols='11 11 11' 
  2263.  
  2264.  A Table with Three Columns:  The following is a simple example of a table with 
  2265.  two rows and three columns: 
  2266.  
  2267.  Input Example 
  2268.  
  2269.   :table cols='13 13 13'.
  2270.   :row.
  2271.   :c.Column 1
  2272.   :c.Column 2
  2273.   :c.Column 3
  2274.   :row.
  2275.   :c.Row 1 Col 1
  2276.   :c.Row 1 Col 2
  2277.   :c.Row 1 Col 3
  2278.   :row.
  2279.   :c.Row 2 Col 1
  2280.   :c.Row 2 Col 2
  2281.   :c.Row 2 Col 3
  2282.   :etable.
  2283.  
  2284.  Formatted Output 
  2285.  
  2286.   ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  2287.   ΓöéColumn 1   ΓöéColumn 2   ΓöéColumn 3   Γöé
  2288.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  2289.   ΓöéRow 1 Col 1ΓöéRow 1 Col 2ΓöéRow 1 Col 3Γöé
  2290.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  2291.   ΓöéRow 2 Col 1ΓöéRow 2 Col 2ΓöéRow 2 Col 3Γöé
  2292.   ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  2293.  
  2294.  If you have more :c. tags following a :row. tag than you have column-width 
  2295.  values, the extra column entries are placed in a new row, and the compiler 
  2296.  returns an error message. 
  2297.  
  2298.  If you have fewer :c. tags than column-width values, the compiler does not 
  2299.  consider this an error.  Space is still allocated for the specified columns; 
  2300.  however, only the columns for which you have provided entries will be filled. 
  2301.  
  2302.  Table Rules and Frames:  The rules= attribute of :table. specifies whether the 
  2303.  table will have vertical rules, horizontal rules, a combination of both, or no 
  2304.  rules at all to delineate the items in the table. The values that you can 
  2305.  specify for rules= are: 
  2306.  
  2307.       rules=both 
  2308.       rules=none 
  2309.       rules=horiz 
  2310.       rules=vert 
  2311.  
  2312.  A Table with Horizontal Rules: 
  2313.  
  2314.  Input Example 
  2315.  
  2316.   :table rules=horiz cols='10 15 15'.
  2317.   :row.
  2318.   :c.SYMBOL
  2319.   :c.ELEMENT
  2320.   :c.CHARACTER
  2321.   :row.
  2322.   :c.&.bxas.
  2323.   :c.box ascender
  2324.   :c.&bxas.
  2325.   :row.
  2326.   :c.&.bxcr.
  2327.   :c.box cross
  2328.   :c.&bxcr.
  2329.   :row.
  2330.   :c.&.bxde.
  2331.   :c.box descender
  2332.   :c.&bxde.
  2333.   :etable.
  2334.  
  2335.  Formatted Output 
  2336.  
  2337.   ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  2338.   Γöé SYMBOL                ELEMENT                 CHARACTER  Γöé
  2339.   ΓöéΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöé
  2340.   Γöé &bxas.                box ascender            Γö┤          Γöé
  2341.   ΓöéΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöé
  2342.   Γöé &bxcr.                box cross               Γö╝          Γöé
  2343.   ΓöéΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöé
  2344.   Γöé &bxde.                box descender           Γö¼          Γöé
  2345.   ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  2346.  
  2347.  If you do not specify the rules= attribute, your table will contain both 
  2348.  vertical and horizontal rules (the default). 
  2349.  
  2350.  The frame= attribute of :table. specifies whether the table will have borders. 
  2351.  The values that you can specify are: 
  2352.  
  2353.       frame=none 
  2354.       frame=rules 
  2355.       frame=box 
  2356.  
  2357.  If you specify frame=none, there will be no borders. 
  2358.  
  2359.  Specifying frame=rules results in a horizontal line at the top and bottom of 
  2360.  the table. 
  2361.  
  2362.  If you specify frame=box, or do not specify the frame= attribute, the table is 
  2363.  enclosed in a box. 
  2364.  
  2365.  A Table without a Frame:  Here is the same table without a frame. 
  2366.  
  2367.  Input Example 
  2368.  
  2369.   :table rules=horiz frame=none cols='10 15 15'.
  2370.   :row.
  2371.   :c.SYMBOL
  2372.   :c.ELEMENT
  2373.   :c.CHARACTER
  2374.   :row.
  2375.   :c.&.bxas.
  2376.   :c.box ascender
  2377.   :c.&bxas.
  2378.   :row.
  2379.   :c.&.bxcr.
  2380.   :c.box cross
  2381.   :c.&bxcr.
  2382.   :row.
  2383.   :c.&.bxde.
  2384.   :c.box descender
  2385.   :c.&bxde.
  2386.   :etable.
  2387.  
  2388.  Formatted Output 
  2389.  
  2390.   SYMBOL              ELEMENT             CHARACTER
  2391.   ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  2392.   &bxas.              box ascender        "
  2393.   ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  2394.   &bxcr.              box cross           Γö╝
  2395.   ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  2396.   &bxde.              box descender       "
  2397.  
  2398.  Special Considerations:  None of the text-formatting tags (for example, list 
  2399.  tags) can be used in a table.  You can use character-graphic symbols and 
  2400.  highlighted-phrase tags.  However, boldface and italic highlighting can cause 
  2401.  vertical misalignment of column text and rules.  To use boldface highlighting 
  2402.  in tables and avoid word alignment problems, place the highlighted-phrase tags 
  2403.  (:hp2. and :ehp2.) as shown in the example.  The table rules as well as the 
  2404.  text will be displayed in boldface. 
  2405.  
  2406.  Input Example 
  2407.  
  2408.   :hp2.
  2409.   :table cols='11 11 11'.
  2410.   :row.
  2411.   :c.Row 1 Col 1
  2412.   :c.Row 1 Col 2
  2413.   :c.Row 1 Col 3
  2414.   :row.
  2415.   :c.Row 2 Col 1
  2416.   :c.Row 2 Col 2
  2417.   :c.Row 2 Col 3
  2418.   :etable.
  2419.   :ehp2.
  2420.  
  2421.  Formatted Output 
  2422.  
  2423.   ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  2424.   ΓöéRow 1 Col 1ΓöéRow 1 Col 2ΓöéRow 1 Col 3Γöé
  2425.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  2426.   ΓöéRow 2 Col 1ΓöéRow 2 Col 2ΓöéRow 2 Col 3Γöé
  2427.   ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  2428.  
  2429.  The above technique is practical only with :hp2. and does not work for :hp1. 
  2430.  or for the highlighted-phrase tags that change the color of text. 
  2431.  
  2432.  Unformatted Text in a Table Column:  The text in table columns is formatted 
  2433.  only once-at compile time. If you do not want the compiler to format the text 
  2434.  in a column, enclose it with :lines. and :elines., as shown in the following 
  2435.  example. 
  2436.  
  2437.  Input Example 
  2438.  
  2439.   :table cols='10 10 15 10'.
  2440.   :row.
  2441.   :c.Spacecraft
  2442.   :c.Date
  2443.   :c.Astronauts
  2444.   :c.Mission
  2445.   :row.
  2446.   :c.Apollo 11
  2447.   :c.7-16-1969
  2448.   :c.
  2449.   :lines.
  2450.   Neil Armstrong
  2451.   Edwin Aldrin
  2452.   Michael Collins
  2453.   :elines.
  2454.   :c.
  2455.   First landing on the moon.
  2456.   :etable.
  2457.  
  2458.  Formatted Output 
  2459.  
  2460.   ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  2461.   ΓöéSpacecraftΓöéDate      ΓöéAstronauts     ΓöéMission   Γöé
  2462.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  2463.   ΓöéApollo 11 Γöé7-16-1969 ΓöéNeil Armstrong ΓöéFirst     Γöé
  2464.   Γöé          Γöé          ΓöéEdwin Aldrin   Γöélanding onΓöé
  2465.   Γöé          Γöé          ΓöéMichael CollinsΓöéthe moon. Γöé
  2466.   ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  2467.  
  2468.  
  2469. ΓòÉΓòÉΓòÉ 5.10. Plain Lines ΓòÉΓòÉΓòÉ
  2470.  
  2471. Normally, lines of text that have no formatting tags are wrapped by IPF; that 
  2472. is, irregular lines in the source file become a continuous string, and one word 
  2473. follows another on a line until the line width of the current window is filled, 
  2474. a formatting tag is encountered, or the end of the window is reached. 
  2475.  
  2476. The :lines. tag and its corresponding end tag, :elines., enable you to control 
  2477. where lines break. 
  2478.  
  2479. The following example shows how the :lines. tag prevents wrapping of text. 
  2480.  
  2481. Input Example 
  2482.  
  2483. Here is how IPF normally wraps lines to fit the window width&colon. 
  2484.  
  2485. :p.&odq.Normally, lines of text that have no formatting tags are wrapped by 
  2486. IPF; that is, irregular lines in the source file become a continuous string, 
  2487. and one word follows another on a line until the line width of the current 
  2488. window is filled, a formatting tag is encountered, or the end of the window is 
  2489. reached.&cdq. 
  2490.  
  2491. In the following example, IPF will not wrap the lines, because we used the 
  2492. :hp2.&colon.lines&per.:ehp2. tag to prevent the lines from being formatted. 
  2493.  
  2494. :lines.
  2495. &odq.Normally, lines of text that have no
  2496. formatting tags are wrapped by IPF;
  2497. that is, irregular lines in the source
  2498. file become a continuous string, and
  2499. one word follows another on a line
  2500. until the line width of the current
  2501. window is filled, a formatting tag
  2502. is encountered, or the end of the
  2503. window is reached.&cdq.
  2504. :elines.
  2505.  
  2506. The quotation appears in two forms. 
  2507.  
  2508. Plain Lines Example 
  2509.  
  2510. Here is how IPF normally wraps lines to fit the window width: 
  2511.  
  2512. "Normally, lines of text that have no formatting tags are wrapped by IPF; that 
  2513. is, irregular lines in the source file become a continuous string, and one word 
  2514. follows another on a line until the line width of the current window is filled, 
  2515. a formatting tag is encountered, or the end of the window is reached." 
  2516.  
  2517. In the following example, IPF will not wrap the lines, because we used the 
  2518. :lines. tag to prevent the lines from being formatted. 
  2519.  
  2520. "Normally, lines of text that have no
  2521. formatting tags are wrapped by IPF;
  2522. that is, irregular lines in the source
  2523. file become a continuous string, and
  2524. one word follows another on a line
  2525. until the line width of the current
  2526. window is filled, a formatting tag
  2527. is encountered, or the end of the
  2528. window is reached."
  2529.  
  2530. In the first case, IPF wraps the lines to fit the window width. In the second, 
  2531. IPF does not wrap the lines, because :lines. prevents them from being 
  2532. formatted. If a line of text were to exceed the width of the current window, it 
  2533. would be clipped.  Also, when IPF encounters other tags between :lines. and 
  2534. :elines., such as quotation tags, the tags are processed. 
  2535.  
  2536. Aligned Lines:  :lines. has an align= attribute, which you use to align text to 
  2537. the left, right, or center of the window. 
  2538.  
  2539. Assume that in the previous example, the tag was: 
  2540.  
  2541. :lines align=center.
  2542.  
  2543. The output would be as shown here. 
  2544.  
  2545.               Normally, lines of text that have no formatting tags
  2546.               are "wrapped" by IPF; that is, irregular lines in the
  2547.               source file become a continuous string, and one word
  2548.               follows another on a line until the line width of the
  2549.                   current window is filled, a formatting tag is
  2550.                 encountered, or the end of the window is reached.
  2551.  
  2552. Text aligned in the center of the window. 
  2553.  
  2554.  
  2555. ΓòÉΓòÉΓòÉ 5.11. Figures and Captions ΓòÉΓòÉΓòÉ
  2556.  
  2557. The figure tag (:fig.) is similar to :lines..  Both convey the same message: 
  2558. "Do not format the text that follows."  Also, both tags have end tags. 
  2559.  
  2560. A Captioned Figure:  Associated with :fig. is :figcap., which enables you to 
  2561. place a descriptive sentence or caption above or below the text. 
  2562.  
  2563. Input Example 
  2564.  
  2565. :h4.Example 1:  A Captioned Figure
  2566. :fig.
  2567. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  2568.  Bat
  2569.  Black Bear
  2570.  Bobcat
  2571.  Coyote
  2572.  Mink
  2573.  Florida Panther
  2574.  Key Deer
  2575.  Oppossum
  2576.  West Indian Manatee
  2577.  Whitetail Deer
  2578. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  2579. :figcap.Major Species of Mammals in Florida
  2580. :efig.
  2581.  
  2582. The formatted output looks like this: 
  2583.  
  2584. Example 1:  A Captioned Figure
  2585. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  2586.  Bat
  2587.  Black Bear
  2588.  Bobcat
  2589.  Coyote
  2590.  Mink
  2591.  Florida Panther
  2592.  Key Deer
  2593.  Oppossum
  2594.  West Indian Manatee
  2595.  Whitetail Deer
  2596. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  2597. Major Species of Mammals in Florida
  2598.  
  2599. Figure and Figure Caption 
  2600.  
  2601.  
  2602. ΓòÉΓòÉΓòÉ 5.12. Textual Examples ΓòÉΓòÉΓòÉ
  2603.  
  2604. One way of helping readers understand information is to use examples. The 
  2605. example tag (:xmp.) and its corresponding end tag (:exmp.) enable you to 
  2606. illustrate your information with textual examples by turning formatting off so 
  2607. that you can arrange text any way you want it. The text will be displayed in a 
  2608. monospace font.  To change the monospace font, use :font. within :xmp..  For 
  2609. more information about :font., see Changing Fonts. 
  2610.  
  2611. Input Example 
  2612.  
  2613. :xmp.
  2614. File   Edit   View   Options   Help
  2615.  
  2616.                  All
  2617.                  Some . . .
  2618.                  By . . .
  2619. :exmp.
  2620.  
  2621. Formatted Output 
  2622.  
  2623. File   Edit   View   Options   Help
  2624.  
  2625.                  All
  2626.                  Some . . .
  2627.                  By . . .
  2628.  
  2629. Restriction:  You cannot nest :xmp. within another :xmp.. 
  2630.  
  2631.  
  2632. ΓòÉΓòÉΓòÉ 5.13. Character Graphics ΓòÉΓòÉΓòÉ
  2633.  
  2634. If you want to include simple line drawings, use the character graphics tag 
  2635. (:cgraphic.) and its corresponding end tag (:ecgraphic.). Text within this tag 
  2636. is displayed in a monospace font.  To change the monospace font, use :font. 
  2637. within :cgraphic..  For more information about :font., see Changing Fonts. If 
  2638. text does not fit within the boundaries of a window, it is clipped, not 
  2639. wrapped. 
  2640.  
  2641. Place the tags before and after the character graphic, as shown in the 
  2642. following example. 
  2643.  
  2644. Input Example 
  2645.  
  2646. :cgraphic.
  2647.  
  2648. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  2649. ΓöéFile   Edit  Γöé View Γöé Options   Help Γöé
  2650. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÿ
  2651.               Γöé All                Γöé
  2652.               Γöé Some . . .         Γöé
  2653.               Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  2654.               Γöé By . . .           Γöé
  2655.               ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  2656. :ecgraphic.
  2657.  
  2658. Formatted Output 
  2659.  
  2660. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  2661. ΓöéFile   Edit  Γöé View Γöé Options   Help Γöé
  2662. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÿ
  2663.               Γöé All                Γöé
  2664.               Γöé Some . . .         Γöé
  2665.               Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  2666.               Γöé By . . .           Γöé
  2667.               ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  2668.  
  2669. Restriction:  You cannot nest :cgraphic. within another :cgraphic.. 
  2670.  
  2671.  
  2672. ΓòÉΓòÉΓòÉ 5.14. Changing Fonts ΓòÉΓòÉΓòÉ
  2673.  
  2674. The :font. tag is used to change the current font within the text of the 
  2675. current window.  When a heading tag that defines a new window is encountered, 
  2676. the font is reset to the system default font. 
  2677.  
  2678. The font tag has three attributes:  facename= and size= are required; 
  2679. codepage= is optional. If a code page value is not specified, the code page of 
  2680. the active system is used. 
  2681.  
  2682. facename= specifies the name of the font you want to change to.  Some of the 
  2683. common values for this attribute are: 
  2684.  
  2685.       Helv 
  2686.       Courier 
  2687.       default 
  2688.  
  2689.  size= specifies the height and width, in points, of the font you have 
  2690.  selected.  (A point is a typesetting measure equal to approximately 1/72 of an 
  2691.  inch.) The value is expressed in the form, HxW.  For example, suppose you want 
  2692.  to change the current font to an 18-point-high by 10-point-wide Helvetica 
  2693.  font.  You would specify: 
  2694.  
  2695.   :font facename=Helv size=18x10.
  2696.  
  2697.  You do not have to know exact point values.  IPF uses a "best fit" method to 
  2698.  select the font.  If, in the example above, you had specified 20x12 as the 
  2699.  size value, IPF would have selected Helv 18x10 because it is the closest size 
  2700.  to the one you specified. 
  2701.  
  2702.  Using :font., you can make as many font changes within a window as you want. 
  2703.  You can define highlighted phrases while a font tag is in effect, and the 
  2704.  tagged text will be displayed in the font style corresponding to that 
  2705.  typeface. 
  2706.  
  2707.  You can use :font. within the :xmp. and :cgraphic. tags to change the default 
  2708.  system monospace font.  To change the default system monospace font, specify 
  2709.  the desired facename= and size= attribute. 
  2710.  
  2711.  The following resets the font to the default system proportional font. 
  2712.  
  2713.   :font facename=default size=0x0.
  2714.  
  2715.  In the following example, the font style is reset for each list item in the 
  2716.  simple list. 
  2717.  
  2718.  Input Example 
  2719.  
  2720.   :p.The following illustrate available fonts:
  2721.   :sl.
  2722.   :font facename=Courier size=13x8.
  2723.   :li.This sentence is in Courier 13 by 8 font.
  2724.   .*
  2725.   :font facename='Tms Rmn' size=18x14.
  2726.   :li.This sentence is in 'Tms Rmn' 18 by 14 font.
  2727.   .*
  2728.   :font facename=Helv size=28x18.
  2729.   :li.This sentence is in Helvetica 28 by 18 font.
  2730.   .*
  2731.   :font facename=default size=0x0.
  2732.   :li.This sentence is in the default system font.
  2733.   :esl.
  2734.  
  2735.  Here is the formatted output. 
  2736.  
  2737.  Example of the Font Tag 
  2738.  
  2739.       This sentence is in Courier 13 by 8 font. 
  2740.  
  2741.       This sentence is in 'Tms Rmn' 18 by 14 font. 
  2742.  
  2743.       This sentence is in Helvetica 28 by 18 font. 
  2744.  
  2745.       This sentence is in the default system font. 
  2746.  
  2747.  
  2748. ΓòÉΓòÉΓòÉ 5.15. Changing Color ΓòÉΓòÉΓòÉ
  2749.  
  2750. The color tag (:color.), with its attributes fc= and bc=, enables you to change 
  2751. the color of the text (foreground color) and the color of the area behind the 
  2752. text characters (background color). 
  2753.  
  2754. Colors set with this tag remain in effect until others are specified, or until 
  2755. a heading definition is encountered. 
  2756.  
  2757. To return to the system colors, specify: 
  2758.  
  2759. :color fc=default bc=default.
  2760.  
  2761. In the following example, each of the first three color tags specifies 
  2762. different foreground and background colors.  The last color tag returns the 
  2763. colors to the system colors. 
  2764.  
  2765. Input Example 
  2766.  
  2767. :ol.
  2768. :color fc=green bc=blue.
  2769. :li.Color the foreground green; color the background blue.
  2770. .*
  2771. :color fc=blue bc=red.
  2772. :li.Color the foreground blue; color the background red.
  2773. .*
  2774. :color fc=cyan bc=yellow.
  2775. :li.Color the foreground cyan; color the background yellow.
  2776. .*
  2777. :color fc=default bc=default.
  2778. :li.Return to the system colors.
  2779. :eol.
  2780.  
  2781. Output Example:  Color the Foreground and Background 
  2782.  
  2783.       Color the foreground green; color the background blue. 
  2784.  
  2785.       Color the foreground blue; color the background red. 
  2786.  
  2787.       Color the foreground cyan; color the background yellow. 
  2788.  
  2789.       Return to the system colors. 
  2790.  
  2791.  
  2792. ΓòÉΓòÉΓòÉ 5.16. Margins ΓòÉΓòÉΓòÉ
  2793.  
  2794. You can specify the boundaries of text in a window by using the margin tags. 
  2795. The left-margin tag (:lm.) specifies how many character spaces from the left 
  2796. border of the window the text is to start.  The right-margin tag (:rm.) 
  2797. specifies how many character spaces from the right border the text is to end. 
  2798.  
  2799. The margin= attribute sets the margin for the text. If none is specified on the 
  2800. :lm. or :rm. tag, the default is 1. 
  2801.  
  2802. If the margin tag in a line begins beyond the specified boundary, the new 
  2803. margin becomes effective on the next line. 
  2804.  
  2805. You can have multiple margin tags in your file. The specified margins remain in 
  2806. effect until they are reset. 
  2807.  
  2808. Input Example 
  2809.  
  2810. :p.
  2811. :rm margin=10.
  2812. :lm margin=20.This text begins 20 spaces to the right
  2813. of the left window border and ends 10 spaces to the
  2814. left of the right window border.
  2815. All text is aligned as specified
  2816. by the margin values. :lm margin=5.Here the left margin
  2817. is changed to 5.  Because this margin tag begins
  2818. more than 5 spaces on the line, the margin specified
  2819. becomes effective on the following line, and the text
  2820. begins 5 spaces from the left window border.
  2821. The right margin remains unchanged.
  2822.  
  2823. Here is how the window looks: 
  2824.  
  2825.                     This text begins 20 spaces to the right of the left window 
  2826.                     border and ends 10 spaces to the left of the right window 
  2827.                     border. All text is aligned as specified by the margin 
  2828.                     values. Here the left margin is changed to 5.  Because this 
  2829.      margin tag begins more than 5 spaces on the line, the margin specified 
  2830.      becomes effective on the following line, and the text begins 5 spaces from 
  2831.      the left window border. The right margin remains unchanged. 
  2832.  
  2833.      Example of the Margin Tag 
  2834.  
  2835.  
  2836. ΓòÉΓòÉΓòÉ 5.17. Bit Map and Metafile Graphics ΓòÉΓòÉΓòÉ
  2837.  
  2838. In a previous topic, we discussed how you can use :cgraphic. to illustrate your 
  2839. text with character graphics.  With :artwork., you can illustrate your text 
  2840. with bit-map or metafile graphics.  A bit map is a representation of an image, 
  2841. and can be created with such tools as the Icon Editor, which is available with 
  2842. the IBM Developer. Metafiles provide device independence; bit maps do not. The 
  2843. bit map or metafile graphics reside in a file that must be specified with the 
  2844. name=' ' attribute of :artwork.. This file is then loaded when you compile your 
  2845. source file with the IPF compiler. The OS/2 2.0 compress bit map format is not 
  2846. supported by the IPF compiler.  The IPF compiler compresses the bit maps. 
  2847.  
  2848. The artwork tag has other attributes as well: 
  2849.  
  2850.        o  The align= attribute enables you to position the graphic. The values 
  2851.           are left, right, and center, and are with respect to the current 
  2852.           margins. 
  2853.  
  2854.        o  The fit attribute causes a bit map to be redrawn and scaled to fit 
  2855.           the window. 
  2856.  
  2857.           The ratio between the width and height of the window should be the 
  2858.           ratio of the original width and height of the bit map or metafile; 
  2859.           otherwise, the graphic might appear distorted. 
  2860.  
  2861.        o  The runin attribute enables you to place a graphic within a line of 
  2862.           text. For example, to include an icon within a line of text, the text 
  2863.           and tag would be as follows: 
  2864.  
  2865.      Input Example 
  2866.  
  2867.           :p.This is an example of artwork displayed within the
  2868.           :artwork runin name='BOOK.BMP'.
  2869.           text of a sentence.
  2870.           .**
  2871.           :p.You can also align the artwork to appear on the
  2872.           :lines align=left.
  2873.           left,
  2874.           :elines.
  2875.           :artwork align=left name='BOOK.BMP'.
  2876.           :lines align=right.
  2877.           right,
  2878.           :elines.
  2879.           :artwork align=right name='BOOK.BMP'.
  2880.           :lines align=center.
  2881.           or center of the window.
  2882.           :elines.
  2883.           :artwork align=center name='BOOK.BMP'.
  2884.  
  2885.      It would bring the artwork into the screen like this. 
  2886.  
  2887.      This is an example of artwork displayed within the text of a sentence. 
  2888.  
  2889.      You also can align the artwork to appear on the 
  2890.  
  2891.           left,
  2892.  
  2893.                                                                           right,
  2894.  
  2895.                                or center of the window.
  2896.  
  2897.      Example of the Artwork Tag 
  2898.  
  2899.  
  2900. ΓòÉΓòÉΓòÉ 6. Linking ΓòÉΓòÉΓòÉ
  2901.  
  2902. Today, the computer's ability to link pieces of information gives the author 
  2903. flexibility in layering and structuring documents, and at the same time, 
  2904. provides cohesive information. 
  2905.  
  2906. This chapter describes the tags that identify, associate, and link one window 
  2907. to another window.  This chapter also describes the different types of linking 
  2908. available with IPF, and what to expect when using them. 
  2909.  
  2910.  
  2911. ΓòÉΓòÉΓòÉ 6.1. Window Identifiers ΓòÉΓòÉΓòÉ
  2912.  
  2913. The link tag (:link.) allows you to link to a heading, a footnote, an external 
  2914. database, or another application. The reftype=  attribute is required with each 
  2915. link tag description.  This attribute identifies the type of link you are 
  2916. defining. 
  2917.  
  2918. The res= attribute and the value specified identify the window you are linking 
  2919. to.  This attribute is the window identifier. A res= number must be in the 
  2920. range 1 through 64 000. The same window identifier must be specified in the 
  2921. tagging of the window you are linking to in order for a hypertext link to exist 
  2922. (see Hypertext Links). 
  2923.  
  2924. The IPF compiler recognizes links to headings (including hidden headings) only 
  2925. when the heading level is within the default range (toc=123) or specified range 
  2926. of heading levels.  If you specify a window identifier for a level that is 
  2927. lower in the hierarchy than that recognized for contents entries, and then 
  2928. attempt to link to it, the compiler returns an error message.  For example, 
  2929. suppose the default is in effect for contents entries; that is, only heading 
  2930. levels 1 through 3 cause entries in the Contents window.  Also suppose your 
  2931. file contains the following heading definition: 
  2932.  
  2933. :h4 res=050.Copy File
  2934.  
  2935. The heading "Copy File"  appears in the same window as the preceding heading 
  2936. level 3.  If you use this window identifier in a link definition to link to the 
  2937. heading from another window, the IPF compiler returns the error message, No res 
  2938. for this reference. 
  2939.  
  2940. If you are creating windows for an online document (a .INF file), you can use 
  2941. the res=, id=, or name= attribute of the heading tag to specify window 
  2942. identifiers. An advantage of using either id= or name= is that you can specify 
  2943. both alphabetic and numeric characters, which can make the job of assigning and 
  2944. remembering window IDs easier.  If you use one of these attributes, you must 
  2945. use the refid= attribute of :link. when defining a hypertext cross-reference to 
  2946. the window. 
  2947.  
  2948. If you need to use both res= numbers and id= values, you can specify both in a 
  2949. window heading. For simplicity, you can assign the same number to both 
  2950. identifiers. 
  2951.  
  2952. Note:  If an OS/2 application needs to communicate with an IPF window, you must 
  2953.        use the res= attribute as a window identifier. 
  2954.  
  2955.  
  2956. ΓòÉΓòÉΓòÉ 6.2. Types of Links ΓòÉΓòÉΓòÉ
  2957.  
  2958. Links are electronic connections between one online element and another.  With 
  2959. IPF, the user can be linked from one window to another by means of selectable 
  2960. text and graphic areas that the author defines.  The user also can be linked to 
  2961. information in another IPF database. 
  2962.  
  2963. Different types of links support document designs and information 
  2964. retrievability in various ways: 
  2965.  
  2966.      Hypertext Links Selectable words or phrases that connect related 
  2967.              information. 
  2968.  
  2969.      Hypergraphic Links Selectable graphics that connect related information. 
  2970.  
  2971.      Automatic Links Links that begin a chain reaction at the primary window. 
  2972.              When the user selects the primary window, an automatic link is 
  2973.              activated to display secondary windows. 
  2974.  
  2975.      External Links Links that connect external online document files. 
  2976.  
  2977.  
  2978. ΓòÉΓòÉΓòÉ 6.2.1. Hypertext Links ΓòÉΓòÉΓòÉ
  2979.  
  2980. Hypertext is the linking of online information so the user can navigate from 
  2981. selectable text to related information. A hypertext link is the association 
  2982. between two topics. The origin of the link is the source topic; the destination 
  2983. is the target topic. 
  2984.  
  2985. In the following example, the DIR command is the source topic; it describes the 
  2986. directory command. Within the DIR topic is a reference to the MKDIR command - 
  2987. the target topic. 
  2988.  
  2989.  
  2990.        Source Topic                      Target Topic
  2991. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ      ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  2992. ΓöéDIR - Display files in ... Γöé ΓöîΓöÇΓöÇ Γöé MKDIR - Make a new ... Γöé
  2993. Γöé                           Γöé Γöé    Γöé                        Γöé
  2994. Γöé                           Γöé Γöé    Γöé                        Γöé
  2995. Γöé                           Γöé Γöé    Γöé                        Γöé
  2996. Γöé Related command: MKDIR ΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÿ    Γöé  Related command: DIR  Γöé
  2997. Γöé                           Γöé      Γöé                        Γöé
  2998. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ      ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  2999.  
  3000. You use :link. to establish a hypertext link between a topic in the 
  3001. source-topic window and a topic in the target-topic window.  :link. enables you 
  3002. to create selectable, highlighted text in the source-topic window.  When users 
  3003. select this text, they are linked to the window containing the target topic, 
  3004. and the linked window appears. 
  3005.  
  3006. Consider the following example: 
  3007.  
  3008. :link reftype=hd res=123.MKDIR:elink.
  3009.  
  3010.        o  reftype=hd indicates the hypertext phrase MKDIR is being linked to a 
  3011.           heading in the target-topic window. 
  3012.  
  3013.           Notice MKDIR is delimited by the period of the :link. tag and the 
  3014.           colon of the :elink. tag. 
  3015.  
  3016.        o  res=123 is the identifier of the target-topic window. 
  3017.  
  3018.           The heading tag of the target-topic window must contain this 
  3019.           identifier. The following is an example: 
  3020.  
  3021.                         :h2 res=123.MKDIR
  3022.  
  3023.      For more information about hypertext links, see Display Another Window of 
  3024.      the Same Library. 
  3025.  
  3026.  
  3027. ΓòÉΓòÉΓòÉ 6.2.2. Hypergraphic Links ΓòÉΓòÉΓòÉ
  3028.  
  3029. A hypergraphic link is similar to a hypertext link except that the user 
  3030. navigates from a selectable graphic instead of selectable text. 
  3031.  
  3032.  
  3033. ΓòÉΓòÉΓòÉ 6.2.2.1. Bit Maps ΓòÉΓòÉΓòÉ
  3034.  
  3035. Graphic illustrations are usually bit maps.  Bit maps can be monochrome or 
  3036. color and can be created with the Presentation Manager Icon Editor, which is 
  3037. available in the IBM Developer. The bit map resides in a separate file called 
  3038. by IPF at compile time. 
  3039.  
  3040. The artwork tag (:artwork.) identifies the name of the bit-map; for example: 
  3041.  
  3042. :artwork name='mybitmap.bmp'.
  3043.  
  3044. The :artlink. and :eartlink. tags define areas of the bit map that are 
  3045. selectable hypergraphic. This means the user can link from the artwork to 
  3046. additional information. If no :artlink. tag is used, no hypergraphic areas are 
  3047. defined. 
  3048.  
  3049. If you want the entire bit map to be hypergraphic, the tagging is simple.  You 
  3050. have only one art link, and you do not have to define the area.  The following 
  3051. shows the tagging required to establish a link: 
  3052.  
  3053. Input Example 
  3054.  
  3055. :p.This is an example of a hypergraphic.
  3056. Select the Shuttle graphic and get ready for a walk on
  3057. the moon.
  3058. :artwork name='shuttle.bmp'.
  3059. :artlink.
  3060. :link reftype=hd res=001.
  3061. :eartlink.
  3062.  
  3063.  Notice there is no :elink. tag.  Instead, there is an :eartlink. tag.  An 
  3064. :elink. tag is required only to denote the end of a hypertext link. 
  3065.  
  3066. You also need to specify the identifier in the tagging for the window you are 
  3067. linking to.  For example: 
  3068.  
  3069. :h1 res=001.Apollo 11
  3070.  
  3071. The entire bit map as a selectable hypergraphic area. 
  3072.  
  3073. When the user double-clicks on the hypergraphic area, the window whose 
  3074. identifier is 001 ("Apollo 11") appears. 
  3075.  
  3076.  
  3077. ΓòÉΓòÉΓòÉ 6.2.2.2. Metafiles ΓòÉΓòÉΓòÉ
  3078.  
  3079. A metafile is another type of file in which graphics are stored. However, a 
  3080. metafile contains data generated from the Presentation Manager graphics (GPI) 
  3081. functions only. (For information about graphics functions, see the OS/2 2.0 
  3082. Programming Guide, Volume 3.)  IPF supports a metafile as a hypergraphic link 
  3083. only when the entire metafile is defined as a hypergraphic area. 
  3084.  
  3085. The artwork tag identifies the file name of a metafile as follows: 
  3086.  
  3087. :artwork name='myfile.met'.
  3088.  
  3089.  
  3090. ΓòÉΓòÉΓòÉ 6.2.2.3. Segmented Hypergraphics ΓòÉΓòÉΓòÉ
  3091.  
  3092. You can divide your bit map into rectangular segments, make each segment 
  3093. selectable, and have each segment link to different information. You must 
  3094. define each segment in terms of values along the x and y axes. Values for x and 
  3095. y define the origin of the segment. The changes in x and y are given as values 
  3096. for cx and cy. The following is an example of a segmented bit map: 
  3097.  
  3098.     0,16                                32,16
  3099.     | ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  3100.     | Γöé                Γöé                  Γöé
  3101.     | Γöé                Γöé                  Γöé
  3102.     y Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  3103.     | Γöé                Γöé                  Γöé
  3104.     | Γöé                Γöé                  Γöé
  3105.     | ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  3106.     0,0 ---------------x--------------- 32,0
  3107.  
  3108. The following shows the tagging to establish a bit-map segment as a 
  3109. hypergraphic area: 
  3110.  
  3111. :artwork name='show2.bmp'.
  3112. :artlink.
  3113. :link reftype=hd res=001 x=0 y=0 cx=16 cy=8.
  3114. :eartlink.
  3115.  
  3116.  
  3117. ΓòÉΓòÉΓòÉ 6.2.3. Automatic Links ΓòÉΓòÉΓòÉ
  3118.  
  3119. Links also can be made automatically.  An automatic link occurs when the user 
  3120. performs an action that selects a window in which a link is defined. For 
  3121. automatic links to occur, the reftype= attribute of the :link. tag must have a 
  3122. value of hd, inform, or launch. Automatic links allow you to: 
  3123.  
  3124.        o  Display multiple windows when a heading or link definition is 
  3125.           selected (hd attribute). 
  3126.  
  3127.        o  Display multiple secondary windows within the coverpage of a primary 
  3128.           window (hd attribute). 
  3129.  
  3130.        o  Send a message to the application when a window is displayed (inform 
  3131.           attribute). 
  3132.  
  3133.        o  Start a Presentation Manager program when a window is displayed 
  3134.           (launch attribute). 
  3135.  
  3136.      Automatic links can be associated with selectable links so that another 
  3137.      action occurs in addition to the display of a linked window.  For example, 
  3138.      a Presentation Manager program can be started, or a message can be sent to 
  3139.      the application program. 
  3140.  
  3141.      Restriction: Linking automatically to an external database is not 
  3142.      possible. 
  3143.  
  3144.  
  3145. ΓòÉΓòÉΓòÉ 6.2.4. External Links ΓòÉΓòÉΓòÉ
  3146.  
  3147. An external link is a link from a .HLP file to another .HLP file or from a .INF 
  3148. file to another .INF file. 
  3149.  
  3150. If you are linking from one internal database to another, use the res= 
  3151. attribute. If you want to allow external databases to link to a window in your 
  3152. file, the window heading must contain the global attribute, and you must use 
  3153. the id= attribute as a window identifier. 
  3154.  
  3155. Restriction: Linking automatically to an external database is not possible. 
  3156.  
  3157. For more information about external links, see Display a Help Window from 
  3158. Another Help Library. 
  3159.  
  3160.  
  3161. ΓòÉΓòÉΓòÉ 6.3. What Linking Can Do ΓòÉΓòÉΓòÉ
  3162.  
  3163. You now know that :link. makes text phrases and hypergraphic areas within a 
  3164. window selectable. When the user selects a hypertext or hypergraphic area, the 
  3165. following occurs, depending on the content of the :link. tag: 
  3166.  
  3167.        o  Another window of the same library is displayed. 
  3168.        o  Another window of a different library is displayed. 
  3169.        o  A footnote window is displayed. 
  3170.        o  A message is sent to the application program. 
  3171.        o  Another application is started. 
  3172.  
  3173.  
  3174. ΓòÉΓòÉΓòÉ 6.3.1. Display Another Window of the Same Library ΓòÉΓòÉΓòÉ
  3175.  
  3176. When you want the user to link to another window in the current library, use 
  3177. the reftype=hd attribute with :link.. For example: 
  3178.  
  3179. :link
  3180. reftype=hd res=21084.What Are Libraries For?
  3181. :elink.
  3182.  
  3183. The hd attribute tells the compiler to link to a heading in another window. The 
  3184. res= attribute value specifies the identification of the window being linked 
  3185. to. 
  3186.  
  3187. The text "What Are Libraries For?" is uniquely highlighted in the window so 
  3188. that the user knows it is selectable. If the user selects it, the window 
  3189. containing the heading defined by res= 21084 appears. 
  3190.  
  3191. Note:  The highlighting of a hypertext phrase is done with a color selected by 
  3192.        IPF and should not be confused with highlighted-phrase tags, which are 
  3193.        used to change the type font. (See Highlighted Phrases for an 
  3194.        explanation of these tags.) 
  3195.  
  3196.      The tagging shown in the following figure contains an example of the link 
  3197.      tag.  Also included is the tagging for the window being linked to. 
  3198.  
  3199.           :************************************************
  3200.           :* In the following source, the text of the window
  3201.           :* contains a heading tag with a window
  3202.           :* identifier, a paragraph tag, and a hypertext
  3203.           :* link to another window.
  3204.           :************************************************
  3205.           :h1 res=21083.The Library Manager
  3206.           :i1.object code libraries
  3207.           :p.
  3208.           The Library Manager (LIB) lets you create and maintain
  3209.           libraries of object code.  A library is an organized
  3210.           collection
  3211.           of object code; that is, a library contains functions and data
  3212.           that are already assembled or compiled and ready for linking
  3213.           with your programs. See:
  3214.           :link
  3215.           reftype=hd res=21084.What Are Libraries For?
  3216.           :elink.
  3217.           :p.
  3218.           LIB works with both DOS and OS/2 files.
  3219.           :************************************************
  3220.           :* The following contains a heading tag with a
  3221.           :* window identifier that matches the link-tag
  3222.           :* res= attribute above.
  3223.           :* This file also contains an unordered list.
  3224.           :************************************************
  3225.           :h2 res=21084.What Are Libraries For?
  3226.           :p.Programming libraries of object code are used:
  3227.           :ul.
  3228.           :li.To support high-level languages.
  3229.           :p.Most compilers include libraries to perform standard
  3230.           operations, such as input/output and floating-point mathematics.
  3231.           :p.
  3232.           When your program refers to a library routine, the
  3233.           compiler and linker combine the library routine with your
  3234.           program.
  3235.           :li.To perform complex and specialized activities, such
  3236.           as database management or advanced graphics.
  3237.           :p.Compilers include libraries for specialized tasks. You
  3238.           also can use a library from a third party software vendor.
  3239.           :li.To support your own work.
  3240.           :p.If you have created routines that you use with a
  3241.           variety of programs, you might want to consolidate these routines
  3242.           into a library.  You then can link to one library object module
  3243.           rather than to a large group of object files.
  3244.           :eul.
  3245.  
  3246.  
  3247. ΓòÉΓòÉΓòÉ 6.3.2. Display a Window Linked to Another Database ΓòÉΓòÉΓòÉ
  3248.  
  3249. You also can link a user to a window in another IPF .HLP or .INF file.  You 
  3250. must specify the file name with the database= attribute. If the following were 
  3251. in the source file, selection of the hypertext link would cause the file, 
  3252. EDITOR.HLP to be loaded, and the window whose ID is 001 to be displayed. 
  3253.  
  3254. :link reftype=hd database='editor.hlp' refid=001.
  3255. Editing Functions
  3256. :elink.
  3257.  
  3258. The heading definition in the other file must contain the global attribute.  If 
  3259. the link to the file cannot be resolved, the hypertext phrase in the link is 
  3260. not highlighted.  For example, if the .INF or .HLP file is not available, IPF 
  3261. will not highlight the linked phrase.  If the .INF or .HLP file becomes 
  3262. available, IPF will dynamically highlight the phrase. 
  3263.  
  3264.  
  3265. ΓòÉΓòÉΓòÉ 6.3.3. Display a Help Window from Another Help Library ΓòÉΓòÉΓòÉ
  3266.  
  3267.  If you are creating a window for a help library (a .HLP file), you must use 
  3268. the res= attribute to assign an identifier to each window.  For example: 
  3269.  
  3270. :h1 res=2001 id=2001 global.
  3271. Help for Copy
  3272.  
  3273. IPF uses the value specified for res= (any integer from 1 through 64 000) to 
  3274. associate a window with a user's request for help on a field or window of the 
  3275. application. If you use the res= attribute in a heading tag, you must also use 
  3276. it in a link tag when defining a hypertext cross-reference to the window.  For 
  3277. example: 
  3278.  
  3279. :link reftype=hd res=2001.
  3280. Help for Copy
  3281. :elink.
  3282.  
  3283.  
  3284. ΓòÉΓòÉΓòÉ 6.3.4. Display a Footnote Window ΓòÉΓòÉΓòÉ
  3285.  
  3286. A footnote window results when the user selects a hypertext phrase that is 
  3287. linked to a footnote tag (:fn.).  The text between :fn. and :efn. is what 
  3288. appears in the footnote window.  The following is an example of the tagging for 
  3289. the footnote text: 
  3290.  
  3291. Input Example 
  3292.  
  3293. :fn id=drive.
  3294. :p.The text you enclose in footnote tags appears in a
  3295. small window when the user selects a hypertext or hypergraphic
  3296. link to the footnote.  Notice that
  3297. the title of the window is the same as the hypertext
  3298. phrase "disk drives" that links to the window.
  3299. :efn.
  3300.  
  3301.  The id= attribute identifies the footnote for linking purposes. 
  3302.  
  3303. In the :link tag, use refid= to refer to the footnote identifier (in this case, 
  3304. "drive"), and reftype=fn to indicate that the link is to a footnote, and to 
  3305. specify the title of the footnote window. The following is an example of the 
  3306. tagging for a link to the footnote: 
  3307.  
  3308. :p.Additional information about
  3309. :link refid=drive reftype=fn.disk drives:elink.
  3310. is available.
  3311.  
  3312. The following figure shows the resulting footnote window. 
  3313.  
  3314. Footnote Window 
  3315.  
  3316. The following are some important points to remember about footnotes: 
  3317.  
  3318.        o  A footnote can be placed anywhere in your source file, as long as it 
  3319.           follows the first heading tag. 
  3320.  
  3321.        o  Footnotes cannot contain index entries. 
  3322.  
  3323.        o  Information in a footnote cannot be detected by a search. 
  3324.  
  3325.        o  A footnote cannot be in a window that has a split attribute in its 
  3326.           heading or link definition. 
  3327.  
  3328.  
  3329. ΓòÉΓòÉΓòÉ 6.3.5. Send a Message to the Application ΓòÉΓòÉΓòÉ
  3330.  
  3331. When the reftype=inform attribute is specified with :link., a message is sent 
  3332. to the application. The res= attribute, instead of being a resource identifier 
  3333. for IPF (a window ID), is a resource identifier for the application. The value 
  3334. specified must be an integer. When the application receives the message, it can 
  3335. then perform an application-specific function. 
  3336.  
  3337. For more information about how messages are sent to application windows using 
  3338. the reftype=inform attribute see Using Communication Windows. 
  3339.  
  3340.  
  3341. ΓòÉΓòÉΓòÉ 6.3.6. Start an Application ΓòÉΓòÉΓòÉ
  3342.  
  3343. The reftype=launch attribute of :link. causes IPF to start another Presentation 
  3344. Manager application. The object= attribute indicates the file specification of 
  3345. the application. The data= attribute specifies parameters associated with the 
  3346. application to be started. 
  3347.  
  3348. You can use the reftype=launch attribute with :link. to start a tutorial. 
  3349.  
  3350.  
  3351. ΓòÉΓòÉΓòÉ 7. Customizing Windows ΓòÉΓòÉΓòÉ
  3352.  
  3353. A window is an area of the screen with visible boundaries within which 
  3354. information is displayed.  Often a single window uses the entire screen for its 
  3355. information. Because online information is best presented in small pieces, or 
  3356. units, most designs call for a multiple window format. This chapter explains 
  3357. how to size and position more than one window on a screen, and how to use 
  3358. attributes that enable IPF to open and close those windows. Before you begin 
  3359. this chapter, make sure you read about the OS/2 standard windows described in 
  3360. IPF User Interface. 
  3361.  
  3362. For a summary of attributes described in this chapter, see Summary Tables of 
  3363. Attribute Values for Origin and Size, Summary Table for Heading Attributes, and 
  3364. Summary Table for Link Attributes. 
  3365.  
  3366.  
  3367. ΓòÉΓòÉΓòÉ 7.1. The Default Window ΓòÉΓòÉΓòÉ
  3368.  
  3369. Both the heading tags (:hn.) and the link tag (:link.) have attributes that 
  3370. affect how windows look on a screen.  For example, the attributes define: 
  3371.  
  3372.        o  Window size and position 
  3373.        o  Which window controls are provided to the user 
  3374.        o  What windows are displayed. 
  3375.  
  3376.      You do not have to use all the attributes provided by a heading tag to 
  3377.      define a window.  The following is an example of the minimum tagging 
  3378.      required for a window: 
  3379.  
  3380.           :h1 res=001.My First Window
  3381.           :p.
  3382.           Here is the text for the first window.
  3383.  
  3384.      In this example, :h1. creates a level-1 entry in the Contents window and 
  3385.      the title, "My First Window," in the title bar of the default window. 
  3386.  
  3387.      The following figure shows the tagging to produce the two default windows 
  3388.      shown in the example that follows the tagging. 
  3389.  
  3390.           :h1 res=001.My First Window
  3391.           :p.
  3392.           Here is the text for the first window.
  3393.           This is a
  3394.           :link reftype=hd res=002.
  3395.           hypertext link
  3396.           :elink.
  3397.           to the second window.
  3398.           :h1 res=002.My Second Window
  3399.           :p.
  3400.           Here is the text for the second window.
  3401.           This is a
  3402.           :link reftype=hd res=001.
  3403.           hypertext link
  3404.           :elink. to the first window.
  3405.  
  3406.      The following figure shows the compiled version of the tagging shown in 
  3407.      the previous figure. "My First Window" is one of the default windows and 
  3408.      is bounded by the window "Default Window Example."  This window is called 
  3409.      a coverpage and provides window controls for the user. 
  3410.  
  3411.      Example of an IPF Default Window 
  3412.  
  3413.      The two windows each have a hypertext link.  Selection of the hypertext 
  3414.      link in "My First Window" causes the other default window "My Second 
  3415.      Window" to display. Each default window has the same characteristics: 
  3416.  
  3417.        o  Its size is 100% of the coverpage window. 
  3418.        o  It provides window controls for the user: 
  3419.  
  3420.             -  Title bar with a title bar icon 
  3421.             -  Maximize and hide buttons 
  3422.             -  Vertical and horizontal scroll bars 
  3423.             -  Sizing borders 
  3424.             -  Push buttons. 
  3425.  
  3426.  
  3427. ΓòÉΓòÉΓòÉ 7.1.1. Attribute Values for Window Controls ΓòÉΓòÉΓòÉ
  3428.  
  3429. Both the heading tag and :link. have attributes that define window controls. 
  3430. Following are the names of the window-control attributes, and values you can 
  3431. specify (defaults are underscored): 
  3432.  
  3433.           titlebar=yes|sysmenu|minmax|both|none 
  3434.  
  3435.           scroll=horizontal|vertical|both|none 
  3436.  
  3437.           rules=border|sizeborder|none 
  3438.  
  3439.      You can eliminate window controls altogether by specifying: 
  3440.  
  3441.           titlebar=none scroll=none rules=none 
  3442.  
  3443.      You then can substitute controls of your own.  By eliminating borders 
  3444.      around windows and using :font. to specify fonts, you can design a more 
  3445.      sophisticated layout of text and graphics. The OS/2 system tutorial is an 
  3446.      example of this. 
  3447.  
  3448.      For information about the tags that control the display of push buttons, 
  3449.      see Attribute Values for the Control Area of a Window. 
  3450.  
  3451.  
  3452. ΓòÉΓòÉΓòÉ 7.2. Multiple Windows ΓòÉΓòÉΓòÉ
  3453.  
  3454. Windows can be considered to be subdivisions of the screen. They can be either 
  3455. primary or secondary windows. A primary window is where the main topic appears, 
  3456. or where the interaction between a user and an object or application takes 
  3457. place. A secondary window usually supplements the information in the primary 
  3458. window. It is closed when its primary window is closed. The following figure 
  3459. shows a simple multiple-window design with a primary and secondary window. 
  3460.  
  3461. A Primary and Secondary Window Arrangement 
  3462.  
  3463. To create the two-window format shown in the figure, you must define the size 
  3464. of each window, then position them within the boundaries of the coverpage 
  3465. window. When defining window size, you specify horizontal and vertical areas of 
  3466. the window, using window coordinates. 
  3467.  
  3468.  
  3469. ΓòÉΓòÉΓòÉ 7.2.1. Defining Window Origin and Size ΓòÉΓòÉΓòÉ
  3470.  
  3471. Each window represents a rectangle with x and y coordinates. The x-axis is 
  3472. always horizontal; the y-axis is always vertical. The position where the values 
  3473. specified for x and y intersect is the window's origin.  From this position, 
  3474. width and height are measured. The following figure shows the window 
  3475. coordinates of a primary and secondary window. 
  3476.  
  3477. A Window in Relationship to Its Coordinates 
  3478.  
  3479.  
  3480. ΓòÉΓòÉΓòÉ 7.2.2. Attribute Values for Window Origin and Size ΓòÉΓòÉΓòÉ
  3481.  
  3482. Both the heading tags and :link. have attributes that define window origin and 
  3483. size. The heading tag has four attributes: 
  3484.  
  3485.      x=          Specifies a point on the x-axis. The x-axis runs horizontally 
  3486.                  from left to right. 
  3487.      y=          Specifies a point on the y-axis. The y-axis runs vertically 
  3488.                  from bottom to top. 
  3489.      width=      Specifies the width (horizontal space) of the window. 
  3490.      height=     Specifies the height (vertical space) of the window. 
  3491.  
  3492.      The :link. tag also has four attributes: 
  3493.  
  3494.      vpx=        Specifies a point on the x-axis. The x-axis runs horizontally 
  3495.                  from left to right. 
  3496.      vpy=        Specifies a point on the y-axis. The y-axis runs vertically 
  3497.                  from bottom to top. 
  3498.      vpcx=       Specifies the width (horizontal space) of the window. 
  3499.      vpcy=       Specifies the height (vertical space) of the window. 
  3500.  
  3501.      Origin and size attributes also can be assigned values of the following 
  3502.      types: 
  3503.  
  3504.        o  Absolute 
  3505.        o  Relative 
  3506.        o  Dynamic 
  3507.  
  3508.  
  3509. ΓòÉΓòÉΓòÉ 7.2.2.1. Absolute Values ΓòÉΓòÉΓòÉ
  3510.  
  3511. Absolute values are specified in characters, pixels, or points. The format for 
  3512. an absolute value is an integer followed by one of these letters: 
  3513.  
  3514.      c (characters) 
  3515.         Average character width of the default system font. 
  3516.      x (pixels) 
  3517.         Pixel size, dependent on the display adapter in use. 
  3518.      p (points) 
  3519.         Typesetting measure, equal to approximately 1/72 inch. 
  3520.  
  3521.  
  3522. ΓòÉΓòÉΓòÉ 7.2.2.2. Relative Values ΓòÉΓòÉΓòÉ
  3523.  
  3524. Relative values are specified as percentages of the display area of the 
  3525. coverpage window. The format for a relative value is an integer followed by the 
  3526. percent sign (%). 
  3527.  
  3528.  
  3529. ΓòÉΓòÉΓòÉ 7.2.2.3. Dynamic Values ΓòÉΓòÉΓòÉ
  3530.  
  3531. Dynamic values for x- and y-coordinates identify locations on the 
  3532. coverpage-window perimeter or its center. Values are left and right for x, top 
  3533. and bottom for y, and center for both. 
  3534.  
  3535.  
  3536. ΓòÉΓòÉΓòÉ 7.2.2.4. Heading Definition Example ΓòÉΓòÉΓòÉ
  3537.  
  3538. The window defined in the following example is a primary window; its origin is 
  3539. specified using dynamic values, and its width and height are specified as 
  3540. percentages of its coverpage window. 
  3541.  
  3542. :h1 res=001
  3543.     x=left y=bottom width=50% height=100%
  3544.     group=1.Primary Window
  3545.  
  3546. For now, ignore "group=1."  We will explain it later. 
  3547.  
  3548. The most practical values to use for window size and position are a combination 
  3549. of relative and dynamic values. Then, if the user resizes the coverpage window, 
  3550. IPF automatically resizes and repositions the windows relative to the new size 
  3551. and position of the coverpage window. If you use absolute values, the window 
  3552. might be clipped when the user resizes the coverpage window. 
  3553.  
  3554. When defining window position and size, you cannot mix absolute values with 
  3555. dynamic or relative values for either of the following combinations of 
  3556. attributes: 
  3557.  
  3558.           x= and width= 
  3559.           y= and height= 
  3560.  
  3561.      If no values for x and y are specified, the origin of the window is 0,0. 
  3562.      If you specify an origin other than 0,0, you also must specify width and 
  3563.      height values.  Negative values for these attributes are not allowed. 
  3564.  
  3565.  
  3566. ΓòÉΓòÉΓòÉ 7.2.2.5. Origin and Size Example ΓòÉΓòÉΓòÉ
  3567.  
  3568. The example of a source file shown in the following figure defines two windows. 
  3569. The origin and size attributes specified with the heading definitions place the 
  3570. windows adjacent to one another on the screen. 
  3571.  
  3572. :h1.Origin and Size Window Example
  3573. :h2 res=003
  3574.     x=left y=bottom
  3575.     width=50% height=100%.
  3576. Primary Window
  3577. :p.
  3578. Here is the text for the primary window.  This is a
  3579. :link reftype=hd res=004.
  3580. hypertext link
  3581. :elink.
  3582. to the secondary window.
  3583. :h2 res=004
  3584.     x=right y=bottom
  3585.     width=50% height=100%.
  3586. Secondary Window
  3587. :p.
  3588. Here is the text for the secondary window.  This is a
  3589. :link reftype=hd res=003.
  3590. hypertext link
  3591. :elink.
  3592. to the primary window.
  3593.  
  3594. The origin of the first window is the lower left-hand corner of the coverpage 
  3595. window.  It occupies 50% of the width, but 100% of the height of the coverpage 
  3596. window on the left-hand side. 
  3597.  
  3598. The origin of the second window is the lower right-hand corner of the coverpage 
  3599. window.  It occupies 50% of the width, but 100% of the height of the coverpage 
  3600. window on the right-hand side. 
  3601.  
  3602.  Although these two windows occupy adjacent positions on the screen, you cannot 
  3603. display them both at the same time. To define separate windows, you must 
  3604. specify a group number in the heading definition. 
  3605.  
  3606.  
  3607. ΓòÉΓòÉΓòÉ 7.2.3. Displaying Multiple Windows ΓòÉΓòÉΓòÉ
  3608.  
  3609. To display more than one window on the screen, you must assign a unique group 
  3610. number to each window with the group= attribute. This attribute can be 
  3611. specified with :link. or the heading tag. 
  3612.  
  3613. If you do not specify a group number, a value of 0 is assigned. (This is the 
  3614. default value and is reserved for use by IPF.) If another window is already 
  3615. opened with the number specified for group=, IPF swaps its image (places the 
  3616. image in the same window) for the one defined by the heading or link tag. 
  3617.  
  3618. Note:  If a group number is assigned in both a heading and a hypertext or an 
  3619.        automatic link, the link group number overrides the heading group 
  3620.        number. The numbers you can assign to group= are integers from 1 to 
  3621.        64 000. 
  3622.  
  3623.      Compare the three heading definitions in the following figure. Notice 
  3624.      that: 
  3625.  
  3626.        o  The first and second windows have different group numbers and 
  3627.           different positions. 
  3628.        o  The second and third windows have the same group number. 
  3629.        o  The second and third windows have the same size and position. 
  3630.      Source File for Window Group Number 
  3631.  
  3632.           :h1 res=005
  3633.               x=left y=bottom
  3634.               width=50% height=100%
  3635.               group=1.
  3636.           My First Window
  3637.           :p.
  3638.           Here is the text for the first window.
  3639.           This is a
  3640.           :link reftype=hd res=006.
  3641.           hypertext link
  3642.           :elink.
  3643.           to the second window.
  3644.           :p.
  3645.           This is a
  3646.           :link reftype=hd res=007.
  3647.           hypertext link
  3648.           :elink.
  3649.           to the third window.
  3650.           :h1 res=006
  3651.               x=right y=top
  3652.               width=50% height=100%
  3653.               group=2.
  3654.           My Second Window
  3655.           :p.
  3656.           Here is the text for the second window.
  3657.           This is a
  3658.           :link reftype=hd res=005.
  3659.           hypertext link
  3660.           :elink.
  3661.           to the first window.
  3662.           :p.
  3663.           This is a
  3664.           :link reftype=hd res=007.
  3665.           hypertext link
  3666.           :elink.
  3667.           to the third window.
  3668.           :h1 res=007
  3669.               x=right y=top
  3670.               width=50% height=100%
  3671.               group=2.
  3672.           My Third Window
  3673.           :p.
  3674.           Here is the text for the third window.
  3675.           This is a
  3676.           :link reftype=hd res=005.
  3677.           hypertext link
  3678.           :elink.
  3679.           to the first window.
  3680.           :p.
  3681.           This is a
  3682.           :link reftype=hd res=006.
  3683.           hypertext link
  3684.           :elink.
  3685.           to the second window.
  3686.  
  3687.      Now assume that the source file shown in the previous figure is compiled, 
  3688.      and the user selects "My First Window" from the Contents window. The 
  3689.      window in the following figure displays. 
  3690.  
  3691.      Multiple windows display with different group numbers. 
  3692.  
  3693.      If the user selects the hypertext link in this window, "My Second Window" 
  3694.      will appear, as shown in the following figure. 
  3695.  
  3696.      Multiple windows display with same group numbers. 
  3697.  
  3698.      The windows appear next to each other because their heading definitions 
  3699.      specify different group numbers.  If the user now selects the hypertext 
  3700.      link in "My Second Window," the resulting screen will be as shown in the 
  3701.      following figure. 
  3702.  
  3703.      Compiled Output of Third Window from Group Number. "My Third Window" 
  3704.      replaced "My Second Window" because it has the same group number as "My 
  3705.      Second Window." 
  3706.  
  3707.  
  3708. ΓòÉΓòÉΓòÉ 7.2.3.1. Preventing Image Swapping in Windows ΓòÉΓòÉΓòÉ
  3709.  
  3710. The group= attribute opens a new window only if no other window with the same 
  3711. group number is already displayed.  When a window is opened and a user selects 
  3712. another window with the same group number, IPF swaps its image in the already 
  3713. opened window. To prevent this, use the viewport attribute; it always opens a 
  3714. window. 
  3715.  
  3716. Suppose you have defined the following hypertext link to a window: 
  3717.  
  3718. :link reftype=hd res=001.
  3719.       vpx=25% vpy=bottom
  3720.       vpcx=75% vpcy=100%
  3721.       viewport group=2.
  3722. Guidance
  3723. :elink.
  3724.  
  3725. When this window is displayed, if the user selects the same hypertext link, the 
  3726. same window will open. You cannot control how many times the user will select a 
  3727. hypertext link. If you do not want another window opened each time the user 
  3728. selects the same hypertext link, use the group= attribute instead of the 
  3729. viewport attribute.  This eliminates the potential for the user to open 
  3730. multiple windows containing the same information. 
  3731.  
  3732.  
  3733. ΓòÉΓòÉΓòÉ 7.2.4. Linking to a Window Automatically ΓòÉΓòÉΓòÉ
  3734.  
  3735. As we have seen, one way to display a secondary window is to enable the user to 
  3736. select a hypertext link from one window to another. Another way is to link the 
  3737. user to the secondary window automatically. For example, in the following 
  3738. figure the window on the right is displayed automatically when the user selects 
  3739. the window on the left (perhaps from the Contents window). 
  3740.  
  3741. Example of a window displayed automatically. The window on the right was 
  3742. displayed automatically. 
  3743.  
  3744.  
  3745. ΓòÉΓòÉΓòÉ 7.2.4.1. Auto Attribute ΓòÉΓòÉΓòÉ
  3746.  
  3747. A window that starts the concurrent display of one or more other windows by 
  3748. automatic or hypertext links is referred to as the owner of the window chain. 
  3749. The auto attribute and the reftype=hd attribute indicate that a window is to be 
  3750. opened automatically whenever the owner window is opened. The group= attribute 
  3751. specifies the number of the window. (For more information about group numbers, 
  3752. see Displaying Multiple Windows.) 
  3753.  
  3754. The vpx, vpy, vpcx, and vpcy attributes indicate the size and position of the 
  3755. window in relation to its coverpage window. 
  3756.  
  3757. Caution: 
  3758.  
  3759. When defining automatic links, you do not want to create an "infinite loop" by 
  3760. linking to the same window or group number more than once in a chain of links. 
  3761.  
  3762. For example, suppose you create three windows, A, B, and C, that contain the 
  3763. following automatic links. 
  3764.  
  3765.    ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ   ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ   ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  3766.    Γöé Window A     Γöé   Γöé Window B     Γöé   Γöé  Window C    Γöé
  3767.    Γöé              Γöé   Γöé              Γöé   Γöé              Γöé
  3768.  Γöî>Γöé Link to B    Γö£ΓöÇΓöÇ>Γöé Link to C    Γö£ΓöÇΓöÇ>Γöé  Link to A   Γö£ΓöÇΓöÉ
  3769.  Γöé ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ   ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ   ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ Γöé
  3770.  ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  3771.  
  3772. When the file containing these links is compiled, the IPF compiler does not 
  3773. return an error message because of the loop.  Now suppose Window A is an entry 
  3774. in the Contents window and the user selects it.  Windows A, B, and C open and 
  3775. close uncontrollably until an error occurs and the process is terminated by the 
  3776. system. 
  3777.  
  3778.  
  3779. ΓòÉΓòÉΓòÉ 7.2.5. Closing a Window Automatically ΓòÉΓòÉΓòÉ
  3780.  
  3781. The dependent attribute causes the window to close automatically when the owner 
  3782. window is closed. 
  3783.  
  3784. In the following example, the link at the end of the heading definition defines 
  3785. the owner window on the left.  It links to the window on the right.  Notice the 
  3786. link tag defining the automatic link does not require :elink.. 
  3787.  
  3788. :h1 res=421
  3789.        x=left y=bottom
  3790.         width=25% height=100%
  3791.        group=1.
  3792. Developing Online Information
  3793. :link reftype=hd res=422
  3794.       vpx=right vpy=bottom
  3795.       vpcx=75% vpcy=100%
  3796.       auto dependent group=2.
  3797. .
  3798. .
  3799. .
  3800. :h1 res=422.Developing Online Information
  3801.  
  3802.  
  3803. ΓòÉΓòÉΓòÉ 7.2.6. Tagging Example for Automatic Windows ΓòÉΓòÉΓòÉ
  3804.  
  3805. The following tagging example defines two automatic window chains.  A window 
  3806. chain has at least one owner window, and an owner window has one or more 
  3807. automatic or hypertext links to other windows in the chain. When an owner 
  3808. window closes, the windows in its chain that have specified the dependent 
  3809. attribute also close. 
  3810.  
  3811. In "Example 1," the only owner window in the chain is the first window 
  3812. (res=008).  It contains links to three other automatic windows, which are 
  3813. referred to as sibling windows of the owner window. 
  3814.  
  3815. In "Example 2," Windows 1 through 3 in the chain are owner windows.  Window 1 
  3816. owns all the windows in the chain and can close all of them.  Window 2 also 
  3817. owns Windows 3 and 4.  Window 3 also owns Window 4, the last window in the 
  3818. chain, which is displayed by means of a hypertext link in the text. 
  3819.  
  3820. :h1.Automatic Windows
  3821. :h2 res=008
  3822.     x=left y=top width=25% height=100%
  3823.     scroll=none group=1 clear.
  3824. Example 1
  3825. :link reftype=hd res=009
  3826.       vpx=25% vpy=top vpcx=25% vpcy=100%
  3827.       group=2 auto dependent.
  3828. :link reftype=hd res=010
  3829.       vpx=50% vpy=top vpcx=25% vpcy=100%
  3830.       group=3 auto dependent.
  3831. :link reftype=hd res=011
  3832.       vpx=75% vpy=top vpcx=25% vpcy=100%
  3833.       group=4 auto dependent.
  3834. :p.
  3835. This is Window 1.
  3836. :p.
  3837. This window has three automatic links to
  3838. Windows 2, 3, and 4.
  3839. :h2 res=009
  3840.     x=25% y=top width=25% height=100%
  3841.     scroll=none hide.
  3842. Window 2
  3843. :p.
  3844. This is Window 2.
  3845. :h2 res=010
  3846.     x=50% y=top width=25% height=100%
  3847.     scroll=none hide.
  3848. Window 3
  3849. :p.
  3850. This is Window 3.
  3851. :h2 res=011
  3852.     x=75% y=top width=25% height=100%
  3853.     scroll=none hide.
  3854. Window 4
  3855. :p.
  3856. This is Window 4.
  3857.  
  3858. :h2 res=012
  3859.     x=left y=top width=25% height=100%
  3860.     scroll=none group=1 clear.
  3861. Example 2
  3862. :link reftype=hd res=013
  3863.       vpx=25% vpy=top vpcx=25% vpcy=100%
  3864.       group=2 auto dependent.
  3865. :p.
  3866. This is Window 1.
  3867. :p.
  3868. This window has an automatic link to
  3869. Window 2.
  3870. :h1 res=013
  3871.     x=25% y=top width=25% height=100%
  3872.     scroll=none hide.
  3873. Window 2
  3874. :link reftype=hd res=014
  3875.       vpx=50% vpy=top vpcx=25% vpcy=100%
  3876.       group=3 auto dependent.
  3877. :p.
  3878. This is Window 2.
  3879. :p.
  3880. This window has an automatic link to
  3881. Window 3.
  3882. :h1 res=014
  3883.     x=50% y=top width=25% height=100%
  3884.     scroll=none hide.
  3885. Window 3
  3886. :p.
  3887. This is Window 3.
  3888. :p.
  3889. This paragraph contains a
  3890. :link reftype=hd res=015
  3891.       vpx=75% vpy=top vpcx=25% vpcy=100%
  3892.       group=4 dependent.
  3893. hypertext link
  3894. :elink.
  3895. to Window 4.
  3896. :h1 res=015
  3897.     x=75% y=top width=25% height=100%
  3898.     scroll=none hide.
  3899. Window 4
  3900. :p.
  3901. This is Window 4.
  3902.  
  3903. Example of four automatic windows. 
  3904.  
  3905. When "Example 1" is selected from the Contents window, four windows are 
  3906. displayed in rapid succession.  When Window 1 is closed, all four windows 
  3907. close. 
  3908.  
  3909. The following figure shows the windows that are displayed when "Example 2" is 
  3910. selected from the Contents window. 
  3911.  
  3912. Example of three automatic windows. 
  3913.  
  3914. Notice Window 4 is not displayed. To display Window 4, you must select the 
  3915. hypertext link in Window 3. 
  3916.  
  3917. Note:  You can use the viewport attribute on an automatic link, because an 
  3918.        automatic link is made only once. 
  3919.  
  3920.  
  3921. ΓòÉΓòÉΓòÉ 7.3. Split Windows ΓòÉΓòÉΓòÉ
  3922.  
  3923. A group of windows can be given the semblance of one window and yet offer the 
  3924. advantage of different windows; for example, text can be displayed next to an 
  3925. object the text describes. The author creates this effect by defining a window 
  3926. that consists of: 
  3927.  
  3928.        o  :h1. or :h2. primary-window heading tags, followed by automatic links 
  3929.           to secondary windows.  (Text is not allowed.) 
  3930.        o  :h2. secondary-window heading tags, each followed by text. 
  3931.  
  3932.      The primary window and its secondary windows must reside in the same file. 
  3933.  
  3934.      The position and size of the primary window determines the boundaries for 
  3935.      its secondary windows. If the position and size of a secondary window are 
  3936.      defined in absolute values that exceed the perimeter of the primary 
  3937.      window, the secondary window is clipped.  (When a window is clipped, part 
  3938.      of it lies outside the window boundary and cannot be viewed.) 
  3939.  
  3940.      Sizes of secondary windows can be defined as percentages of the 
  3941.      primary-window size. The minimum size of a secondary window (expressed in 
  3942.      percentages) is zero height by zero width.  Negative values for origin and 
  3943.      position are not allowed. 
  3944.  
  3945.  
  3946. ΓòÉΓòÉΓòÉ 7.3.1. Defining Split Windows ΓòÉΓòÉΓòÉ
  3947.  
  3948. The primary window cannot have any text or graphics, only automatic links to 
  3949. each of its secondary windows.  Each automatic link to a secondary window 
  3950. requires the auto and split attributes.  The following is an example of the 
  3951. tagging for a primary window that contains a split window: 
  3952.  
  3953. :h1 res=001 scroll=none.Primary Window A
  3954. :link reftype=hd res=002 auto split group=10
  3955.       vpx=left vpy=top vpcx=50% vpcy=100%
  3956.       scroll=none titlebar=none.
  3957. :link reftype=hd res=003 auto split group=11
  3958.       vpx=right vpy=top vpcx=50% vpcy=100%
  3959.       scroll=vertical titlebar=none.
  3960.  
  3961. The primary window does not have text and does not need a scroll bar; thus, the 
  3962. heading tag attribute is scroll=none. The primary window can define an overall 
  3963. title bar and disable the title bars in the secondary windows. 
  3964.  
  3965. Caution: 
  3966.  
  3967. When defining split windows, do not link to a footnote from a secondary window. 
  3968.  
  3969. For example, the text of a secondary window cannot have a link such as the 
  3970. following: 
  3971.  
  3972. :link reftype=fn
  3973.       refid=001.
  3974. Display Pop-Up Window
  3975. :elink.
  3976.  
  3977.  
  3978. ΓòÉΓòÉΓòÉ 7.3.2. Tagging Example for Split Windows ΓòÉΓòÉΓòÉ
  3979.  
  3980. The following tagging examples show the tagging for two different split-window 
  3981. arrangements. 
  3982.  
  3983. In the first example, "Primary Window A" (res=016) has automatic links to two 
  3984. secondary windows, (res=017 and res=018).  The tagging for res=017 has two list 
  3985. items, each of which is a hypertext link.  The first list item, "Ducks," links 
  3986. to res=018; the second item, "World," links to res=019. 
  3987.  
  3988. The tagging for both res=018 and res=019 refer to bit-map files. 
  3989.  
  3990. Notice that in "Primary Window A" the link tags for the secondary windows 
  3991. specify titlebar=none, but the heading tags for the secondary windows specify 
  3992. "Dummy" as title text.  You must always provide IPF with a title string in a 
  3993. heading tag, even when you specify that the window will not have a title bar 
  3994. and will not have an entry in the Contents window because you have specified 
  3995. the hide attribute. The link tags for a hypertext link to a secondary window 
  3996. must specify the split attribute. If the split attribute is omitted, the window 
  3997. will not behave as a secondary window; that is, it will not close when the 
  3998. primary window is closed, and instead of moving when the primary window is 
  3999. moved, it will become obscured. 
  4000.  
  4001.  
  4002. ΓòÉΓòÉΓòÉ 7.3.2.1. Hide, Noprint, and Nosearch Attributes ΓòÉΓòÉΓòÉ
  4003.  
  4004. In the examples, each secondary window heading has the hide, noprint, and 
  4005. nosearch attributes.  The hide attribute prevents an entry from appearing in 
  4006. the Contents window.  You do not want a secondary window (in a split-window 
  4007. arrangement) to be displayed by itself; you want it displayed only when the 
  4008. Contents entry for its primary window is selected. 
  4009.  
  4010. The nosearch attribute prevents the title string of the secondary window from 
  4011. being listed as an entry in the Search Results window. The Search option of IPF 
  4012. also searches the secondary window (for a word or phrase) because of the link 
  4013. definition in the primary window; however, only the title string of the primary 
  4014. window is returned in the Search Results window. 
  4015.  
  4016. The Print option of IPF enables the user to print one or more topics, the 
  4017. index, or the table of contents. The noprint attribute in a primary-window 
  4018. heading prevents the contents of a secondary window from being printed. 
  4019. Secondary windows are printed as part of their primary window. The contents of 
  4020. secondary windows are printed only in the order in which the link definitions 
  4021. appear in the primary-window definition. 
  4022.  
  4023. None of the primary-window heading tags specifies a group number with the 
  4024. group= attribute, so IPF assigns 0 (the default) as the group number of each. 
  4025. The clear attribute causes the screen to be cleared of windows before each 
  4026. split window is displayed. 
  4027.  
  4028. :h1 res=016 scroll=none clear.
  4029. Primary Window A
  4030. :link reftype=hd res=017 auto split group=10
  4031.       vpx=left vpy=top vpcx=50% vpcy=100%
  4032.       rules=border scroll=none titlebar=none.
  4033. :link reftype=hd res=018 auto split group=11
  4034.       vpx=right vpy=top vpcx=50% vpcy=100%
  4035.       rules=border scroll=none titlebar=none.
  4036. :h2 res=017 hide nosearch noprint.Dummy
  4037. :p.
  4038. This secondary window contains hypertext links
  4039. to the adjacent secondary window.
  4040. :p.
  4041. Select one:
  4042. :sl compact.
  4043. :li.:link reftype=hd res=018 split group=11
  4044.           vpx=right vpy=top vpcx=50% vpcy=100%
  4045.           rules=border scroll=none titlebar=none.
  4046. Ducks
  4047. :elink.
  4048. :li.:link reftype=hd res=019 split group=11
  4049.           vpx=right vpy=top vpcx=50% vpcy=100%
  4050.           rules=border scroll=none titlebar=none.
  4051. World
  4052. :elink.
  4053. :esl.
  4054. :h2 res=018 hide nosearch noprint.Dummy
  4055. :artwork name='ducks.bmp' fit.
  4056. :h2 res=019 hide nosearch noprint.Dummy
  4057. :p.
  4058. :artwork name='world.bmp' fit.
  4059.  
  4060. Here are both views of the compiled version of Primary Window A. 
  4061.  
  4062. Example of a split window with an automatic link. The window on the right is 
  4063. displayed automatically when "Primary Window A" is selected from the Contents 
  4064. window. 
  4065.  
  4066. Example of a split window with hypertext link. The window on the right is 
  4067. displayed when the second hypertext link is selected. 
  4068.  
  4069. :h1 res=022 scroll=none titlebar=none rules=none clear.
  4070. Primary Window B
  4071. :link reftype=hd res=023 auto split group=10
  4072.       vpx=left vpy=top vpcx=40% vpcy=100%
  4073.       scroll=none titlebar=none rules=none.
  4074. :link reftype=hd res=024 auto split group=11
  4075.       vpx=right vpy=top vpcx=60% vpcy=20%
  4076.       scroll=none titlebar=none rules=none.
  4077. :link reftype=hd res=025 auto split group=12
  4078.       vpx=right vpy=bottom vpcx=60% vpcy=80%
  4079.       scroll=none titlebar=none rules=none.
  4080. :h2 res=023 hide nosearch noprint.Dummy
  4081. :lm margin=5.
  4082. :rm margin=2.
  4083. :p.
  4084. :font facename='Tms Rmn' size=24x12.
  4085. :color bc=green.:hp2.TREES LOVE IPF:ehp2.
  4086. :color bc=cyan.:hp3.TREES LOVE IPF:ehp3.
  4087. :color bc=green.:hp4.TREES LOVE IPF:ehp4.
  4088. :color bc=cyan.:hp5.TREES LOVE IPF:ehp5.
  4089. :color bc=green.:hp6.TREES LOVE IPF:ehp6.
  4090. :color bc=cyan.:hp7.TREES LOVE IPF:ehp7.
  4091. :color bc=green.:hp4.TREES LOVE IPF:ehp4.
  4092. :color bc=cyan.:hp3.TREES LOVE IPF:ehp3.
  4093. :color bc=green.:hp2.TREES LOVE IPF:ehp2.
  4094. :h2 res=024 hide nosearch noprint.Dummy
  4095. :p.
  4096. :h2 res=025 hide rules=none nosearch noprint.Dummy
  4097. :rm margin=3.
  4098. :font facename='Helv' size=18x9.
  4099. :p.
  4100. The Information Presentation Facility (IPF) is a set of tools
  4101. that supports the design and development of an online help
  4102. facility that is accessed by users of your application.
  4103. :p.
  4104. IPF also supports the design and development of online
  4105. information that may be viewed independently of an application.
  4106. These files are compiled with the /INF parameter of the IPF
  4107. compiler, and they are viewed by entering the name of
  4108. the compiled file as a parameter of the VIEW program.
  4109.  
  4110. Here is the compiled version of Primary Window B. 
  4111.  
  4112. Example of a split window without window controls. You cannot see the 
  4113. boundaries of the three windows because the window controls were eliminated. 
  4114.  
  4115.  
  4116. ΓòÉΓòÉΓòÉ 7.3.2.2. Push Buttons for Split Windows ΓòÉΓòÉΓòÉ
  4117.  
  4118. Be careful when using heading tags to define a control area for split windows. 
  4119. A control area cannot be defined in the secondary window heading tag of a split 
  4120. window. You must define the control area (the coverpage window) in the primary 
  4121. window heading tag.  In the previous examples of split windows, the push button 
  4122. feature of IPF was disabled (see Disabling the Display of Push Buttons). 
  4123.  
  4124.  
  4125. ΓòÉΓòÉΓòÉ 7.4. Summary Tables of Attribute Values for Origin and Size ΓòÉΓòÉΓòÉ
  4126.  
  4127. The following tables summarize the attribute values that define a window's 
  4128. origin and size. Values shown in uppercase are keywords (words with special 
  4129. significance to IPF).  Values shown in lowercase italics are to be substituted 
  4130. with your own values.  Values are stacked when more than one value can be used 
  4131. with the attribute. 
  4132.  
  4133. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  4134. ΓöéAttribute=Value     ΓöéDescription                             Γöé
  4135. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4136. ΓöéX=CENTER            ΓöéSpecifies the location of the x-axis.   Γöé
  4137. Γöé  LEFT              ΓöéThe x-axis runs horizontally from left  Γöé
  4138. Γöé  RIGHT             Γöéto right.                               Γöé
  4139. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4140. ΓöéY=CENTER            ΓöéSpecifies the location of the y-axis.   Γöé
  4141. Γöé  TOP               ΓöéThe y-axis runs vertically from bottom  Γöé
  4142. Γöé  BOTTOM            Γöéto top.                                 Γöé
  4143. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4144. ΓöéWIDTH=an integer    ΓöéSpecifies the width (horizontal space)  Γöé
  4145. Γöéfollowed by the     Γöéof a window.                            Γöé
  4146. Γöépercent sign (%)    Γöé                                        Γöé
  4147. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4148. ΓöéHEIGHT=an integer   ΓöéSpecifies the height (vertical space) ofΓöé
  4149. Γöéfollowed by the     Γöéa window.                               Γöé
  4150. Γöépercent sign (%)    Γöé                                        Γöé
  4151. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  4152.  
  4153. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  4154. ΓöéAttribute=Value     ΓöéDescription                             Γöé
  4155. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4156. ΓöéVPX=CENTER          ΓöéSpecifies the location of the x-axis.   Γöé
  4157. Γöé  LEFT              ΓöéThe x-axis runs horizontally from left  Γöé
  4158. Γöé  RIGHT             Γöéto right. Overrides the x-axis attributeΓöé
  4159. Γöé                    Γöévalue specified by the heading tag.     Γöé
  4160. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4161. ΓöéVPY=CENTER          ΓöéSpecifies the location of the y-axis.   Γöé
  4162. Γöé  TOP               ΓöéThe y-axis runs vertically from bottom  Γöé
  4163. Γöé  BOTTOM            Γöéto top. Overrides the y-axis attribute  Γöé
  4164. Γöé                    Γöévalue specified by the heading tag.     Γöé
  4165. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4166. ΓöéVPCX=an integer     ΓöéSpecifies the width (horizontal space)  Γöé
  4167. Γöéfollowed by the     Γöéof a window. Overrides the width        Γöé
  4168. Γöépercent sign (%)    Γöéattribute value specified by the headingΓöé
  4169. Γöé                    Γöétag.                                    Γöé
  4170. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4171. ΓöéVPCY=an integer     ΓöéSpecifies the height (vertical space) ofΓöé
  4172. Γöéfollowed by the     Γöéa window. Overrides the height attributeΓöé
  4173. Γöépercent sign (%)    Γöévalue specified by the heading tag.     Γöé
  4174. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  4175.  
  4176. Point to Remember  Origin and size attributes in a link tag override the origin 
  4177. and size attributes in a heading tag. 
  4178.  
  4179.  
  4180. ΓòÉΓòÉΓòÉ 7.5. Summary Table for Heading Attributes ΓòÉΓòÉΓòÉ
  4181.  
  4182. This table summarizes the heading attributes that support a multiple-window 
  4183. format. 
  4184.  
  4185. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  4186. ΓöéAttribute=Value     ΓöéFunction                                Γöé
  4187. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4188. Γöéres=                ΓöéDefine references to internal and       Γöé
  4189. Γöéid=                 Γöéexternal sources.                       Γöé
  4190. Γöéname=               Γöé                                        Γöé
  4191. Γöéglobal              Γöé                                        Γöé
  4192. Γöétutorial            Γöé                                        Γöé
  4193. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4194. Γöéx=                  ΓöéDefine the origin and size of a window  Γöé
  4195. Γöéy=                  Γöéin relation to its coverpage or primary Γöé
  4196. Γöéwidth=              Γöéwindow.                                 Γöé
  4197. Γöéheight=             Γöé                                        Γöé
  4198. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4199. Γöétitlebar=           ΓöéDefine the control the user has over theΓöé
  4200. Γöéscroll=             Γöéwindow.                                 Γöé
  4201. Γöérules=              Γöé                                        Γöé
  4202. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4203. Γöéviewport            ΓöéManage the display of information in    Γöé
  4204. Γöégroup=              Γöémultiple windows.                       Γöé
  4205. Γöéclear               Γöé                                        Γöé
  4206. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4207. Γöéhide                ΓöéRestrict user retrieval of information. Γöé
  4208. Γöénosearch            Γöé                                        Γöé
  4209. Γöénoprint             Γöé                                        Γöé
  4210. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4211. Γöétoc=                ΓöéChange heading levels appearing in the  Γöé
  4212. Γöé                    ΓöéContents window.                        Γöé
  4213. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  4214.  
  4215.  
  4216. ΓòÉΓòÉΓòÉ 7.6. Summary Table for Link Attributes ΓòÉΓòÉΓòÉ
  4217.  
  4218. This table summarizes the link attributes that support a multiple-window 
  4219. format. 
  4220.  
  4221. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  4222. ΓöéAttribute=Value     ΓöéFunction                                Γöé
  4223. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4224. Γöéreftype=            ΓöéDefine references to internal and       Γöé
  4225. Γöéres=                Γöéexternal sources.                       Γöé
  4226. Γöérefid=              Γöé                                        Γöé
  4227. Γöédatabase=           Γöé                                        Γöé
  4228. Γöéobject=             Γöé                                        Γöé
  4229. Γöédata=               Γöé                                        Γöé
  4230. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4231. Γöévpx=                ΓöéDefine the origin and size of a window  Γöé
  4232. Γöévpy=                Γöéin relation to its coverpage or primary Γöé
  4233. Γöévpcx=               Γöéwindow.                                 Γöé
  4234. Γöévpcy=               Γöé                                        Γöé
  4235. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4236. Γöétitlebar=           ΓöéDefine the control the user has over theΓöé
  4237. Γöéscroll=             Γöéwindow.                                 Γöé
  4238. Γöérules=              Γöé                                        Γöé
  4239. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4240. Γöéviewport            ΓöéManage the display of information in    Γöé
  4241. Γöégroup=              Γöémultiple windows.                       Γöé
  4242. Γöédependent           Γöé                                        Γöé
  4243. Γöéauto                Γöé                                        Γöé
  4244. Γöésplit               Γöé                                        Γöé
  4245. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  4246.  
  4247. Points to Remember  Link-tag attributes that have the same functions as those 
  4248. specified in a heading tag will override the heading-tag attributes. Although 
  4249. link-tag attributes have different names for x- and y-coordinates and window 
  4250. width and height, they provide the same functions. 
  4251.  
  4252.  
  4253. ΓòÉΓòÉΓòÉ 8. Compiling Source Files ΓòÉΓòÉΓòÉ
  4254.  
  4255. This chapter explains how to prepare your source files so that they will be 
  4256. recognized by the IPF compiler.  This chapter also shows you how to enter the 
  4257. compile command, how to interpret error messages, and how to view the compiled 
  4258. document.  A section on national language support is also provided. 
  4259.  
  4260.  
  4261. ΓòÉΓòÉΓòÉ 8.1. Source File Requirements ΓòÉΓòÉΓòÉ
  4262.  
  4263. Using a single source file, you can produce a successful display of information 
  4264. with a limited number of tags.  These tags are: 
  4265.  
  4266.                     :userdoc.
  4267.  
  4268.                     :docprof.
  4269.  
  4270.                     :title.
  4271.  
  4272.                     :h1.
  4273.  
  4274.                     :p.
  4275.  
  4276.                     :euserdoc.
  4277.  
  4278.      The :userdoc. tag is always the first item in your source file.  It 
  4279.      identifies the beginning of an IPF file. This tag is a signal to the IPF 
  4280.      compiler to begin translating the tag language. 
  4281.  
  4282.      The :euserdoc. tag is required as the last line of the file to signal the 
  4283.      end of the tagged document. 
  4284.  
  4285.      Place the :docprof. tag at the beginning of your source file after the 
  4286.      :userdoc. tag and before any heading definitions.  Use the function of the 
  4287.      toc (table of contents) attribute of the :docprof. tag to control the 
  4288.      heading levels displayed in the Content window.  For example, if you want 
  4289.      only heading levels 1 and 2 to appear, the tagging is: 
  4290.  
  4291.                     :docprof toc=12.
  4292.  
  4293.      If no toc= value is specified, heading level 1 through 3 appear in the 
  4294.      Contents window. 
  4295.  
  4296.      Not to be confused with window titles, the text string specified with a 
  4297.      :title. tag is placed into the title bar of an online document. When the 
  4298.      online document is displayed, the title appears on the title line of the 
  4299.      main window.  The tagging looks like this: 
  4300.  
  4301.                     :title.Endangered Mammals
  4302.  
  4303.      The maximum length of a title string specified with a :title. tag is 47 
  4304.      characters, including spaces and blanks. 
  4305.  
  4306.      The title tag provides a name for the online document but is also used for 
  4307.      titles of Help windows.  The title appears in the title bar of the main 
  4308.      window.  You usually place the title tag after the :docprof. tag. 
  4309.  
  4310.      Every file must start with a :h1. tag.  Heading level sequences must not 
  4311.      skip a level in the heading hierarchy.  For example, you cannot have a 
  4312.      heading level 1 tag (:h1.) followed by a heading level 3 tag (:h3.). 
  4313.  
  4314.      You must have at least one paragraph tag (:p.) and associated text to 
  4315.      display a window. 
  4316.  
  4317.      The following figure shows an IPF source file. 
  4318.  
  4319.      The source file contains a :userdoc. tag, a :title. tag, a heading tag 
  4320.      with a window identifier, a :p. tag, and the :euserdoc. tag. 
  4321.  
  4322.           .*
  4323.           :userdoc.
  4324.           :title.Endangered Mammals
  4325.           :h1 res=001.The Manatee
  4326.           .*
  4327.           :p.
  4328.           The manatee has a broad flat tail and two flipper
  4329.           like forelegs.  There are no back legs.
  4330.           The manatee's large upper lip is split in two and
  4331.           can be used like fingers to place food into the
  4332.           mouth.  Bristly hair protrudes from its lips,
  4333.           and almost buried in its hide are small eyes, with
  4334.           which it can barely see.
  4335.           .*
  4336.           :euserdoc.
  4337.  
  4338.      Source File Structure 
  4339.  
  4340.  
  4341. ΓòÉΓòÉΓòÉ 8.1.1. Source File Limits ΓòÉΓòÉΓòÉ
  4342.  
  4343.        o  The maximum size of a line in an IPF source file is 255 characters. 
  4344.  
  4345.        o  The maximum number of fonts in a source file is 16. 
  4346.  
  4347.        o  The maximum number of unique words in a compiled file is 64 000. 
  4348.  
  4349.        o  The maximum number of unique words in a panel is 64 000. 
  4350.  
  4351.        o  The maximum number of panels is 64 000. 
  4352.  
  4353.        o  The maximum number of external databases is 255. 
  4354.  
  4355.      These maximum limits are not absolute. Activity in the operating system 
  4356.      can cause them to vary. 
  4357.  
  4358.  
  4359. ΓòÉΓòÉΓòÉ 8.2. Naming Conventions ΓòÉΓòÉΓòÉ
  4360.  
  4361. It is a good idea to give your source files an extension of IPF, so they can be 
  4362. distinguished from your other files. For example: 
  4363.  
  4364.   MYHELP.IPF
  4365.  
  4366. The IPF compiler does not require an IPF file-name extension; however, if your 
  4367. file has an IPF file-name extension, you will not have to type the extension at 
  4368. compile time. 
  4369.  
  4370.  
  4371. ΓòÉΓòÉΓòÉ 8.2.1. Naming Restriction ΓòÉΓòÉΓòÉ
  4372.  
  4373. During the compilation process, IPF creates some files to hold data 
  4374. temporarily, and erases the files when it no longer needs them.  The names of 
  4375. these files are: 
  4376.  
  4377.                     filename.clf
  4378.  
  4379.                     $0000$ (footnotes)
  4380.  
  4381.                     $1111$ (cross references)
  4382.  
  4383.                     $2222$ (tables)
  4384.  
  4385.                     $3333$ (bit maps)
  4386.  
  4387.      where filename is the name of your source file. Do not give your source 
  4388.      file a CLF extension.  Also, do not give your source file a name of 
  4389.      $0000$, $1111$, $2222$, or $3333$. 
  4390.  
  4391.      Do not use the name of any of the OS/2 environment variables for your file 
  4392.      name.  VIEW checks for an environment variable that matches its first 
  4393.      argument and, if it finds one, such as CPREF, it will take the value of 
  4394.      that environment variable and use the value as the name of the file or 
  4395.      files to open. 
  4396.  
  4397.  
  4398. ΓòÉΓòÉΓòÉ 8.3. Using a Base Source File ΓòÉΓòÉΓòÉ
  4399.  
  4400. The IPF compiler can produce a single output document by processing multiple 
  4401. input files through one base source file. This process is most often associated 
  4402. with online documents.  For example, the online Information Presentation 
  4403. Facility Reference has more than ten separate source files, but all the files 
  4404. were processed through one base file. 
  4405.  
  4406. The .im (imbed) control word sends a signal to the compiler and tells it to 
  4407. process each file in the sequence listed in the base file. 
  4408.  
  4409. A portion of the base file IPFCBASE.IPF for the online Information Presentation 
  4410. Facility Reference looks like this: 
  4411.  
  4412. :userdoc.
  4413. .
  4414. .
  4415. .
  4416. .im ipfcch01.ipf
  4417. .im ipfcch02.ipf
  4418. .im ipfcch03.ipf
  4419. .
  4420. .
  4421. .
  4422.  
  4423. The placement of an imbedded file determines the order of entries in the table 
  4424. of contents. 
  4425.  
  4426. Imbedded files cannot use the :userdoc. or :euserdoc. tags. 
  4427.  
  4428. Note:  When using a base source file to process multiple files, enter the base 
  4429.        file name as the filename parameter of the IPFC command. 
  4430.  
  4431.  
  4432. ΓòÉΓòÉΓòÉ 8.4. Starting the IPF Compiler ΓòÉΓòÉΓòÉ
  4433.  
  4434. You can start the IPF compiler and specify all input from the command line.  A 
  4435. new command-line interface has been introduced. To view it, type IPFC with no 
  4436. parameters. 
  4437. The syntax is: 
  4438.  
  4439. Usage: 
  4440.  
  4441. IPFC [-switch]┬╖┬╖┬╖  [-option]┬╖┬╖┬╖ filename [outfile]
  4442.  
  4443. The switches perform the functions in the following list: 
  4444.  
  4445.      Switches: i - Compiles the source file as an online document 
  4446.  
  4447.                s - Suppresses the performance of the search function 
  4448.  
  4449.                x - Generates and displays a cross-reference list 
  4450.  
  4451.      The options perform the functions in the following list: 
  4452.  
  4453.      Options:  W:level - Warning level 
  4454.  
  4455.                D:dbcscode - DBCS range or country code 
  4456.  
  4457.                C:codepage - Character code page 
  4458.  
  4459.                L:language - Language ID 
  4460.  
  4461.      For help on any of the options, type 
  4462.  
  4463.           IPFC -X:?
  4464.  
  4465.      where "X" is one of the options. 
  4466.  
  4467.      The outfile parameter is used to specify the name of the output file. If 
  4468.      this parameter is not used, the output file will have the same filename as 
  4469.      the input file and an extention of either INF or HLP. For example: 
  4470.  
  4471.           IPFC TEST┬╖IPF C:\FILE┬╖HLP
  4472.  
  4473.      Previous Command Line Interfaces 
  4474.      The interface from earlier levels of the compiler is still supported. The 
  4475.      syntax is: 
  4476.  
  4477.           IPFC filename [/INF] [/S] [/X] [/W] [> messageoutputfilename]
  4478.  
  4479.      where: 
  4480.  
  4481.      filename    Specifies the name of your IPF source file or base file. 
  4482.  
  4483.                  If you do not give a file-name extension, the IPF compiler 
  4484.                  uses .IPF by default. If your file has a file-name extension 
  4485.                  other than IPF, include that file-name extension in the 
  4486.                  command line. 
  4487.  
  4488.      /INF        Compiles the source file as an online document. 
  4489.  
  4490.                  If this parameter is not included, the default is to compile 
  4491.                  the source file as a help library, whose extension is .HLP. 
  4492.  
  4493.      /S          Suppresses the performance of the Search function.  This 
  4494.                  parameter increases compression of compiled data by about 10% 
  4495.                  to further reduce the storage it requires. 
  4496.  
  4497.      /X          Generates and displays a cross-reference list. 
  4498.  
  4499.      /Wn         Generates and displays a list of error messages.  The n 
  4500.                  indicates the level of error messages you want to receive. 
  4501.                  Values you can specify for n are 1, 2, or 3.  The default is 
  4502.                  W3. For more information, see Interpreting IPFC Error 
  4503.                  Messages. 
  4504.  
  4505.      messageoutputfilename Specifies the name of the file where error and cross 
  4506.                  reference messages are sent. If you do not specify this 
  4507.                  parameter, messages generated by /X and /Wn are sent to the 
  4508.                  display screen. 
  4509.  
  4510.      The following parameters provide international language support: 
  4511.  
  4512.      /COUNTRY=nnn The nnn is the 3-digit country code. 
  4513.  
  4514.      /CODEPAGE=nnn The nnn is the 3-digit code page. 
  4515.  
  4516.      /LANGUAGE=xxx The xxx is a 3-letter identifier that indicates the language 
  4517.                  file to be used. 
  4518.  
  4519.      For example: 
  4520.  
  4521.           IPFC myfile.txt /INF /COUNTRY=033 /CODEPAGE=437 /LANGUAGE=FRA
  4522.  
  4523.      If you do not specify these parameters, the default for /COUNTRY and 
  4524.      /CODEPAGE are the values specified in your CONFIG.SYS file. If you do not 
  4525.      request that an NLS file be used, the titles for the tags listed in the 
  4526.      parameter description are shown in United States English. 
  4527.  
  4528.  
  4529. ΓòÉΓòÉΓòÉ 8.4.1. Compiling Help Files ΓòÉΓòÉΓòÉ
  4530.  
  4531. To compile a source file that is intended as a help-text window, use the IPFC 
  4532. command without the -i switch or /INF option. For example: 
  4533.  
  4534. IPFC myhelp.txt
  4535.  
  4536.  
  4537. ΓòÉΓòÉΓòÉ 8.4.2. Environment Variables ΓòÉΓòÉΓòÉ
  4538.  
  4539. There are four environment variables that can be used to specify the location 
  4540. of source files. The IPFC environment variable is used to specify where the IPF 
  4541. support files (such as the *.NLS files) are stored. The IPFCIMBED environment 
  4542. variable is used to search for files imbedded with the .im macro.  The 
  4543. IPFCARTWORK environment variable is used to specify the location of artwork 
  4544. files and artlink files.  The TMP environment variable is used to indicate 
  4545. where the compiler should store the intermediate files it creates during the 
  4546. compilation. 
  4547.  
  4548. The IPFC environment variable has been enhanced to allow multiple paths. 
  4549.  
  4550. Note:  IPFCARTWORK=artwork and linkfile path (used for :artwork.) 
  4551.  
  4552. IPFCIMBED=imbed file path (used for .im) 
  4553.  
  4554. IPFC=IPFC file path (location of APSYMBOL.APS, IPF*.NLS) 
  4555.  
  4556. TMP=temporary file path 
  4557.  
  4558.  
  4559. ΓòÉΓòÉΓòÉ 8.5. Viewing an Online Document ΓòÉΓòÉΓòÉ
  4560.  
  4561. If you want to see your formatted online document, you can use the VIEW command 
  4562. to display it. 
  4563.  
  4564. An online document has an extension of INF.  It can be viewed by entering its 
  4565. name as a parameter to the VIEW command; for example: 
  4566.  
  4567. VIEW myfile
  4568.  
  4569. You do not need to include the INF file extension. 
  4570.  
  4571. You cannot use VIEW to display help-text windows for application programs. 
  4572.  
  4573.  
  4574. ΓòÉΓòÉΓòÉ 8.6. Where IPFC Files are Stored ΓòÉΓòÉΓòÉ
  4575.  
  4576. When you first install the Toolkit, the following environment variable is 
  4577. placed into the CONFIG.SYS file: 
  4578.  
  4579. IPFC=C:\TOOLKIT\IPFC
  4580.  
  4581. The IPFC environment variable identifies the directory in which data files 
  4582. needed by the IPF compiler are stored. 
  4583.  
  4584. When you first install the system, the following environment variables are 
  4585. placed into the CONFIG.SYS file: 
  4586.  
  4587. The HELP environment variable identifies the location of .HLP libraries. 
  4588.  
  4589. Help=C:\OS2\HELP
  4590.  
  4591. The BOOKSHELF environment variable identifies the location of online documents 
  4592. and is used by VIEW. 
  4593.  
  4594. BOOKSHELF=C:\OS2\BOOK
  4595.  
  4596.  
  4597. ΓòÉΓòÉΓòÉ 8.7. Concatenating .INF Files ΓòÉΓòÉΓòÉ
  4598.  
  4599. Concatenation of .INF files is useful when you have a large amount of 
  4600. information that cannot be compiled as one file that fits on a diskette. If you 
  4601. want to concatenate files, you must use the res= attribute for window 
  4602. identifiers. 
  4603.  
  4604. After you have created your .INF files, use the SET command to set an 
  4605. environment variable equal to a string that consists of the .INF file names, 
  4606. for example: 
  4607.  
  4608. SET PROGREF=PRINTRO.INF+PRCP.INF+PRWIN.INF+PRDATA.INF
  4609.  
  4610. When you specify the environment value as a parameter to the VIEW program, VIEW 
  4611. displays the online information. Headings from the different files are 
  4612. displayed in the contents window in the order the files are concatenated for 
  4613. the environment variable. 
  4614.  
  4615.  
  4616. ΓòÉΓòÉΓòÉ 8.8. Interpreting IPFC Error Messages ΓòÉΓòÉΓòÉ
  4617.  
  4618. The -W:n or /Wn option of the IPFC command determines the levels of error 
  4619. messages that will be displayed. Following are the values that you can specify 
  4620. for n: 
  4621.  
  4622.      Value   Meaning 
  4623.  
  4624.      1       Returns only warning level 1 messages.  Warning level 1 messages 
  4625.              are the most severe. 
  4626.  
  4627.      2       Returns warning level 1 and 2 messages. 
  4628.  
  4629.      3       Returns all three warning levels of messages.  This is the 
  4630.              default. Warning level 3 messages are the least severe. 
  4631.  
  4632.      When IPF compiles your file, it generates and displays the error messages. 
  4633.      If no errors are found, IPF tells you that compiling has been completed 
  4634.      and no errors were found. 
  4635.  
  4636.      You may prefer to redirect error messages from the screen to an error 
  4637.      file. You could enter the IPFC command like this: 
  4638.  
  4639.           IPFC myhelp -w:3 > myhelp.err
  4640.  
  4641.      If you have also requested that a cross-reference list be created by 
  4642.      specifying the -X switch, it will be included in the MYHELP.ERR file. 
  4643.  
  4644.      For a list of error messages that the IPF compiler returns, see Compiler 
  4645.      Error Messages. 
  4646.  
  4647.  
  4648. ΓòÉΓòÉΓòÉ 8.9. Differences between .HLP and .INF Files ΓòÉΓòÉΓòÉ
  4649.  
  4650. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  4651. Γöé                  ΓöéHelp Libraries           ΓöéOnline Documents Γöé
  4652. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4653. ΓöéIPFC Command      ΓöéIPFC filename            ΓöéIPFC filename.INFΓöé
  4654. ΓöéSyntax            Γöé                         Γöé-i               Γöé
  4655. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4656. ΓöéCompiled File     Γöé.HLP                     Γöé.INF             Γöé
  4657. ΓöéExtensions        Γöé                         Γöé                 Γöé
  4658. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4659. ΓöéEnvironment       Γöé                         ΓöéBOOKSHELF=       Γöé
  4660. ΓöéVariables Used by Γöé                         Γöédefines the      Γöé
  4661. Γöéthe VIEW Program  Γöé                         Γöélocation of .INF Γöé
  4662. Γöé                  Γöé                         Γöéfiles            Γöé
  4663. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4664. ΓöéEnvironment       ΓöéHELP= defines the        Γöé                 Γöé
  4665. ΓöéVariables Used by Γöélocation of .HLP         Γöé                 Γöé
  4666. ΓöéHelp Manager for  Γöélibraries.               Γöé                 Γöé
  4667. ΓöéHelp Windows      Γöé                         Γöé                 Γöé
  4668. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4669. ΓöéCause of InterfaceΓöéAn application user's    ΓöéEntering the fileΓöé
  4670. ΓöéDisplay           Γöérequest for help.        Γöéname as a        Γöé
  4671. Γöé                  Γöé                         Γöéparameter to the Γöé
  4672. Γöé                  Γöé                         ΓöéVIEW utility.    Γöé
  4673. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4674. ΓöéInitial Size of   Γöé35% of screen (default)  Γöé85% of screen    Γöé
  4675. ΓöéMain Window       Γöé                         Γöé(default)        Γöé
  4676. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4677. ΓöéInitial Contents  ΓöéResponse to help request ΓöéContents window  Γöé
  4678. Γöéof Main Window    Γöé                         Γöé(default)        Γöé
  4679. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4680. ΓöéMain Window Title ΓöéDefined by the programmerΓöéDefined by the   Γöé
  4681. Γöé                  Γöéin the HELPINIT          Γöé:title. tag,     Γöé
  4682. Γöé                  Γöéstructure.               Γöéwhich is placed  Γöé
  4683. Γöé                  Γöé                         Γöéon the line      Γöé
  4684. Γöé                  Γöé                         Γöéfollowing the    Γöé
  4685. Γöé                  Γöé                         Γöé:userdoc. tag.   Γöé
  4686. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4687. ΓöéExternal Links    Γöé.HLP files can link to   Γöé.INF files can   Γöé
  4688. Γöé(see global       Γöéother .HLP files and to  Γöélink only to     Γöé
  4689. Γöéattribute of      Γöé.INF files by launching  Γöéother .INF files.Γöé
  4690. Γöéheading tag and   ΓöéVIEW.                    Γöé                 Γöé
  4691. Γöédatabase attributeΓöé                         Γöé                 Γöé
  4692. Γöéof :link. tag.)   Γöé                         Γöé                 Γöé
  4693. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4694. ΓöéTo View           ΓöéSpecify a string of .HLP ΓöéSet an           Γöé
  4695. ΓöéConcatenated FilesΓöéfiles in the HELPINIT    Γöéenvironment      Γöé
  4696. Γöé                  Γöéstructure or send the    Γöévariable equal toΓöé
  4697. Γöé                  ΓöéHM_SET_HELP_LIBRΓöéa string of .INF Γöé
  4698. Γöé                  Γöémessage.                 Γöéfile names.      Γöé
  4699. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  4700.  
  4701. Note:  Defaults may be overridden by objects that are displayed in 
  4702.        application-controlled windows. 
  4703.  
  4704.  
  4705. ΓòÉΓòÉΓòÉ 8.10. National Language Support ΓòÉΓòÉΓòÉ
  4706.  
  4707. The following parameters provide national language support (NLS): 
  4708.  
  4709.           /COUNTRY 
  4710.           /CODEPAGE 
  4711.           /LANGUAGE 
  4712.  
  4713.      If you do not specify these parameters, the default for /COUNTRY and 
  4714.      /CODEPAGE are the values specified in your CONFIG.SYS file. If you do not 
  4715.      request that an NLS file be used, the titles for the tags listed in the 
  4716.      parameter description are shown in United States English. 
  4717.  
  4718.  
  4719. ΓòÉΓòÉΓòÉ 8.10.1. Country Code Pages ΓòÉΓòÉΓòÉ
  4720.  
  4721. The following table lists the 3-digit country code for the /COUNTRY parameter 
  4722. of the IPFC command. The third column lists the numeric identifiers of code 
  4723. pages supported: 
  4724.  
  4725. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  4726. ΓöéCOUNTRY               ΓöéCOUNTRY CODE     ΓöéCODE PAGES            Γöé
  4727. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4728. ΓöéAustralia             Γöé061              Γöé437, 850              Γöé
  4729. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4730. ΓöéBelgium               Γöé032              Γöé437, 850              Γöé
  4731. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4732. ΓöéBrazil                Γöé055              Γöé850, 437              Γöé
  4733. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4734. ΓöéCanadian English      Γöé001              Γöé437, 850              Γöé
  4735. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4736. ΓöéCanadian French       Γöé002              Γöé863, 850              Γöé
  4737. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4738. ΓöéChinese (Traditional) Γöé088              Γöé938, 437, 850         Γöé
  4739. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4740. ΓöéDenmark               Γöé045              Γöé865, 850              Γöé
  4741. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4742. ΓöéFinland               Γöé358              Γöé437, 850              Γöé
  4743. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4744. ΓöéFrance                Γöé033              Γöé437, 850              Γöé
  4745. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4746. ΓöéGermany               Γöé049              Γöé437, 850              Γöé
  4747. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4748. ΓöéItaly                 Γöé039              Γöé437, 850              Γöé
  4749. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4750. ΓöéJapan                 Γöé081              Γöé932, 437, 850         Γöé
  4751. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4752. ΓöéKorea                 Γöé082              Γöé949, 934              Γöé
  4753. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4754. ΓöéLatin America         Γöé003              Γöé437, 850              Γöé
  4755. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4756. ΓöéNetherlands           Γöé031              Γöé437, 850              Γöé
  4757. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4758. ΓöéNorway                Γöé047              Γöé865, 850              Γöé
  4759. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4760. ΓöéPortugal              Γöé351              Γöé860, 850              Γöé
  4761. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4762. ΓöéSpain                 Γöé034              Γöé437, 850              Γöé
  4763. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4764. ΓöéSweden                Γöé046              Γöé437, 850              Γöé
  4765. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4766. ΓöéSwitzerland           Γöé041              Γöé437, 850              Γöé
  4767. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4768. ΓöéUnited Kingdom        Γöé044              Γöé437, 850              Γöé
  4769. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4770. ΓöéUnited States         Γöé001              Γöé437, 850              Γöé
  4771. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  4772.  
  4773. The following table lists the 3-letter identifier for the /LANGUAGE parameter 
  4774. of the IPFC command: 
  4775.  
  4776. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  4777. ΓöéID        ΓöéLANGUAGE            ΓöéNLS FILE       Γöé
  4778. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4779. ΓöéCHT       ΓöéChinese(Traditional)ΓöéIPFCHT.NLS     Γöé
  4780. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4781. ΓöéDAN       ΓöéDanish              ΓöéIPFDAN.NLS     Γöé
  4782. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4783. ΓöéDEU       ΓöéGerman              ΓöéIPFDEU.NLS     Γöé
  4784. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4785. ΓöéENG       ΓöéEnglish UK          ΓöéIPFENG.NLS     Γöé
  4786. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4787. ΓöéENU       ΓöéEnglish US          ΓöéIPFENU.NLS     Γöé
  4788. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4789. ΓöéESP       ΓöéSpanish             ΓöéIPFESP.NLS     Γöé
  4790. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4791. ΓöéFIN       ΓöéFinnish             ΓöéIPFFIN.NLS     Γöé
  4792. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4793. ΓöéFRA       ΓöéFrench              ΓöéIPFFRA.NLS     Γöé
  4794. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4795. ΓöéFRC       ΓöéCanadian French     ΓöéIPFFRC.NLS     Γöé
  4796. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4797. ΓöéITA       ΓöéItalian             ΓöéIPFITA.NLS     Γöé
  4798. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4799. ΓöéJPN       ΓöéJapanese            ΓöéIPFJPN.NLS     Γöé
  4800. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4801. ΓöéKOR       ΓöéKorean              ΓöéIPFKOR.NLS     Γöé
  4802. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4803. ΓöéNLD       ΓöéDutch               ΓöéIPFNLD.NLS     Γöé
  4804. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4805. ΓöéNOR       ΓöéNorwegian           ΓöéIPFNOR.NLS     Γöé
  4806. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4807. ΓöéPTB       ΓöéBrazilian/PortugueseΓöéIPFPTB.NLS     Γöé
  4808. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4809. ΓöéPTG       ΓöéPortuguese          ΓöéIPFPTG.NLS     Γöé
  4810. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4811. ΓöéSVE       ΓöéSwedish             ΓöéIPFSVE.NLS     Γöé
  4812. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4813. ΓöéUND       ΓöéUser defined        ΓöéIPFUND.NLS     Γöé
  4814. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  4815.  
  4816. Note:  If there is an APSYMXXX.APS file that matches the codepage you are using 
  4817.        to compile your IPF file (either specified or default), the IPFC will 
  4818.        use that file. Otherwise, it will use APSYMBOL.APS file. 
  4819.  
  4820.  
  4821. ΓòÉΓòÉΓòÉ 9. IPF Tag Reference ΓòÉΓòÉΓòÉ
  4822.  
  4823. This section contains an alphabetic listing of the tags used by the IPF 
  4824. compiler to create online documents and help windows. An IPF tag controls the 
  4825. format of the displayed output. 
  4826.  
  4827. The syntax description of each tag includes the tag name, the element that the 
  4828. tag describes, the attributes of the tag, and the end tag. A tag begins with a 
  4829. colon (:) and ends with a period (.). Most tags have an end tag associated with 
  4830. them. An end tag has the same name as the tag, preceded by the letter "e."  For 
  4831. example, the end tag for the :userdoc. tag is the :euserdoc. tag. 
  4832.  
  4833. A tag can have one or more attributes associated with it. An attribute provides 
  4834. additional control information for the tag. Some attributes are followed by an 
  4835. equal sign and a value. If the value contains blanks or special characters, it 
  4836. must be enclosed in apostrophes or single quotation marks. For example: 
  4837.  
  4838. :font facename='Tms Rmn'.
  4839.  
  4840. Notice that the period that ends the tag follows the attributes specified for 
  4841. the tag. If no attributes are specified, the period immediately follows the tag 
  4842. name. For example, when the :note. tag does not have the text=' ' attribute 
  4843. specified, the period immediately follows the word :note.. 
  4844.  
  4845. Some tags are required to be in a specific order before the file can be 
  4846. compiled by the IPF compiler. The following example shows the minimum tags 
  4847. required to compile a file: 
  4848.  
  4849. :userdoc.
  4850. :h1 id=example1.Tag Example 1
  4851. :p.This is the first tag example.
  4852. :euserdoc.
  4853.  
  4854. This section also describes control words used by the IPF compiler.  Control 
  4855. words start with a period (.). A control word tells the IPF compiler about the 
  4856. statement that it is part of. For example, the imbed (.im) control word tells 
  4857. the IPF Compiler to include the specified file in the source file at this 
  4858. point. 
  4859.  
  4860.  
  4861. ΓòÉΓòÉΓòÉ 9.1. .br  (Break) ΓòÉΓòÉΓòÉ
  4862.  
  4863. Purpose 
  4864.  
  4865. Causes a break in a line of text. 
  4866.  
  4867. Syntax 
  4868.  
  4869. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  4870. ΓöéControl Word   ΓöéElement        ΓöéAttributes     ΓöéEnd            Γöé
  4871. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4872. Γöé.br            ΓöéBreak          Γöé               Γöé               Γöé
  4873. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  4874.  
  4875. Attributes 
  4876.  
  4877. None 
  4878.  
  4879. Description 
  4880.  
  4881. Use the .br control word to stop the display of text on a line, and continue it 
  4882. on the next line. The break control word must be the only statement on the 
  4883. line. If you enter text on the same line as the break control word, the IPF 
  4884. compiler ignores the break control word. 
  4885.  
  4886. The break control word is especially useful before a line of text that contains 
  4887. a symbol. 
  4888.  
  4889. Conditions 
  4890.  
  4891. The .br control word must start in column 1, and be the only statement on the 
  4892. line. 
  4893.  
  4894. Example 
  4895.  
  4896. :p.These words
  4897. appear on
  4898. the same line.
  4899. .br
  4900. These words
  4901. .br
  4902. do not.
  4903.  
  4904. Output 
  4905.  
  4906. These words appear on the same line.
  4907. These words
  4908. do not.
  4909.  
  4910. For more information, see Break. 
  4911.  
  4912.  
  4913. ΓòÉΓòÉΓòÉ 9.2. .ce (Center Text) ΓòÉΓòÉΓòÉ
  4914.  
  4915. Purpose 
  4916.  
  4917. Centers text. 
  4918.  
  4919. Syntax 
  4920.  
  4921. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  4922. ΓöéControl Word   ΓöéElement        ΓöéAttributes     ΓöéEnd            Γöé
  4923. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4924. Γöé.ce            ΓöéText           Γöé               Γöé               Γöé
  4925. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  4926.  
  4927. Attributes 
  4928.  
  4929. None 
  4930.  
  4931. Description 
  4932.  
  4933. The .ce control word allows you to center text on a line. 
  4934.  
  4935. Conditions 
  4936.  
  4937. The text cannot contain any IPF tags. It can, however, contain nameit symbols 
  4938. and IPFC symbols. 
  4939.  
  4940. The .ce control word's centering effect is limited to text on the same line 
  4941. with the control word. 
  4942.  
  4943. The line will remain centered as you resize the window unless the window 
  4944. becomes so small that the line must be broken, at which point centering 
  4945. justification is lost (when you resize the window to be large enough to hold 
  4946. the line again, centering is restored). 
  4947.  
  4948. The control word must start in column 1. 
  4949.  
  4950. Example 
  4951.  
  4952. .ce The centered text must not contain any IPF tags.
  4953.  
  4954. Output 
  4955.  
  4956. The centered text must not contain any IPF tags.
  4957.  
  4958.  
  4959. ΓòÉΓòÉΓòÉ 9.3. .* (Comment) ΓòÉΓòÉΓòÉ
  4960.  
  4961. Purpose 
  4962.  
  4963. Places a comment into a file. 
  4964.  
  4965. Syntax 
  4966.  
  4967. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  4968. ΓöéControl Word   ΓöéElement        ΓöéAttributes     ΓöéEnd            Γöé
  4969. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4970. Γöé.*             ΓöéComment        Γöé               Γöé               Γöé
  4971. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  4972.  
  4973. Attributes 
  4974.  
  4975. None 
  4976.  
  4977. Description 
  4978.  
  4979. The .* control word allows you to place a comment line into your file. The IPF 
  4980. compiler ignores any text on the same line as the comment control word, and 
  4981. does not display this text. 
  4982.  
  4983. The comment control word must be the first statement on the line of text that 
  4984. you do not want displayed. Each comment control word must begin on a new line. 
  4985.  
  4986. You can use comment control words to refer to items, to place notes into your 
  4987. file, or to prevent the display of an item. 
  4988.  
  4989. No space is required between the comment control word and the text that follows 
  4990. it. Comment control words are used independently of IPF tags. They are not used 
  4991. between any IPF tags or with any IPF tag and its accompanying text or 
  4992. attributes. 
  4993.  
  4994. Conditions 
  4995.  
  4996. Do not use the comment control word: 
  4997.  
  4998.        o  Within the IPF tag, that is, between the colon that starts the tag 
  4999.           and the period that ends the tag. 
  5000.  
  5001.        o  Between an IPF tag and its accompanying text or attributes. 
  5002.  
  5003.      Always start the comment control word in column 1. 
  5004.  
  5005.      Example 
  5006.  
  5007.           .* The comment control word must be the first statement on the line.
  5008.           .* When the source file is compiled, the text on the
  5009.           .* comment line is not displayed.
  5010.  
  5011.      Output 
  5012.  
  5013.      When the file is compiled, the comment control word and the information 
  5014.      following it on the comment line are not displayed. 
  5015.  
  5016.  
  5017. ΓòÉΓòÉΓòÉ 9.4. .im  (Imbed) ΓòÉΓòÉΓòÉ
  5018.  
  5019. Purpose 
  5020.  
  5021. Specifies that text files are to be included at process time. 
  5022.  
  5023. Syntax 
  5024.  
  5025. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  5026. ΓöéControl Word   ΓöéElement        ΓöéAttributes     ΓöéEnd            Γöé
  5027. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5028. Γöé.im            ΓöéImbed          Γöé               Γöé               Γöé
  5029. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  5030.  
  5031. Attributes 
  5032.  
  5033. None 
  5034.  
  5035. Description 
  5036.  
  5037. The .im control word enables you to include text files when you are ready to 
  5038. compile your file. 
  5039.  
  5040. Conditions 
  5041.  
  5042.        o  If the file to be included is not in the current directory, you must 
  5043.           enter a complete file name. 
  5044.  
  5045.        o  Imbedded files must not use the :userdoc. or :euserdoc. tag. 
  5046.  
  5047.      Always start the .im control word in column 1. 
  5048.  
  5049.      Example 
  5050.  
  5051.           :userdoc.
  5052.           .im filename.ext
  5053.           .im c:\main\filename.ext
  5054.           :euserdoc.
  5055.  
  5056.      Output 
  5057.  
  5058.      The text and art in the imbedded files are displayed when you access the 
  5059.      compiled file. 
  5060.  
  5061.  
  5062. ΓòÉΓòÉΓòÉ 9.5. .nameit (Nameit) ΓòÉΓòÉΓòÉ
  5063.  
  5064. Purpose 
  5065.  
  5066. Defines symbols in a document. 
  5067.  
  5068. Syntax 
  5069.  
  5070. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  5071. ΓöéControl Word   ΓöéElement        ΓöéAttributes     ΓöéEnd            Γöé
  5072. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5073. Γöé.nameit        ΓöéNameit         Γöésymbol=        Γöé               Γöé
  5074. Γöé               Γöé               Γöétext='string'  Γöé               Γöé
  5075. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  5076.  
  5077. Attributes 
  5078.  
  5079.      symbol=name 
  5080.         Identifies a name for the symbol you want to create. It can be up to 10 
  5081.         characters long (A-Z, 0-9), with no blanks or special characters; the 
  5082.         first character must be a letter. The & character cannot be used in the 
  5083.         name. 
  5084.  
  5085.      text='string' 
  5086.         Identifies the content of the value to be assigned to the symbol and is 
  5087.         what is displayed. In addition to text, the text string can contain 
  5088.         other nameit symbols, IPFC symbols, and IPFC tags. 
  5089.  
  5090.      Description 
  5091.  
  5092.      The .nameit control word enables you to create symbols. 
  5093.  
  5094.      Conditions 
  5095.  
  5096.      Do not use the & character as part of the name of the symbol. You must use 
  5097.      the & character when you actually use the symbol. 
  5098.  
  5099.      Always start the nameit control word in column 1. 
  5100.  
  5101.      Example 
  5102.  
  5103.           .nameit symbol=os text='operating system'
  5104.           .
  5105.           .
  5106.           :p.The &os. supports multitasking.
  5107.  
  5108.      The output looks like this: 
  5109.  
  5110.           The operating system supports multitasking.
  5111.  
  5112.  
  5113. ΓòÉΓòÉΓòÉ 9.6. :acviewport. (Application-Controlled Window) ΓòÉΓòÉΓòÉ
  5114.  
  5115. Purpose 
  5116.  
  5117. Enables an application to dynamically control what is displayed in an IPF 
  5118. window. 
  5119.  
  5120. Syntax 
  5121.  
  5122. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  5123. ΓöéTag            ΓöéElement        ΓöéAttributes     ΓöéEnd            Γöé
  5124. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5125. Γöé:acviewport.   ΓöéHave IPF call aΓöédll=' '        Γöé               Γöé
  5126. Γöé               Γöéfunction in a  Γöéobjectname=' ' Γöé               Γöé
  5127. Γöé               Γöédynamic-link   Γöéobjectinfo=' ' Γöé               Γöé
  5128. Γöé               Γöémodule.        Γöéobjectid=' '   Γöé               Γöé
  5129. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5130. Γöé               ΓöéDefine the     Γöévpx=           Γöé               Γöé
  5131. Γöé               Γöéwindow in whichΓöévpy=           Γöé               Γöé
  5132. Γöé               Γöéthe function   Γöévpcx=          Γöé               Γöé
  5133. Γöé               Γöéruns.          Γöévpcy=          Γöé               Γöé
  5134. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  5135.  
  5136. Attributes 
  5137.  
  5138.      dll=' ' 
  5139.         Specifies a dynamic-link module for IPF to load so that a communication 
  5140.         object (a function) in the module can be run in a window (an 
  5141.         application-controlled window). 
  5142.  
  5143.      objectname=' ' 
  5144.         Identifies the entry point of the communication object in the 
  5145.         dynamic-link module.  The value specified for this attribute is case 
  5146.         sensitive. 
  5147.  
  5148.      objectinfo=' ' 
  5149.         Identifies parameters to be passed to the object. 
  5150.  
  5151.      objectid=' ' 
  5152.         Specifies an identifier that will associate the window with the object. 
  5153.         The application or communication object can get this value from the 
  5154.         Object ID field in the ACVP data structure and use it to determine the 
  5155.         panel that activated the viewport. 
  5156.  
  5157.           vpx=
  5158.           vpy=
  5159.           vpcx=
  5160.           vpcy=
  5161.         Define the location and size of the window. vpx= and vpy= are positions 
  5162.         along the x (horizontal) and y (vertical) axes.  The point where the 
  5163.         values intersect represents the origin of the window.  vpcx= and vpcy= 
  5164.         represent changes along the x and y axes with respect to the origin. 
  5165.  
  5166.         These attributes can be expressed as absolute values, relative values, 
  5167.         or dynamic values: 
  5168.  
  5169.           Absolute value: 
  5170.              A number followed by a letter, which indicates the unit of 
  5171.              measure: 
  5172.  
  5173.                c      (Characters):  Average character width of the default 
  5174.                       system font. 
  5175.                x      (Pixels):  Dependent on the display adapter in use. 
  5176.                p      (Points):  Typesetting measure; equal to approximately 
  5177.                       1/72 inch. 
  5178.  
  5179.           Relative value: 
  5180.              A number followed by the percent sign (%), indicating a percentage 
  5181.              of the parent-window width or height. 
  5182.  
  5183.           Dynamic value: 
  5184.              A term indicating a window coordinate location that is dependent 
  5185.              on the current size and position of the parent window: 
  5186.  
  5187.                left | center | right 
  5188.                   For x values, flush left with, in the center of, or flush 
  5189.                   right with the parent window. 
  5190.                top | center | bottom 
  5191.                   For y values, at the top, center, or bottom of the parent 
  5192.                   window. 
  5193.  
  5194.      Description 
  5195.  
  5196.      :acviewport. is used in either a help file or an online document file to 
  5197.      specify that a window will be under the control of a routine that was 
  5198.      written and compiled as part of a dynamic-link module. When an IPF window 
  5199.      is selected for display at run time, and :acviewport. is encountered, IPF 
  5200.      passes control to the entry point (objectname=) in the dynamic-link 
  5201.      module. At this point, the routine in the module takes control. For more 
  5202.      information, see Customizing IPF with Communication Objects. 
  5203.  
  5204.      The definition for :acviewport. must follow a primary heading; for 
  5205.      example: 
  5206.  
  5207.           :h2 res=2000
  5208.               x=left y=top width=100% height=100%
  5209.               scroll=none titlebar=both clear group=1.Information Windows
  5210.           :acviewport dll='My_DLL' objectname='My_Routine' objectid='1'
  5211.               vpx=right vpy=top vpcx=50% vpcy=100%
  5212.  
  5213.      In the example, a window is displayed within the primary window indicated 
  5214.      by the heading tag (:h2.) and its attributes. The contents of the window 
  5215.      are controlled by the communication object, My_Routine, in the 
  5216.      dynamic-link module, My_DLL. 
  5217.  
  5218.      When the user selects the primary window and :acviewport. tag is 
  5219.      encountered, IPF calls the communication object in the dynamic-link module 
  5220.      and sizes the child window. 
  5221.  
  5222.  
  5223. ΓòÉΓòÉΓòÉ 9.7. :artlink.  (Art Link) ΓòÉΓòÉΓòÉ
  5224.  
  5225. Purpose 
  5226.  
  5227. Identifies link definitions for hypergraphic areas of a bit map, metafiles are 
  5228. not supported. 
  5229.  
  5230. Syntax 
  5231.  
  5232. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  5233. ΓöéTag            ΓöéElement        ΓöéAttributes     ΓöéEnd            Γöé
  5234. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5235. Γöé:artlink.      Γöé               Γöé               Γöé:eartlink.     Γöé
  5236. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  5237.  
  5238. Attributes 
  5239.  
  5240. None 
  5241.  
  5242. Description 
  5243.  
  5244. Use :artlink. in conjunction with the artwork tag (:artwork.) to indicate links 
  5245. to a bit map or segments of a bit map.  The link definitions are specified by 
  5246. link tags (:link.) and follow :artlink., as in Example 1. 
  5247.  
  5248. Example 1 
  5249.  
  5250. :artlink..
  5251. :link reftype=hd res=001 x=0 y=0 cx=16 cy=8.
  5252. :link reftype=fn refid=afnr x=16 y=8 cx=16 cy=8.
  5253. :link reftype=inform res=0345 x=0 y=8 cx=16 cy=8.
  5254. :eartlink.
  5255.  
  5256. (For more information, see :link.  (Link).) 
  5257.  
  5258. All of the above could be in a separate file, which would be identified by the 
  5259. linkfile. attribute of the artwork tag, as in Example 2. 
  5260.  
  5261. Example 2 
  5262.  
  5263. :artwork name='mybitmap.bmp' linkfile='mylinks'.
  5264.  
  5265. In this example, MYBITMAP.BMP is the name of the file containing the bit map, 
  5266. and MYLINKS is the file consisting of the entries shown in Example 1. 
  5267.  
  5268. If the artwork tag does not specify the attribute linkfile=, IPF looks for 
  5269. :artlink. on the line immediately following :artwork., as shown in Example 3. 
  5270.  
  5271. Example 3 
  5272.  
  5273. :artwork name='mybitmap.bmp'.
  5274. :artlink.
  5275. :link reftype=hd res=001.
  5276. :eartlink.
  5277.  
  5278. In this example, if the user clicks on the bit map associated with this art 
  5279. link, the window with the identifier, 001 is displayed. 
  5280.  
  5281. If no :artlink. tag is found, no hypergraphic areas for the bit map are 
  5282. defined. 
  5283.  
  5284. You can divide a bit map into rectangular segments, each of which is selectable 
  5285. and links to different information. For each segment, you need to define values 
  5286. for x, y, cx, and cy, which represent pixel values on the x and y axes. The x 
  5287. axis is always horizontal, and the y axis is always vertical; x and y define 
  5288. the origin of the segment, while cx and cy identify the changes in x and y. The 
  5289. value 0,0 indicates the origin of the bit map and is always the bottom-left 
  5290. corner. 
  5291.  
  5292. Following is an example of a segmented bit map. 
  5293.  
  5294.     0,16                                32,16
  5295.     | ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  5296.     | Γöé                Γöé                  Γöé
  5297.     | Γöé                Γöé                  Γöé
  5298.     y Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5299.     | Γöé                Γöé                  Γöé
  5300.     | Γöé                Γöé                  Γöé
  5301.     | ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  5302.      0,0  --------------x--------------- 32,0
  5303.  
  5304. Example 4 shows the tagging when the link is from a segmented bit map. The name 
  5305. of the segmented bit-map file is show2.bmp; the name of the file with the link 
  5306. information is link.dat. 
  5307.  
  5308. Example 4 
  5309.  
  5310. :artwork name='show2.bmp' linkfile='link.dat'.
  5311.  
  5312. The following information could be placed into LINK.DAT. 
  5313.  
  5314. :artlink.
  5315. :link reftype=hd res=001 x=0 y=0 cx=16 cy=8.
  5316. :link reftype=fn refid=afnr x=16 y=8 cx=16 cy=8.
  5317. :link reftype=inform res=0345 x=0 y=8 cx=16 cy=8.
  5318. :link reftype=launch object='c:\os2\e.exe'
  5319.         data='c:\appsdir\tutor.dat' x=16 y=0 cx=16 cy=8.
  5320. :eartlink.
  5321.  
  5322.  
  5323. ΓòÉΓòÉΓòÉ 9.8. :artwork. (Artwork) ΓòÉΓòÉΓòÉ
  5324.  
  5325. Purpose 
  5326.  
  5327. Identifies a bit map to be placed into the user's file. 
  5328.  
  5329. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  5330. ΓöéTag            ΓöéElement        ΓöéAttributes     ΓöéEnd            Γöé
  5331. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5332. Γöé:artwork.      ΓöéArtwork        Γöéname=' '       Γöé               Γöé
  5333. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5334. Γöé               Γöé               Γöéalign=         Γöé               Γöé
  5335. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5336. Γöé               Γöé               Γöélinkfile=' '   Γöé               Γöé
  5337. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5338. Γöé               Γöé               Γöérunin          Γöé               Γöé
  5339. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5340. Γöé               Γöé               Γöéfit            Γöé               Γöé
  5341. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  5342.  
  5343. Attributes 
  5344.  
  5345.      name='filename.ext' 
  5346.         Identifies the file containing the bit map (artwork). This attribute is 
  5347.         required and must specify a complete file name. 
  5348.  
  5349.      align=leftΓöérightΓöécenter 
  5350.         Specifies how the artwork is to align with the current margins. It can 
  5351.         be to the left, to the right, or centered. 
  5352.  
  5353.      linkfile='filename.ext' 
  5354.         Identifies the file with the link definitions. This file begins with 
  5355.         :artlink. and ends with :eartlink.. The linkfile= attribute enables you 
  5356.         to link from whole or segmented bit maps. It can be omitted if the 
  5357.         artwork file does not require links, or if the links are enclosed by 
  5358.         :artlink. and :eartlink. immediately following the artwork tag. 
  5359.  
  5360.      runin 
  5361.         Specifies that the artwork is to be placed within the line of text. 
  5362.         You enter :artwork. and its attributes in the line of text where you 
  5363.         want the artwork to appear. 
  5364.  
  5365.      fit 
  5366.         Causes the artwork to fill the window in which it is displayed. If the 
  5367.         user resizes the window, IPF redisplays the graphic so that it fits the 
  5368.         new window size. 
  5369.  
  5370.         When the initial size of the window is specified, the ratio between its 
  5371.         width and height should be approximately the same as that of the 
  5372.         graphic; otherwise, the artwork may appear distorted. 
  5373.  
  5374.         The fit attribute is most often used when artwork is to be displayed in 
  5375.         a split window, where one window contains a bit map, and another 
  5376.         contains text that is displayed beside the graphic. 
  5377.  
  5378.         If the artwork tag has fit, and you include text in the same window, 
  5379.         the text will be displayed briefly, but will then be covered by the 
  5380.         painting of the bit map in the window. 
  5381.  
  5382.      Description 
  5383.  
  5384.      Use :artwork. to include bit maps such as vectors and scanned images, in 
  5385.      the text file. The artwork tag and its attributes enable you to merge 
  5386.      whole or segmented bit maps and position them in the window. A bit map can 
  5387.      be created by an application or by a bit-map editing tool, such as the 
  5388.      Presentation Manager Icon Editor. A metafile can be created using a GPI 
  5389.      function. 
  5390.  
  5391.      Conditions 
  5392.  
  5393.        o  If a path name is not specified for either name= or linkfile=, IPF 
  5394.           looks for the file in the current directory. 
  5395.  
  5396.        o  If linkfile= is not specified, IPF looks for the artlink tag on the 
  5397.           line immediately following the artwork tag. 
  5398.  
  5399.        o  The artwork tag requires the name= attribute. 
  5400.  
  5401.      Example 1 
  5402.  
  5403.      This example shows how to include artwork that does not require a 
  5404.      hypergraphic link.  The artwork is to be placed within the line of text 
  5405.      that contains the artwork tag. 
  5406.  
  5407.           Click on the :artwork name='gopi.art' runin. symbol to close the file.
  5408.  
  5409.      Example 2 
  5410.  
  5411.      This example shows how to include artwork that fills the window in which 
  5412.      it is displayed. 
  5413.  
  5414.           :artwork name='c:\main\world.bmp' fit.
  5415.  
  5416.  
  5417. ΓòÉΓòÉΓòÉ 9.9. :caution.  (Caution) ΓòÉΓòÉΓòÉ
  5418.  
  5419. Purpose 
  5420.  
  5421. Alerts the user to a risk. 
  5422.  
  5423. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  5424. ΓöéTag            ΓöéElement        ΓöéAttributes     ΓöéEnd            Γöé
  5425. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5426. Γöé:caution.      ΓöéCaution        Γöétext=' '       Γöé:ecaution.     Γöé
  5427. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  5428.  
  5429. Attributes 
  5430.  
  5431.      text=' ' 
  5432.         Enables you to change CAUTION to different text. 
  5433.  
  5434.      Description 
  5435.  
  5436.      A caution message notifies the user of possible risks.  It should precede 
  5437.      the text to which it pertains so the user will see it first. 
  5438.  
  5439.      When :caution. is encountered, CAUTION appears on the screen, and the 
  5440.      caution text is displayed on the next line.  A blank line is inserted 
  5441.      before the caution message. 
  5442.  
  5443.      Conditions 
  5444.  
  5445.      None 
  5446.  
  5447.      Example 1 
  5448.  
  5449.           :caution.
  5450.           These berries are wild.  Do not eat.
  5451.           :ecaution.
  5452.  
  5453.      Output 
  5454.  
  5455.           CAUTION:
  5456.           These berries are wild.  Do not eat.
  5457.  
  5458.      Example 2 
  5459.  
  5460.           :caution text='Wild Berries:'.
  5461.           These berries are wild.  Do not eat.
  5462.           :ecaution.
  5463.  
  5464.      Output 
  5465.  
  5466.           Wild Berries:
  5467.           These berries are wild.  Do not eat.
  5468.  
  5469.  
  5470. ΓòÉΓòÉΓòÉ 9.10. :cgraphic. (Character Graphic) ΓòÉΓòÉΓòÉ
  5471.  
  5472. Purpose 
  5473. Defines a character graphic. 
  5474.  
  5475. Syntax 
  5476.  
  5477. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  5478. ΓöéTag            ΓöéElement        ΓöéAttributes     ΓöéEnd            Γöé
  5479. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5480. Γöé:cgraphic.     ΓöéCharacter      Γöé               Γöé:ecgraphic.    Γöé
  5481. Γöé               Γöégraphic        Γöé               Γöé               Γöé
  5482. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  5483.  
  5484. Attributes 
  5485.  
  5486. None 
  5487.  
  5488. Description 
  5489.  
  5490. Character graphics are those you create with an ASCII editor. The :cgraphic. 
  5491. tag indicates that a character graphic is to follow. Everything after the tag 
  5492. and before :ecgraphic. will be in a monospace font. A blank line is inserted 
  5493. before and after the graphic. 
  5494.  
  5495. Conditions 
  5496. Text that does not fit in the display area of a window is clipped. 
  5497.  
  5498. Example 
  5499.  
  5500. :cgraphic.
  5501. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÉ       ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  5502. Γöé     Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉΓö£Γö¼Γöñ       Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ           Γöé
  5503. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÉ ΓöéΓöéΓöéΓö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÉ    Γöé           Γöé
  5504. Γöé     Γöé    Γöé ΓööΓöÿΓöéΓöé         Γöé    ΓööΓöÇΓöÇ One ΓöÇΓöÇΓöÇΓöÇΓöñ
  5505. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓö┤Γöÿ         ΓööΓöÇΓöÇΓöÇΓöÇ :hp4.Two:ehp4. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  5506. :ecgraphic.
  5507.  
  5508. Output 
  5509.  
  5510. The following output is provided. 
  5511.  
  5512. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÉ       ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  5513. Γöé     Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉΓö£Γö¼Γöñ       Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ           Γöé
  5514. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÉ ΓöéΓöéΓöéΓö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÉ    Γöé           Γöé
  5515. Γöé     Γöé    Γöé ΓööΓöÿΓöéΓöé         Γöé    ΓööΓöÇΓöÇ One ΓöÇΓöÇΓöÇΓöÇΓöñ
  5516. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓö┤Γöÿ         ΓööΓöÇΓöÇΓöÇΓöÇ Two ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  5517.  
  5518.  
  5519. ΓòÉΓòÉΓòÉ 9.11. :color.  (Color) ΓòÉΓòÉΓòÉ
  5520.  
  5521. Purpose 
  5522.  
  5523. Changes the colors of the text and text background. 
  5524.  
  5525. Syntax 
  5526.  
  5527. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  5528. ΓöéTag            ΓöéElement        ΓöéAttributes     ΓöéEnd            Γöé
  5529. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5530. Γöé:color.        ΓöéColor          Γöéfc=            Γöé               Γöé
  5531. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5532. Γöé               Γöé               Γöébc=            Γöé               Γöé
  5533. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  5534.  
  5535. Attributes 
  5536.  
  5537.      fc= 
  5538.         Enables you to change the color of the text. Text following this 
  5539.         attribute appears in the color specified. The values that can be 
  5540.         specified are: 
  5541.  
  5542.           default 
  5543.           black 
  5544.           blue 
  5545.           red 
  5546.           pink 
  5547.           green 
  5548.           cyan 
  5549.           yellow 
  5550.           neutral 
  5551.           brown 
  5552.           darkgray 
  5553.           darkblue 
  5554.           darkred 
  5555.           darkpink 
  5556.           darkgreen 
  5557.           darkcyan 
  5558.           palegray 
  5559.  
  5560.  
  5561.      bc= 
  5562.         Enables you to change the background color of the text.  The screen 
  5563.         colors remain the same. The values that can be specified are the same 
  5564.         as those for fc=. 
  5565.  
  5566.      Description 
  5567.  
  5568.      :color. and its attributes enable you to change the color of the text and 
  5569.      the color of the text background. Colors set with this tag remain in 
  5570.      effect until another color is specified or a heading definition is 
  5571.      encountered. 
  5572.  
  5573.      To return to the system colors, use fc=default and bc=default. 
  5574.  
  5575.      Conditions 
  5576.  
  5577.      None 
  5578.  
  5579.      Example 
  5580.  
  5581.           :sl.
  5582.           :color fc=green bc=blue.
  5583.           :li.Color the foreground green; color the background blue.
  5584.           .*
  5585.           :color fc=blue bc=red.
  5586.           :li.Color the foreground blue; color the background red.
  5587.           .*
  5588.           :color fc=cyan bc=yellow.
  5589.           :li.Color the foreground cyan; color the background yellow.
  5590.           .*
  5591.           :color fc=default bc=default.
  5592.           :li.Return to the system colors.
  5593.           :esl.
  5594.  
  5595.      Output 
  5596.  
  5597.           Color the foreground green; color the background blue. 
  5598.  
  5599.           Color the foreground blue; color the background red. 
  5600.  
  5601.           Color the foreground cyan; color the background yellow. 
  5602.  
  5603.           Return to the system colors. 
  5604.  
  5605.  
  5606. ΓòÉΓòÉΓòÉ 9.12. :ctrl.  (Control Area) ΓòÉΓòÉΓòÉ
  5607.  
  5608. Purpose 
  5609.  
  5610. Defines the contents of the control area. 
  5611.  
  5612. Syntax 
  5613.  
  5614. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  5615. ΓöéTag            ΓöéElement        ΓöéAttributes     ΓöéEnd            Γöé
  5616. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5617. Γöé:ctrl          ΓöéControl area   Γöéctrlid=        Γöé               Γöé
  5618. Γöé               Γöé               Γöécontrols=' '   Γöé               Γöé
  5619. Γöé               Γöé               Γöépage           Γöé               Γöé
  5620. Γöé               Γöé               Γöécoverpage      Γöé               Γöé
  5621. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  5622.  
  5623. Attributes 
  5624.  
  5625.      ctrlid= 
  5626.         Specifies the identification value for the control area.  The 
  5627.         identification value can be either alpha or alphanumeric, and is 
  5628.         referenced by the heading tag. 
  5629.  
  5630.      controls=' ' 
  5631.         Specifies the identification values of the push buttons that you want 
  5632.         included in the control area of a window.  Push buttons are displayed 
  5633.         in the order in which they are defined. The values that can be 
  5634.         specified are: 
  5635.  
  5636.           Search         Specifies the Search push button.  This push button 
  5637.                          displays a window that lets the user search for a word 
  5638.                          or phrase. 
  5639.  
  5640.           Print          Specifies the Print push button.  This push button 
  5641.                          displays a window that lets the user print one or more 
  5642.                          topics. 
  5643.  
  5644.           Index          Specifies the Index push button.  This push button 
  5645.                          displays an alphabetic list to the topics in the 
  5646.                          document. 
  5647.  
  5648.           Contents       Specifies the Contents push button.  This push button 
  5649.                          displays the Contents window. 
  5650.  
  5651.           Esc            Specifies the Previous push button.  This push button 
  5652.                          lets the user see information from an earlier request. 
  5653.  
  5654.           Back           Specifies the Back push button.  This push button 
  5655.                          displays the previous page in the table of contents 
  5656.                          hierarchy. 
  5657.  
  5658.           Forward        Specifies the Forward push button.  This push button 
  5659.                          displays the next page in the table of contents 
  5660.                          hierarchy. 
  5661.  
  5662.         Note:  An identification value for the Tutorial push button is not 
  5663.                provided because it is displayed automatically if a tutorial 
  5664.                exists. 
  5665.  
  5666.         If you are defining your own push buttons, use id= attribute of the 
  5667.         push button tag (:pbutton.). See :pbutton. (Push Button). 
  5668.  
  5669.         The identification values for the predefined push buttons are defined 
  5670.         in the PMHELP.H file. 
  5671.  
  5672.      page 
  5673.         Specifies that a set of push buttons is displayed in the control area 
  5674.         of an IPF text window . You can use this attribute to override the 
  5675.         default set of push buttons that is displayed in the control area of an 
  5676.         IPF text window. 
  5677.  
  5678.      coverpage 
  5679.         Specifies the set of push buttons that is displayed in the control area 
  5680.         of the coverpage window . The control area in the coverpage window is 
  5681.         at the very bottom of a window.  You can use this attribute to override 
  5682.         the default set of push buttons that is displayed in the coverpage 
  5683.         window. 
  5684.  
  5685.      Example:  The following tagging specifies the Previous, Forward, and Back 
  5686.      push buttons display in the coverpage window: 
  5687.  
  5688.           :ctrl ctrlid=new1 controls='ESC FORWARD BACK' coverpage.
  5689.  
  5690.      Description 
  5691.  
  5692.      The control area tag (:ctrl.) specifies where push buttons are displayed, 
  5693.      and which push buttons you want displayed. You can display push buttons in 
  5694.      the control areas of coverpage window or an IPF text window. 
  5695.  
  5696.      The default control area for online documents and Help windows is the 
  5697.      coverage page window, and the default push buttons that display are: 
  5698.  
  5699.      Online documents 
  5700.  
  5701.           Previous 
  5702.           Search 
  5703.           Print 
  5704.           Index 
  5705.           Contents 
  5706.           Back 
  5707.           Forward 
  5708.           Tutorial (only if a tutorial is available). 
  5709.  
  5710.      Help windows 
  5711.  
  5712.           Previous 
  5713.           Search 
  5714.           Print 
  5715.           Index 
  5716.           Tutorial (only if a tutorial is available). 
  5717.  
  5718.      You can define more than one control area with different sets of push 
  5719.      button for an IPF text window; however, only one set of push buttons can 
  5720.      be defined for the coverpage window. 
  5721.  
  5722.      The default set of push buttons for an IPF text window can be overridden 
  5723.      by defining a new default or by referring to the control area definition 
  5724.      with the heading tag (see :h1. through :h6.  (Headings)).  For more 
  5725.      information about push buttons, see Push Buttons. 
  5726.  
  5727.      Conditions 
  5728.  
  5729.        o  The control area tag (:ctrl.) must be enclosed within the control 
  5730.           area definition tag (:ctrldef.) and associated end tag (:ectrldef.) 
  5731.           (see :ctrldef  (Control Area Definition)). 
  5732.  
  5733.        o  The :ctrl. tag must follow all push button tags (:pbutton.) (see 
  5734.           :pbutton. (Push Button)). 
  5735.  
  5736.  
  5737. ΓòÉΓòÉΓòÉ 9.13. :ctrldef  (Control Area Definition) ΓòÉΓòÉΓòÉ
  5738.  
  5739. Purpose 
  5740.  
  5741. Defines a control area. 
  5742.  
  5743. Syntax 
  5744.  
  5745. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  5746. ΓöéTag            ΓöéElement        ΓöéAttributes     ΓöéEnd            Γöé
  5747. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5748. Γöé:ctrldef.      ΓöéControl area   ΓöéNONE           Γöé:ectrldef.     Γöé
  5749. Γöé               Γöédefinition     Γöé               Γöé               Γöé
  5750. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  5751.  
  5752. Attributes 
  5753.  
  5754. None 
  5755.  
  5756. Description 
  5757.  
  5758. Use the :ctrldef. tag to define a control area and the contents of the control 
  5759. area.  For tagging information about the control area of a window, see :ctrl. 
  5760. (Control Area). 
  5761.  
  5762. Conditions 
  5763.  
  5764.        o  This tag should follow the :docprof. tag. 
  5765.        o  The following tags are embedded within the :ctrldef. and :ectrldef. 
  5766.           tags. 
  5767.  
  5768.             -  :pbutton. 
  5769.             -  :ctrl. 
  5770.  
  5771.  
  5772. ΓòÉΓòÉΓòÉ 9.14. :ddf. (Dynamic Data Formatting) ΓòÉΓòÉΓòÉ
  5773.  
  5774. Purpose 
  5775.  
  5776. Display dynamically formatted text in an application-controlled window. 
  5777.  
  5778. Syntax 
  5779.  
  5780. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  5781. ΓöéTag            ΓöéElement        ΓöéAttributes     ΓöéEnd            Γöé
  5782. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5783. Γöé:ddf.          ΓöéDynamic data   Γöéres=           Γöé               Γöé
  5784. Γöé               Γöéformatting     Γöé               Γöé               Γöé
  5785. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  5786.  
  5787. Attributes 
  5788.  
  5789.      res= 
  5790.         Associates a location in a window with a request for specific 
  5791.         information.  The value is an integer from 1 to 64 000. 
  5792.  
  5793.      Description 
  5794.  
  5795.      :ddf. indicates that the application will provide dynamically formatted 
  5796.      data. 
  5797.  
  5798.      When IPF encounters :ddf., it sends the message HM_QUERY_DDF_DATA to the 
  5799.      OBJCOM window,  and specifies the res= value. (The application identified 
  5800.      the OBJCOM window by sending HM_SET_OBJCOM_WINDOW to IPF.) The OBJCOM code 
  5801.      responds by initializing for dynamic data formatting and proceeding with a 
  5802.      dynamic data-formatting routine, using dynamic data-formatting functions. 
  5803.      For more information, see Changing Help Information at Run Time (DDF). 
  5804.  
  5805.  
  5806. ΓòÉΓòÉΓòÉ 9.15. :dl. (Definition List) ΓòÉΓòÉΓòÉ
  5807.  
  5808. Purpose 
  5809.  
  5810. Identifies a list of terms and definitions. 
  5811.  
  5812. Syntax 
  5813.  
  5814. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  5815. ΓöéTag            ΓöéElement        ΓöéAttributes     ΓöéEnd            Γöé
  5816. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5817. Γöé:dl.           ΓöéDefinition listΓöécompact        Γöé:edl.          Γöé
  5818. Γöé               Γöé               Γöétsize=         Γöé               Γöé
  5819. Γöé               Γöé               Γöébreak=         Γöé               Γöé
  5820. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5821. Γöé:dthd.         ΓöéDefinition-termΓöé               Γöé               Γöé
  5822. Γöé               Γöéheading        Γöé               Γöé               Γöé
  5823. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5824. Γöé:ddhd.         ΓöéDefinition-descΓöé               Γöé               Γöé
  5825. Γöé               Γöéheading        Γöé               Γöé               Γöé
  5826. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5827. Γöé:dt.           ΓöéDefinition termΓöé               Γöé               Γöé
  5828. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5829. Γöé:dd.           ΓöéDefinition     Γöé               Γöé               Γöé
  5830. Γöé               Γöédescription    Γöé               Γöé               Γöé
  5831. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  5832.  
  5833. Attributes 
  5834.  
  5835.      compact 
  5836.         Causes the list to be formatted without a blank line between each term 
  5837.         and description. If you omit this attribute, a blank line is inserted. 
  5838.  
  5839.      tsize=10 | n 
  5840.         Defines the amount of space to allot for the terms and term headings. 
  5841.         The default is 10 character units. If the value of tsize= exceeds the 
  5842.         current size of the formatting area (the space between the current 
  5843.         margins), the current formatting area size is assigned, and a warning 
  5844.         message is issued. 
  5845.  
  5846.      break=none | fit | all 
  5847.         Controls the formatting of the terms and descriptions: 
  5848.  
  5849.           none    The description is on the same line as the term. If the 
  5850.                   length of the term exceeds the value specified by tsize=, the 
  5851.                   term extends into the description column, and the description 
  5852.                   starts one space after the term. 
  5853.  
  5854.           fit     The description is placed on the line below the term if the 
  5855.                   term is longer than the value specified by tsize=. 
  5856.  
  5857.           all     All descriptions are placed on the line below the term. 
  5858.  
  5859.      Conditions 
  5860.  
  5861.        o  The term-heading tag (:dthd.) is paired with the description-heading 
  5862.           tag (:ddhd.) and precedes the term and description tags (:dt. and 
  5863.           :dd.). 
  5864.  
  5865.        o  The term tag requires a description tag. 
  5866.  
  5867.      Example 
  5868.  
  5869.           :dl compact tsize=20.
  5870.           :dthd.:hp2.Mammal:ehp2.
  5871.           :ddhd.:hp2.Description:ehp2.
  5872.           :dt.Florida Panther
  5873.           :dd.Relative of the mountain lion or puma.
  5874.           :dt.Key Deer
  5875.           :dd.&odq.Toy&cdq. member of the whitetail deer family.
  5876.           :dt.Manatee
  5877.           :dd.Gentle giant sea cow.
  5878.           :edl.
  5879.  
  5880.      Output 
  5881.  
  5882.      Mammal              Description 
  5883.      Florida Panther     Relative of the mountain lion or puma. 
  5884.      Key Deer            "Toy" member of the whitetail deer family. 
  5885.      Manatee             Gentle giant sea cow. 
  5886.  
  5887.  
  5888. ΓòÉΓòÉΓòÉ 9.16. :docprof.  (Document Profile) ΓòÉΓòÉΓòÉ
  5889.  
  5890. Purpose 
  5891.  
  5892. Specifies the heading-level entries to be displayed in the Contents window. 
  5893.  
  5894. Syntax 
  5895.  
  5896. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  5897. ΓöéTag            ΓöéElement        ΓöéAttributes     ΓöéEnd            Γöé
  5898. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5899. Γöé:docprof.      ΓöéContents windowΓöétoc=           Γöé               Γöé
  5900. Γöé               Γöéentries        Γöé               Γöé               Γöé
  5901. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5902. Γöé               ΓöéGlobal         Γöédll=' '        Γöé               Γöé
  5903. Γöé               Γöécommunications Γöéobjectname=' ' Γöé               Γöé
  5904. Γöé               Γöédynamic-link   Γöéobjectinfo=' ' Γöé               Γöé
  5905. Γöé               Γöélibrary        Γöé               Γöé               Γöé
  5906. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5907. Γöé               ΓöéPush button    Γöéctrlarea=      Γöé               Γöé
  5908. Γöé               Γöésupport        Γöé               Γöé               Γöé
  5909. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  5910.  
  5911. Attributes 
  5912.  
  5913.      toc= 
  5914.         Enables you to control the heading levels displayed in the table of 
  5915.         contents. For example, if you want only heading levels 1 and 2 to 
  5916.         appear, the tagging is: 
  5917.  
  5918.                 :docprof toc=12.
  5919.  
  5920.         If no toc= value is specified, heading levels 1 through 3 appear in the 
  5921.         Contents window. Heading levels 4 through 6 appear as part of the text 
  5922.         when the window is displayed. 
  5923.  
  5924.         If a heading tag also specifies a value for toc=, the heading-tag value 
  5925.         overrides the :docprof. value until either the end of the file is 
  5926.         reached, or another heading toc= value is encountered. 
  5927.  
  5928.      dll=' ' 
  5929.         Specifies the communication dynamic-link library that IPF loads so that 
  5930.         a communication object in the library can be used to alter the behavior 
  5931.         of IPF. For author-defined push buttons, this is the communication 
  5932.         object that will receive the HM_NOTIFY message.  For a Tutorial push 
  5933.         button, this is the communication object that will receive the 
  5934.         HM_TUTORIAL message. 
  5935.  
  5936.      objectname=' ' 
  5937.         Identifies the entry point of the communication object in the 
  5938.         dynamic-link library.  The value for this attribute is case sensitive. 
  5939.  
  5940.      objectinfo=' ' 
  5941.         Identifies parameters to be passed to the object. 
  5942.  
  5943.      ctrlarea= 
  5944.         Defines the control areas in a window where you want to display push 
  5945.         buttons. For more information on control areas in a window, see Push 
  5946.         Buttons. 
  5947.  
  5948.         Possible values are: 
  5949.  
  5950.           page          Identifies the control area within the IPF text window. 
  5951.  
  5952.           coverpage     Identifies the control area as the bottom of the 
  5953.                         coverpage window.  This is the default value. 
  5954.  
  5955.           both          Specifies that you want a control area in both the IPF 
  5956.                         text window, and the coverpage window. 
  5957.  
  5958.           none          Specifies that you do not want a control area (that is, 
  5959.                         you do not want push buttons). 
  5960.  
  5961.      Description 
  5962.  
  5963.      :docprof. is placed at the beginning of the file. It follows the title tag 
  5964.      (:title.), if a title is specified; otherwise, it follows the 
  5965.      user-document tag (:userdoc.). 
  5966.  
  5967.      The :docprof. tag also provides the ability to alter the behavior of IPF 
  5968.      by loading any dynamic-link modules specified in the dll= attribute. It is 
  5969.      possible to have multiple windows and multiple entry points within a 
  5970.      dynamic-link module.  There is no guarantee that the ACVP structure that 
  5971.      is passed into the object will be maintained across multiple calls. 
  5972.  
  5973.      You also can use this tag to change the size and function of the coverpage 
  5974.      and its client and control windows. 
  5975.  
  5976.      The :docprof. tag can be used to define the control area in a window where 
  5977.      you want to display push buttons. 
  5978.  
  5979.      Conditions 
  5980.  
  5981.      None 
  5982.  
  5983.      Example 
  5984.  
  5985.           :userdoc.
  5986.           :title.
  5987.           :docprof toc=123 ctrlarea=none.
  5988.           :euserdoc.
  5989.  
  5990.      Output 
  5991.  
  5992.      When the user selects the "+" icon in the Contents window, heading levels 
  5993.      1 through 4 are displayed in a tree-structured format.  There are no push 
  5994.      buttons because of ctrlarea=none. 
  5995.  
  5996.  
  5997. ΓòÉΓòÉΓòÉ 9.17. :fig. (Figure) ΓòÉΓòÉΓòÉ
  5998.  
  5999. Purpose 
  6000.  
  6001. Identifies a figure. 
  6002.  
  6003. Syntax 
  6004.  
  6005. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  6006. ΓöéTag            ΓöéElement        ΓöéAttributes     ΓöéEnd            Γöé
  6007. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6008. Γöé:fig.          ΓöéAny text       Γöé               Γöé:efig.         Γöé
  6009. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  6010.  
  6011. Attributes 
  6012.  
  6013. None 
  6014.  
  6015. Description 
  6016.  
  6017. :fig. indicates that what follows is to be formatted exactly as it is entered. 
  6018. Text that exceeds the window area will be clipped. 
  6019.  
  6020. The figure is displayed in proportional font, with a blank line preceding the 
  6021. text. Because proportional font is used, words will align, but letters and 
  6022. numbers may not. 
  6023.  
  6024. Conditions 
  6025.  
  6026. None 
  6027.  
  6028. Example 
  6029.  
  6030. :fig.
  6031.  Area   Number  Classification         Code
  6032. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  6033.  JOB1
  6034.  
  6035.           2      Full-time exempt        1A
  6036.           4      Part-time exempt        1B
  6037.           4      Full-time nonexempt     2A
  6038.           1      Part-time nonexempt     2B
  6039.           2      Supplemental            3A
  6040.  
  6041. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  6042. :efig.
  6043.  
  6044. Output 
  6045.  
  6046.  Area   Number  Classification         Code
  6047. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  6048.  JOB1
  6049.  
  6050.           2      Full-time exempt        1A
  6051.           4      Part-time exempt        1B
  6052.           4      Full-time nonexempt     2A
  6053.           1      Part-time nonexempt     2B
  6054.           2      Supplemental            3A
  6055.  
  6056. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  6057.  
  6058.  
  6059. ΓòÉΓòÉΓòÉ 9.18. :figcap.  (Figure Caption) ΓòÉΓòÉΓòÉ
  6060.  
  6061. Purpose 
  6062.  
  6063. Specifies a figure title. 
  6064.  
  6065. Syntax 
  6066.  
  6067. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  6068. ΓöéTag            ΓöéElement        ΓöéAttributes     ΓöéEnd            Γöé
  6069. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6070. Γöé:figcap.       ΓöéAny text       Γöé               Γöé               Γöé
  6071. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  6072.  
  6073. Attributes 
  6074.  
  6075. None 
  6076.  
  6077. Description 
  6078.  
  6079. :figcap. is placed between :fig. and :efig.. The text of the caption goes on 
  6080. the same line as the tag, or on the next line. 
  6081.  
  6082. Conditions 
  6083.  
  6084.        o  Use :figcap. either immediately after :fig. or immediately before 
  6085.           :efig.. 
  6086.        o  The text of the figure caption cannot contain tags or semicolons. 
  6087.  
  6088.      Example 
  6089.  
  6090.           :fig.
  6091.            Area   Number  Classification         Code
  6092.           ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  6093.            JOB2
  6094.  
  6095.                    5      Full-time exempt        1A
  6096.                    1      Part-time exempt        1B
  6097.                    3      Full-time non-exempt    2A
  6098.                    1      Part-time non-exempt    2B
  6099.                    1      Supplemental            3A
  6100.  
  6101.           ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  6102.           :figcap.Payroll Codes for Area JOB2
  6103.           :efig.
  6104.  
  6105.      Output 
  6106.  
  6107.            Area   Number  Classification         Code
  6108.           ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  6109.            JOB2
  6110.  
  6111.                    5      Full-time exempt        1A
  6112.                    1      Part-time exempt        1B
  6113.                    3      Full-time non-exempt    2A
  6114.                    1      Part-time non-exempt    2B
  6115.                    1      Supplemental            3A
  6116.  
  6117.           ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  6118.  
  6119.      Payroll Codes for Area JOB2 
  6120.  
  6121.  
  6122. ΓòÉΓòÉΓòÉ 9.19. :font. (Font) ΓòÉΓòÉΓòÉ
  6123.  
  6124. Purpose 
  6125.  
  6126. Changes the font to the specified typeface, size, and code page. 
  6127.  
  6128. Syntax 
  6129.  
  6130. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  6131. ΓöéTag            ΓöéElement        ΓöéAttributes     ΓöéEnd            Γöé
  6132. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6133. Γöé:font.         ΓöéFonts          Γöéfacename=      ΓöéNone           Γöé
  6134. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6135. Γöé               Γöé               Γöésize=          Γöé               Γöé
  6136. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6137. Γöé               Γöé               Γöécodepage=      Γöé               Γöé
  6138. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  6139.  
  6140. Attributes 
  6141.  
  6142.      facename= 
  6143.         Defines the typeface name of the font. You can use any bit map font in 
  6144.         the system. 
  6145.  
  6146.         This attribute is required. If default is specified, the font is reset 
  6147.         to the default system font. 
  6148.  
  6149.         Notice that facename= values have initial capitals. These are required; 
  6150.         otherwise, the IPF compiler will not recognize them as valid values. No 
  6151.         error message is returned when an invalid value for facename= is 
  6152.         encountered. 
  6153.  
  6154.  
  6155.      size=hxw 
  6156.         Defines the average character height and width, in points, of the 
  6157.         Presentation Manager image font. (A point is a typesetting measure that 
  6158.         is equal to approximately 1/72 of an inch.) 
  6159.  
  6160.  
  6161.         Following are the Presentation Manager image fonts available on all 
  6162.         system-supported display adapters: 
  6163.  
  6164.                 ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  6165.                 ΓöéFace           Γöé
  6166.                 Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6167.                 ΓöéCourier        Γöé
  6168.                 Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6169.                 ΓöéHelv           Γöé
  6170.                 Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6171.                 ΓöéTms Rmn        Γöé
  6172.                 Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6173.                 ΓöéSystem         Γöé
  6174.                 ΓöéMonospaced     Γöé
  6175.                 Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6176.                 ΓöéSystem         Γöé
  6177.                 ΓöéProportional   Γöé
  6178.                 ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  6179.  
  6180.         The size= attribute is required. If the value is set to 0x0, the font 
  6181.         is reset to the default system font. 
  6182.  
  6183.  
  6184.      codepage= 
  6185.         Specifies the code page to be used.  This is a three-digit number. 
  6186.         Possible values are: 
  6187.  
  6188.           437 - U.S. IBM PC 
  6189.           850 - Multilingual 
  6190.           860 - Portuguese 
  6191.           863 - Canadian French 
  6192.           865 - Nordic 
  6193.  
  6194.      See Country Code Pages for a list of countries and their code pages. 
  6195.  
  6196.      The codepage= attribute is optional.  If no code-page value is specified, 
  6197.      the code page of the active system process is used. 
  6198.  
  6199.      Description 
  6200.  
  6201.      :font changes the current font for the text within the current window. 
  6202.      When a heading tag defining a new window is encountered, the font resets 
  6203.      to the default system font. 
  6204.  
  6205.      You can make as many font changes within a window as you want. If you 
  6206.      define highlighted phrases while a font tag is in effect, the highlighted 
  6207.      text will be displayed in the font style corresponding to the specified 
  6208.      typeface. 
  6209.  
  6210.      When you specify height and width values for a valid font name, you do not 
  6211.      have to know the exact point values.  If no match is found for a specified 
  6212.      font size, IPF uses a "best fit" method to select the font.  For example, 
  6213.      suppose you specify: 
  6214.  
  6215.           :font facename=Helv size=20x12.
  6216.  
  6217.      IPF selects "Helv 18x10" because it is the closest match. 
  6218.  
  6219.  
  6220. ΓòÉΓòÉΓòÉ 9.20. :fn. (Footnote) ΓòÉΓòÉΓòÉ
  6221.  
  6222. Purpose 
  6223.  
  6224. Identifies a pop-up window. 
  6225.  
  6226. Syntax 
  6227.  
  6228. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  6229. ΓöéTag            ΓöéElement        ΓöéAttributes     ΓöéEnd            Γöé
  6230. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6231. Γöé:fn.           ΓöéPop-up         Γöéid=            Γöé:efn.          Γöé
  6232. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  6233.  
  6234. Attributes 
  6235.  
  6236.      id= 
  6237.         Specifies the ID of the footnote.  It is used in conjunction with the 
  6238.         link tag (see :link.  (Link)). 
  6239.  
  6240.      Description 
  6241.  
  6242.      The footnote tag encloses information that will be displayed in a pop-up 
  6243.      window when the user selects a hypertext link to the information. 
  6244.      Footnotes can appear within paragraphs, lists, highlighted phrases, and 
  6245.      artwork. 
  6246.  
  6247.      Conditions 
  6248.  
  6249.        o  Index entries are not valid within a footnote. 
  6250.        o  The id= attribute is required. 
  6251.        o  One footnote must end before another begins. 
  6252.        o  A footnote cannot be linked from a child window. 
  6253.        o  Information in a footnote cannot be returned as the result of a 
  6254.           search. 
  6255.  
  6256.      Example 
  6257.  
  6258.      The following shows how to enter the footnote ID (here "ddrive") and 
  6259.      provide a link to the footnote. 
  6260.  
  6261.           :fn id=ddrive.
  6262.           The information you place here appears in the pop-up window as a
  6263.           footnote.  For example, you could enter additional information
  6264.           about the disk drive in a footnote.
  6265.           :efn.
  6266.  
  6267.      To provide the link that allows the user to view the footnote pop-up, you 
  6268.      could enter: 
  6269.  
  6270.           :p.Additional information about
  6271.           :link refid=ddrive reftype=fn.disk drives:elink.
  6272.           is available.
  6273.  
  6274.      Output 
  6275.  
  6276.      When the information is displayed, disk drives is highlighted and clicking 
  6277.      on disk drives pops up the footnote window. 
  6278.  
  6279.  
  6280. ΓòÉΓòÉΓòÉ 9.21. :h1. through :h6.  (Headings) ΓòÉΓòÉΓòÉ
  6281.  
  6282. Purpose 
  6283.  
  6284. Define window characteristics. 
  6285.  
  6286. Syntax 
  6287.  
  6288. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  6289. ΓöéTag            ΓöéElement        ΓöéAttributes     ΓöéEnd            Γöé
  6290. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6291. Γöé:h1.-:h6.      ΓöéDefine cross   Γöéres=           Γöé               Γöé
  6292. Γöé               Γöéreferences to  Γöéid=            Γöé               Γöé
  6293. Γöé               Γöéinternal and   Γöéname=          Γöé               Γöé
  6294. Γöé               Γöéexternal       Γöéglobal         Γöé               Γöé
  6295. Γöé               Γöésources.       Γöétutorial=' '   Γöé               Γöé
  6296. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6297. Γöé               ΓöéDefine origin  Γöéx=             Γöé               Γöé
  6298. Γöé               Γöéand size of    Γöéy=             Γöé               Γöé
  6299. Γöé               Γöéwindows with   Γöéwidth=         Γöé               Γöé
  6300. Γöé               Γöérelation the   Γöéheight=        Γöé               Γöé
  6301. Γöé               Γöéprimary window.Γöé               Γöé               Γöé
  6302. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6303. Γöé               ΓöéManage the     Γöégroup=         Γöé               Γöé
  6304. Γöé               Γöédisplay of     Γöéviewport       Γöé               Γöé
  6305. Γöé               Γöéinformation in Γöéclear          Γöé               Γöé
  6306. Γöé               Γöémultiple       Γöé               Γöé               Γöé
  6307. Γöé               Γöéwindows.       Γöé               Γöé               Γöé
  6308. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6309. Γöé               ΓöéDefine the     Γöétitlebar=      Γöé               Γöé
  6310. Γöé               Γöéuser's control Γöéscroll=        Γöé               Γöé
  6311. Γöé               Γöéover the       Γöérules=         Γöé               Γöé
  6312. Γöé               Γöéwindow.        Γöé               Γöé               Γöé
  6313. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6314. Γöé               ΓöéRestrict user  Γöénosearch       Γöé               Γöé
  6315. Γöé               Γöéretrieval of   Γöénoprint        Γöé               Γöé
  6316. Γöé               Γöéinformation.   Γöéhide           Γöé               Γöé
  6317. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6318. Γöé               ΓöéChange heading Γöétoc=           Γöé               Γöé
  6319. Γöé               Γöélevels that    Γöé               Γöé               Γöé
  6320. Γöé               Γöéappear in the  Γöé               Γöé               Γöé
  6321. Γöé               ΓöéContents       Γöé               Γöé               Γöé
  6322. Γöé               Γöéwindow.        Γöé               Γöé               Γöé
  6323. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6324. Γöé               ΓöéDefine the     Γöéctrlarea=      Γöé               Γöé
  6325. Γöé               Γöécontrol area ofΓöéctrlrefid=     Γöé               Γöé
  6326. Γöé               Γöéa window for   Γöé               Γöé               Γöé
  6327. Γöé               Γöédisplaying pushΓöé               Γöé               Γöé
  6328. Γöé               Γöébuttons.       Γöé               Γöé               Γöé
  6329. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  6330.  
  6331. Attributes 
  6332.  
  6333.           res=
  6334.           id=
  6335.           name=
  6336.         Specify window identifiers. 
  6337.  
  6338.         If you are creating an .HLP file, res= is required and can be any 
  6339.         integer from 1 through 64 000. However, if you are creating an .INF 
  6340.         file (compiled by specifying the /INF parameter with the IPFC command), 
  6341.         you can use res=, name= or id=. With name= and id=, you can include 
  6342.         alphabetic characters.  You cannot use these attributes if you plan to 
  6343.         concatenate .INF files. Instead, you must use res=. For more 
  6344.         information see Concatenating .INF Files. 
  6345.  
  6346.      global 
  6347.         Indicates to IPF that the window can be a reference in an external 
  6348.         database (another IPF .HLP or .INF file). A reference from one IPF 
  6349.         database to another is made by specifying reftype=hd and 
  6350.         database='filename' with the link tag. 
  6351.  
  6352.      tutorial=' ' 
  6353.         Specifies the file name of the tutorial and causes the tutorial choice 
  6354.         to be added to the help pull-down when the window is displayed.  When 
  6355.         the user selects Tutorial, the HM_TUTORIAL message specifying the file 
  6356.         name of the tutorial is sent to the application. An example of the 
  6357.         tagging follows: 
  6358.  
  6359.                 :h1 tutorial='example.exe'.Test Window
  6360.  
  6361.           x=
  6362.           y=
  6363.           width=
  6364.           height=
  6365.         Define the size and position of a window. The x= and y= attributes are 
  6366.         values along the x and y axes; they define the origin of the window. 
  6367.         The x axis runs horizontally from left to right, and the y axis runs 
  6368.         vertically from bottom to top. The position where the values specified 
  6369.         for x= and y= intersect is the the origin of the window. (The 0,0 
  6370.         intersection is the bottom left corner of the parent window.) From this 
  6371.         location, width and height are measured. For more information about 
  6372.         window coordinates, see Defining Window Origin and Size. 
  6373.  
  6374.         Size and position attributes can be given in absolute, dynamic, or 
  6375.         relative values: 
  6376.  
  6377.           Absolute value: 
  6378.              A number followed by a letter, which indicates the unit of 
  6379.              measure: 
  6380.  
  6381.                c      (Characters):  Average character width of the default 
  6382.                       system font. 
  6383.                x      (Pixels):  Dependent on the display adapter in use. 
  6384.                p      ( Points):  Typesetting measure; equal to approximately 
  6385.                       1/72 inch. 
  6386.  
  6387.           Relative value: 
  6388.              A number followed by the percent sign (%), indicating a percentage 
  6389.              of the parent-window width or height. 
  6390.  
  6391.           Dynamic value: 
  6392.              A term indicating a window coordinate location that is dependent 
  6393.              on the current size and position of the primary window: 
  6394.  
  6395.                center | left | right 
  6396.                    For x= values:  In the center of, flush left in, or flush 
  6397.                    right in the parent window. 
  6398.  
  6399.                center | top | bottom 
  6400.                    For y= values:  In the center of, at the top of, or at the 
  6401.                    bottom of the parent window. 
  6402.  
  6403.           Restrictions: 
  6404.              When defining window position and size, you cannot mix absolute 
  6405.              values with dynamic or relative values for either of the following 
  6406.              combinations of attributes: 
  6407.  
  6408.             o  The x coordinate and the width 
  6409.             o  The y coordinate and the height. 
  6410.  
  6411.              If no values for x= and y= are specified, the origin of the window 
  6412.              is 0,0. If you specify values other than 0,0, you also must 
  6413.              specify width and height values.  Negative values for these 
  6414.              attributes are not allowed. 
  6415.  
  6416.           group=
  6417.           viewport
  6418.           clear
  6419.         The group= attribute enables you to assign the window a number from 1 
  6420.         through 64 000. This associates the window with a heading definition 
  6421.         and the IPFC information that follows it. If you do not provide a 
  6422.         number with group=, IPF assigns the number 0. 
  6423.  
  6424.         A group number can be assigned to a viewport by a heading or link 
  6425.         definition. For example, suppose you have a group number specified in a 
  6426.         link definition, and another in the heading that the link refers to. If 
  6427.         a user action causes the link definition to be selected, the link group 
  6428.         number overrides the heading group number.  However, if the user 
  6429.         selects the heading from either the Contents window or the Index 
  6430.         window, the heading group number takes effect. 
  6431.  
  6432.         IPF searches among the open windows to find one with a number matching 
  6433.         the one specified with group=. If no match is found, IPF opens a new 
  6434.         window. If a match is found, the information associated with the group 
  6435.         number is swapped with the information in the matched window. 
  6436.  
  6437.         The viewport attribute always opens a window.  If you specify both 
  6438.         viewport and group=, and a window with the specified group number is 
  6439.         already open, IPF opens another window with the same group number. 
  6440.         Thus, it is better that you do not specify the viewport attribute in a 
  6441.         heading that will appear in the Contents window, unless you want your 
  6442.         contents entries to always open separate windows. 
  6443.  
  6444.         The clear attribute causes IPF to close any open windows before opening 
  6445.         a window to display the current window. 
  6446.  
  6447.           titlebar=yes | sysmenu | minmax | both | none
  6448.           rules=border | sizeborder | none
  6449.           scroll=horizontal | vertical | both | none
  6450.         These attributes define Presentation Manager window controls and are 
  6451.         used primarily when defining secondary windows. If none of these 
  6452.         attributes are specified, the default is to open a window that has a 
  6453.         title bar with title bar icon, hide button, maximize button; a sizing 
  6454.         border; and vertical and horizontal scroll bars. 
  6455.  
  6456.           nosearch
  6457.           noprint
  6458.           hide
  6459.         These attributes restrict information retrieval and are most often used 
  6460.         in heading definitions for secondary windows. 
  6461.  
  6462.         The nosearch attribute in a secondary heading definition prevents the 
  6463.         heading from being returned as an entry in the search-results window. 
  6464.         This does not mean the secondary window is not searched.  It is, 
  6465.         however, only the primary heading definition that is returned. When the 
  6466.         user selects the primary heading definition, the contents of the second 
  6467.         window are displayed as part of the primary-window composition. 
  6468.  
  6469.         The noprint attribute in a secondary heading definition prevents the 
  6470.         contents of a secondary window from being printed as a separate entity. 
  6471.         Instead, secondary windows are printed as part of their primary window. 
  6472.         The contents of secondary windows are printed in the order in which the 
  6473.         link definitions are listed in the primary window. 
  6474.  
  6475.         When used in secondary heading definitions, nosearch and noprint merely 
  6476.         prevent duplication of output (search results or printed copy). When 
  6477.         used in regular heading definitions, they prevent retrieval of the 
  6478.         information by the user.  The only exception to this condition is if 
  6479.         the user selects This section for either printing or searching. 
  6480.  
  6481.         The hide attribute prevents a heading level from appearing in the 
  6482.         Contents window; however, there must be at least one heading level that 
  6483.         is not hidden. 
  6484.  
  6485.      toc= 
  6486.         Specifies heading levels that are to be entries in the Contents window. 
  6487.         When this attribute is encountered in a heading tag, the specified 
  6488.         heading levels override any levels specified by toc= of the 
  6489.         document-profile tag (:docprof.) until either the end-of-file is 
  6490.         reached or another toc= attribute is encountered in a heading tag.  If 
  6491.         no document-profile tag exists, the heading levels that appear in the 
  6492.         Contents window are levels 1, 2, and 3. The toc= attribute must be 
  6493.         greater than zero. 
  6494.  
  6495.      ctrlarea= 
  6496.         Specifies which control area in a window you want to display push 
  6497.         buttons.  When this attribute is encountered in a heading tag, it 
  6498.         overrides the ctrlarea attribute specified by :docprof..  Possible 
  6499.         values are: 
  6500.  
  6501.           page    Identifies the control area as the IPF text window. 
  6502.           none    Specifies that you do not want a control area. 
  6503.  
  6504.         For example, if your document consisted of 100 windows, and you wanted 
  6505.         only one window to display push buttons in the IPF text window, you 
  6506.         would tag your source file as follows: 
  6507.  
  6508.                 :docprof ctrlarea=none.
  6509.                 .
  6510.                 .
  6511.                 .
  6512.                 :h1 ctrlarea=page.One Window
  6513.  
  6514.      ctrlrefid= 
  6515.         Refers to the identification value (id=) specified by the control area 
  6516.         tag (:ctrl.).  This attribute specifies which control area you want to 
  6517.         display for this heading.  This attribute is used to override the 
  6518.         default control area (the coverpage window). 
  6519.  
  6520.      Note:  Be careful when using heading tags to define a control area for 
  6521.             split windows. A control area cannot be defined in the secondary 
  6522.             window heading tag of a split window. You must define the control 
  6523.             area (the coverpage window) in the primary window heading tag. 
  6524.  
  6525.  
  6526. ΓòÉΓòÉΓòÉ 9.22. :hdref. (Heading Reference) ΓòÉΓòÉΓòÉ
  6527.  
  6528. Purpose 
  6529.  
  6530. Places a hypertext link to a heading.  The text displayed within the link is 
  6531. the word "Reference". 
  6532.  
  6533. Syntax 
  6534.  
  6535. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  6536. ΓöéTag            ΓöéElement        ΓöéAttributes     ΓöéEnd            Γöé
  6537. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6538. Γöé:hdref.        ΓöéHeading        Γöéres=           Γöé               Γöé
  6539. Γöé               ΓöéReference      Γöé               Γöé               Γöé
  6540. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6541. Γöé               Γöé               Γöérefid=         Γöé               Γöé
  6542. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  6543.  
  6544. Attributes 
  6545.  
  6546.      res= 
  6547.         Resource identification number of the heading to link to. 
  6548.  
  6549.  
  6550.      refid= 
  6551.         ID of the heading to link to. 
  6552.  
  6553.  
  6554. ΓòÉΓòÉΓòÉ 9.23. :hide.  (Hide) ΓòÉΓòÉΓòÉ
  6555.  
  6556. Purpose 
  6557.  
  6558. Controls display of IPF text and graphics to meet conditions set by the 
  6559. IPF_KEYS= environment variable. 
  6560.  
  6561. Syntax 
  6562.  
  6563. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  6564. ΓöéTag            ΓöéElement        ΓöéAttributes     ΓöéEnd            Γöé
  6565. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6566. Γöé:hide.         ΓöéHide           Γöékey=           Γöé:ehide.        Γöé
  6567. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  6568.  
  6569. Attributes 
  6570.  
  6571.      key=' ' 
  6572.         Defines the key that enables a user to view hidden information. You can 
  6573.         specify one or more key names.  Enclose each key name within 
  6574.         apostrophes.  When specifying more than one key name, insert a plus (+) 
  6575.         sign after each name. 
  6576.  
  6577.         Text entered between the :hide. and :ehide. tags is only displayed when 
  6578.         the key=' ' attribute matches the entry specified by the user.  Use the 
  6579.         OS/2 environment variable SET IPF_KEYS= to specify the key name 
  6580.         identified for the hidden information.                          set in 
  6581.  
  6582.         If this attribute is not specified, the information identified by the 
  6583.         hide tag is displayed. 
  6584.  
  6585.  
  6586.      Description 
  6587.  
  6588.      :hide. enables you to determine what text and graphics will be displayed 
  6589.      within a window. This function is useful when you want to tailor the 
  6590.      information you give to users; for example, if you want to display levels 
  6591.      of information on the basis of a user's system configuration, you assign 
  6592.      each level a value with the key= attribute. When a topic containing hide 
  6593.      tags is selected for viewing, IPF will look for an environment variable 
  6594.      called IPF_KEYS= to determine what level of information to show the user. 
  6595.      If a match is found, the information within the hide tags is displayed; 
  6596.      otherwise, the information is hidden from view. 
  6597.  
  6598.      The hide tag affects the display of compiled information. You can hide 
  6599.      lines of text within the window, a word or a phrase within a line, or you 
  6600.      can hide an instruction to display a bit map, as in the following example. 
  6601.  
  6602.           :hide key='level1'.
  6603.           :artwork name='mybitmap.bmp'.
  6604.           :ehide.
  6605.  
  6606.      If the user's environment does not contain the key to display the hidden 
  6607.      information, IPF wraps the text from the last character or formatting 
  6608.      instruction on the line preceding :hide. to the line following :ehide.. 
  6609.  
  6610.      In some situations, the same user may need to view more than one level of 
  6611.      hidden information.  This can be accomplished by setting the IPF_KEYS= to 
  6612.      concatenated values; for example: 
  6613.  
  6614.           SET IPF_KEYS=LEVEL1+LEVEL2
  6615.  
  6616.      Take care that a window view does not contain an orphan tag. For example, 
  6617.      you do not want to hide the information following a list item, unless you 
  6618.      have alternate information to display, based on the setting of a key. In 
  6619.      the case of an ordered list, which generates sequential numbers, you would 
  6620.      not include a list item in the hidden information, unless it is the last 
  6621.      item in the list. 
  6622.  
  6623.      Conditions 
  6624.  
  6625.        o  You cannot nest one set of hide tags within another. 
  6626.        o  You cannot include a heading tag that has a res= attribute within a 
  6627.           set of hide tags. 
  6628.        o  You cannot set IPF_KEYS= on a session basis. 
  6629.  
  6630.      Example 
  6631.  
  6632.      Suppose the following source has been compiled as part of a help library 
  6633.      file: 
  6634.  
  6635.           :h1 res=001.Installation Procedure
  6636.           :ol.
  6637.           :li.
  6638.           :hide key='usera'.
  6639.           Instruction for User A.
  6640.           :ehide.
  6641.           :hide key='userb'.
  6642.           Instruction for User B.
  6643.           :ehide.
  6644.           :li.
  6645.           Shut down the system from the Desktop.
  6646.           :li.
  6647.           Press Ctl+Alt+Del to restart the system.
  6648.           :eol.
  6649.  
  6650.      If the user's environment includes the setting, IPF_KEYS=USERA, the 
  6651.      following is displayed: 
  6652.  
  6653.        1. Instruction for User A. 
  6654.  
  6655.        2. Shut down the system from the desk top. 
  6656.  
  6657.        3. Press Ctl+Alt+Del to restart the system. 
  6658.  
  6659.  
  6660. ΓòÉΓòÉΓòÉ 9.24. :hp1. through :hp9.  (Highlighted Phrase) ΓòÉΓòÉΓòÉ
  6661.  
  6662. Purpose 
  6663.  
  6664. Emphasize text by changing the font style or foreground color. 
  6665.  
  6666. Syntax 
  6667.  
  6668. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  6669. ΓöéTag            ΓöéElement        ΓöéAttributes     ΓöéEnd            Γöé
  6670. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6671. Γöé:hpn.          ΓöéHighlighting   ΓöéNone           Γöé:ehpn.         Γöé
  6672. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  6673.  
  6674. Description 
  6675.  
  6676. Highlighted-phrase tags are useful for emphasizing words and phrases within 
  6677. text. 
  6678.  
  6679. Font styles that are displayed for highlighted phrases correspond to the 
  6680. typeface currently being used by IPF.  To change from the default system 
  6681. typeface to other typefaces, use :font. When you use either the example tag 
  6682. (:xmp.), the character-graphics tag (:cgraphic.) or the table tag (:table.), 
  6683. the system monospace typeface is displayed. 
  6684.  
  6685. Input 
  6686.  
  6687. :sl compact.
  6688. :li.:hp1.Highlighted phrase 1 looks like this.:ehp1.
  6689. :li.:hp2.Highlighted phrase 2 looks like this.:ehp2.
  6690. :li.:hp3.Highlighted phrase 3 looks like this.:ehp3.
  6691. :li.:hp4.Highlighted phrase 4 looks like BLUE.:ehp4.
  6692. :li.:hp5.Highlighted phrase 5 looks like this.:ehp5.
  6693. :li.:hp6.Highlighted phrase 6 looks like this.:ehp6.
  6694. :li.:hp7.Highlighted phrase 7 looks like this.:ehp7.
  6695. :li.:hp8.Highlighted phrase 8 looks like RED.:ehp8.
  6696. :li.:hp9.Highlighted phrase 9 looks like PINK.:ehp9.
  6697. :esl.
  6698.  
  6699. System Default Font Output 
  6700.  
  6701.           Highlighted phrase 1 looks like this. 
  6702.           Highlighted phrase 2 looks like this. 
  6703.           Highlighted phrase 3 looks like this. 
  6704.           Highlighted phrase 4 looks like this. 
  6705.           Highlighted phrase 5 looks like this. 
  6706.           Highlighted phrase 6 looks like this. 
  6707.           Highlighted phrase 7 looks like this. 
  6708.           Highlighted phrase 8 looks like this. 
  6709.           Highlighted phrase 9 looks like this. 
  6710.  
  6711.      Conditions 
  6712.  
  6713.      You cannot nest highlighted-phrase tags. 
  6714.  
  6715.  
  6716. ΓòÉΓòÉΓòÉ 9.25. :i1. and :i2.  (Index) ΓòÉΓòÉΓòÉ
  6717.  
  6718. Purpose 
  6719.  
  6720. Place topics into the index. 
  6721.  
  6722. Syntax 
  6723.  
  6724. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  6725. ΓöéTag            ΓöéElement        ΓöéAttributes     ΓöéEnd            Γöé
  6726. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6727. Γöé:i1.           ΓöéPrimary entry  Γöéid=            Γöé               Γöé
  6728. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6729. Γöé               Γöé               Γöéglobal         Γöé               Γöé
  6730. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6731. Γöé               Γöé               Γöéroots=' '      Γöé               Γöé
  6732. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6733. Γöé               Γöé               Γöésortkey=' '    Γöé               Γöé
  6734. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6735. Γöé:i2.           ΓöéSecondary entryΓöérefid=         Γöé               Γöé
  6736. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6737. Γöé               Γöé               Γöéglobal         Γöé               Γöé
  6738. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6739. Γöé               Γöé               Γöésortkey=' '    Γöé               Γöé
  6740. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  6741.  
  6742. Attributes 
  6743.  
  6744.      id= 
  6745.         Provides a cross-reference identifier for the secondary index tag 
  6746.         (:i2.). This attribute is optional and only valid when used with the 
  6747.         primary index tag (:i1.). 
  6748.  
  6749.      global 
  6750.         Specifies that the index entry can appear in any MIndex Object 
  6751.         depending on where you install the file and how each MIndex Object is 
  6752.         set up.  Entries also appear in the component index. This attribute is 
  6753.         only used in Help windows.  Online document cannot use this attribute. 
  6754.  
  6755.      roots='root words' 
  6756.         Specifies a list of root words that act as index entries to specified 
  6757.         topics. These root words are associated with words defined with the 
  6758.         index-synonym tag (:isyn.). Root words can contain alphabetic and 
  6759.         numeric characters, which can be entered in uppercase or lowercase. 
  6760.         When entering a string of words, insert a blank space between each 
  6761.         word, and enclose the string within apostrophes. 
  6762.  
  6763.         Root words do not appear in the index, so are not viewed by the user, 
  6764.         and need not be translated. They are used to create a link between the 
  6765.         primary index tag and the index-synonym tag. To enable the user to 
  6766.         search for an index entry, use the index-synonym tag to map the root 
  6767.         words associated with the entry to synonyms. 
  6768.  
  6769.      sortkey='sortkey-text'.index-text 
  6770.         Specifies a character string that is used for sorting the entry in the 
  6771.         index, and another character string that is displayed for the index 
  6772.         entry. 
  6773.  
  6774.         The sortkey-text character string determines where this entry is placed 
  6775.         in the index. The index-text character string is displayed for the 
  6776.         index entry. 
  6777.  
  6778.      refid= 
  6779.         Provides a reference to the text associated with the primary index tag. 
  6780.  
  6781.      Description 
  6782.  
  6783.      You use the primary and secondary index tags to provide index entries to 
  6784.      the information. The attributes associated with each index tag enable you 
  6785.      to define related information.  Index entries can be used throughout the 
  6786.      file, but cannot be placed within a footnote. 
  6787.  
  6788.      The text of the index entry must be on the same line as the tag, and 
  6789.      cannot contain other tags.  The entry for each primary index entry within 
  6790.      the window must be unique.  That is, you cannot provide duplicate index 
  6791.      entries within the same window. Secondary index entries must refer to an 
  6792.      identifier specified for a primary index entry. 
  6793.  
  6794.      When the user selects Help index from the Help menu, an Index window is 
  6795.      displayed for the help interface. When the user selects Index from the 
  6796.      Options menu, an Index window is displayed for the online information 
  6797.      interface. If the user enters a synonym that matches a root word, the 
  6798.      index topics listed for the root word are displayed. When the user selects 
  6799.      the Master Help Index object from the Desktop, it opens to display an 
  6800.      alphabetic list of entries within a spiral bound notebook.  For more 
  6801.      information, see Master Help Index and Glossary 
  6802.  
  6803.      Conditions 
  6804.  
  6805.        o  Index entries cannot appear in a footnote. 
  6806.        o  When referencing the :i1. tag, use the global attribute on both the 
  6807.           :i1. and :i2. tag. 
  6808.  
  6809.      Example 1 
  6810.  
  6811.      This example shows how to tag your file to include primary and secondary 
  6812.      index entries. 
  6813.  
  6814.           :i1 id=del.delete
  6815.           :i2 refid=del.directories
  6816.           :i2 refid=del.files
  6817.  
  6818.      Output 
  6819.  
  6820.      The index will include the following entry: 
  6821.  
  6822.            delete
  6823.              directories
  6824.              files
  6825.  
  6826.      Example 2 
  6827.  
  6828.      This example shows a file with the index-synonym tag (:isyn.) and the 
  6829.      roots= attribute. 
  6830.  
  6831.           :h1 id=copy03.Help for Copying
  6832.           :isyn root=copy.copy copying duplicate duplicating
  6833.           :isyn root=book.book manual draft manuscript
  6834.           :isyn root=folder.folder folders document documents
  6835.           :i1 roots='copy folder'.Copying a document
  6836.           :i1 roots='book folder'.Test procedures
  6837.           :p.When copying a file from the current directory to a new
  6838.           directory, specify the following:
  6839.           :ul.
  6840.           :li.The file name
  6841.           :li.The target directory
  6842.           :li.The new file name and extension.
  6843.           :eul.
  6844.  
  6845.      Output 
  6846.  
  6847.      The index-synonym tag creates the following synonym table: 
  6848.  
  6849.      Root word     Synonym words 
  6850.  
  6851.      copy          copy copying duplicate duplicating 
  6852.  
  6853.      book          book manual draft manuscript 
  6854.  
  6855.      folder        folder folders document documents 
  6856.  
  6857.      The roots= attribute points to the root words, "copy" and "folder," and 
  6858.      the list of associated synonyms.  For example, if the user searches for 
  6859.      "copy" or "folder," the "Copying a document" entry appears because "copy" 
  6860.      and "folder," identified by the index roots= attribute, match the entries 
  6861.      listed for the index synonym root= attribute. 
  6862.  
  6863.      A search for the synonym "duplicate" lists "Copying a document" as one of 
  6864.      the index choices. A search for the synonym "manual" lists "Test 
  6865.      procedures" as an index choice, and a search for "document" lists both 
  6866.      "Copying a document" and "Test procedures." 
  6867.  
  6868.      Example 3 
  6869.  
  6870.      This example shows how to specify a sort key to change the location of the 
  6871.      entry in the index. 
  6872.  
  6873.           :i1 sortkey='point sizes'.changing fonts
  6874.           :i1.program header
  6875.           :i1.parameter list
  6876.           :i1.preface
  6877.  
  6878.      Output 
  6879.  
  6880.      The index will include the entry "changing fonts" at the location where 
  6881.      the term "point sizes" would appear in the sorting sequence of the index, 
  6882.      as follows: 
  6883.  
  6884.           parameter list
  6885.           changing fonts
  6886.           preface
  6887.           program header
  6888.  
  6889.      Example 4 
  6890.  
  6891.      This example is for a simple Master Help Index object entry for conceptual 
  6892.      information about batch files. 
  6893.  
  6894.           :i1 global.batch files, creating 
  6895.      When referring to an :i1. tag, use the global attribute in both the :i1. 
  6896.      and :i2. tags.  For example: 
  6897.  
  6898.                     :i1 id=copy global.copying
  6899.  
  6900.                     :i2 refid=copy global.help topics
  6901.  
  6902.                     :i2 refid=copy global.document topics
  6903.  
  6904.      When the IPF compiler encounters global attributes, it creates an 
  6905.      alphabetic list, which can then be accessed by selecting Master Help Index 
  6906.      object from the Desktop. 
  6907.  
  6908.  
  6909. ΓòÉΓòÉΓòÉ 9.26. :icmd.  (Index Command) ΓòÉΓòÉΓòÉ
  6910.  
  6911. Purpose 
  6912.  
  6913. Identifies the help window that describes a command. 
  6914.  
  6915. Syntax 
  6916.  
  6917. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  6918. ΓöéTag            ΓöéElement        ΓöéAttributes     ΓöéEnd            Γöé
  6919. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6920. Γöé:icmd.         ΓöéIndex command  Γöéexternal       Γöé               Γöé
  6921. Γöé               Γöé               Γöécommand string Γöé               Γöé
  6922. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  6923.  
  6924. Attributes 
  6925.  
  6926.      external-command-string 
  6927.         Specifies the command for which help is being defined. The text can 
  6928.         contain no other tags. 
  6929.  
  6930.      Description 
  6931.  
  6932.      The help information for a command is assumed to be in the help window in 
  6933.      which the index-command tag (:icmd.) is defined.  If the help window 
  6934.      provides help for more than one command, an index-command tag should be 
  6935.      defined within the heading tag for each command. 
  6936.  
  6937.      The same external command string cannot be specified in more than one 
  6938.      index-command tag of an index file; that is, only one help window can be 
  6939.      designated as describing a command. 
  6940.  
  6941.      If the compiler finds the same external command string more than once 
  6942.      (either from the same or different help windows), the duplicate 
  6943.      occurrences are discarded, and a warning message is issued. 
  6944.  
  6945.      Note:  The association with entry field and command names is a programming 
  6946.             task.  In addition, the application developer must define the field 
  6947.             with which command windows are to be associated as a command entry 
  6948.             field.  For more information about programming a command entry 
  6949.             field, see Command Entry Field. 
  6950.  
  6951.      Conditions 
  6952.  
  6953.      :icmd. must follow a heading tag or another index tag. 
  6954.  
  6955.      Example 
  6956.  
  6957.           :h1 id=xhlp.Help for Copying
  6958.           :icmd.Copying
  6959.           :h1 res=129.Deleting Files
  6960.           :icmd.Delete
  6961.  
  6962.      Output 
  6963.  
  6964.      At execution time, the index entries enable the compiler to process 
  6965.      command helps, create a list of commands for which help is available, and 
  6966.      display the help window defined for any of those commands. 
  6967.  
  6968.  
  6969. ΓòÉΓòÉΓòÉ 9.27. :isyn.  (Index Synonym) ΓòÉΓòÉΓòÉ
  6970.  
  6971. Purpose 
  6972.  
  6973. Identifies synonyms and word variations for the help keywords. 
  6974.  
  6975. Syntax 
  6976.  
  6977. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  6978. ΓöéTag            ΓöéElement        ΓöéAttributes     ΓöéEnd            Γöé
  6979. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6980. Γöé:isyn.         ΓöéIndex synonyms Γöéroot=          Γöé               Γöé
  6981. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  6982.  
  6983. Attributes 
  6984.  
  6985.      root= 
  6986.         Links synonyms and variations of words specified in a primary index 
  6987.         tag. 
  6988.  
  6989.         To establish a link, specify the same word as specified in the roots= 
  6990.         attribute of the primary index tag.  Then add a period, repeat the root 
  6991.         word, and add the list of synonyms and variations, separated by blanks. 
  6992.         For example, assume that the value specified for the roots= attribute 
  6993.         of the primary index tag is "copy."  The entry for the index-synonym 
  6994.         tag could be: 
  6995.  
  6996.                 :isyn root=copy.copy copying duplicate duplicating
  6997.  
  6998.         The words entered in the synonym list enable the user to search for 
  6999.         terms that may not be in the Index list, and still receive the 
  7000.         appropriate help. Lowercase and uppercase characters are treated the 
  7001.         same. 
  7002.  
  7003.      Description 
  7004.  
  7005.      :isyn. begins a list of synonyms or variations of a word specified by a 
  7006.      primary index tag. The compiler uses this list to build a table that 
  7007.      serves as a link to the primary index tags. Synonyms determine the topic 
  7008.      entries displayed when the user enters words for a search of the index. 
  7009.      The compiler matches the entered words with words in the table and links 
  7010.      to the topics to be displayed. 
  7011.  
  7012.      The index-synonym tag can be placed within any window that contains 
  7013.      related index entries identified by the index tag. The synonyms defined in 
  7014.      a window can relate to many topics, and thus to many windows. 
  7015.  
  7016.      Synonyms defined with this tag do not appear in the index. 
  7017.  
  7018.      Conditions 
  7019.  
  7020.      A root word can contain only alphabetic and numeric characters. 
  7021.  
  7022.      Example 
  7023.  
  7024.           :h1 id=copy03.Help for Copying
  7025.           :isyn root=copy.copy copying duplicate duplicating
  7026.           :isyn root=folder.folder folders document documents
  7027.           :i1 roots='copy folder'.Copying a document
  7028.           :p.When copying a file from the current directory to a new
  7029.           directory, specify the following:
  7030.           :ul.
  7031.           :li.The file name
  7032.           :li.The target directory
  7033.           :li.The new file name and extension
  7034.           :eul.
  7035.  
  7036.      Output 
  7037.  
  7038.      The index-synonym tag creates the following synonym table: 
  7039.  
  7040.      Root word      Synonym words 
  7041.  
  7042.      copy           copy copying duplicate duplicating 
  7043.  
  7044.      folder         folder folders document documents 
  7045.  
  7046.      The roots= attribute points to the root words, "copy" and "folder," and 
  7047.      the list of associated synonyms.  If the user searches for "copy" or 
  7048.      "folder," the words will be displayed because of the matches between the 
  7049.      roots= attribute of the primary index tag and the root= attribute of the 
  7050.      index-synonym tag.  However, a search for the synonym "duplicate" returns 
  7051.      "Copying a document" as an index choice. 
  7052.  
  7053.  
  7054. ΓòÉΓòÉΓòÉ 9.28. :li.  (List Item) ΓòÉΓòÉΓòÉ
  7055.  
  7056. Purpose 
  7057.  
  7058. Identifies an item within a list. 
  7059.  
  7060. Syntax 
  7061.  
  7062. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  7063. ΓöéTag            ΓöéElement        ΓöéAttributes     ΓöéEnd            Γöé
  7064. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7065. Γöé:li.           ΓöéList item      Γöé               Γöé               Γöé
  7066. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  7067.  
  7068. Attributes 
  7069.  
  7070. None 
  7071.  
  7072. Description 
  7073.  
  7074. The format of the list items depends on the type of list:  ordered, unordered, 
  7075. or simple.  For example, if the list is an ordered list, a number precedes each 
  7076. list item.  If the list is an unordered list, a bullet precedes each item. See 
  7077. :ol.  (Ordered List), :sl.  (Simple List), and :ul.  (Unordered List) for more 
  7078. information. 
  7079.  
  7080. Conditions 
  7081.  
  7082. None 
  7083.  
  7084. Example 
  7085.  
  7086. :p.To remove a diskette&colon.
  7087. :ol.
  7088. :li.Open the drive door.
  7089. :li.Remove the diskette.
  7090. :li.Put the diskette in a safe place.
  7091. :eol.
  7092.  
  7093. Output 
  7094.  
  7095. To remove a diskette: 
  7096.  
  7097.        1. Open the drive door. 
  7098.  
  7099.        2. Remove the diskette. 
  7100.  
  7101.        3. Put the diskette in a safe place. 
  7102.  
  7103.  
  7104. ΓòÉΓòÉΓòÉ 9.29. :lines.  (Lines) ΓòÉΓòÉΓòÉ
  7105.  
  7106. Purpose 
  7107.  
  7108. Turns formatting off. 
  7109.  
  7110. Syntax 
  7111.  
  7112. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  7113. ΓöéTag            ΓöéElement        ΓöéAttributes     ΓöéEnd            Γöé
  7114. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7115. Γöé:lines.        ΓöéLines          Γöéalign=         Γöé:elines.       Γöé
  7116. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  7117.  
  7118. Attributes 
  7119.  
  7120.      align=leftΓöérightΓöécenter 
  7121.         Places the entered lines to the left in the window, to the right, or in 
  7122.         the center. 
  7123.  
  7124.      Description 
  7125.  
  7126.      :lines. specifies that the following text is to be formatted exactly as it 
  7127.      is entered. The attributes enable you to align the text within the window. 
  7128.      Text that is too long for the window is clipped. 
  7129.  
  7130.      Proportional fonts are used for formatting, so the text may not be 
  7131.      displayed exactly as entered. 
  7132.  
  7133.      Conditions 
  7134.  
  7135.      None 
  7136.  
  7137.      Example 1 
  7138.  
  7139.      This example aligns text to the left. 
  7140.  
  7141.           :lines align=left.
  7142.           The warehouse contained:
  7143.             12  desks
  7144.             28  chairs
  7145.             15  lamps
  7146.             39  typewriters
  7147.             11  pictures
  7148.           :elines.
  7149.  
  7150.      Example 2 
  7151.  
  7152.      This example aligns text to the right. 
  7153.  
  7154.           :lines align=right.
  7155.           The warehouse contained:
  7156.             12  desks
  7157.             28  chairs
  7158.             15  lamps
  7159.             39  typewriters
  7160.             11  pictures
  7161.           :elines.
  7162.  
  7163.      Output 
  7164.  
  7165.      The following output is provided. 
  7166.  
  7167.      Example 1 
  7168.  
  7169.           The warehouse contained:
  7170.            12  desks
  7171.            28  chairs
  7172.            15  lamps
  7173.            39  typewriters
  7174.            11  pictures
  7175.  
  7176.      Example 2 
  7177.  
  7178.                                                         The warehouse contained:
  7179.                                                                        12  desks
  7180.                                                                       28  chairs
  7181.                                                                        15  lamps
  7182.                                                                  39  typewriters
  7183.                                                                     11  pictures
  7184.  
  7185.  
  7186. ΓòÉΓòÉΓòÉ 9.30. :link.  (Link) ΓòÉΓòÉΓòÉ
  7187.  
  7188. Purpose 
  7189.  
  7190. Activates a link to additional information. 
  7191.  
  7192. Syntax 
  7193.  
  7194. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  7195. ΓöéTag            ΓöéElements       ΓöéAttributes     ΓöéEnd            Γöé
  7196. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7197. Γöé:link.         ΓöéLink to more   Γöéreftype=       Γöé:elink.        Γöé
  7198. Γöé               Γöéinformation    Γöéres=           Γöé               Γöé
  7199. Γöé               Γöé               Γöérefid=         Γöé               Γöé
  7200. Γöé               Γöé               Γöédatabase=' '   Γöé               Γöé
  7201. Γöé               Γöé               Γöéobject=' '     Γöé               Γöé
  7202. Γöé               Γöé               Γöédata=' '       Γöé               Γöé
  7203. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7204. Γöé               ΓöéAutomatic      Γöéauto           Γöé               Γöé
  7205. Γöé               Γöélinking        Γöéviewport       Γöé               Γöé
  7206. Γöé               Γöé               Γöédependent      Γöé               Γöé
  7207. Γöé               Γöé               Γöésplit          Γöé               Γöé
  7208. Γöé               Γöé               Γöéchild          Γöé               Γöé
  7209. Γöé               Γöé               Γöégroup=         Γöé               Γöé
  7210. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7211. Γöé               ΓöéDefine window  Γöévpx=           Γöé               Γöé
  7212. Γöé               Γöéposition and   Γöévpy=           Γöé               Γöé
  7213. Γöé               Γöésize           Γöévpcx=          Γöé               Γöé
  7214. Γöé               Γöé               Γöévpcy=          Γöé               Γöé
  7215. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7216. Γöé               ΓöéDefine window  Γöétitlebar=      Γöé               Γöé
  7217. Γöé               Γöécontrols       Γöéscroll=        Γöé               Γöé
  7218. Γöé               Γöé               Γöérules=         Γöé               Γöé
  7219. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  7220.  
  7221. Attributes 
  7222.  
  7223.      reftype= 
  7224.         Defines the type of link.  Possible values are hd, fn, launch, and 
  7225.         inform. 
  7226.  
  7227.           reftype=hd 
  7228.              Links to a heading.  The heading definition (or an overriding 
  7229.              definition in the link) causes its information to be displayed in 
  7230.              the current window or another window. The integer value of refid= 
  7231.              identifies the ID of the heading. If the heading is in an external 
  7232.              IPF database, its file name is specified with the database= 
  7233.              attribute. 
  7234.  
  7235.              In the following example, selection of the hypertext link causes 
  7236.              the external database, EDITOR.HLP, to be loaded, and the heading 
  7237.              with the ID of 001 to be displayed. 
  7238.  
  7239.                           :link reftype=hd refid=001.
  7240.                                 database='editor.hlp'.
  7241.                           Editing Functions
  7242.                           :elink.
  7243.  
  7244.              The heading definition in the external database must contain the 
  7245.              global attribute.  If the link to the file cannot be resolved, the 
  7246.              hypertext phrase in the link will not be highlighted. 
  7247.  
  7248.           reftype=fn 
  7249.              Links to a footnote. Its contents are displayed in a pop-up window 
  7250.              in the current window.  The refid= attribute specifies the ID of 
  7251.              the footnote. 
  7252.  
  7253.              Restriction: A split window cannot contain a link to a footnote. 
  7254.  
  7255.           reftype=launch 
  7256.              Starts a Presentation Manager program.  The file name of the 
  7257.              program is specified with the object= attribute.  Any parameters 
  7258.              to the program are specified with data=.  In the following 
  7259.              example, the hypertext link starts the System Editor and opens the 
  7260.              file, MYFILE, for editing. 
  7261.  
  7262.                           :link reftype=launch
  7263.                                 object='c:\os2\e.exe'
  7264.                                 data='myfile'.
  7265.                           Start Editor
  7266.                           :elink.
  7267.  
  7268.              Restriction: You can only use alpha-numeric characters in the 
  7269.              data= field when using the reftype=launch attribute. 
  7270.  
  7271.           reftype=inform 
  7272.              Causes a message to be sent to the application. The res= attribute 
  7273.              is required and is an integer value that directs the application 
  7274.              to perform some application-specific function. When using this 
  7275.              attribute, do not use :elink..  For example: 
  7276.  
  7277.                           :link reftype=inform res=1000 auto.
  7278.  
  7279.           auto
  7280.           viewport
  7281.           dependent
  7282.           split
  7283.           child
  7284.           group=
  7285.         With the auto attribute, you can define any of the link types described 
  7286.         above, with the exception of a footnote link, as an automatic link. 
  7287.  
  7288.         The automatic-link definition follows a heading definition and is 
  7289.         activated as soon as a reference to the heading definition is made. 
  7290.         The reference can be made by the user selecting an IPF window entry 
  7291.         (for example, the Contents window), or by a hypertext or hypergraphic 
  7292.         link. 
  7293.  
  7294.         Restriction: Linking automatically to an external database is not 
  7295.         possible. 
  7296.  
  7297.         Following are the automatic-link actions that can be specified, and the 
  7298.         attributes used: 
  7299.  
  7300.        o  Open a secondary window when the heading that contains the link is 
  7301.           referred to: 
  7302.  
  7303.                     auto reftype=hd viewport dependent res=
  7304.  
  7305.           Note the inclusion of the dependent attribute. Usually, the 
  7306.           information in an automatic window is dependent on the information in 
  7307.           its secondary window.  Specifying dependent causes an automatic 
  7308.           window to close when the user closes the window of the secondary that 
  7309.           contains the automatic link. 
  7310.  
  7311.        o  Open secondary windows when the heading of the primary window that 
  7312.           contains the links is referred to: 
  7313.  
  7314.                     auto reftype=hd split res=
  7315.  
  7316.           Restriction: The primary heading cannot contain text or graphics; 
  7317.           only links to its secondary headings.  For more information, see 
  7318.           Split Windows. 
  7319.  
  7320.        o  Start a Presentation Manager program when the heading that contains 
  7321.           the link is referred to: 
  7322.  
  7323.                     auto reftype=launch object= data=
  7324.  
  7325.        o  Send the application a message when the heading that contains the 
  7326.           link is referred to: 
  7327.  
  7328.                     auto reftype=inform res=
  7329.  
  7330.         To display more than one window on the screen, you must assign a unique 
  7331.         group number to each window with the group= attribute. This attribute 
  7332.         can be specified with :link. or the heading tag.  For more information 
  7333.         about group numbers, see Displaying Multiple Windows. 
  7334.  
  7335.         The child attribute opens the panel being linked to as a child of the 
  7336.         panel in which th elink is located.  This means: 
  7337.  
  7338.        o  The child panel is clipped to fit inside the parent paanel and cannot 
  7339.           be moved outside the parent panel. 
  7340.  
  7341.        o  The child panel is always "on top" of the parent panel and the parent 
  7342.           cannot be moved on top of the child (the parent can still receive 
  7343.           mouse clicks and keystrokes). 
  7344.  
  7345.        o  The child panel is closed when the parent panel is closed. 
  7346.  
  7347.        o  The child panel is minimized when the parent panel is minimized and 
  7348.           restored when the parent is restored. 
  7349.  
  7350.        o  When the child panel is minimized by itself, its minimized icon is 
  7351.           displayed inside the parent panel instead of on the coverpage. 
  7352.  
  7353.         The child attribute opens the help panel as a child. 
  7354.  
  7355.           vpx=
  7356.           vpy=
  7357.           vpcx=
  7358.           vpcy=
  7359.         Define the size and position of the window.  Any values specified by 
  7360.         these attributes override size and position values specified by the 
  7361.         attributes in a heading tag. (See :h1. through :h6.  (Headings) for 
  7362.         details about these attributes.) 
  7363.  
  7364.         Restriction: These attributes are not valid for positioning or sizing a 
  7365.         footnote (:fn) window. 
  7366.  
  7367.           titlebar=yes | sysmenu | minmax | both | none
  7368.           scroll=horizontal | vertical | both | none
  7369.           rules=border | sizeborder | none
  7370.         Define window controls.  Any values specified by these attributes 
  7371.         override window-control values specified by the attributes in a heading 
  7372.         tag. (See :h1. through :h6.  (Headings) for details about these 
  7373.         attributes.) 
  7374.  
  7375.      When titlebar=yes is specified, the window displays a titlebar without the 
  7376.      system menu symbol, the hide button, and the maximize button. 
  7377.  
  7378.  
  7379. ΓòÉΓòÉΓòÉ 9.31. :lm.  (Left Margin) ΓòÉΓòÉΓòÉ
  7380.  
  7381. Purpose 
  7382.  
  7383. Sets the left margin of the text. 
  7384.  
  7385. Syntax 
  7386.  
  7387. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  7388. ΓöéTag            ΓöéElement        ΓöéAttributes     ΓöéEnd            Γöé
  7389. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7390. Γöé:lm.           ΓöéLeft margin    Γöémargin=        Γöé               Γöé
  7391. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  7392.  
  7393. Attributes 
  7394.  
  7395.      margin= 
  7396.         Specifies where the left margin of the text is to begin. To set the 
  7397.         margin for the current line, specify a number greater than the position 
  7398.         of the cursor. For example, to set the left margin to 15, begin the 
  7399.         left margin tag before space 15. Otherwise, the margin becomes 
  7400.         effective on the next line. 
  7401.  
  7402.      Note:  When counting character spaces, you are actually counting average 
  7403.      character widths. 
  7404.  
  7405.      Description 
  7406.  
  7407.      Use the left-margin tag and the right-margin tag (:rm.) to specify the 
  7408.      boundaries of the text in the window. 
  7409.  
  7410.      When the text window is sized, the text area adjusts from the right to fit 
  7411.      within the specified margin boundaries; that is, the right margin adjusts 
  7412.      to the new window size. The left margin remains constant. If the window is 
  7413.      sized smaller than the specified margins, the margins remain the same, and 
  7414.      the text area is reduced to one character space. 
  7415.  
  7416.      You can place multiple margin tags in your file. The margins specified 
  7417.      remain effective until they are reset. If no margin value is specified, 
  7418.      the default is 1. 
  7419.  
  7420.      Conditions 
  7421.  
  7422.      None 
  7423.  
  7424.      Example 
  7425.  
  7426.      This example shows the use of both margin tags. 
  7427.  
  7428.           :p.
  7429.           :rm margin=10.
  7430.           :lm margin=20.This text begins 20 spaces to the
  7431.           right of the left window border and ends 10 spaces to the
  7432.           left of the right window border.
  7433.           All text is aligned as specified
  7434.           by the margin values. :lm margin=5.Here the left margin
  7435.           is changed to 5.  Because this margin tag begins
  7436.           more than 5 spaces on the line, the margin specified
  7437.           becomes effective on the following line, and the text
  7438.           begins 5 spaces from the left window border.
  7439.           The right margin remains unchanged.
  7440.  
  7441.      Output 
  7442.                     This text begins 20 spaces to the right of the left window 
  7443.                     border and ends 10 spaces to the left of the right window 
  7444.                     border. All text is aligned as specified by the margin 
  7445.                     values. Here the left margin is changed to 5.  Because this 
  7446.      margin tag begins more than 5 spaces on the line, the margin specified 
  7447.      becomes effective on the following line, and the text begins 5 spaces from 
  7448.      the left window border. The right margin remains unchanged. 
  7449.  
  7450.  
  7451. ΓòÉΓòÉΓòÉ 9.32. :lp.  (List Part) ΓòÉΓòÉΓòÉ
  7452.  
  7453. Purpose 
  7454.  
  7455. Identifies an explanation within a list. 
  7456.  
  7457. Syntax 
  7458.  
  7459. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  7460. ΓöéTag            ΓöéElement        ΓöéAttributes     ΓöéEnd            Γöé
  7461. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7462. Γöé:lp.           ΓöéList part      Γöé               Γöé               Γöé
  7463. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  7464.  
  7465. Attributes 
  7466.  
  7467. None 
  7468.  
  7469. Description 
  7470.  
  7471. :lp. can be entered anywhere within the list.  The text following the tag 
  7472. starts at the left margin of the current list item.  It is not numbered or 
  7473. lettered.  Using the list-part tag does not interrupt the sequence of the list. 
  7474.  
  7475. Conditions 
  7476.  
  7477. None 
  7478.  
  7479. Example 
  7480.  
  7481. :p.To remove a diskette:
  7482. :ol.
  7483. :li.Open the drive door.
  7484. :lp.Before removing the diskette, make sure all drive activity
  7485. has stopped.
  7486. :li.Remove the diskette.
  7487. :li.Put the diskette in a safe place.
  7488. :eol.
  7489.  
  7490. Output 
  7491.  
  7492. To remove a diskette: 
  7493.  
  7494.        1. Open the drive door. 
  7495.  
  7496.      Before removing the diskette, make sure all drive activity has stopped. 
  7497.  
  7498.        2. Remove the diskette. 
  7499.  
  7500.        3. Put the diskette in a safe place. 
  7501.  
  7502.  
  7503. ΓòÉΓòÉΓòÉ 9.33. :note.  (Note) ΓòÉΓòÉΓòÉ
  7504.  
  7505. Purpose 
  7506.  
  7507. Starts a note. 
  7508.  
  7509. Syntax 
  7510.  
  7511. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  7512. ΓöéTag            ΓöéElement        ΓöéAttributes     ΓöéEnd            Γöé
  7513. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7514. Γöé:note.         ΓöéNote           Γöétext=' '       Γöé               Γöé
  7515. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  7516.  
  7517. Attributes 
  7518.  
  7519.      text=' ' 
  7520.         Enables you to change the name of the note. 
  7521.  
  7522.      Description 
  7523.  
  7524.      :note. identifies a single-paragraph note. When the tag is encountered, a 
  7525.      blank line is inserted, and the note starts at the left margin with Note: 
  7526.      followed by two blank spaces. The start of another tag ends the note, so 
  7527.      no end tag is needed. 
  7528.  
  7529.      When the tag is used within a list, the note aligns with the text of the 
  7530.      items within the list. 
  7531.  
  7532.      Use the text=' ' attribute to give the note a specific name. 
  7533.  
  7534.      Conditions 
  7535.  
  7536.      None 
  7537.  
  7538.      Example 1 
  7539.  
  7540.           :note.
  7541.           This text appears within a note.
  7542.           The word :hp2.Note:ehp2. aligns
  7543.           with the text that precedes it.
  7544.  
  7545.      Output 
  7546.  
  7547.      The following output is provided. 
  7548.  
  7549.      Note:  This text appears within a note. The word Note aligns with the text 
  7550.      that precedes it. 
  7551.  
  7552.      Example 2 
  7553.  
  7554.           :note text='Text note:'.
  7555.           The name of this note is :hp2.Text note:ehp2..
  7556.           The name of the note replaces
  7557.           the word :hp2.Note:ehp2..  The name of the note
  7558.           aligns with the text that precedes it.
  7559.  
  7560.      Output 
  7561.  
  7562.      Text note:  The name of this note is Text note. The text for the note 
  7563.      replaces the word Note.  The name of the note aligns with the text that 
  7564.      precedes it. 
  7565.  
  7566.  
  7567. ΓòÉΓòÉΓòÉ 9.34. :nt.  (Note) ΓòÉΓòÉΓòÉ
  7568.  
  7569. Purpose 
  7570.  
  7571. Starts a note that can have multiple paragraphs. 
  7572.  
  7573. Syntax 
  7574.  
  7575. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  7576. ΓöéTag            ΓöéElement        ΓöéAttributes     ΓöéEnd            Γöé
  7577. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7578. Γöé:nt.           ΓöéNote           Γöétext=' '       Γöé:ent.          Γöé
  7579. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  7580.  
  7581. Attributes 
  7582.  
  7583.      text=' ' 
  7584.         Enables you to change the name of the note. 
  7585.  
  7586.      Description 
  7587.  
  7588.      :nt. starts a new paragraph with Note: followed by two blank spaces and 
  7589.      the first line of the text.  The second and succeeding lines of text align 
  7590.      with the first line, to the right of Note:. 
  7591.  
  7592.      Notes can be placed within lists and paragraphs; however, unlike the 
  7593.      :note. tag, :nt. requires an end tag. 
  7594.  
  7595.      You can use the text=' ' attribute to assign a specific name to the note. 
  7596.  
  7597.      Conditions 
  7598.  
  7599.      None 
  7600.  
  7601.      Example 
  7602.  
  7603.           :nt.
  7604.           Use this tag to include paragraphs in a note.
  7605.           You also can use it within paragraphs and lists.
  7606.           :p.End this tag before you begin another
  7607.           note tag.
  7608.           :ent.
  7609.  
  7610.      Output 
  7611.  
  7612.      Note:  Use this tag to include paragraphs in a note. You also can use it 
  7613.             within paragraphs and lists. 
  7614.  
  7615.      End this tag before you begin another note tag. 
  7616.  
  7617.  
  7618. ΓòÉΓòÉΓòÉ 9.35. :ol.  (Ordered List) ΓòÉΓòÉΓòÉ
  7619.  
  7620. Purpose 
  7621.  
  7622. Starts a sequential list of items or steps. 
  7623.  
  7624. Syntax 
  7625.  
  7626. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  7627. ΓöéTag            ΓöéElement        ΓöéAttributes     ΓöéEnd            Γöé
  7628. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7629. Γöé:ol.           ΓöéOrdered list   Γöécompact        Γöé:eol.          Γöé
  7630. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  7631.  
  7632. Attributes 
  7633.  
  7634.      compact 
  7635.         Causes the list to be formatted without a blank line between each list 
  7636.         item. If you omit compact, a blank line appears between each list item. 
  7637.  
  7638.      Description 
  7639.  
  7640.      :ol. indicates the start of an ordered list. Items in the list are entered 
  7641.      with the list-item tag (:li.). The output is an indented list with each 
  7642.      item numbered. Use the list-part tag (:lp.) for paragraphs within the 
  7643.      list. 
  7644.  
  7645.      Ordered lists can be nested or imbedded within other lists. When this is 
  7646.      done, the first list has sequential numbers at the left margin, and the 
  7647.      nested list has sequential letters indented two spaces. After the second 
  7648.      list, the number-letter sequence repeats for each successive ordered list. 
  7649.  
  7650.      Be sure to end each list with the end-list tag. 
  7651.  
  7652.      Example 
  7653.  
  7654.           :p.To remove a diskette:
  7655.           :ol.
  7656.           :li.Open the drive door:
  7657.           :ol compact.
  7658.           :li.Remove two screws.
  7659.           :li.Lift the door.
  7660.           :eol.
  7661.           :li.Remove the diskette.
  7662.           :li.Put the diskette in a safe place.
  7663.           :eol.
  7664.  
  7665.      Output 
  7666.  
  7667.      To remove a diskette: 
  7668.  
  7669.        1. Open the drive door: 
  7670.  
  7671.             a. Remove two screws. 
  7672.             b. Lift the door. 
  7673.  
  7674.        2. Remove the diskette. 
  7675.  
  7676.        3. Put the diskette in a safe place. 
  7677.  
  7678.  
  7679. ΓòÉΓòÉΓòÉ 9.36. :p.  (Paragraph) ΓòÉΓòÉΓòÉ
  7680.  
  7681. Purpose 
  7682.  
  7683. Starts a new paragraph. 
  7684.  
  7685. Syntax 
  7686.  
  7687. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  7688. ΓöéTag            ΓöéElement        ΓöéAttributes     ΓöéEnd            Γöé
  7689. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7690. Γöé:p.            ΓöéParagraph      Γöé               Γöé               Γöé
  7691. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  7692.  
  7693. Attributes 
  7694.  
  7695. None 
  7696.  
  7697. Description 
  7698.  
  7699. Each paragraph identified by a paragraph tag formats as an unindented block of 
  7700. text. Paragraphs placed within a list align with the text of the list.  When 
  7701. paragraphs are placed within a note, the text of the paragraph aligns with the 
  7702. text of the note. 
  7703.  
  7704. Conditions 
  7705.  
  7706. None 
  7707.  
  7708. Example 
  7709.  
  7710. :p.Paragraph tags cause a blank line before the text.
  7711. When placed within a list or note, the text of the paragraph
  7712. aligns with the text of the list or note.
  7713. :ul.
  7714. :li.Paragraph tags
  7715. :p.Paragraph tags are flexible and can be used
  7716. with most tags.
  7717. :li.Note tags
  7718. :p.Note tags can include paragraphs.
  7719. :eul.
  7720.  
  7721. Output 
  7722.  
  7723. Paragraph tags cause a blank line before the text. When placed within a list or 
  7724. note, the text of the paragraph aligns with the text of the list or note. 
  7725.  
  7726.        o  Paragraph tags 
  7727.  
  7728.           Paragraph tags are flexible and can be used with most tags. 
  7729.  
  7730.        o  Note tags 
  7731.  
  7732.           Note tags can include paragraphs. 
  7733.  
  7734.  
  7735. ΓòÉΓòÉΓòÉ 9.37. :parml.  (Parameter List) ΓòÉΓòÉΓòÉ
  7736.  
  7737. Purpose 
  7738.  
  7739. Starts a two-column list of parameter terms and descriptions. 
  7740.  
  7741. Syntax 
  7742.  
  7743. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  7744. ΓöéTag            ΓöéElement        ΓöéAttributes     ΓöéEnd            Γöé
  7745. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7746. Γöé:parml.        ΓöéParameter list Γöétsize=         Γöé:eparml.       Γöé
  7747. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7748. Γöé               Γöé               Γöébreak=         Γöé               Γöé
  7749. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7750. Γöé               Γöé               Γöécompact        Γöé               Γöé
  7751. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7752. Γöé:pt.           ΓöéParameter term Γöé               Γöé               Γöé
  7753. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7754. Γöé:pd.           ΓöéParameter      Γöé               Γöé               Γöé
  7755. Γöé               Γöédefinition     Γöé               Γöé               Γöé
  7756. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  7757.  
  7758. Attributes 
  7759.  
  7760.      tsize= 
  7761.                Specifies the space allocated for the parameter term. The 
  7762.                default is 10 character units. 
  7763.  
  7764.      break=all | fit | none 
  7765.                Controls the formatting of the parameter terms and descriptions: 
  7766.  
  7767.           break=all 
  7768.              Causes the description to begin on the line below the parameter 
  7769.              term, next to the space allocated by tsize=. This is the default. 
  7770.  
  7771.           break=fit 
  7772.              Causes the parameter description to begin on the same line as the 
  7773.              term, if the term has fewer characters than specified by tsize=. 
  7774.              If the term has more characters, the description begins on the 
  7775.              line below the term. 
  7776.  
  7777.           break=none 
  7778.              Causes the description to begin on the same line as the term.  If 
  7779.              the term has more characters than specified by tsize=, it 
  7780.              continues into the description area.  The description starts one 
  7781.              space after the end of the term. 
  7782.  
  7783.      compact 
  7784.                Causes the list to be formatted without a blank line between 
  7785.                each list item.  If you omit compact, a blank line appears 
  7786.                between each item. 
  7787.  
  7788.      Description 
  7789.  
  7790.      Parameter lists are similar to definition lists; they define terms and 
  7791.      descriptions that format in two columns. The elements of the 
  7792.      parameter-list tag are the parameter-term tag (:pt.) and the 
  7793.      parameter-description tag (:pd.).  The term tag identifies the term, and 
  7794.      the definition tag identifies the description. 
  7795.  
  7796.      Parameter lists can occur anywhere in text; you can nest them within other 
  7797.      lists, and you can nest other lists within parameter lists. 
  7798.  
  7799.      Conditions 
  7800.  
  7801.        o  Each parameter-term tag requires a parameter-description tag. 
  7802.        o  Each parameter list requires an end-parameter-list tag. 
  7803.  
  7804.      Example 
  7805.  
  7806.           :parml compact tsize=10 break=none.
  7807.           :pt.Tree
  7808.           :pd.Plant life in forest
  7809.           :pt.Orange
  7810.           :pd.Fruit on tree
  7811.           :pt.Cow
  7812.           :pd.Animal on farm
  7813.           :eparml.
  7814.  
  7815.      Output 
  7816.  
  7817.      Tree      Plant life in forest 
  7818.      Orange    Fruit on tree 
  7819.      Cow       Animal on farm 
  7820.  
  7821.  
  7822. ΓòÉΓòÉΓòÉ 9.38. :pbutton. (Push Button) ΓòÉΓòÉΓòÉ
  7823.  
  7824. Purpose 
  7825.  
  7826. Defines author-defined push buttons. 
  7827.  
  7828. Syntax 
  7829.  
  7830. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  7831. ΓöéTags           ΓöéElement        ΓöéAttributes     ΓöéEnd            Γöé
  7832. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7833. Γöé:pbutton.      ΓöéAuthor-defined Γöéid=            Γöé               Γöé
  7834. Γöé               Γöépush buttons   Γöéres=           Γöé               Γöé
  7835. Γöé               Γöé               Γöétext=' '       Γöé               Γöé
  7836. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  7837.  
  7838. Attributes 
  7839.  
  7840.      id= 
  7841.         Specifies the identification value for a push button that you define. 
  7842.         The identification value can be alpha or alphanumeric.  This 
  7843.         identification value is referenced by the control area tag (:ctrl.). 
  7844.  
  7845.      res= 
  7846.         Specifies the resource identification value for a push button that you 
  7847.         define.  This value is returned with the HM_NOTIFY and HM_CONTROL 
  7848.         messages and can be any integer greater than 256 (0 to 256 are reserved 
  7849.         for use by IPF). 
  7850.  
  7851.      text= ' ' 
  7852.         Specifies the text for the push button that you define. Define the 
  7853.         mnemonic for the push button by placing the tilde (~) character before 
  7854.         the mnemonic character.  For example: 
  7855.  
  7856.                  :pbutton id=xmp res=300 text='~Example'.
  7857.  
  7858.         Note:  Make sure the mnemonic you specify for author-defined push 
  7859.         buttons does not conflict with the mnemonics of the predefined set of 
  7860.         push buttons, or with any of IPF's shortcut keys. See :ctrl.  (Control 
  7861.         Area) for a description of the control area tag (:ctrl.) and a list of 
  7862.         the predefined push buttons and their associated mnemonics. 
  7863.  
  7864.      Description 
  7865.  
  7866.      Use the push button tag (:pbutton.) to define author-defined push buttons. 
  7867.      For more information, see Author-Defined Push Buttons. 
  7868.  
  7869.  
  7870. ΓòÉΓòÉΓòÉ 9.39. :pd.  (Parameter Description) ΓòÉΓòÉΓòÉ
  7871.  
  7872. Purpose 
  7873.  
  7874. Starts the description for a parameter term in a parameter list. 
  7875.  
  7876. Syntax 
  7877.  
  7878. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  7879. ΓöéTag            ΓöéElement        ΓöéAttributes     ΓöéEnd            Γöé
  7880. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7881. Γöé:pd.           ΓöéParameter      Γöé               Γöé               Γöé
  7882. Γöé               Γöédescription    Γöé               Γöé               Γöé
  7883. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  7884.  
  7885. Attributes 
  7886.  
  7887. None 
  7888.  
  7889. Description 
  7890.  
  7891. The text that follows :pd. describes the term identified by :pt..  The 
  7892. description formats in the right column, as defined by the values of tsize= and 
  7893. break=. For a description of :parml., see :parml.  (Parameter List). 
  7894.  
  7895. A parameter list can have multiple parameter-term and parameter-description 
  7896. tags; however, each term tag requires a description tag. 
  7897.  
  7898. Conditions 
  7899.  
  7900.        o  The parameter-description tag follows the parameter-term tag. 
  7901.        o  The parameter-description tag is valid only within a parameter list. 
  7902.  
  7903.      Example 
  7904.  
  7905.           :parml compact tsize=15 break=all.
  7906.           :pt.Tree
  7907.           :pd.Plant life in forest
  7908.           :pt.Orange
  7909.           :pd.Fruit on tree
  7910.           :pt.Cow
  7911.           :pd.Animal on farm
  7912.           :eparml.
  7913.  
  7914.      Output 
  7915.  
  7916.      Tree 
  7917.                     Plant life in forest 
  7918.      Orange 
  7919.                     Fruit on tree 
  7920.      Cow 
  7921.                     Animal on farm 
  7922.  
  7923.  
  7924. ΓòÉΓòÉΓòÉ 9.40. :pt.  (Parameter Term) ΓòÉΓòÉΓòÉ
  7925.  
  7926. Purpose 
  7927.  
  7928. Identifies a term in a parameter list. 
  7929.  
  7930. Syntax 
  7931.  
  7932. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  7933. ΓöéTag            ΓöéElement        ΓöéAttributes     ΓöéEnd            Γöé
  7934. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7935. Γöé:pt.           ΓöéParameter      Γöé               Γöé               Γöé
  7936. Γöé               Γöédescription    Γöé               Γöé               Γöé
  7937. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  7938.  
  7939. Attributes 
  7940.  
  7941. None 
  7942.  
  7943. Description 
  7944.  
  7945. The term identified by :pt. formats in the left column.  The :pt. tag requires 
  7946. a parameter-description tag (:pd.); the description formats in the right 
  7947. column. 
  7948.  
  7949. Conditions 
  7950.  
  7951.        o  The parameter-term tag requires a parameter-description tag. 
  7952.        o  The parameter-term tag precedes the parameter-description tag. 
  7953.        o  The parameter-term tag is valid only within a parameter list (for a 
  7954.           description of :parml., see :parml.  (Parameter List)). 
  7955.  
  7956.      Example 
  7957.  
  7958.           :parml compact tsize=15 break=all.
  7959.           :pt.Tree
  7960.           :pd.Plant life in forest
  7961.           :pt.Orange
  7962.           :pd.Fruit on tree
  7963.           :pt.Cow
  7964.           :pd.Animal on farm
  7965.           :eparml.
  7966.  
  7967.      Output 
  7968.  
  7969.      Tree 
  7970.                     Plant life in forest 
  7971.      Orange 
  7972.                     Fruit on tree 
  7973.      Cow 
  7974.                     Animal on farm 
  7975.  
  7976.  
  7977. ΓòÉΓòÉΓòÉ 9.41. :rm.  (Right Margin) ΓòÉΓòÉΓòÉ
  7978.  
  7979. Purpose 
  7980.  
  7981. Sets the right margin of the text. 
  7982.  
  7983. Syntax 
  7984.  
  7985. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  7986. ΓöéTag            ΓöéElement        ΓöéAttributes     ΓöéEnd            Γöé
  7987. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7988. Γöé:rm.           ΓöéRight margin   Γöémargin=        Γöé               Γöé
  7989. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  7990.  
  7991. Attributes 
  7992.  
  7993.      margin= 
  7994.         Enables you to indicate the number of character spaces from the right 
  7995.         border of the window the text is to end. For example, margin=60 means 
  7996.         that the text is to end 60 spaces from the right border. 
  7997.  
  7998.         Note:  When counting character spaces, you are actually counting 
  7999.         average character widths. 
  8000.  
  8001.      Description 
  8002.  
  8003.      Use :rm. with the left-margin tag (:lm.) to specify the boundaries of the 
  8004.      text in the window. The left-margin tag specifies where the text is to 
  8005.      start, and the right-margin tag specifies where it is to end. 
  8006.  
  8007.      You can enter margin tags at the beginning of the line of text or while 
  8008.      you are entering the text. Margin tags that begin the line of text cause 
  8009.      text on that line and the following lines to align with the values 
  8010.      specified. Margins set while you enter text become effective on the 
  8011.      current line or on the next line, depending on where the margin tag 
  8012.      begins. For example, to set the right margin to 60 (that is, 60 spaces 
  8013.      before the right border of the window), begin the right-margin tag at 
  8014.      least 60 spaces to the left of the right border. When the file is 
  8015.      displayed, the text entered after the margin tag aligns to the value 
  8016.      specified on that line. 
  8017.  
  8018.      If the margin tag is started after the specified boundary, the margin 
  8019.      becomes effective on the next line. 
  8020.  
  8021.      When the text window is sized, the text area adjusts from the right to fit 
  8022.      within the specified margin boundaries; that is, the right margin adjusts 
  8023.      to the window size. The left margin stays the same. If the window is sized 
  8024.      smaller than the specified margins, the margins remain the same, and the 
  8025.      text area is reduced to one character space. If no value is specified for 
  8026.      margin=, the default for the right margin is 1. 
  8027.  
  8028.      You can place multiple margin tags in your file. The specified margins 
  8029.      remain effective until they are reset. 
  8030.  
  8031.      Example 
  8032.  
  8033.           :lm margin=1.
  8034.           :rm margin=44.
  8035.           :p.In this example, the left margin is 1.  The right
  8036.           margin is 44.  The margins are set before the text;
  8037.           therefore, when the file is displayed, the text
  8038.           formats according to the margins set.
  8039.           The text begins at space 2 and ends 44 spaces before
  8040.           the right window border.  If the margin specified is
  8041.           less than the current cursor position on the screen,
  8042.           the margins set become effective on the following
  8043.           line.  For example, if the current cursor position is
  8044.           60 spaces to the left of the right window border and
  8045.           you set the right margin to 50, the margin is
  8046.           effective on the current line.  However, if the right
  8047.           margin is set to 65, the margin becomes effective
  8048.           on the next line.
  8049.           :p.
  8050.           :lm margin=5.
  8051.           :rm margin=60.Here the left margin is set to 5
  8052.           and the right margin is set to 60.  This means that
  8053.           the left margin begins 5 spaces to the right of the
  8054.           left border.  The right margin ends 60 spaces to the
  8055.           left of the right border.
  8056.  
  8057.      Output 
  8058.  
  8059.           In this example, the left margin is 1.  The right
  8060.           margin is 44.  The margins are set before the
  8061.           text; therefore, when the file is displayed, the text
  8062.           formats according to the margins set.  The text
  8063.           begins at space 2 and ends 44 spaces before the
  8064.           right window border.  If the margin specified is
  8065.           less than the current cursor position on the
  8066.           screen, the margins set become effective on the
  8067.           following line.  For example, if the current cursor
  8068.           position is 60 spaces to the left of the right
  8069.           window border and you set the right margin to 50,
  8070.           the margin is effective on the current line.
  8071.           However, if the right margin is set to 65, the
  8072.           margin becomes effective on the next line.
  8073.  
  8074.  
  8075.              Here the left margin is set to 5
  8076.              and the right margin is set to
  8077.              60.  This means that the left
  8078.              margin begins 5 spaces to the
  8079.              right of the left border.  The
  8080.              right margin ends 60 spaces to
  8081.              the left of the right border.
  8082.  
  8083.  
  8084. ΓòÉΓòÉΓòÉ 9.42. :sl.   (Simple List) ΓòÉΓòÉΓòÉ
  8085.  
  8086. Purpose 
  8087.  
  8088. Starts a nonsequential list of items. 
  8089.  
  8090. Syntax 
  8091.  
  8092. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  8093. ΓöéTag            ΓöéElement        ΓöéAttributes     ΓöéEnd            Γöé
  8094. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8095. Γöé:sl.           ΓöéSimple list    Γöécompact        Γöé:esl.          Γöé
  8096. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  8097.  
  8098. Attributes 
  8099.  
  8100.      compact 
  8101.         Causes the list to be formatted without a blank line between each list 
  8102.         item. If you omit compact, a blank line appears between each item. 
  8103.  
  8104.      Description 
  8105.  
  8106.      :sl. identifies items that do not require a sequential listing.  Items in 
  8107.      a simple list are not indented and do not have bullets, hyphens, or dashes 
  8108.      preceding them.  Simple lists can be nested within other lists.  When 
  8109.      nested, a simple list is indented four spaces to the right of the left 
  8110.      margin of the list that contains it.  Each list requires an end-list tag. 
  8111.  
  8112.      The simple-list tag requires the list-item tag (:li.) to identify items in 
  8113.      the list. You can use the list-part tag (:lp.) to include paragraphs in 
  8114.      the list. 
  8115.  
  8116.      Conditions 
  8117.  
  8118.      None 
  8119.  
  8120.      Example 
  8121.  
  8122.           :p.Bring the following for lunch:
  8123.           :sl.
  8124.           :li.Fruit, for example:
  8125.           :sl compact.
  8126.           :li.An apple
  8127.           :li.An orange
  8128.           :li.A pear
  8129.           :li.A banana
  8130.           :esl.
  8131.           :li.Sandwich
  8132.           :li.A drink, for example:
  8133.           :sl compact.
  8134.           :li.A soda
  8135.           :li.Juice
  8136.           :li.Milk.
  8137.           :esl.
  8138.           :esl.
  8139.  
  8140.      Output 
  8141.  
  8142.      Bring the following for lunch: 
  8143.  
  8144.           Fruit, for example: 
  8145.  
  8146.                An apple 
  8147.                An orange 
  8148.                A pear 
  8149.                A banana 
  8150.  
  8151.           Sandwich 
  8152.  
  8153.           A drink, for example: 
  8154.  
  8155.                A soda 
  8156.                Juice 
  8157.                Milk. 
  8158.  
  8159.  
  8160. ΓòÉΓòÉΓòÉ 9.43. :table.  (Table) ΓòÉΓòÉΓòÉ
  8161.  
  8162. Purpose 
  8163.  
  8164. Formats information as a table. 
  8165.  
  8166. Syntax 
  8167.  
  8168. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  8169. ΓöéTag            ΓöéElement        ΓöéAttributes     ΓöéEnd            Γöé
  8170. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8171. Γöé:table.        ΓöéTables         Γöécols=' '       Γöé:etable.       Γöé
  8172. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8173. Γöé               Γöé               Γöérules=         Γöé               Γöé
  8174. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8175. Γöé               Γöé               Γöéframe=         Γöé               Γöé
  8176. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8177. Γöé:row.          ΓöéRows           ΓöéNone           ΓöéNone           Γöé
  8178. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8179. Γöé:c.            ΓöéColumns        ΓöéNone           ΓöéNone           Γöé
  8180. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  8181.  
  8182. Attributes 
  8183.  
  8184.      cols=' ' 
  8185.         Specifies the width, in character spaces, of each column; for example: 
  8186.         cols='10 15 20'. 
  8187.  
  8188.      rules= 
  8189.         Specifies whether the table will have horizontal and vertical rules. 
  8190.         Following are the possible values and meanings: 
  8191.  
  8192.           both      Horizontal and vertical rules 
  8193.           horiz     Horizontal rules only 
  8194.           vert      Vertical rules only 
  8195.           none      No rules 
  8196.  
  8197.         Note:  The default is both. 
  8198.  
  8199.      frame= 
  8200.         Specifies whether the table will have borders. Following are the 
  8201.         possible values and meanings: 
  8202.  
  8203.           rules     A horizontal line at the top and bottom of the table 
  8204.           box       A box around the table 
  8205.           none      No borders. 
  8206.  
  8207.         Note:  The default is box. 
  8208.  
  8209.      The :row. tag specifies the start of each row in the table. The :c. tag 
  8210.      specifies the text for each column entry in the table. The text provided 
  8211.      with the :c. tag is formatted within the column.  However, if a single 
  8212.      word is longer than the specified width of the column, the word will be 
  8213.      clipped. 
  8214.  
  8215.      Example 
  8216.  
  8217.      The following defines a table with three columns and two rows. The width 
  8218.      of each column is 15, 20, and 25 character spaces. 
  8219.  
  8220.           :table cols='15 20 25' rules=both frame=box.
  8221.           :row.
  8222.           :c.Row 1 Col 1
  8223.           :c.Row 1 Col 2
  8224.           :c.Row 1 Col 3
  8225.           :row.
  8226.           :c.Row 2 Col 1
  8227.           :c.Row 2 Col 2
  8228.           :c.Row 2 Col 3
  8229.           :etable.
  8230.  
  8231.      Output 
  8232.  
  8233.           ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  8234.           ΓöéRow 1 Col 1    ΓöéRow 1 Col 2         ΓöéRow 1 Col 3              Γöé
  8235.           Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8236.           ΓöéRow 2 Col 1    ΓöéRow 2 Col 2         ΓöéRow 2 Col 3              Γöé
  8237.           ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  8238.  
  8239.  
  8240. ΓòÉΓòÉΓòÉ 9.44. :title.  (Title) ΓòÉΓòÉΓòÉ
  8241.  
  8242. Purpose 
  8243.  
  8244. Provides a name for the online document. 
  8245.  
  8246. Syntax 
  8247.  
  8248. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  8249. ΓöéTag            ΓöéElement        ΓöéAttributes     ΓöéEnd            Γöé
  8250. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8251. Γöé:title.        ΓöéTitle          Γöé               Γöé               Γöé
  8252. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  8253.  
  8254. Attributes 
  8255.  
  8256. None 
  8257.  
  8258. Description 
  8259.  
  8260. The text that follows :title. provides a name for the online document. The 
  8261. title of an online document can contain up to 47 characters, including spaces 
  8262. and blanks. If the title exceeds 47 characters, the IPF Compiler displays an 
  8263. error message. 
  8264.  
  8265. When you display the online document, the title appears on the title line of 
  8266. the main window. The title is limited to one line. Word wrapping does not occur 
  8267. in the title of an online document. 
  8268.  
  8269. Conditions 
  8270.  
  8271. Use the :title. tag only for the title of an online document.  Do not use it 
  8272. for online help windows. 
  8273.  
  8274. Example 
  8275.  
  8276. :userdoc.
  8277. :title.Using the Information Presentation Facility
  8278. :h1 res=100.Creating an Index
  8279. :p.This section shows you how to create index entries.
  8280. :euserdoc.
  8281.  
  8282. Output 
  8283.  
  8284. When you compile this file, "Using the Information Presentation Facility" is 
  8285. displayed on the title line of the main window of the online document. 
  8286.  
  8287. "Creating an Index" is listed as an entry in the contents window. If you select 
  8288. "Creating an Index," the window with this heading and the accompanying text is 
  8289. displayed in the text information area, overlaying the contents window. 
  8290.  
  8291.  
  8292. ΓòÉΓòÉΓòÉ 9.45. :ul.  (Unordered List) ΓòÉΓòÉΓòÉ
  8293.  
  8294. Purpose 
  8295.  
  8296. Starts a list of nonsequential items. 
  8297.  
  8298. Syntax 
  8299.  
  8300. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  8301. ΓöéTag            ΓöéElement        ΓöéAttributes     ΓöéEnd            Γöé
  8302. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8303. Γöé:ul.           ΓöéUnordered list ΓöéCompact        Γöé:eul.          Γöé
  8304. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  8305.  
  8306. Attributes 
  8307.  
  8308.      compact 
  8309.         Causes the list to be formatted without a blank line between each list 
  8310.         item. If you omit compact, a blank line appears between each item. 
  8311.  
  8312.      Description 
  8313.  
  8314.      :ul. indicates the start of a list of items that do not require sequential 
  8315.      listing. The list-item tag (:li.) identifies the items within the list. 
  8316.      The list-part tag (:lp.) is used to include paragraphs within the list. 
  8317.  
  8318.      Unordered list items are indented, and a bullet (lowercase "o") precedes 
  8319.      each item. Unordered lists can be nested within other lists. If placed 
  8320.      within an ordered list or a simple list, the nested list will be indented 
  8321.      four spaces, and each item will be preceded by a bullet. If placed within 
  8322.      another unordered list, the nested list will be indented four spaces, and 
  8323.      each item will be preceded by a dash. 
  8324.  
  8325.      Conditions 
  8326.  
  8327.      None 
  8328.  
  8329.      Example 
  8330.  
  8331.           :p.Before leaving for the day, remember to:
  8332.           :ul.
  8333.           :li.Turn off the computer.
  8334.           :li.Turn off the lights:
  8335.           :ul compact.
  8336.           :li.Ceiling
  8337.           :li.Desk
  8338.           :eul.
  8339.           :li.Secure all equipment.
  8340.           :eul.
  8341.  
  8342.      Output 
  8343.  
  8344.      Before leaving for the day, remember to: 
  8345.  
  8346.        o  Turn off the computer. 
  8347.  
  8348.        o  Turn off the lights: 
  8349.  
  8350.             -  Ceiling 
  8351.             -  Desk 
  8352.  
  8353.        o  Secure all equipment. 
  8354.  
  8355.  
  8356. ΓòÉΓòÉΓòÉ 9.46. :userdoc.  (User Document) ΓòÉΓòÉΓòÉ
  8357.  
  8358. Purpose 
  8359.  
  8360. Identifies the source file that is to be compiled. 
  8361.  
  8362. Syntax 
  8363.  
  8364. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  8365. ΓöéTag            ΓöéElement        ΓöéAttributes     ΓöéEnd            Γöé
  8366. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8367. Γöé:userdoc.      ΓöéUser document  Γöé               Γöé:euserdoc.     Γöé
  8368. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  8369.  
  8370. Attributes 
  8371.  
  8372. None 
  8373.  
  8374. Description 
  8375.  
  8376. :userdoc. must be the first tag in the source file. It signals the compiler to 
  8377. begin compiling the tagged text that follows. All other tags that define how 
  8378. the text is to be formatted follow this tag. 
  8379.  
  8380. The end-user-document tag (:euserdoc.) identifies the end of the tagged text 
  8381. and the end of the source file. It must be the last tag in the source file. 
  8382.  
  8383. Conditions 
  8384.  
  8385. None 
  8386.  
  8387. Example 
  8388.  
  8389. :userdoc.
  8390. .
  8391. .
  8392. .
  8393. :euserdoc.
  8394.  
  8395.  
  8396. ΓòÉΓòÉΓòÉ 9.47. :warning.  (Warning) ΓòÉΓòÉΓòÉ
  8397.  
  8398. Purpose 
  8399.  
  8400. Alerts the user of a risk or possible error condition. 
  8401.  
  8402. Syntax 
  8403.  
  8404. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  8405. ΓöéTag            ΓöéElement        ΓöéAttributes     ΓöéEnd            Γöé
  8406. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8407. Γöé:warning.      ΓöéWarning        Γöétext=' '       Γöé:ewarning.     Γöé
  8408. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  8409.  
  8410. Attributes 
  8411.  
  8412.      text=' ' 
  8413.         Enables you to give a specific name to the warning notice. 
  8414.  
  8415.      Description 
  8416.  
  8417.      A warning notice alerts the user to a possible risk, such as an error 
  8418.      condition in the system. It should appear before the text that it 
  8419.      discusses. Use the text=' ' attribute to provide a specific name for the 
  8420.      warning notice. 
  8421.  
  8422.      Conditions 
  8423.  
  8424.      None 
  8425.  
  8426.      Example 1 
  8427.  
  8428.           :warning.
  8429.           The disk contains bad sectors.
  8430.           :ewarning.
  8431.  
  8432.      Output 
  8433.  
  8434.      The following output is provided. 
  8435.  
  8436.      Warning: The disk contains bad sectors. 
  8437.  
  8438.      Example 2 
  8439.  
  8440.           :warning text='Bad disk:'.
  8441.           The disk contains bad sectors.
  8442.           :ewarning.
  8443.  
  8444.      Output 
  8445.  
  8446.      Bad disk  The disk contains bad sectors. 
  8447.  
  8448.  
  8449. ΓòÉΓòÉΓòÉ 9.48. :xmp. (Example) ΓòÉΓòÉΓòÉ
  8450.  
  8451. Purpose 
  8452.  
  8453. Turns formatting off. 
  8454.  
  8455. Syntax 
  8456.  
  8457. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  8458. ΓöéTag            ΓöéElement        ΓöéAttributes     ΓöéEnd            Γöé
  8459. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8460. Γöé:xmp.          ΓöéExample        Γöé               Γöé:exmp.         Γöé
  8461. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  8462.  
  8463. Attributes 
  8464.  
  8465. None 
  8466.  
  8467. Description 
  8468.  
  8469. Text entered between :xmp. and :exmp. is formatted as entered, in a monospace 
  8470. font. The text is indented two spaces from the left margin of the window. Lines 
  8471. that are too long to fit within the window are clipped. 
  8472.  
  8473. Conditions 
  8474.  
  8475.        o  An example cannot be placed within another example. 
  8476.        o  An end-example tag is required. 
  8477.  
  8478.      Example 
  8479.  
  8480.           :xmp.
  8481.            #define INCL_WIN
  8482.            #include <os2.h>
  8483.  
  8484.            MRESULT EXPENTRY MyObject(PACVP pACVP, PCH ObjectInfo)
  8485.            {
  8486.  
  8487.            HWND hwndMyACVP;            /* Handle to the application-controlled */
  8488.                                        /* window that this procedure creates   */
  8489.                 .
  8490.                 .
  8491.                 .
  8492.            }
  8493.           :exmp.
  8494.  
  8495.      Output 
  8496.  
  8497.            #define INCL_WIN
  8498.            #include <os2.h>
  8499.  
  8500.            MRESULT EXPENTRY MyObject(PACVP pACVP, PCH ObjectInfo)
  8501.            {
  8502.  
  8503.            HWND hwndMyACVP;            /* Handle to the application-controlled */
  8504.                                        /* window that this procedure creates   */
  8505.                 .
  8506.                 .
  8507.                 .
  8508.            }
  8509.  
  8510.  
  8511. ΓòÉΓòÉΓòÉ 10. Symbols ΓòÉΓòÉΓòÉ
  8512.  
  8513. This chapter discusses the symbols you can use to display special characters 
  8514. that you may want to include in your file.  Symbols can be used to specify 
  8515. characters that are not on the keyboard.  Each symbol represents a single 
  8516. character. When tagging your file to include symbols, begin each symbol with an 
  8517. ampersand (&) and end the symbol with a period (.). For example, to place a 
  8518. square bullet (Γûá) in a file, you would enter: 
  8519.  
  8520. &sqbul.
  8521.  
  8522. Symbols are case sensitive; that is, uppercase characters produce different 
  8523. symbols than lowercase characters.  Therefore, when tagging the file to include 
  8524. a symbol, enter the tag for the symbol exactly as it is shown in the symbols 
  8525. table. 
  8526.  
  8527. Note:  All symbols in the following table are also in the APSYMBOL.APS file. 
  8528. This file is in the \TOOLKIT\IPFC directory and can be edited with any text 
  8529. editor; however, some National Language code pages require a different symbols 
  8530. file. See National Language Support, for a list of these files. 
  8531.  
  8532. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  8533. ΓöéSymbol              ΓöéSymbol Name         ΓöéCharacter           Γöé
  8534. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8535. Γöé&aa.                Γöéa acute             Γöé╨░                   Γöé
  8536. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8537. Γöé&ac.                Γöéa circumflex        Γöé╨ô                   Γöé
  8538. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8539. Γöé&ae.                Γöéa umlaut            Γöé╨ö                   Γöé
  8540. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8541. Γöé&Ae.                ΓöéA umlaut            Γöé╨₧                   Γöé
  8542. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8543. Γöé&ag.                Γöéa grave             Γöé╨ò                   Γöé
  8544. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8545. Γöéæ.             Γöéae ligature         Γöé╨í                   Γöé
  8546. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8547. ΓöéÆ.             ΓöéAE ligature         Γöé╨ó                   Γöé
  8548. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8549. Γöé&Alpha.             ΓöéAlpha               ΓöéA                   Γöé
  8550. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8551. Γöé&.               Γöéampersand           Γöé&                   Γöé
  8552. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8553. Γöé&and.               Γöéand                 Γöé^                   Γöé
  8554. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8555. Γöé&angstrom.          Γöéangstrom            Γöé╨ƒ                   Γöé
  8556. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8557. Γöé&ao.                Γöéa overcircle        Γöé╨û                   Γöé
  8558. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8559. Γöé&Ao.                ΓöéA overcircle        Γöé╨ƒ                   Γöé
  8560. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8561. Γöé&apos.              Γöéapostrophe          Γöé'                   Γöé
  8562. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8563. Γöé&bx2022.            ΓöéASCII code 185      ΓöéΓòú                   Γöé
  8564. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8565. Γöé&bx2020.            ΓöéASCII code 186      ΓöéΓòæ                   Γöé
  8566. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8567. Γöé&bx0022.            ΓöéASCII code 187      ΓöéΓòù                   Γöé
  8568. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8569. Γöé&bx2002.            ΓöéASCII code 188      ΓöéΓò¥                   Γöé
  8570. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8571. Γöé&bx2200.            ΓöéASCII code 200      ΓöéΓòÜ                   Γöé
  8572. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8573. Γöé&bx0220.            ΓöéASCII code 201      ΓöéΓòö                   Γöé
  8574. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8575. Γöé&bx2202.            ΓöéASCII code 202      ΓöéΓò⌐                   Γöé
  8576. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8577. Γöé&bx0222.            ΓöéASCII code 203      ΓöéΓòª                   Γöé
  8578. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8579. Γöé&bx2220.            ΓöéASCII code 204      ΓöéΓòá                   Γöé
  8580. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8581. Γöé&bx0202.            ΓöéASCII code 205      ΓöéΓòÉ                   Γöé
  8582. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8583. Γöé&bx2222.            ΓöéASCII code 206      ΓöéΓò¼                   Γöé
  8584. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8585. Γöé&asterisk.          Γöéasterisk            Γöé*                   Γöé
  8586. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8587. Γöé&atsign.            Γöéat sign             Γöé@                   Γöé
  8588. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8589. Γöé&bslash., &bsl.     Γöéback slash          Γöé\                   Γöé
  8590. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8591. Γöé&Beta.              ΓöéBeta                Γöé╤ü                   Γöé
  8592. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8593. Γöé&bxas., &bxbj.      Γöébox ascender        ΓöéΓö┤                   Γöé
  8594. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8595. Γöé&bxcr., &bxcj.      Γöébox cross           ΓöéΓö╝                   Γöé
  8596. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8597. Γöé&bxde., &bxtj.      Γöébox descender       ΓöéΓö¼                   Γöé
  8598. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8599. Γöé&bxh.               Γöébox horizontal      ΓöéΓöÇ                   Γöé
  8600. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8601. Γöé&bxll.              Γöébox lower-left      ΓöéΓöö                   Γöé
  8602. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8603. Γöé&bxlr.              Γöébox lower-right     ΓöéΓöÿ                   Γöé
  8604. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8605. Γöé&bxri., &bxrj.      Γöébox right junction  ΓöéΓöñ                   Γöé
  8606. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8607. Γöé&bxul.              Γöébox upper-left      ΓöéΓöî                   Γöé
  8608. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8609. Γöé&bxur.              Γöébox upper-right     ΓöéΓöÉ                   Γöé
  8610. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8611. Γöé&bxv.               Γöébox vertical        ΓöéΓöé                   Γöé
  8612. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8613. Γöé&cc.                Γöéc cedilla           Γöé╨ù                   Γöé
  8614. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8615. Γöé&Cc.                ΓöéC cedilla           Γöé╨É                   Γöé
  8616. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8617. Γöé&caret.             Γöécaret symbol        Γöé^                   Γöé
  8618. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8619. Γöé&cdq.               Γöéclose double quote  Γöé"                   Γöé
  8620. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8621. Γöé&cdqf.              Γöéclose French double Γöé╨┐                   Γöé
  8622. Γöé                    Γöéquote               Γöé                    Γöé
  8623. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8624. Γöé&csq.               Γöéclose single quote  Γöé'                   Γöé
  8625. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8626. Γöé&comma.             Γöécomma               Γöé,                   Γöé
  8627. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8628. Γöé&colon.             Γöécolon               Γöé:                   Γöé
  8629. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8630. Γöé&dash.              Γöédash                Γöé-                   Γöé
  8631. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8632. Γöé°ree., °.     Γöédegree              Γöé┬░                   Γöé
  8633. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8634. Γöé÷             Γöédivide              Γöé╨Ä                   Γöé
  8635. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8636. Γöé&dollar.            Γöédollar sign         Γöé$                   Γöé
  8637. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8638. Γöé&dot.               Γöédot                 Γöé┬╖                   Γöé
  8639. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8640. Γöé&darrow.            Γöédown arrow          Γöé                   Γöé
  8641. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8642. Γöé&ea.                Γöée acute             Γöé╨Æ                   Γöé
  8643. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8644. Γöé&Ea                 ΓöéE acute             Γöé╨á                   Γöé
  8645. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8646. Γöé&ec.                Γöée circumflex        Γöé╨ÿ                   Γöé
  8647. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8648. Γöé&ee.                Γöée umlaut            Γöé╨Ö                   Γöé
  8649. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8650. Γöé&eg.                Γöée grave             Γöé╨Ü                   Γöé
  8651. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8652. Γöé&emdash.            Γöéem dash             Γöé-                   Γöé
  8653. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8654. Γöé&endash.            Γöéen dash             Γöé-                   Γöé
  8655. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8656. Γöé&eq., &equals.,     Γöéequal sign          Γöé=                   Γöé
  8657. Γöé&eqsym.             Γöé                    Γöé                    Γöé
  8658. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8659. Γöé&xclm., &xclam.     Γöéexclamation point   Γöé!                   Γöé
  8660. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8661. Γöé&fnof.              Γöéfunction of         Γöé╨»                   Γöé
  8662. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8663. Γöé>sym., >.       Γöégreater than        Γöé>                   Γöé
  8664. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8665. Γöé&house.             Γöéhouse               Γöé                   Γöé
  8666. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8667. Γöé&hyphen.            Γöéhyphen              Γöé-                   Γöé
  8668. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8669. Γöé&ia.                Γöéi acute             Γöé╨▒                   Γöé
  8670. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8671. Γöé&ic.                Γöéi circumflex        Γöé╨£                   Γöé
  8672. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8673. Γöé&ie.                Γöéi umlaut            Γöé╨¢                   Γöé
  8674. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8675. Γöé&ig.                Γöéi grave             Γöé╨¥                   Γöé
  8676. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8677. Γöé&inve.              Γöéinverted exclamationΓöé╨╜                   Γöé
  8678. Γöé                    Γöémark                Γöé                    Γöé
  8679. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8680. Γöé&invq.              Γöéinverted question   Γöé╨╕                   Γöé
  8681. Γöé                    Γöémark                Γöé                    Γöé
  8682. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8683. Γöé&larrow.            Γöéleft arrow          Γöé                   Γöé
  8684. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8685. Γöé&lahead.            Γöéleft arrowhead      Γöé                   Γöé
  8686. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8687. Γöé&lbrace., &lbrc.    Γöéleft brace          Γöé{                   Γöé
  8688. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8689. Γöé&lbracket. &lbrk.   Γöéleft bracket        Γöé[                   Γöé
  8690. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8691. Γöé&lpar. , &lparen.   Γöéleft parenthesis    Γöé(                   Γöé
  8692. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8693. Γöé&lnot.              Γöélogical not         Γöé╨║                   Γöé
  8694. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8695. Γöé&mdash.             Γöéem dash             Γöé-                   Γöé
  8696. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8697. Γöé&minus.             Γöéminus sign          Γöé-                   Γöé
  8698. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8699. Γöé&mu.                Γöému                  Γöé╤å                   Γöé
  8700. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8701. Γöé&ndash.             Γöéen dash             Γöé-                   Γöé
  8702. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8703. Γöé&nt.                Γöén tilde             Γöé╨┤                   Γöé
  8704. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8705. Γöé&Nt.                ΓöéN tilde             Γöé╨╡                   Γöé
  8706. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8707. Γöé&lnot., ¬sym.    Γöénot symbol          Γöé╨║                   Γöé
  8708. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8709. Γöé&numsign.           Γöénumber sign         Γöé#                   Γöé
  8710. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8711. Γöé&oa.                Γöéo acute             Γöé╨▓                   Γöé
  8712. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8713. Γöé&oc.                Γöéo circumflex        Γöé╨ú                   Γöé
  8714. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8715. Γöé&og.                Γöéo grave             Γöé╨Ñ                   Γöé
  8716. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8717. Γöé&oe.                Γöéo umlaut            Γöé╨ñ                   Γöé
  8718. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8719. Γöé&Oe.                ΓöéO umlaut            Γöé╨⌐                   Γöé
  8720. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8721. Γöé¼.            Γöéone fourth          Γöé╨╝                   Γöé
  8722. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8723. Γöé½.            Γöéone half            Γöé╨╗                   Γöé
  8724. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8725. Γöé&odq.               Γöéopen double quote   Γöé"                   Γöé
  8726. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8727. Γöé&odqf.              Γöéopen French double  Γöé╨╛                   Γöé
  8728. Γöé                    Γöéquote               Γöé                    Γöé
  8729. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8730. Γöé&osq.               Γöéopen single quote   Γöé`                   Γöé
  8731. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8732. Γöé&percent.           Γöépercent             Γöé%                   Γöé
  8733. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8734. Γöé&per.               Γöéperiod              Γöé.                   Γöé
  8735. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8736. Γöé&plus.              Γöéplus sign           Γöé+                   Γöé
  8737. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8738. Γöé&plusmin., &pm.     Γöéplusminus           Γöé╤æ                   Γöé
  8739. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8740. Γöé&Lsterling.         Γöépound sterling      Γöé╨¼                   Γöé
  8741. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8742. Γöé&rbl.               Γöérequired blank      Γöé                    Γöé
  8743. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8744. Γöé&rarrow.            Γöéright arrow         Γöé"                   Γöé
  8745. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8746. Γöé&rahead.            Γöéright arrowhead     Γöé"                   Γöé
  8747. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8748. Γöé&rbrace., &rbrc.    Γöéright brace         Γöé}                   Γöé
  8749. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8750. Γöé&rbracket., &rbrk.  Γöéright bracket       Γöé]                   Γöé
  8751. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8752. Γöé&rpar., &rparen.    Γöéright parenthesis   Γöé)                   Γöé
  8753. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8754. Γöé&semi.              Γöésemicolon           Γöé;                   Γöé
  8755. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8756. Γöé&box14.             Γöéshaded box 1/4 dots ΓöéΓûæ                   Γöé
  8757. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8758. Γöé&box12.             Γöéshaded box 1/2 dots ΓöéΓûÆ                   Γöé
  8759. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8760. Γöé&box34.             Γöéshaded box 3/4 dots ΓöéΓûô                   Γöé
  8761. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8762. Γöé&slash., &slr.      Γöéslash               Γöé/                   Γöé
  8763. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8764. Γöé&BOX.               Γöésolid box           ΓöéΓûê                   Γöé
  8765. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8766. Γöé&BOXBOT.            Γöésolid box bottom    ΓöéΓûä                   Γöé
  8767. Γöé                    Γöéhalf                Γöé                    Γöé
  8768. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8769. Γöé&splitvbar.         Γöésplit vertical bar  Γöé|                   Γöé
  8770. Γöé                    Γöé(piping symbol)     Γöé                    Γöé
  8771. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8772. Γöé&sqbul.             Γöésquare bullet       ΓöéΓûá                   Γöé
  8773. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8774. Γöé².              Γöésuperscript 2       Γöé┬ñ                   Γöé
  8775. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8776. Γöé&tilde.             Γöétilde               Γöé~                   Γöé
  8777. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8778. Γöé&ua.                Γöéu acute             Γöé╨│                   Γöé
  8779. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8780. Γöé&uc.                Γöéu circumflex        Γöé╨ª                   Γöé
  8781. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8782. Γöé&ug.                Γöéu grave             Γöé╨º                   Γöé
  8783. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8784. Γöé&ue.                Γöéu umlaut            Γöé╨æ                   Γöé
  8785. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8786. Γöé&Ue.                ΓöéU umlaut            Γöé╨¬                   Γöé
  8787. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8788. Γöé&us.                Γöéunderscore          Γöé_                   Γöé
  8789. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8790. Γöé&aus.               Γöéunderscored a       Γöé╨╢                   Γöé
  8791. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8792. Γöé&ous.               Γöéunderscored o       Γöé╨╖                   Γöé
  8793. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8794. Γöé&ye.                Γöéy umlaut            Γöé╨¿                   Γöé
  8795. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  8796.  
  8797. Note:  The left and right arrows appear as left and right arrowheads. The ASCII 
  8798. escape sequences do not permit true left and right arrows. 
  8799.  
  8800.  
  8801. ΓòÉΓòÉΓòÉ 11. Compiler Error Messages ΓòÉΓòÉΓòÉ
  8802.  
  8803. This chapter lists the error messages sent by the IPF compiler. 
  8804.  
  8805.  
  8806. ΓòÉΓòÉΓòÉ 11.1. Description and Format of Error Messages ΓòÉΓòÉΓòÉ
  8807.  
  8808. There are three types of error messages: 
  8809.  
  8810.        o  Warning Level 1.  They are the most severe. 
  8811.  
  8812.        o  Warning Level 2.  They are moderately severe. 
  8813.  
  8814.        o  Warning Level 3.  They are the least severe. 
  8815.  
  8816.      These error messages have the following format. 
  8817.  
  8818.  
  8819.           <C:\IPFC\YOURFILE.IPF:999> 124: Invalid tag in footnote [ ]
  8820.            ΓööΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÿΓööΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ ΓööΓö¼Γöÿ  ΓööΓö¼Γöÿ  ΓööΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ ΓööΓö¼Γöÿ
  8821.               Γöé         Γöé        Γöé    Γöé      Γöé                     Γöé
  8822.               Γöé         Γöé        Γöé    Γöé      Γöé              Optional error
  8823.               Γöé         Γöé        Γöé    Γöé      Γöé                information.
  8824.               Γöé         Γöé        Γöé    Γöé      Γöé              Tag, filename, etc.
  8825.               Γöé         Γöé        Γöé    Γöé      Γöé
  8826.               Γöé         Γöé        Γöé    Γöé      ΓööΓöÇΓöÇ Error message
  8827.               Γöé         Γöé        Γöé    Γöé
  8828.               Γöé         Γöé        Γöé    ΓööΓöÇΓöÇ Error code
  8829.               Γöé         Γöé        Γöé
  8830.               Γöé         Γöé        ΓööΓöÇΓöÇ Line number in source file
  8831.               Γöé         Γöé                where error occurred
  8832.               Γöé         Γöé
  8833.               Γöé         ΓööΓöÇΓöÇ Filename of source file
  8834.               Γöé
  8835.               ΓööΓöÇΓöÇ Drive and path of source file
  8836.  
  8837.  
  8838. ΓòÉΓòÉΓòÉ 11.1.1. Warning Level 1 Messages ΓòÉΓòÉΓòÉ
  8839.  
  8840.      101       Invalid document body 
  8841.  
  8842.                 Explanation:  No :userdoc./:euserdoc. match. 
  8843.  
  8844.                This is a fatal error that will cause the compiler to stop 
  8845.                executing. 
  8846.  
  8847.  
  8848.      102       Invalid tag syntax 
  8849.      103       Missing hypertext information 
  8850.      104       Cannot hide parent head level 
  8851.  
  8852.                Explanation:  Preceding head level must be hidden. 
  8853.  
  8854.  
  8855.      105       Illegal context for tag 
  8856.  
  8857.                Explanation:  Tags are not properly matched, a tag is used 
  8858.                incorrectly, or a tag is placed incorrectly. 
  8859.  
  8860.  
  8861.      106       List start tag missing-tag ignored 
  8862.      107       List end tag not matched-tag ignored 
  8863.      108       Ignoring unmatched tag 
  8864.      109       Cannot open file 
  8865.  
  8866.                Explanation:  SYSTEM ERROR.  Filename or path is incorrect, file 
  8867.                doesn't exist, or other system problem. 
  8868.  
  8869.  
  8870.      110       No id for this reference 
  8871.      112       No id for this footnote 
  8872.      113       No text found in tag 
  8873.      114       Page is too big 
  8874.  
  8875.                Explanation:  Panel is too big.  Maximum size is 16 000 words 
  8876.                and punctuation marks. (Note maximum size is language 
  8877.                dependent.) 
  8878.  
  8879.  
  8880.      116       Cannot create panel(s) 
  8881.  
  8882.                This is a fatal error that will cause the compiler to stop 
  8883.                executing. 
  8884.  
  8885.  
  8886.      117       Duplicate text in tag 
  8887.      118       Duplicate root word 
  8888.      119       Duplicate tag in tag file 
  8889.      120       Ignoring text before :h1. tag 
  8890.      121       Invalid head level 
  8891.  
  8892.                Explanation:  Head levels are not in consecutive order. 
  8893.  
  8894.                Example:  If :h1. and :h3. are used and :h2. is missing, this 
  8895.                error will occur. 
  8896.  
  8897.  
  8898.      122       Definition term or header not matched 
  8899.      123       Unexpected end of file 
  8900.  
  8901.                Explanation:  This may be caused by an ending tag not being 
  8902.                found, a corrupted or truncated source file, or a control-Z 
  8903.                character found before the true end of file. 
  8904.  
  8905.                This is a fatal error that will cause the compiler to stop 
  8906.                executing. 
  8907.  
  8908.  
  8909.      124       Invalid tag in footnote 
  8910.      125       Not enough memory 
  8911.  
  8912.                Explanation:  SYSTEM ERROR.  Close some applications to free 
  8913.                some memory. 
  8914.  
  8915.                This is a fatal error that will cause the compiler to stop 
  8916.                executing. 
  8917.  
  8918.  
  8919.      126       Cannot free memory 
  8920.  
  8921.                Explanation:  SYSTEM ERROR.  System could not free memory. 
  8922.  
  8923.                This is a fatal error that will cause the compiler to stop 
  8924.                executing. 
  8925.  
  8926.  
  8927.      127       Cannot read file 
  8928.  
  8929.                Explanation:  SYSTEM ERROR.  Source file may be corrupted. 
  8930.  
  8931.                This is a fatal error that will cause the compiler to stop 
  8932.                executing. 
  8933.  
  8934.  
  8935.      129       Document is too big - unique words exceed 16 000 
  8936.  
  8937.                This is a fatal error that will cause the compiler to stop 
  8938.                executing. 
  8939.  
  8940.  
  8941.      130       A DT tag is not defined 
  8942.      131       A PT tag is not defined 
  8943.      132       Cannot write to a file 
  8944.  
  8945.                Explanation:  SYSTEM ERROR.  File system is full, out of disk 
  8946.                space, diskette is write protected, etc. 
  8947.  
  8948.                This is a fatal error that will cause the compiler to stop 
  8949.                executing. 
  8950.  
  8951.  
  8952.      133       Attribute not defined 
  8953.      134       Tag not defined 
  8954.      135       Invalid bitmap format 
  8955.  
  8956.                Explanation:  File is not a valid PM format bitmap file. 
  8957.  
  8958.  
  8959.      140       Invalid country code, or codepage 
  8960.  
  8961.                This is a fatal error that will cause the compiler to stop 
  8962.                executing. 
  8963.  
  8964.  
  8965.      141       Invalid language code 
  8966.  
  8967.                This is a fatal error that will cause the compiler to stop 
  8968.                executing. 
  8969.  
  8970.  
  8971.      143       No valid COLS specification was given 
  8972.      144       Ignoring invalid tag in table cell 
  8973.      145       Ignoring text before :c. tag 
  8974.      146       Extra cells will be placed in next table row 
  8975.      147       Missing ELINK tag inserted at end of table cell 
  8976.      148       Total table width exceeds limit of 250 characters 
  8977.      149       Cannot reopen. File is already opened 
  8978.  
  8979.                Explanation:  SYSTEM ERROR. 
  8980.  
  8981.  
  8982.      150       Document has no vocabulary 
  8983.  
  8984.                This is a fatal error that will cause the compiler to stop 
  8985.                executing. 
  8986.  
  8987.  
  8988.      151       No res for this reference 
  8989.      152       Duplicate tag in source file 
  8990.      153       Document has no visible table of contents entry 
  8991.  
  8992.                This is a fatal error that will cause the compiler to stop 
  8993.                executing. 
  8994.  
  8995.  
  8996. ΓòÉΓòÉΓòÉ 11.1.2. Warning Level 2 Messages ΓòÉΓòÉΓòÉ
  8997.  
  8998.      201       Invalid tag 
  8999.      202       Invalid attribute 
  9000.      203       Invalid symbol 
  9001.  
  9002.                Explanation:  Invalid APS symbol; period missing after the APS 
  9003.                symbol, symbol specified is not in the APSYMBOL.APS file, 
  9004.                invalid APSYMBOL.APS file. 
  9005.  
  9006.  
  9007.      204       Invalid macro 
  9008.      205       Text too long in tag 
  9009.  
  9010.                Explanation:  Heading and index tags have a maximum of 150 
  9011.                characters. 
  9012.  
  9013.  
  9014.      206       Token is bigger than expected. 
  9015.  
  9016.                Explanation:  Maximum length of token is 255 characters.  This 
  9017.                error could be caused by a missing end period or quote 
  9018.                character. 
  9019.  
  9020.  
  9021.      207       Invalid attribute value 
  9022.      208       Missing tag 
  9023.      209       Attribute not matched 
  9024.      210       Text too long in macro expansion 
  9025.  
  9026.                Explanation:  Maximum 255 characters. 
  9027.  
  9028.  
  9029.      211       Total number of fonts exceeds the limit of 14 
  9030.      212       Sub index cannot be global without global main index 
  9031.      213       Invalid nest 
  9032.  
  9033.  
  9034. ΓòÉΓòÉΓòÉ 11.1.3. Warning Level 3 Messages ΓòÉΓòÉΓòÉ
  9035.  
  9036.      301       Ignoring attribute 
  9037.      302       Duplicate ID 
  9038.  
  9039.                Explanation:  Cannot specify the same ID in the same panel or 
  9040.                index. 
  9041.  
  9042.  
  9043.      303       Duplicate symbol in symbol file 
  9044.      304       Duplicate res number 
  9045.      305       Parent panel cannot have its own text 
  9046.      306       Missing panel text in head level tag 
  9047.      307       Missing footnote text in :fn. tag 
  9048.  
  9049.  
  9050. ΓòÉΓòÉΓòÉ 12. Enabling Help for Applications ΓòÉΓòÉΓòÉ
  9051.  
  9052. While running an application the user sometimes requires help.  For example, 
  9053. the user may need assistance in making a choice, recalling the name of an 
  9054. application command or the use of a function key, or locating information. 
  9055.  
  9056. Using IPF, you can develop a user interface that provides general help for 
  9057. application windows, and contextual help for fields within windows. 
  9058.  
  9059. Implementing the IPF user interface when creating helps for an application 
  9060. requires two different development efforts: 
  9061.  
  9062.        o  Developing the programming code that communicates with IPF and the 
  9063.           Presentation Manager to display help windows. 
  9064.  
  9065.        o  Developing a library of help information that IPF refers to in 
  9066.           response to a user request. 
  9067.  
  9068.      This section will concentrate on the first development effort:  writing 
  9069.      the programming code that enables communication between IPF and the 
  9070.      Presentation Manager. 
  9071.  
  9072.  
  9073. ΓòÉΓòÉΓòÉ 12.1. Developing the Application Code ΓòÉΓòÉΓòÉ
  9074.  
  9075. Use the following steps to develop the application code that adds help to your 
  9076. application. 
  9077.  
  9078.        1. Set up the help table and help subtable, and include the help 
  9079.           constants defined in PMHELP.H. 
  9080.  
  9081.        2. Initialize the HELPINIT structure with a call to DosLoadModule. 
  9082.  
  9083.        3. Create a help instance. 
  9084.  
  9085.        4. Associate the help instance with the application window chain. 
  9086.  
  9087.        5. Respond to messages for menu bar choices. 
  9088.  
  9089.        6. End the help instance. 
  9090.  
  9091.      The following sections describe how to implement each of these steps. 
  9092.  
  9093.  
  9094. ΓòÉΓòÉΓòÉ 12.1.1. Setting Up the IPF Help Tables ΓòÉΓòÉΓòÉ
  9095.  
  9096. Two table structures in application memory or in resource files (.RC file-name 
  9097. extension), identify window resources in the IPF library.  The help table 
  9098. associates each application window with its corresponding help subtable and the 
  9099. window identifier of its extended help window.  The help subtable associates 
  9100. each entry field, menu item and push button within an application window with 
  9101. the window identifier (ID) of its help window.  The address of the help table 
  9102. is passed to the application during initialization of the IPF initializing 
  9103. structure (HELPINIT). 
  9104.  
  9105. When the user requests help on a field, menu bar, or push button in the 
  9106. application window, IPF uses the help subtable associated with the field to 
  9107. find the window ID of the contextual help window for the field.  The help 
  9108. subtable also can store optional entries relating to application-specific 
  9109. information. 
  9110.  
  9111. The maximum size of the help table is 64KB. The number of help subtables is 
  9112. limited to 16 000. 
  9113.  
  9114. IPF supports two methods of defining help tables and help subtables. They can 
  9115. be allocated in memory, or they can be defined as resources. In either case, 
  9116. the information passed to IPF is identical. 
  9117.  
  9118.  
  9119. ΓòÉΓòÉΓòÉ 12.1.1.1. Defining Help Tables in Memory ΓòÉΓòÉΓòÉ
  9120.  
  9121. By defining help tables and subtables in memory, you can dynamically change a 
  9122. single entry in the help table. You can add a new window ID to be associated 
  9123. with a field, or add fields that are to be associated with existing windows. 
  9124.  
  9125. After the help table structure is initialized, the application can pass IPF the 
  9126. address in memory of the new help table, either by sending the 
  9127. HM_CREATE_HELP_TABLE message from its window procedure, or by calling 
  9128. WinCreateHelpTable. 
  9129.  
  9130. When defining help tables in memory, the data structures in PMHELP.H are used. 
  9131. The help table contains the structure for each application window. This 
  9132. structure holds the following information: 
  9133.  
  9134.        o  Application window ID 
  9135.        o  Address of the window's subtable 
  9136.        o  Window ID of the window's extended help window 
  9137.  
  9138.      These entries are integers.  The last entry in the list contains a NULL 
  9139.      for each entry type, to indicate the end of the list.  The following is an 
  9140.      example of a help table for an application. 
  9141.  
  9142.           HELPSUBTABLE        table1, table2, table3,
  9143.                               table4, table5;
  9144.  
  9145.           HELPTABLE     helpTableEntry [] =
  9146.           {
  9147.             APP_WIND_1,  &table1, idExtHelp1,
  9148.             APP_WIND_2,  &table2, idExtHelp2,
  9149.             APP_WIND_3,  &table3, idExtHelp3,
  9150.             APP_WIND_4,  &table4, idExtHelp4,
  9151.             APP_WIND_5,  &table5, idExtHelp5,
  9152.             0,           NULL,    NULL
  9153.           };
  9154.  
  9155.      The help subtable contains the structure defined in the PMHELP.H file for 
  9156.      each application window. This structure holds the following information 
  9157.      for each field in the application window: 
  9158.  
  9159.        o  Field ID from which user requests help 
  9160.        o  Window ID of the contextual help window associated with the field 
  9161.        o  Optional, application-specific integers. 
  9162.  
  9163.      The last entry in the structure contains the word length for each field 
  9164.      entry.  The minimum number of words is two, which is the default.  The 
  9165.      following is an example of a help subtable for an application window that 
  9166.      has six fields. 
  9167.  
  9168.           HELPSUBTABLE        HelpSubTable [] =
  9169.           {
  9170.             2,
  9171.             FIELD_ID_1, IDRES_HELP1,
  9172.             FIELD_ID_2, IDRES_HELP2,
  9173.             FIELD_ID_3, IDRES_HELP3,
  9174.             FIELD_ID_4, IDRES_HELP4,
  9175.             FIELD_ID_5, IDRES_HELP5,
  9176.             FIELD_ID_6, IDRES_HELP6,
  9177.             0,          0
  9178.           };
  9179.  
  9180.  
  9181. ΓòÉΓòÉΓòÉ 12.1.1.2. Defining Help Tables as Resources ΓòÉΓòÉΓòÉ
  9182.  
  9183. If help tables are defined as resources, they can be bound to the application's 
  9184. executable file, or they can reside in a dynamic link library (DLL). 
  9185.  
  9186. If help tables are defined as resources in a dynamic link library, the 
  9187. application must call DosLoadModule to load the DLL before it calls 
  9188. WinCreateHelpInstance. When the application calls WinCreateHelpInstance, it 
  9189. passes the handle to the DLL and the resource ID of the help table in the 
  9190. HELPINIT structure. 
  9191.  
  9192. The application can load a new help table residing in the DLL by either sending 
  9193. the HM_LOAD_HELP_TABLE message from its window procedure, or by calling 
  9194. WinLoadHelpTable. The application passes the handle to the DLL and the resource 
  9195. ID of the new help table. 
  9196.  
  9197. A HELPTABLE resource contains a HELPITEM entry for each application window, 
  9198. dialog, and message box for which help is provided. 
  9199.  
  9200. Each entry of a HELPTABLE resource contains: 
  9201.  
  9202.        o  HELPITEM keyword 
  9203.        o  Application window ID 
  9204.        o  ID of the HELPSUBTABLE resource 
  9205.        o  Window ID of the extended help window. 
  9206.  
  9207.      A HELPSUBTABLE resource contains an entry for each item that can be 
  9208.      selected in an application window. Each of these items is assumed to be a 
  9209.      child window of the application window identified in the HELPTABLE 
  9210.      resource. The HELPSUBTABLE should contain a single SUBITEMSIZE and a 
  9211.      HELPSUBITEM for each control, child window, and menu item. 
  9212.  
  9213.      Each entry of a HELPSUBTABLE resource contains: 
  9214.  
  9215.        o  HELPSUBITEM keyword 
  9216.        o  Field ID 
  9217.        o  Window ID of the field's help window (corresponds to the resource 
  9218.           number specified in the heading tag of the help-text window) 
  9219.        o  Optional, application-defined integers. 
  9220.  
  9221.      The integer ID of the field can be a control, menu item, or message box 
  9222.      ID.  The ID specified must be unique within the table. An ID of hex FFFF 
  9223.      is reserved for use by IPF. 
  9224.  
  9225.      The optional integers value allows the writer of the resource script file 
  9226.      to append additional integers to the end of each HELPSUBITEM for 
  9227.      application-specific use. 
  9228.  
  9229.      The SUBITEMSIZE keyword is used to identify the size in words of each 
  9230.      HELPSUBITEM.  All entries must be the same length. If this value is 
  9231.      specified, it must be greater than or equal to 2. If this value is not 
  9232.      specified, it defaults to 2. 
  9233.  
  9234.      All referenced HELPSUBTABLE resources must reside in the same .RES file as 
  9235.      the HELPTABLE resource. 
  9236.  
  9237.      Following is an example of .RC source file for defining a HELPTABLE and 
  9238.      its related HELPSUBTABLE resources. 
  9239.  
  9240.           HELPTABLE TABLE_1
  9241.           BEGIN
  9242.           HELPITEM parentwindow1, SUBTABLE_1,
  9243.             extendedhelppanel1
  9244.           HELPITEM parentwindow2, SUBTABLE_2,
  9245.             extendedhelppanel2
  9246.           END
  9247.  
  9248.           HELPSUBTABLE SUBTABLE_1
  9249.           [SUBITEMSIZE subitemsize1]
  9250.           BEGIN
  9251.             HELPSUBITEM FIELD_ID1, helppanel1 [,
  9252.               integer1, ...n]
  9253.             HELPSUBITEM FIELD_ID2, helppanel2 [,
  9254.               integer1, ...n]
  9255.           END
  9256.  
  9257.           HELPSUBTABLE SUBTABLE_2
  9258.           [SUBITEMSIZE subitemsize2]
  9259.           BEGIN
  9260.             HELPSUBITEM FIELD_ID3, helppanel3 [,
  9261.               integer1, ...n]
  9262.             HELPSUBITEM FIELD_ID4, helppanel4 [,
  9263.               integer1, ...n]
  9264.           END
  9265.  
  9266.  
  9267. ΓòÉΓòÉΓòÉ 12.1.2. Initializing the HELPINIT Structure ΓòÉΓòÉΓòÉ
  9268.  
  9269. Before you call WinCreateHelpInstance, you must allocate memory for and 
  9270. initialize the HELPINIT structure.  This structure defines values that IPF 
  9271. needs to create the help instance.  Some of the values can be changed by your 
  9272. application after initialization. 
  9273.  
  9274. The HELPINIT structure and the help table structures referred to by IPF during 
  9275. help processing are contained in the PMHELP.H file. The PMHELP.H file also 
  9276. contains the error codes returned in the event of an unsuccessful call. You 
  9277. include this file in your source code by using the INCL_WINHELP define 
  9278. statement. The following shows the HELPINIT structure. 
  9279.  
  9280. typedef struct _HELPINIT /* hinit */
  9281. {
  9282.  
  9283. ULONG          cb;
  9284. ULONG          ulReturnCode;
  9285. PSZ            pszTutorialName;
  9286. PHELPTABLE     phtHelpTable;
  9287. HMODULE        hmodHelpTableModule;
  9288. HMODULE        hmodAccelActionBarModule;
  9289. ULONG          idAccelTable;
  9290. ULONG          idActionBar;
  9291. PSZ            pszHelpWindowTitle;
  9292. ULONG          fShowPanelId;
  9293. PSZ            pszHelpLibraryName;
  9294. } HELPINIT;
  9295.  
  9296. Following are descriptions of the HELPINIT structure fields. 
  9297.  
  9298.      Field Name          Description 
  9299.  
  9300.      cb                  The length of the initialization structure.  This 
  9301.                          value can be use to identify the version of IPF being 
  9302.                          used. 
  9303.  
  9304.      ulReturnCode        The IPF return code 
  9305.  
  9306.      pszTutorialName     A pointer to a tutorial name, if one exists.  If this 
  9307.                          value is NULL, either the application help interface 
  9308.                          does not include a tutorial, or the tutorial is 
  9309.                          referenced from a help window.  If this value is not 
  9310.                          NULL, IPF provides a Tutorial choice in the help 
  9311.                          pull-down and adds a push button to the control area. 
  9312.  
  9313.                          If the user selects the Tutorial choice in the 
  9314.                          pull-down, IPF sends the HM_TUTORIAL message to the 
  9315.                          application so that it can start the tutorial. 
  9316.  
  9317.      phtHelpTable        If the help table is in memory this ia a pointer to 
  9318.                          the help table. If the help table is a resource, this 
  9319.                          is the resource ID ORed with 0xFFFF0000. 
  9320.  
  9321.      hmodHelpTableModule The name of the resource file that indexes the dynamic 
  9322.                          link library that contains the help table and its 
  9323.                          corresponding subtables.  If the help table is not 
  9324.                          being accessed through a dynamic link library, this 
  9325.                          value is 0. 
  9326.  
  9327.      hmodAccelActionBarModule The name of the dynamic link library that 
  9328.                          contains the modified menu bar. If you do not have a 
  9329.                          modified menu bar, this value is 0. 
  9330.  
  9331.      idAccelTable        The name of the accelerator table if you are using a 
  9332.                          modified menu bar; otherwise, this value is 0. 
  9333.  
  9334.      idActionBar         The identity of the menu bar (action bar) template. 
  9335.                          If you are not modifying the menu bar, this value is 
  9336.                          0. 
  9337.  
  9338.      pszHelpWindowTitle  A pointer to the name of the title for the main help 
  9339.                          window.  This name can be changed after initialization 
  9340.                          by sending the message HM_SET_HELP_WINDOW_TITLE. 
  9341.  
  9342.      fShowPanelId        A flag used to append the window ID to the beginning 
  9343.                          of the help window title in the title bar of the help 
  9344.                          window.  If this flag is set to CMIC_SHOW_PANEL_ID, 
  9345.                          the window IDs are displayed. If this flag is set to 
  9346.                          CMIC_HIDE_PANEL_ID or to 0, the window IDs are not 
  9347.                          displayed. 
  9348.  
  9349.                          This flag is useful during the development stages of 
  9350.                          the help interface. 
  9351.  
  9352.                          After initialization, this flag can be toggled with 
  9353.                          the HM_SET_SHOW_PANEL_ID message. 
  9354.  
  9355.      pszHelpLibraryName  The help library names of the .HLP files containing 
  9356.                          the help windows. These .HLP files are created by the 
  9357.                          IPF compiler.  When IPF needs to search for a help 
  9358.                          window, it looks for these library names in the path 
  9359.                          set by the HELP environment variable.  If IPF cannot 
  9360.                          find a library name in this path, it then searches the 
  9361.                          current directory. 
  9362.  
  9363.                          After initialization, help library names can be 
  9364.                          specified with the HM_SET_HELP_LIBRARY_NAME message. 
  9365.                          If multiple libraries are specified, library names 
  9366.                          must be separated by a blank space. 
  9367.  
  9368.      The following example shows a help facility being initialized.  Notice 
  9369.      that hmodAccelActionBarModule, idAccelTabl      e, and idActionBar have 
  9370.      values set to 0; this is because this example uses a standard menu bar. 
  9371.  
  9372.           VOID HelpInit (VOID)
  9373.           {
  9374.              HELPINIT hini;
  9375.  
  9376.              /* if we return because of an error, Help will be disabled */
  9377.              fHelpEnabled = FALSE;
  9378.  
  9379.              /* initialize help init structure */
  9380.              hini.cb = sizeof (HELPINIT)
  9381.              hini.ulReturnCode = 0L;
  9382.  
  9383.              hini.pszTutorialName = (PSZ)NULL /*if tutorial added, add name here*/
  9384.  
  9385.              hini.phtHelpTable = (PHELPTABLE)MAKELONG(JIGSAW_HELP_TABLE, 0xFFFF);
  9386.              hini.hmodHelpTableModule = (HMODULE)0;
  9387.              hini.hmodAccelActionBarModule = (HMODULE)0;
  9388.              hini.idAccelTable = 0;
  9389.              hini.idActionBar = 0;
  9390.  
  9391.              if (!WinLoadString (habMain,
  9392.                       (HMODULE)0,
  9393.                       IDS_HELPWINDOWTITLE,
  9394.                       HELPLIBRARYNAMELEN,
  9395.                       (PSZ)szWindowTitle))
  9396.  
  9397.              {
  9398.                MessageBox (habMain, IDS_CANNOTLOADSTRING, MB_OK | MB_ERROR, FALSE);
  9399.                return;
  9400.              }
  9401.  
  9402.              hini.pszHelpWindowTitle = (PSZ)szWindowTitle;
  9403.  
  9404.              /*  if debugging, show panel ids; else, don't   */
  9405.           #ifdef DEBUG
  9406.              hini.fShowPanelId = CMIC_SHOW_PANEL_ID;
  9407.           #else
  9408.              hini.fShowPanelId = CMIC_HIDE_PANEL_ID;
  9409.           #endif
  9410.  
  9411.              if (!WinLoadString (habMain,
  9412.                       (HMODULE)0,
  9413.                       IDS_HELPLIBRARYNAME,
  9414.                       HELPLIBRARYNAMELEN,
  9415.                       (PSZ)szLibName))
  9416.              {
  9417.              MessageBox (habMain, IDS_CANNOTLOADSTRING, MB_OK | MB_ERROR, FALSE);
  9418.              return;
  9419.              }
  9420.  
  9421.              hini.pszHelpLibraryName = (PSZ)szLibName;
  9422.  
  9423.  
  9424. ΓòÉΓòÉΓòÉ 12.1.3. Creating the Help Instance ΓòÉΓòÉΓòÉ
  9425.  
  9426. The WinCreateHelpInstance call passes the HELPINIT structure defined in the 
  9427. PMHELP.H include file to the Presentation Manager. WinCreateHelpInstance 
  9428. returns a handle to the help instance, which you must store in a HWND variable 
  9429. for use with the rest of the application programming interface (API) function 
  9430. calls associated with IPF. 
  9431.  
  9432. IPF responds to the WinCreateHelpInstance call by installing its help hook and 
  9433. initializing for help processing. 
  9434.  
  9435. The following shows how a help instance is created. 
  9436.  
  9437.    /*  Creating help instance */
  9438.    hwndHelpInstance = WinCreateHelpInstance (habMain, &hini);
  9439.  
  9440.    if (!hwndHelpInstance || hini.ulReturnCode)
  9441.    {
  9442.    MessageBox (hwndFrame,
  9443.          IDS_HELPLOADERROR,
  9444.          MB_OK | MB_ERROR,
  9445.          TRUE);
  9446.    return;
  9447.    }
  9448.  
  9449.  
  9450. ΓòÉΓòÉΓòÉ 12.1.4. Associating the Instance with the Window Chain ΓòÉΓòÉΓòÉ
  9451.  
  9452. After an application creates a help instance, it must associate the instance 
  9453. with the application window chain by calling WinAssociateHelpInstance. IPF uses 
  9454. the active window handle passed by this call to index into the help table to 
  9455. find the help window that should be displayed for the application window. 
  9456.  
  9457. An IPF instance can be associated with any application window that has a frame. 
  9458. Once the association of an IPF instance with the application window chain is 
  9459. made, help can be requested for any application window in the chain. 
  9460.  
  9461. The following shows how a help instance is associated with the application 
  9462. window chain. 
  9463.  
  9464.    /*  associate the help instance with the main frame  */
  9465.    if (!WinAssociateHelpInstance (hwndHelpInstance, hwndFrame))
  9466.    {
  9467.    MessageBox (hwndFrame,
  9468.          IDS_HELPLOADERROR,
  9469.          MB_OK | MB_ERROR,
  9470.          TRUE);
  9471.    return;
  9472.    }
  9473.  
  9474.    /*  IPF is successfully initialized; set flag to TRUE  */
  9475.    fHelpEnabled = TRUE;
  9476.  
  9477.  
  9478. ΓòÉΓòÉΓòÉ 12.1.5. Ending the Help Instance ΓòÉΓòÉΓòÉ
  9479.  
  9480. To end the current help instance, the application calls WinDestroyHelpInstance, 
  9481. passing the handle of the help instance that is to be ended. 
  9482.  
  9483. The parameter hwndHelpInstance is the handle to the IPF instance returned from 
  9484. the WinCreateHelpInstance call. 
  9485.  
  9486. The following shows how a help instance is terminated. 
  9487.  
  9488. VOID DestroyHelpInstance (VOID)
  9489. {
  9490.    if (hwndHelpInstance)
  9491.    {
  9492.      WinDestroyHelpInstance (hwndHelpInstance);
  9493.    }
  9494. }
  9495.  
  9496.  
  9497. ΓòÉΓòÉΓòÉ 12.2. Responding to Messages for Menu Bar Choices ΓòÉΓòÉΓòÉ
  9498.  
  9499. IPF communicates with the active window.  This communication is accomplished 
  9500. with messages.  The application may need to do some of its own processing in 
  9501. response to these messages. 
  9502.  
  9503.  
  9504. ΓòÉΓòÉΓòÉ 12.2.1. Processing "Using help" Requests ΓòÉΓòÉΓòÉ
  9505.  
  9506. When the user selects "Using help" from the help pull-down menu, a WM_COMMAND 
  9507. is sent to the application's window procedure. 
  9508.  
  9509. If the application has created its own "Using help" window, it responds by 
  9510. sending the HM_REPLACE_USING_HELP message with the help-window ID.  If the 
  9511. application chooses to use the "Using help" window provided by IPF, it responds 
  9512. by sending the HM_DISPLAY_HELP with NULL in both parameters. 
  9513.  
  9514. Current CUA guidelines recommend applications use "Using help"; however, IPF 
  9515. continues to support the "Help for help" window. 
  9516.  
  9517.  
  9518. ΓòÉΓòÉΓòÉ 12.2.2. Processing a "Keys Help" Request ΓòÉΓòÉΓòÉ
  9519.  
  9520. When the user selects "Keys help" from the help pull-down, an HM_KEYS_HELP 
  9521. message is sent by the application to IPF. In response, IPF sends an 
  9522. HM_QUERY_KEYS_HELP message to the application.  The application returns the 
  9523. window ID of the keys help window. 
  9524.  
  9525.  
  9526. ΓòÉΓòÉΓòÉ 12.2.3. Processing Help Requests for a Child Window ΓòÉΓòÉΓòÉ
  9527.  
  9528. In the Presentation Manager, parent and child windows are active at the same 
  9529. time.  Therefore, when a help instance is associated with a window, its 
  9530. descendants are included in the association.  However, only the parent window 
  9531. is the active help window. 
  9532.  
  9533. Note:  Do not confuse child windows with dialog, message boxes, and other 
  9534.        windows which the application may own but are actually children of the 
  9535.        desktop. 
  9536.  
  9537.      For IPF to process help requests for a child window, an application must 
  9538.      send IPF HM_SET_ACTIVE_WINDOW messages to set the active help window. 
  9539.      Until this happens, IPF continues to satisfy help requests for the child 
  9540.      window from the help subtable for the parent window. 
  9541.  
  9542.      The HM_SET_ACTIVE_WINDOW message should be sent by ALL windows in response 
  9543.      to the WM_ACTIVATE and WM_INITMENU messages as shown in the following 
  9544.      example. 
  9545.  
  9546.              switch( usMsg )
  9547.              {
  9548.                                          ┬╖
  9549.                                          ┬╖
  9550.                                          ┬╖
  9551.              case WM_ACTIVATE:
  9552.                 if( SHORT1FROMMP( mp1 ) )
  9553.                 {
  9554.                    /*
  9555.                     * Set active help window to this window's parent when
  9556.                     * activated
  9557.                     */
  9558.                    WinSendMsg( WinQueryHelpInstance( hWnd ),
  9559.                                HM_SET_ACTIVE_WINDOW,
  9560.                                WinQueryWindow( hWnd, QW_PARENT ),
  9561.                                WinQueryWindow( hWnd, QW_PARENT ) );
  9562.                 }
  9563.                 else
  9564.                 {
  9565.                    /*
  9566.                     * Clear active help window when this window is
  9567.                     * deactivated - necessary for message box help, etc.
  9568.                     * to work properly.
  9569.                     */
  9570.                    WinSendMsg( WinQueryHelpInstance( hWnd ),
  9571.                                HM_SET_ACTIVE_WINDOW,
  9572.                                NULL,
  9573.                                NULL );
  9574.                 }
  9575.                 break;
  9576.  
  9577.              case WM_INITMENU:
  9578.                 /*
  9579.                  * Set active window to this window's parent here so that
  9580.                  * the menu id will be found in the proper subtable.
  9581.                  * Activation and deactivation of the help window will
  9582.                  * take care of setting the help window back to the
  9583.                  * active window.
  9584.                  */
  9585.                 WinSendMsg( WinQueryHelpInstance( hWnd ),
  9586.                             HM_SET_ACTIVE_WINDOW,
  9587.                             WinQueryWindow( hWnd, QW_PARENT ),
  9588.                             WinQueryWindow( hWnd, QW_PARENT ) );
  9589.                 break;
  9590.  
  9591.                                           ┬╖
  9592.                                           ┬╖
  9593.                                           ┬╖
  9594.              }
  9595.  
  9596.  
  9597. ΓòÉΓòÉΓòÉ 12.2.4. When No Help Is Available ΓòÉΓòÉΓòÉ
  9598.  
  9599. A user may request help by pressing F1 when the cursor is positioned on an item 
  9600. for which no field-level help is available. In such a case, IPF sends the 
  9601. HM_HELPSUBITEM_NOT_FOUND message to the application.  To display the extended 
  9602. help window, the application then can either return FALSE or ignore the 
  9603. message.  If the application returns TRUE, there is no response to the user 
  9604. request. 
  9605.  
  9606.  
  9607. ΓòÉΓòÉΓòÉ 12.2.5. Help Window Resources ΓòÉΓòÉΓòÉ
  9608.  
  9609. You can define the following window resources for the help interface: 
  9610.  
  9611.        o  Help pull-down 
  9612.  
  9613.        o  Help push button 
  9614.  
  9615.        o  Command entry field 
  9616.  
  9617.        o  Customized menu bar. 
  9618.  
  9619.  
  9620. ΓòÉΓòÉΓòÉ 12.2.6. Help Pull-Down ΓòÉΓòÉΓòÉ
  9621.  
  9622. CUA guidelines recommend that all application windows with menu bars include a 
  9623. help pull-down menu. The help application menu bar choice and corresponding 
  9624. pull-down menu is defined in your resource file. The following example shows 
  9625. how to define the help pulldown. 
  9626.  
  9627. MENU IDR_MAIN PRELOAD
  9628. BEGIN
  9629.     SUBMENU "~File",                           IDM_FILE
  9630.     BEGIN
  9631.         MENUITEM "~Open...",                   IDM_LOAD
  9632.     END
  9633.  
  9634.     SUBMENU "~Options",                        IDM_OPTIONS
  9635.     BEGIN
  9636.         SUBMENU "Size",                        IDM_SIZE_MENU
  9637.         BEGIN
  9638.             MENUITEM "Small",                  IDM_SIZE_SMALL,   0, MIS_TEXT
  9639.             MENUITEM "Medium",                 IDM_SIZE_MEDIUM,  0, MIS_TEXT
  9640.             MENUITEM "Large",                  IDM_SIZE_LARGE,   0, MIS_TEXT
  9641.             MENUITEM "Full Size",              IDM_SIZE_FULL,    0, MIA_CHECKED
  9642.         END
  9643.  
  9644.         MENUITEM "~Jumble!",                   IDM_JUMBLE
  9645.     END
  9646.  
  9647.     SUBMENU "~Help",                           IDM_HELP,            MIS_TEXT
  9648.     BEGIN
  9649.         MENUITEM "Help ~index",                IDM_HELPINDEX,       MIS_TEXT
  9650.         MENUITEM "~General help",              IDM_HELPEXTENDED,    MIS_TEXT
  9651.         MENUITEM "~Using help",                IDM_HELPHELPFORHELP, MIS_TEXT
  9652.         MENUITEM     SEPARATOR
  9653.         MENUITEM "~Product information",       IDM_HELPABOUT,       MIS_TEXT
  9654.     END
  9655. END
  9656.  
  9657.  
  9658. ΓòÉΓòÉΓòÉ 12.2.7. Help Push Button ΓòÉΓòÉΓòÉ
  9659.  
  9660. If your application has a dialog or message area, you may want to include the 
  9661. Help push button in the bottom area of the secondary application window (dialog 
  9662. box). To define the Help push button, use the Presentation Manager button style 
  9663. BS_HELP and BS_NOPOINTERFOCUS. 
  9664.  
  9665. The BS_HELP style causes the Presentation Manager to call IPF when the user 
  9666. selects this Help push button. The BS_NOPOINTERFOCUS style enables the 
  9667. Presentation Manager to determine the field for which the user requested help. 
  9668.  
  9669.  
  9670. ΓòÉΓòÉΓòÉ 12.2.8. Command Entry Field ΓòÉΓòÉΓòÉ
  9671.  
  9672. An entry field is a control window that enables users to enter text. A command 
  9673. entry field is used for typing commands, and may be programmed to accept 
  9674. entries recognized by the application. 
  9675.  
  9676. For example, a command entry field might be used in an interpreter with a 
  9677. Presentation Manager interface.  The field would accept a request from the user 
  9678. and execute it.  Similarly, a command entry field might be used in an editor in 
  9679. a "command mode" to accept advanced instructions not associated with any 
  9680. editing keys.  Any time the user has a limited number of correct responses, a 
  9681. command entry field may be appropriate. 
  9682.  
  9683. Help windows for application commands can be associated with a command entry 
  9684. field by imbedding the index command tag (:icmd.) with a command name in the 
  9685. window that describes the command. 
  9686.  
  9687. When the cursor is positioned in the associated entry field and the user 
  9688. presses F1 or selects the Help push button, titles of windows that contain 
  9689. these tags are displayed in alphabetic order in a list box window. 
  9690.  
  9691.  
  9692. ΓòÉΓòÉΓòÉ 12.2.9. A Customized Menu Bar ΓòÉΓòÉΓòÉ
  9693.  
  9694. A Help menu bar template is shipped with the IBM Developer. The template is in 
  9695. the HMTAILOR.RC file.  Included in the template is the Help menu pull-down. 
  9696. You can customize the menu bar by adding pull-downs and choices to the Help 
  9697. menu bar template. 
  9698.  
  9699. When a menu bar or pull-down choice you have added is selected by the 
  9700. application user, IPF sends the HM_ACTIONBAR_COMMAND message to the currently 
  9701. active application window.  The low-order word of param1 contains the command 
  9702. value of the selected item. The command values of the actions added by the 
  9703. application must be between hex 7F00 and hex 7FFF for its commands. 
  9704.  
  9705. The accelerator table maps function keys to commands on help windows.  This 
  9706. table is also contained in the HMTAILOR.RC file. If you add a choice to the 
  9707. menu bar that maps to a key on the keyboard, you must also add an entry to the 
  9708. accelerator table for that choice. IPF functions depend on the entries that 
  9709. already exist in the system accelerator table.  They must not be altered. The 
  9710. command value specified in the accelerator table entry must be the same command 
  9711. value that was specified for the associated action in the menu bar template. 
  9712.  
  9713. If the HMTAILOR.RC file is changed, you must compile it using the resource 
  9714. compiler and attach it to the executable file. If the executable file is a DLL, 
  9715. you must call DosLoadModule to load it before calling WinCreateHelpInstance. 
  9716. Identify the handle to IPF in the hmodAccelActionBarModule field in the 
  9717. initialization structure. When this field is 0, IPF uses the default menu bar. 
  9718.  
  9719. The HMTAILOR.RC file includes the HMTAILOR.H file. 
  9720.  
  9721. Note:  When modifying the menu bar, define IDM_HM_MENU and 
  9722.        IDD_COVERPAGE_HM_ACCEL in your help header (.H) file. Also, add the IDs 
  9723.        in the idActionBar and idAccelTable fields in the HELPINIT structure. 
  9724.  
  9725.  
  9726. ΓòÉΓòÉΓòÉ 13. Customizing IPF with Communication Objects ΓòÉΓòÉΓòÉ
  9727.  
  9728. The IPF online help interface and specific help information can be customized 
  9729. by hooking a piece of Presentation Manager code into the IPF help facility. 
  9730. This code, which is actually an entry point in a DLL file, is called a 
  9731. communication object. 
  9732.  
  9733.  
  9734. ΓòÉΓòÉΓòÉ 13.1. Useful Communication Object Terminology ΓòÉΓòÉΓòÉ
  9735.  
  9736. Before you begin reading about how to create IPF communication objects and 
  9737. related topics (such as application-controlled windows), you need to be 
  9738. familiar with the terms which will be used to describe them. 
  9739.  
  9740.      acviewport 
  9741.           The :acviewport. tag, which enables an application to control what is 
  9742.           displayed in an IPF window (see :acviewport. (Application-Controlled 
  9743.           Window)). 
  9744.  
  9745.      application-controlled window 
  9746.           The window that you create using a communication object that is 
  9747.           loaded by an :acviewport. tag. 
  9748.  
  9749.      communication object 
  9750.           A child window of the object window; this child window can handle and 
  9751.           respond to messages (particularly HM_ messages). 
  9752.  
  9753.      DLL 
  9754.           A dynamic link library (DLL) is a collection of executable 
  9755.           programming code and data that is bound to an application at load 
  9756.           time or run time, rather than during linking. The programming code 
  9757.           and data in a DLL can be shared by several applications 
  9758.           simultaneously. 
  9759.  
  9760.      entry point 
  9761.           A function called in the DLL that contains your communication object. 
  9762.           Specified in the :acviewport. tag with the objectname option. 
  9763.  
  9764.      object 
  9765.           For the purposes of this discussion, synonymous with entry point. 
  9766.  
  9767.      window procedure 
  9768.           Code that is activated in response to a message. The window procedure 
  9769.           controls the behavior and appearance of its associated windows. 
  9770.  
  9771.  
  9772. ΓòÉΓòÉΓòÉ 13.2. Two Kinds of Communication Objects ΓòÉΓòÉΓòÉ
  9773.  
  9774. How the communication object is loaded into memory is an indication of the 
  9775. purpose of the communication object. A DLL containing a communication object 
  9776. can be loaded into memory in two ways: 
  9777.  
  9778.        1. Through use of the :docprof. tag's dll attribute (see :docprof. 
  9779.           (Document Profile)). A communication object loaded through the 
  9780.           :docprof. tag is considered a "global" communication object because 
  9781.           it affects the IPF coverpage window and all of its children IPF 
  9782.           windows. Essentially, a :docprof.-loaded communication object can 
  9783.           alter the overall behavior and appearance of IPF, such as providing 
  9784.           author-defined buttons in the control area or special message 
  9785.           handling. You can load only one communication object in this manner. 
  9786.  
  9787.        2. Through use of the :acviewport. tags (see :acviewport. 
  9788.           (Application-Controlled Window)). A communication object loaded in 
  9789.           this way will only affect the specific application-controlled window 
  9790.           and only when that window is open. Therefore, a communication object 
  9791.           loaded through an :acviewport. tag is useful for tasks such as 
  9792.           displaying video clips or bit maps associated with a given help 
  9793.           panel. However, if you want a communication object to affect the 
  9794.           overall appearance or behavior of the IPF interface for a given help 
  9795.           session, you will want to use a "global" communication object (one 
  9796.           that is loaded through the :docprof. tag). Unlike a global 
  9797.           communication object, you can load multiple :acviewport. 
  9798.           communication objects or refer to the same communication object from 
  9799.           multiple :acviewport. tags. 
  9800.  
  9801.      An acviewport communication object is called each time a window is opened. 
  9802.      A global communication object is called only once. 
  9803.  
  9804.  
  9805. ΓòÉΓòÉΓòÉ 13.3. Purpose of Communication Objects ΓòÉΓòÉΓòÉ
  9806.  
  9807. Communication objects can provide several powerful capabilities: 
  9808.  
  9809.        o  You can write PM code that handles and responds to help-related 
  9810.           messages. For this, you would use a :docprof.-loaded "global" 
  9811.           communication object. 
  9812.  
  9813.        o  You can write PM code to override the default appearance of the IPF 
  9814.           help interface.  For example, you can provide custom push buttons in 
  9815.           the control area. For this, you would use a :docprof.-loaded "global" 
  9816.           communication object. 
  9817.  
  9818.        o  You can write PM code that allows help information to include 
  9819.           function simulation, user interaction, and audio and video 
  9820.           presentations (see Controlling Windows with Applications 
  9821.           (ACVIEWPORTS)). For this, you would use an :acviewport.-loaded 
  9822.           communication object. 
  9823.  
  9824.        o  You can write PM code that changes help information (including .INF 
  9825.           files) dynamically, with help window contents generated and formatted 
  9826.           at the time when the information is displayed to the user. For this, 
  9827.           you would use a :docprof.-loaded or "global" communication object. 
  9828.           For more information about changing help information dynamically, see 
  9829.           Changing Help Information at Run Time (DDF). 
  9830.  
  9831.      Essentially, a communication object is intended to provide message 
  9832.      processing when no application is present to handle this message 
  9833.      processing. In other words, your stand-alone PM applications can provide 
  9834.      the same functionality that is supported by communication objects. 
  9835.  
  9836.      However, unlike a stand-alone application, a communication object that 
  9837.      properly handles message passing can be used by any stand-alone 
  9838.      application and can interact with other communication objects. For 
  9839.      example, a communication object that provides system call support (such as 
  9840.      querying specific details about the user's system) might be useful to a 
  9841.      broad range of applications in their online information. 
  9842.  
  9843.  
  9844. ΓòÉΓòÉΓòÉ 13.4. Understanding Communication Objects ΓòÉΓòÉΓòÉ
  9845.  
  9846. Before you begin coding, you should understand the general steps involved in 
  9847. the creation and function of a communication object. The steps are as follows: 
  9848.  
  9849.        1. IPF encounters a :docprof. or :acviewport. tag. 
  9850.  
  9851.        2. Based on the content of the tag, IPF loads a DLL and calls a function 
  9852.           that corresponds to a communication object. 
  9853.  
  9854.        3. IPF passes 2 items to the communication object: 
  9855.  
  9856.             a. A pointer to an ACVP data structure. This data structure 
  9857.                includes the following elements: 
  9858.  
  9859.  
  9860.                               ULONG  cb;         /* length of data structure              */
  9861.                               HAB    hAB;        /* anchor block handle                   */
  9862.                               HMQ    hmq;        /* handle to message queue               */
  9863.                               ULONG  ObjectID;   /* ObjectID attribute as specified in    */
  9864.                                                  /* an acviewport tag                     */
  9865.                               HWND   hWndParent; /* handle to acviewport parent window    */
  9866.                               HWND   hWndOwner;  /* handle to acviewport owner window     */
  9867.                               HWND   hWndACVP;   /* handle to acviewport                  */
  9868.  
  9869.                IPF supplies all but the last piece of information in this data 
  9870.                structure for the communication object. If the communication 
  9871.                object creates an application-controlled window, it must place 
  9872.                the handle to that window in the last element of the data 
  9873.                structure before returning to IPF.  IPF uses the handle to size 
  9874.                and position the window. 
  9875.  
  9876.                If the communication object is global (loaded by means of a 
  9877.                :docprof. tag), the last 3 items are not needed and are set to 
  9878.                null by IPF. 
  9879.  
  9880.             b. A string identified in the :docprof. or :acviewport. tag as 
  9881.                objectinfo. This is simply a generic parameter passed to the 
  9882.                communication object. Your communication object may or may not 
  9883.                use this parameter, but it should process it. 
  9884.  
  9885.        4. The communication object begins execution. It must complete the 
  9886.           following three steps, sequentially: 
  9887.  
  9888.             a. Register a window class. 
  9889.  
  9890.             b. Create a window. 
  9891.  
  9892.             c. Insert the window in the communication chain (see The 
  9893.                Communication Chain). 
  9894.  
  9895.        5. The next step depends on whether or not the communication object DLL 
  9896.           was loaded through a :docprof. tag or an :acviewport. tag. 
  9897.  
  9898.             o  If the communication object DLL was loaded through a :docprof. 
  9899.                tag, it simply returns. 
  9900.  
  9901.             o  If the communication object DLL was loaded through an 
  9902.                :acviewport. tag, the communication object passes the window 
  9903.                handle of the window it created to IPF. 
  9904.  
  9905.        6. The communication object begins message processing: 
  9906.  
  9907.             o  If the communication object DLL was loaded through :docprof. 
  9908.                tag, it must process HM_ messages and the WM_CLOSE message. 
  9909.  
  9910.             o  If the communication object DLL was loaded through an 
  9911.                :acviewport. tag, it must process: 
  9912.  
  9913.                  -  HM_ messages 
  9914.                  -  Various WM_ messages 
  9915.                  -  Optionally, other messages, dependent on the particular 
  9916.                     design of the communication object. 
  9917.  
  9918.  
  9919. ΓòÉΓòÉΓòÉ 13.4.1. Messages between IPF and the Communication Object ΓòÉΓòÉΓòÉ
  9920.  
  9921. IPF and its communication objects communicate through window and help manager 
  9922. messages. IPF communication objects, and windows that they create, can send 
  9923. messages to IPF and IPF windows for which the communication objects can get a 
  9924. handle.  Similarly, IPF can send messages to any window that a communication 
  9925. object creates. 
  9926.  
  9927. Any message that an application can send to IPF also can be sent by IPF 
  9928. communication objects. As a programmer working with communication objects, you 
  9929. will need to understand the following important help manager messages: 
  9930.  
  9931.        o  HM_CONTROL 
  9932.        o  HM_INFORM 
  9933.        o  HM_INVALIDATE_DDF_DATA 
  9934.        o  HM_NOTIFY 
  9935.        o  HM_QUERY 
  9936.        o  HM_QUERY_DDF_DATA 
  9937.        o  HM_SET_COVERPAGE_SIZE 
  9938.        o  HM_SET_OBJCOM_WINDOW 
  9939.        o  HM_SET_USERDATA 
  9940.        o  HM_UPDATE_OBJCOM_WINDOW_CHAIN 
  9941.  
  9942.      For a detailed description of these messages and other IPF messages, see 
  9943.      Help Manager Messages. 
  9944.  
  9945.  
  9946. ΓòÉΓòÉΓòÉ 13.4.2. The Communication Chain ΓòÉΓòÉΓòÉ
  9947.  
  9948. Communication objects, whether they are loaded by means of a :docprof. tag or 
  9949. an :acviewport. tag, function in a "communication chain." The chain is 
  9950. maintained through the passing of HM_ messages unidirectionally through the 
  9951. chain. 
  9952.  
  9953. IPF passes all messages to the active communication object (including, but not 
  9954. limited to, HM_ messages) as they are generated by the user's actions. The 
  9955. active communication object is then responsible for passing on any HM_ messages 
  9956. it receives through the chain to a neighboring communication object. The handle 
  9957. of the neighboring communication object window is returned by the 
  9958. HM_SET_OBJCOM_WINDOW (see Adding Your Communication Object to the Communication 
  9959. Chain). 
  9960.  
  9961. Even if you are certain that your communication object will not be used in 
  9962. combination with other communication objects, it is your responsibility to code 
  9963. your communication object contingent on the possibility that other 
  9964. communication objects may be present in the chain. Therefore, it is important 
  9965. for you to create communication objects that keep the communication chain 
  9966. intact through message passing. 
  9967.  
  9968.  
  9969. ΓòÉΓòÉΓòÉ 13.4.2.1. Making Your Communication Objects Function in the Chain ΓòÉΓòÉΓòÉ
  9970.  
  9971. As a programmer creating communication objects, you need to be certain that 
  9972. your communication object can successfully complete the following communication 
  9973. chain tasks: 
  9974.  
  9975.        1. Your communication object must add itself to the communication chain. 
  9976.  
  9977.        2. If a communication object that was added to the chain before your 
  9978.           communication object was added removes itself from the chain, your 
  9979.           communication object must respond to keep the chain intact. 
  9980.  
  9981.        3. Your communication object must be able to remove itself from the 
  9982.           chain and keep the chain intact. 
  9983.  
  9984.  
  9985. ΓòÉΓòÉΓòÉ 13.4.2.1.1. Adding Your Communication Object to the Communication Chain ΓòÉΓòÉΓòÉ
  9986.  
  9987. Even if your communication object is the only one in use, your communication 
  9988. object is still part of the communication chain. To add itself to the chain, 
  9989. your communication object must: 
  9990.  
  9991.        1. Send the help manager message HM_SET_OBJCOM_WINDOW to the window 
  9992.           PACVP->hWnd Parent. 
  9993.  
  9994.           Your communication object must pass its frame handle as the first 
  9995.           parameter. 
  9996.  
  9997.        2. Your communication object must receive and store the window handle it 
  9998.           receives in return. 
  9999.  
  10000.        3. Your communication object should pass all HM_ help manager messages 
  10001.           to that window handle. 
  10002.  
  10003.      The following code fragment illustrates this process. 
  10004.  
  10005.           #define INCL_WIN
  10006.           #define INCL_WINHELP
  10007.           #include <os2.h>
  10008.  
  10009.           #define HM_MSG_MAX (HM_MSG_BASE+0x0024)
  10010.  
  10011.           USHORT   IPFClassRegistered = 0;         /* IPF class registered flag        */
  10012.  
  10013.           /* Main Entry point */
  10014.           MRESULT EXPENTRY IPFMain (PACVP pACVP, PCH Parameter);
  10015.  
  10016.           /* Pop up error box */
  10017.           VOID Error (PCH str);
  10018.  
  10019.  
  10020.           MRESULT EXPENTRY IPFMain (PACVP pACVP, PCH Parameter)
  10021.           /* pACVP contains the following structure:
  10022.  
  10023.              typedef struct_ACVP
  10024.              {
  10025.                 ULONG  cb;                   length
  10026.                 HAB    hAB;                  anchor block handle
  10027.                 HMQ    hmq;                  messge queue handle
  10028.                 ULONG  ObjectID;             object identifier
  10029.                 HWND   hWndParent;           IPF viewport client handle
  10030.                 HWND   hWndOwner;            IPF viewport client handle
  10031.                 HWND   hWndACVP;             applications frame window hwnd
  10032.              } ACVP, *PACVP;
  10033.  
  10034.           This structure is prefilled in except for hWndACVP.  You must put your
  10035.           window handle there if you are creating an application-controlled viewport.
  10036.           If this is just a generic communication object, you do not need to fill it in.
  10037.  
  10038.           Parameter is the information passed in with the objectinfo tag.
  10039.  
  10040.           Note: You can use ObjectID to have multiple acviewports and comm objects
  10041.           use the same entry point.  Check the ObjectID to find out where you were
  10042.           called from in the IPF file. */
  10043.  
  10044.           {
  10045.               HWND  hwndFrame, hwndPrevious, hwndLatest, hwndClient;
  10046.               ULONG CtrlData = 0;
  10047.  
  10048.               Error ( Parameter );
  10049.               /* Check global to see if our window class has been registered. */
  10050.               /* if not, register it.                                         */
  10051.               if (!IPFClassRegistered)
  10052.               {
  10053.                   /* We will register our class with 4 extra bytes of information
  10054.                      so that we can place the previous object comm window handle there.
  10055.                      You might want to create a structure store here instead. */
  10056.                   if (!WinRegisterClass( pACVP->hAB,
  10057.                                          "CLASS_IPF",
  10058.                                          (PFNWP) IPF_WinProc,
  10059.                                          CS_SYNCPAINT | CS_SIZEREDRAW | CS_MOVENOTIFY,
  10060.                                          4))
  10061.                   {
  10062.                       Error ("Can not register class");
  10063.                       exit (TRUE);
  10064.                   }
  10065.                   IPFClassRegistered = 1;
  10066.               }
  10067.  
  10068.               /* Create window.  Visibility does not matter, as IPF will take care
  10069.                  of it. */
  10070.               if (!(hwndFrame = WinCreateStdWindow (pACVP->hWndParent,
  10071.                                                     WS_VISIBLE,
  10072.                                                     &CtrlData,
  10073.                                                     "CLASS_IPF",
  10074.                                                     "IPF",
  10075.                                                     0L,
  10076.                                                     0L,
  10077.                                                     0L,
  10078.                                                     &hwndClient
  10079.                                                     )))
  10080.               {
  10081.                   Error ("Can not create window");
  10082.                   return (MRESULT) TRUE;
  10083.               }
  10084.  
  10085.               /* Setup our window in the ACVP structure.  This is only necessary if
  10086.                  you are creating an acviewport. */
  10087.               pACVP->hWndACVP = hwndFrame;
  10088.  
  10089.               /* Set the current comm object window to us */
  10090.               hwndPrevious = (HWND) WinSendMsg (pACVP->hWndParent,
  10091.                                                 HM_SET_OBJCOM_WINDOW,
  10092.                                                 (MPARAM) hwndFrame,
  10093.                                                 (MPARAM)NULL);
  10094.  
  10095.               /* Query back the comm obj window */
  10096.               hwndLatest = (HWND) WinSendMsg (pACVP->hWndParent,
  10097.                                               HM_QUERY,
  10098.                                               MPFROM2SHORT ((USHORT)0, HMQW_OBJCOM_WINDOW),
  10099.                                               (MPARAM)NULL);
  10100.  
  10101.               /* double check to make sure we are in the comm chain */
  10102.               if (hwndFrame != hwndLatest)
  10103.               {
  10104.                   Error ("Can not set object communication window");
  10105.                   return (MRESULT) TRUE;
  10106.               }
  10107.  
  10108.               /* Store the previous commobj handle in window words */
  10109.               if (!WinSetWindowULong (hwndClient, QWL_USER, (ULONG) hwndPrevious))
  10110.               {
  10111.                   Error ("Can not save handle into reserved memory");
  10112.                   return (MRESULT) TRUE;
  10113.               }
  10114.               return (MRESULT) FALSE;
  10115.           }
  10116.  
  10117.           VOID Error (PCH str)
  10118.  
  10119.           {
  10120.               WinMessageBox (HWND_DESKTOP,
  10121.                              HWND_DESKTOP,
  10122.                              (PCH)str,
  10123.                              (PCH)"IPF Sample Error Message",
  10124.                              1,
  10125.                              MB_OK | MB_APPLMODAL |
  10126.                              MB_MOVEABLE | MB_ICONASTERISK);
  10127.           }
  10128.  
  10129.  
  10130. ΓòÉΓòÉΓòÉ 13.4.2.1.2. Responding to the Removal of Another Object in the Chain ΓòÉΓòÉΓòÉ
  10131.  
  10132. If a communication object that was added to the chain before your communication 
  10133. object removes itself from the chain, your communication object must respond to 
  10134. keep the chain intact. 
  10135.  
  10136. This involves several steps: 
  10137.  
  10138.        1. Your communication object must process the 
  10139.           HM_UPDATE_OBJCOM_WINDOW_CHAIN help manager message. This message 
  10140.           provides your communication object with: 
  10141.  
  10142.             a. The handle of the communication object that is removing itself 
  10143.                from the chain. 
  10144.  
  10145.             b. The window handle for the object to serve as a replacement in 
  10146.                the chain. 
  10147.  
  10148.               Your communication object does not need to respond unless the 
  10149.               first parameter, the handle of the communication object removing 
  10150.               itself, is identical to the handle returned to your communication 
  10151.               object when it initially sent a HM_SET_OBJCOM_WINDOW message to 
  10152.               add itself to the chain (see Adding Your Communication Object to 
  10153.               the Communication Chain). Your communication object should have 
  10154.               stored this handle. 
  10155.  
  10156.        2. If the second parameter returned by HM_UPDATE_OBJCOM_WINDOW_CHAIN 
  10157.           does not match the handle previously returned by 
  10158.           HM_SET_OBJCOM_WINDOW, your communication object is not affected by 
  10159.           the modification to the chain and does not need to respond other than 
  10160.           to pass on the message to the next communication object in the chain. 
  10161.  
  10162.           However, if these handles are identical, your communication object 
  10163.           has a new "neighbor" in the chain, and should begin passing all HM_ 
  10164.           help manager messages to the object identified by the handle returned 
  10165.           as the first parameter of HM_UPDATE_OBJCOM_WINDOW_CHAIN. 
  10166.  
  10167.      The following code fragment illustrates this process. 
  10168.  
  10169.           #define INCL_WIN
  10170.           #define INCL_WINHELP
  10171.           #include <os2.h>
  10172.  
  10173.           #define HM_MSG_MAX (HM_MSG_BASE+0x0024)
  10174.  
  10175.           USHORT   IPFClassRegistered = 0;         /* IPF class registered flag        */
  10176.  
  10177.           /* Window procedure */
  10178.           MRESULT EXPENTRY IPFWinProc (HWND hwnd, USHORT msg, MPARAM mp1, MPARAM mp2);
  10179.  
  10180.  
  10181.           MRESULT EXPENTRY IPFWinProc (HWND hwnd, USHORT msg, MPARAM mp1, MPARAM mp2)
  10182.           /* The window procedure will handle deleting ourselves from the chain
  10183.              as well as forwarding all standard IPF message on the the next window in
  10184.              the chain */
  10185.           {
  10186.              HWND hwndPrevious, hwndLatest;
  10187.  
  10188.              /* Get previous comm obj */
  10189.              hwndPrevious = (HWND) WinQueryWindowULong (hwnd, QWL_USER);
  10190.              /* Handle the messages you want here, but do not return unless you
  10191.                 now the message will not need to be handled by another comm obj.
  10192.                 Let the the message be forwarded on to the next comm obj.  The
  10193.                 only exception to this is if you change the cover page size.  You
  10194.                 need to return TRUE to prevent the coverpage from being resized. */
  10195.              switch (msg)
  10196.              {
  10197.                 case HM_UPDATE_OBJCOM_WINDOW_CHAIN:
  10198.                    /* If another window is being inserted, replace previous with it */
  10199.                    if (hwndPrevious == (HWND)mp1) {
  10200.                       hwndPrevious = (HWND)mp2;
  10201.                       if (!WinSetWindowULong (hwnd, QWL_USER, (ULONG) hwndPrevious)) {
  10202.                          /* Put up error message */
  10203.                          WinMessageBox (HWND_DESKTOP,
  10204.                                         HWND_DESKTOP,
  10205.                                         (PCH)"Can not save handle into reserved memory",
  10206.                                         (PCH)"IPF Sample Error Message",
  10207.                                         1,
  10208.                                         MB_OK | MB_APPLMODAL |
  10209.                                         MB_MOVEABLE | MB_ICONASTERISK);
  10210.                          break;
  10211.                       }
  10212.  
  10213.                    } else {
  10214.                       /* Otherwise simply forward the message on */
  10215.                       if (hwndPrevious != 0L) {
  10216.                          WinSendMsg (hwndPrevious, HM_UPDATE_BJCOM_WINDOW_CHAIN,
  10217.                                      (MPARAM) mp1, (MPARAM) mp2);
  10218.                       }
  10219.                    }
  10220.                    return (MPARAM) NULL;
  10221.                    break;
  10222.                 case WM_CLOSE:
  10223.                    WinDestroyWindow (WinQueryWindow (hwnd, QW_PARENT));
  10224.                    return (MPARAM) NULL;
  10225.                    break;
  10226.                 case WM_DESTROY:
  10227.                    /* Take ourselves out of the chain */
  10228.                    hwndLatest = (HWND)WinSendMsg (hwnd, HM_QUERY,
  10229.                                                   MPFROM2SHORT (0, HMQW_OBJCOM_WINDOW),
  10230.                                                   (MPARAM)NULL);
  10231.                    WinSendMsg (hwndLatest, HM_UPDATE_OBJCOM_WINDOW_CHAIN,
  10232.                                (MPARAM) WinQueryWindow (hwnd, QW_PARENT),
  10233.                                (MPARAM) hwndPrevious );
  10234.                    return (MPARAM) NULL;
  10235.                    break;
  10236.              }
  10237.              if ((msg > HM_MSG_BASE) && (msg <= HM_MSG_MAX)) {
  10238.                 return WinSendMsg( hwndPrevious, msg, mp1, mp2);
  10239.              } else {
  10240.                 return WinDefWindowProc (hwnd, msg, mp1, mp2);
  10241.              } /* endif */
  10242.           }
  10243.  
  10244.  
  10245. ΓòÉΓòÉΓòÉ 13.4.2.1.3. Removing Your Communication Object from the Chain ΓòÉΓòÉΓòÉ
  10246.  
  10247. Your communication object must be able to remove itself from the chain and keep 
  10248. the chain intact. When the communication object does remove itself, it is no 
  10249. longer the active object. This can be carried out as follows: 
  10250.  
  10251.        1. Your communication object must process the WM_DESTROY message sent by 
  10252.           IPF that corresponds to the closure of a window with which your 
  10253.           communication object is associated. 
  10254.  
  10255.        2. Your communication object must query the current object window using 
  10256.           HM_QUERY. This returns the handle of the current object window. 
  10257.  
  10258.        3. Your communication object can then send the 
  10259.           HM_UPDATE_OBJCOM_WINDOW_CHAIN message to the handle of the current 
  10260.           object window including the handle of your communication object, 
  10261.           which was returned when you added your communication object to the 
  10262.           chain (see Adding Your Communication Object to the Communication 
  10263.           Chain). 
  10264.  
  10265.      The following code fragment illustrates this process: 
  10266.  
  10267.  
  10268.                   case WM_DESTROY:
  10269.  
  10270.                       hwndPrevious = (HWND) WinQueryWindowULong (hwnd, COM_HWND);
  10271.  
  10272.                       hwndLatest = (HWND) WinSendMsg (hwnd,
  10273.                                                HM_QUERY,
  10274.                                                MPFROM2SHORT ((USHORT)0, HMQW_OBJCOM_WINDOW),
  10275.                                                NULL);
  10276.  
  10277.                       WinMessageBox (HWND_DESKTOP,
  10278.                                      HWND_DESKTOP,
  10279.                                      (PCH)str,
  10280.                                      (PCH)"IPF Sample Error Message",
  10281.                                      1,
  10282.                                      MB_OK | MB_APPLMODAL |
  10283.                                      MB_MOVEABLE | MB_ICONASTERISK);
  10284.                       WinSendMsg (hwndLatest,
  10285.                                   HM_UPDATE_OBJCOM_WINDOW_CHAIN,
  10286.                                   (MPARAM) hwndPrevious,
  10287.                                   (MPARAM) WinQueryWindow (hwnd, QW_PARENT));
  10288.  
  10289.                       rValue = FALSE;
  10290.                       break;
  10291.  
  10292.                   default:
  10293.  
  10294.                       rValue = TRUE;
  10295.                       break;
  10296.  
  10297.               }
  10298.           }
  10299.  
  10300.  
  10301. ΓòÉΓòÉΓòÉ 13.5. Changing the Coverpage Window ΓòÉΓòÉΓòÉ
  10302.  
  10303. One of the IPF customizations you can do with your communication object is 
  10304. manipulating the IPF coverpage window. 
  10305.  
  10306. When an online book is opened or when an application requests that IPF create a 
  10307. help instance, IPF creates a coverpage frame window. The coverpage window is 
  10308. the window in which all other information is displayed. IPF-controlled windows 
  10309. are children of the coverpage window, as are application-controlled windows. 
  10310.  
  10311. IPF communication objects can change the look and functionality of the 
  10312. coverpage window. For example, a communication object can change the size or 
  10313. location of the coverpage, or remove its menu bar. 
  10314.  
  10315. For HLP files, applications can change only the size of a help window. The 
  10316. application would do this by sending HM_SET_COVERPAGE_SIZE to the help instance 
  10317. created with WinCreateHelpInstance. Note that applications must not move the 
  10318. help window. 
  10319.  
  10320. For INF files, the communication object must handle the OPEN_COVERPAGE event of 
  10321. the HM_NOTIFY message, then use WinSetWindowPos to set the size and position of 
  10322. the coverpage. The coverpage window's handle is in mp2. 
  10323.  
  10324. When using WinSetWindowPos to change the position and size of the coverpage 
  10325. window, you must OR SWP_SHOW with SWP_MOVE or SWP_SIZE, or both. 
  10326.  
  10327. You must return directly from your code when you handle this event. Do not pass 
  10328. the HM_NOTIFY message on to the default window procedure. 
  10329.  
  10330. In addition to the techniques specified here for resizing and positioning the 
  10331. coverpage, once you have the handle to the coverpage you can use any of the 
  10332. other PM window manipulation techniques, such as manipulating the frame 
  10333. controls or menus. For example, to remove the coverpage's menu bar, you would 
  10334. call WinDestroyWindow in response to an OPEN_COVERPAGE event, as in the 
  10335. following example: 
  10336.  
  10337. WinDestroyWindow(WinWindowFromID((HWND) mp2, FID_MENU));
  10338.  
  10339. Use other FID_* IDs to work with other parts of the coverpage window. 
  10340.  
  10341. The code fragment in the following figure illustrates these techniques by 
  10342. changing the size and location of the coverpage and removing the menu bar. 
  10343.  
  10344. HWND hwndCoverPage;
  10345.    .
  10346.    .
  10347.    .
  10348.    /* Inside the main switch statement in your window procedure... */
  10349.    case HM_NOTIFY:
  10350.  
  10351.       switch (SHORT1FROMMP(mp1)) {
  10352.  
  10353.          case OPEN_COVERPAGE:
  10354.             hwndCoverPage = (HWND) mp2;   /* Handle to coverpage is in mp2 */
  10355.  
  10356.             /* Remove the menu */
  10357.             WinDestroyWindow(WinWindowFromID(hwndCoverPage, FID_MENU));
  10358.  
  10359.             /* Change the size and location of coverpage */
  10360.             WinSetWindowPos(hwndCoverPage, 0, 10, 10, 200, 200,
  10361.                             SWP_SIZE | SWP_MOVE | SWP_SHOW);
  10362.  
  10363.             return TRUE;
  10364.  
  10365.       } /* endswitch */
  10366.  
  10367.       break;
  10368.  
  10369.  
  10370. ΓòÉΓòÉΓòÉ 14. Controlling Windows with Applications (ACVIEWPORTS) ΓòÉΓòÉΓòÉ
  10371.  
  10372. IPF handles the formatting and display of text and graphic information within 
  10373. its windows. IPF-controlled windows are defined in the tagged source file with 
  10374. a heading tag or :link.. These windows are IPF-controlled because IPF provides 
  10375. the window procedures that control them. The content and presentation of 
  10376. information in an IPF-controlled window is limited by the functions of a 
  10377. standard OS/2 window. 
  10378.  
  10379. To create IPF-controlled windows, an author requires only tagging skills; 
  10380. however, to create application-controlled windows, an author requires both 
  10381. tagging and programming skills. 
  10382.  
  10383. Application-controlled windows are defined in the tagged source file with the 
  10384. application-controlled window tag (:acviewport.). With this tag, a window is 
  10385. controlled by a communication object (see Customizing IPF with Communication 
  10386. Objects) that has been written and compiled into the form of a dynamic link 
  10387. library (DLL). When an IPF window is displayed at execution time and 
  10388. :acviewport. is encountered, IPF passes control to the entry point in the DLL 
  10389. specified by the objectname=' ' attribute of :acviewport.. This entry point is, 
  10390. in fact, a communication object. 
  10391.  
  10392. At this point, the communication object takes control and executes the 
  10393. instructions specified in the source file. When the call returns to IPF, IPF 
  10394. sizes and positions the window on the screen as defined in the heading tag or 
  10395. :link. (see Customizing Windows). 
  10396.  
  10397. The :acviewport tag can share a panel with text and, for that matter, you can 
  10398. have more than one :acviewport tag in the same panel. 
  10399.  
  10400. In addition, an acviewport communication object can be called from more than 
  10401. one panel. The objectid= attribute enables the communication object to 
  10402. determine which help panel called it. 
  10403.  
  10404. The following figure shows the tagging to produce a split window.  In this 
  10405. example, the contents of the left window are IPF-controlled.  The contents of 
  10406. the right window are defined and controlled by the IPF communication object 
  10407. IPFMain which resides in IPF.DLL. 
  10408.  
  10409. :userdoc.
  10410. :title.Information Presentation Facility
  10411. :docprof ctrlarea=none.
  10412. :h1 res=016 scroll=none clear.Using a Mouse
  10413. .*
  10414. :link reftype=hd res=017 auto split
  10415.       vpx=left vpy=top vpcx=50% vpcy=100%
  10416.       rules=border scroll=none titlebar=none.
  10417. .*
  10418. :acviewport dll='ipf'
  10419.             objectname='IPFMain' objectid=1
  10420.             vpx=right vpy=top vpcx=50% vpcy=100%.
  10421. .*
  10422. :h2 res=017.Using a Mouse
  10423. .*
  10424. :p.You move the pointer (usually an arrow) so that it
  10425. points at the objects and actions you want to select.
  10426. :p.If you run out of room to slide the mouse, lift it up, put it
  10427. back down, and slide it again.
  10428. :p.The left-hand mouse button (or mouse button 1) is
  10429. usually used to select objects on the screen.
  10430. :p.The right-hand mouse button (or mouse button 2) is
  10431. usually used to :hp1.drag:ehp1. or move
  10432. objects around the screen.
  10433. :euserdoc.
  10434.  
  10435. The following figure shows the compiled version of the tagging shown in the 
  10436. previous figure. 
  10437.  
  10438. The left window is IPF-controlled. The right window displays an animated mouse 
  10439. whose activity is controlled by a routine in a DLL. 
  10440.  
  10441. In the previous example, IPF processes :acviewport. as follows: 
  10442.  
  10443.        1. It loads IPF.DLL and calls the procedure IPFMain.  This object name 
  10444.           is case sensitive. 
  10445.  
  10446.        2. IPFMain creates a window and registers it with IPF as an object 
  10447.           communication window. 
  10448.  
  10449.        3. When the call to IPFMain returns to IPF, IPF gives instructions to 
  10450.           display the animated mouse. 
  10451.  
  10452.      IPFMain, IPF.DLL, and the bit maps used for the animated mouse are 
  10453.      provided in the IPF sample program available with the Toolkit. 
  10454.  
  10455.  
  10456. ΓòÉΓòÉΓòÉ 14.1. Writing the Communication Object Code ΓòÉΓòÉΓòÉ
  10457.  
  10458. An IPF communication object can be structured in many ways.  Its content 
  10459. depends on the function being implemented. Application-controlled windows 
  10460. typically simulate activity that might or might not require user interaction. 
  10461.  
  10462. An example of a communication object is provided in the IPF sample program 
  10463. (available in the Toolkit), and is shown in the previous IPF-controlled window 
  10464. example. The program contains two procedures: 
  10465.  
  10466. IPFMain registers a window class for the application-controlled window, creates 
  10467. an instance of the class, and registers it with IPF as a communication object. 
  10468.  
  10469. IPFWinProc provides the animation in the application-controlled window. 
  10470. IPFWinProc is called by IPFMain procedure. 
  10471.  
  10472. #define INCL_WIN
  10473. #define INCL_GPI
  10474. #define INCL_DOS
  10475. #define INCL_DOSMODULEMGR
  10476. #define LINT_ARGS
  10477. #define DINCL_32
  10478.  
  10479. #include <OS2.H>
  10480. #include "IPF.H"
  10481.  
  10482. #define COM_HWND             4  /* Used in WinSetWindowULong              */
  10483. #define FRAMES               5  /* Number of frames in animation sequence */
  10484. #define BEEP_WARN_FREQ      60  /* Frequency of warning beep              */
  10485. #define BEEP_WARN_DUR      100  /* Duration of warning beep               */
  10486.  
  10487. USHORT   IPFClassRegistered = 0;         /* IPF class registered flag     */
  10488. HWND     hwndClient;                     /* Handle to the client window   */
  10489. HWND     hwndPrevious;                   /* Handle to the previous active */
  10490.                                          /* object communication window   */
  10491. HWND     hwndLatest;                     /* Handle to the latest active   */
  10492.                                          /* object communication window   */
  10493.  
  10494. MRESULT EXPENTRY IPFMain (PACVP pACVP, PCH Parameter);
  10495. MRESULT EXPENTRY IPFWinProc (HWND hwnd, USHORT msg, MPARAM mp1, MPARAM mp2);
  10496. VOID Error (PCH str);
  10497.  
  10498. MRESULT EXPENTRY IPFMain (PACVP pACVP, PCH Parameter)
  10499. {
  10500.  
  10501.     HWND  hwndParent;         /* Handle of parent window in IPF             */
  10502.     HWND  hwndFrame;          /* Handle to the frame                        */
  10503.     ULONG WinStyle;           /* window style for creating frame            */
  10504.     ULONG CtrlData;           /* control data for creating frame            */
  10505.  
  10506.     Parameter; /* Warning Level 3 Avoidance */
  10507.  
  10508. /** 1) Initialize **/
  10509.     if (!IPFClassRegistered)
  10510.     {
  10511.         if (!WinRegisterClass (pACVP->hAB,
  10512.                                "CLASS_IPF",
  10513.                                (PFNWP) IPFWinProc,
  10514.                                CS_SYNCPAINT | CS_SIZEREDRAW | CS_MOVENOTIFY,
  10515.                                8))
  10516.         {
  10517.             DosBeep (BEEP_WARN_FREQ, BEEP_WARN_DUR);
  10518.             exit (TRUE);
  10519.         }
  10520.         IPFClassRegistered = 1;
  10521.     }
  10522.     WinStyle = 0L;
  10523.     CtrlData = 0L;
  10524.  
  10525.     if (!(hwndFrame = WinCreateStdWindow (pACVP->hWndParent,
  10526.                                           WinStyle,
  10527.                                           &CtrlData,
  10528.                                           "CLASS_IPF",
  10529.                                           "IPF",
  10530.                                           0L,
  10531.                                           0L,
  10532.                                           0L,
  10533.                                           &hwndClient
  10534.                                           )))
  10535.     {
  10536.         Error ("Cannot create window");
  10537.         return (MRESULT) TRUE;
  10538.     }
  10539.  
  10540. /** 2) Process **/
  10541.  
  10542.     pACVP->hWndACVP = hwndFrame;
  10543.  
  10544.     hwndParent = pACVP->hWndParent;
  10545.  
  10546.     hwndPrevious = WinSendMsg (pACVP->hWndParent,
  10547.                                HM_SET_OBJCOM_WINDOW,
  10548.                                (MPARAM) hwndFrame,
  10549.                                NULL);
  10550.  
  10551.     hwndLatest = WinSendMsg (pACVP->hWndParent,
  10552.                              HM_QUERY,
  10553.                              MPFROM2SHORT (NULL, HMQW_OBJCOM_WINDOW),
  10554.                              NULL);
  10555.  
  10556.     if (hwndFrame != hwndLatest)
  10557.     {
  10558.         Error ("Cannot set object communication window");
  10559.         return (MRESULT) TRUE;
  10560.     }
  10561.  
  10562. /** 3) Finish **/
  10563.  
  10564.     if (!WinSetWindowULong (hwndClient, COM_HWND, (ULONG) hwndPrevious))
  10565.     {
  10566.         Error ("Cannot save handle into reserved memory");
  10567.         return (MRESULT) TRUE;
  10568.     }
  10569.     return (MRESULT) FALSE;
  10570. }
  10571.  
  10572. MRESULT EXPENTRY IPFWinProc (HWND hwnd, USHORT msg, MPARAM mp1, MPARAM mp2)
  10573. {
  10574.  
  10575.     static HAB      Hhab;         /* anchor block handle                    */
  10576.     static HBITMAP  hbm [5];      /* array of bitmap handles                */
  10577.     static HPS      hps;          /* presentation space                     */
  10578.     static POINTL   ptl;          /* pointl                                 */
  10579.     static HMODULE  hModule;      /* to get bitmaps from DLL resource       */
  10580.     static SHORT    index;        /* index to current bitmap to display     */
  10581.     static LONG     cxClient,
  10582.                     cyClient;     /* window size                            */
  10583.            BOOL     rValue=TRUE;  /* FALSE if the message was acted         */
  10584.                                   /* upon successfully                      */
  10585.  
  10586. /** 1) Initialize **/
  10587.  
  10588.     switch (msg)
  10589.     {
  10590.         case HM_UPDATE_OBJCOM_WINDOW_CHAIN:
  10591.  
  10592.             hwndPrevious = (HWND) WinQueryWindowULong (hwnd, COM_HWND);
  10593.  
  10594.             if (hwndPrevious == mp2)
  10595.             {
  10596.                  hwndPrevious = mp1;
  10597.  
  10598.                if (!WinSetWindowULong (hwndClient,
  10599.                                         COM_HWND,
  10600.                                         (ULONG) hwndPrevious))
  10601.                 {
  10602.                     Error ("Cannot save handle into reserved memory");
  10603.                     break;
  10604.                 }
  10605.             }
  10606.             else
  10607.             {
  10608.                 if (hwndPrevious != NULL)
  10609.                 {
  10610.                     WinSendMsg (hwndPrevious,
  10611.                                 HM_UPDATE_OBJCOM_WINDOW_CHAIN,
  10612.                                 (MPARAM) mp1,
  10613.                                 (MPARAM) mp2);
  10614.                 }
  10615.             }
  10616.  
  10617.             rValue = FALSE;
  10618.             break;
  10619.  
  10620.         case WM_CREATE:
  10621.  
  10622.             if (DosLoadModule (NULL, 0L, "IPF", &hModule))
  10623.             {
  10624.                 Error ("Cannot load module");
  10625.                 break;
  10626.             }
  10627.  
  10628.             if (!(hps = WinGetPS(hwnd)))
  10629.             {
  10630.                 Error ("Cannot get presentation space");
  10631.                 break;
  10632.             }
  10633.  
  10634.             for (index = 0; index < FRAMES; index++)
  10635.             {
  10636.                 if (!(hbm [index] = GpiLoadBitmap (hps,
  10637.                                                    hModule,
  10638.                                                    (USHORT)(IDB_FRAME1+index),
  10639.                                                    cxClient,
  10640.                                                    cyClient)))
  10641.                 {
  10642.                     Error ("Cannot load bitmap");
  10643.                     return (MRESULT) rValue;
  10644.                 }
  10645.             }
  10646.  
  10647.             WinReleasePS (hps);
  10648.  
  10649.             index = 0;
  10650.  
  10651.             if (!(Hhab = WinQueryAnchorBlock (hwnd)))
  10652.             {
  10653.                 Error ("Cannot retrieve anchor block handle");
  10654.                 break;
  10655.             }
  10656.  
  10657.             if (!WinStartTimer (Hhab, hwnd, ID_TIMER, 150))
  10658.             {
  10659.                 Error ("Cannot start timer");
  10660.                 break;
  10661.             }
  10662.  
  10663.             rValue = FALSE;
  10664.             break;
  10665.  
  10666.         case WM_TIMER:
  10667.  
  10668.             if (index++ == FRAMES-1)
  10669.             {
  10670.                 index = 0;
  10671.             }
  10672.  
  10673.             WinInvalidateRect (hwnd, NULL, FALSE);
  10674.  
  10675.             rValue = FALSE;
  10676.             break;
  10677.  
  10678. /** 2) Process **/
  10679.  
  10680.         case WM_PAINT:
  10681.  
  10682.             if (!(hps = WinBeginPaint (hwnd, NULL, NULL)))
  10683.             {
  10684.                 Error ("Cannot set presentation space for drawing");
  10685.                 break;
  10686.             }
  10687.  
  10688.             if (!WinDrawBitmap (hps,
  10689.                                 hbm [index],
  10690.                                 NULL,
  10691.                                 &ptl,
  10692.                                 CLR_NEUTRAL,
  10693.                                 CLR_BACKGROUND,
  10694.                                 DBM_NORMAL))
  10695.             {
  10696.                 Error ("Cannot draw bitmap");
  10697.                 break;
  10698.             }
  10699.  
  10700.             WinEndPaint (hps);
  10701.  
  10702.             rValue = FALSE;
  10703.             break;
  10704.  
  10705.         case WM_SIZE:
  10706.  
  10707.             cxClient = SHORT1FROMMP (mp2);
  10708.             cyClient = SHORT2FROMMP (mp2);
  10709.  
  10710.             rValue = FALSE;
  10711.             break;
  10712.  
  10713. /** 3) Finish **/
  10714.  
  10715.         case WM_CLOSE:
  10716.  
  10717.             WinDestroyWindow (WinQueryWindow (hwnd, QW_PARENT));
  10718.  
  10719.             rValue = FALSE;
  10720.             break;
  10721.  
  10722.         case WM_DESTROY:
  10723.  
  10724.             WinStopTimer (Hhab, hwnd, ID_TIMER);
  10725.  
  10726.             for (index = 0; index < 8; index++)
  10727.             {
  10728.                 GpiDeleteBitmap (hbm [index]);
  10729.             }
  10730.  
  10731.             hwndPrevious = (HWND) WinQueryWindowULong (hwnd, COM_HWND);
  10732.  
  10733.             hwndLatest = WinSendMsg (hwnd,
  10734.                                      HM_QUERY,
  10735.                                      MPFROM2SHORT (NULL, HMQW_OBJCOM_WINDOW),
  10736.                                      NULL);
  10737.  
  10738.             WinSendMsg (hwndLatest,
  10739.                         HM_UPDATE_OBJCOM_WINDOW_CHAIN,
  10740.                         (MPARAM) hwndPrevious,
  10741.                         (MPARAM) WinQueryWindow (hwnd, QW_PARENT));
  10742.  
  10743.             DosFreeModule (hModule);
  10744.  
  10745.             rValue = FALSE;
  10746.             break;
  10747.  
  10748.         default:
  10749.  
  10750.             rValue = TRUE;
  10751.             break;
  10752.  
  10753.     }
  10754.  
  10755.     return (rValue ? WinDefWindowProc (hwnd, msg, mp1, mp2) : 0L);
  10756.  
  10757. }
  10758.  
  10759.  
  10760. ΓòÉΓòÉΓòÉ 14.1.1. Using Communication Windows ΓòÉΓòÉΓòÉ
  10761.  
  10762. To position windows or graphics within an application-controlled window, the 
  10763. IPF communication object requires a communication object window. For example, 
  10764. an application-controlled window can be used to represent the workplace, with 
  10765. an interactive, simulated application window positioned on the workplace. 
  10766. However, because IPF sizes and positions the application-controlled window 
  10767. after returning from the call to a communication object, the communication 
  10768. object cannot size and position the simulated application window until after it 
  10769. has created the window and returned control to IPF. 
  10770.  
  10771. The dilemma is resolved because the communication object can receive HM_INFORM 
  10772. messages after :acviewport. has been processed by IPF and the communication 
  10773. object has created an active communication object window. Upon receiving the 
  10774. HM_INFORM message from IPF, the window procedure can then create the simulated 
  10775. application window and position it within the application-controlled window. 
  10776.  
  10777. The following C-language source code contains the communication object 
  10778. ComWindow that creates a communication window and processes messages from IPF. 
  10779.  
  10780. #define INCL_WIN
  10781. #define INCL_DOS
  10782.  
  10783. #include <os2.h>
  10784.  
  10785. /* Define ID used with reftype = inform attribute in the link tag */
  10786. /* in tagged source for help information */
  10787.  
  10788. #define SIMULATE_APPWINDOW 1000
  10789.  
  10790. MRESULT EXPENTRY ComWindowProc (HWND hwnd, USHORT msg, MPARAM mp1, MPARAM mp2);
  10791. MRESULT EXPENTRY SimWindowProc (HWND hwnd, USHORT msg, MPARAM mp1, MPARAM mp2);
  10792.  
  10793. HWND hComWindow = NULL;
  10794. HWND hSimWindow = NULL;
  10795. HWND hComClientWindow;
  10796. HWND hSimClientWindow;
  10797. HWND PreviousComWindow;
  10798. HWND PreviousHwnd;
  10799.  
  10800. USHORT EXPENTRY ComWindow (pACVP, ObjectInfo)
  10801.  
  10802. PACVP pACVP;
  10803. PCH   ObjectInfo;
  10804. {
  10805.  
  10806. ULONG FrameFlags=0L;
  10807.  
  10808. /* Register class for communication window */
  10809.  
  10810.    WinRegisterClass (pACVP->hAB,
  10811.                      "CLASS_COMM",
  10812.                      (PFNWP)ComWindowProc,
  10813.                      CS_SYNCPAINT | CS_SIZEREDRAW | CS_MOVENOTIFY, 8);
  10814.  
  10815. /* Register class for simulated application window */
  10816.  
  10817.    WinRegisterClass (pACVP->hAB,
  10818.                      "CLASS_APPSIM",
  10819.                      (PFNWP)SimWindowProc,
  10820.                      CS_SYNCPAINT | CS_SIZEREDRAW | CS_MOVENOTIFY, 4);
  10821.  
  10822. /* Create the communication window */
  10823.  
  10824. hComWindow = WinCreateStdWindow (pACVP->hWndParent,
  10825.                                  0L,
  10826.                                  &FrameFlags,
  10827.                                  (PSZ)"CLASS_COMM",
  10828.                                  NULL,
  10829.                                  0L,
  10830.                                  (HMODULE)NULL,
  10831.                                  0L,
  10832.                                  (PHWND)&hComClientWindow);
  10833.  
  10834. /* Return handle of Communication frame window to IPF */
  10835.  
  10836. pACVP->hWndACVP=hComWindow;
  10837.  
  10838. /* Send a message to IPF indicating that it should talk to our */
  10839. /* communication window */
  10840.  
  10841. PreviousComWindow = WinSendMsg (pACVP->hWndParent,
  10842.                                 HM_SET_OBJCOM_WINDOW,
  10843.                                 (MPARAM)hComWindow,
  10844.                                 (MPARAM)hComWindow);
  10845.  
  10846. /* Save handle of IPF's communication window in window word of the */
  10847. /* communication window */
  10848.  
  10849. WinSetWindowULong (hComClientWindow, 0L, (ULONG)PreviousComWindow);
  10850.  
  10851. return FALSE;
  10852. }
  10853. MRESULT EXPENTRY ComWindowProc (HWND hwnd, USHORT msg, MPARAM mp1, MPARAM mp2)
  10854. {
  10855.     HPS      hps;
  10856.     RECTL    Rect;
  10857.  
  10858.     ULONG FrameFlags = FCF_TITLEBAR   | FCF_SYSMENU |
  10859.                        FCF_SIZEBORDER | FCF_MINMAX  ;
  10860.     switch (msg)
  10861.     {
  10862.  
  10863.         case HM_INFORM:
  10864.  
  10865.             switch ((USHORT)mp1)
  10866.             {
  10867.  
  10868.                 case SIMULATE_APPWINDOW:
  10869.  
  10870.                     /* create the application window */
  10871.  
  10872.                     hSimWindow = WinCreateStdWindow (hwnd,
  10873.                                                      WS_VISIBLE,
  10874.                                                      &FrameFlags,
  10875.                                                      (PSZ)"CLASS_APPSIM",
  10876.                                                      NULL,
  10877.                                                      0L,
  10878.                                                      (HMODULE)NULL,
  10879.                                                      0L,
  10880.                                                      (PHWND)&hSimClientWindow);
  10881.  
  10882.                     WinSetWindowText (hSimWindow, "Application X");
  10883.  
  10884.                     WinSendMsg (hSimWindow,
  10885.                                 WM_SETICON,
  10886.                                 WinQuerySysPointer (HWND_DESKTOP, SPTR_APPICON,
  10887.                                 FALSE),  NULL);
  10888.  
  10889.                     /* get the size of the communication client window */
  10890.  
  10891.                     WinQueryWindowRect (hwnd, &Rect);
  10892.  
  10893.                     /* adjust the size of the application window within the  */
  10894.                     /* communication client window                           */
  10895.  
  10896.                     Rect.xLeft = Rect.xRight / 12;
  10897.                     Rect.yBottom = Rect.yTop / 5;
  10898.                     Rect.xRight = Rect.xLeft * 10;
  10899.                     Rect.yTop = Rect.yBottom * 3;
  10900.  
  10901.                     /* position the application window within the */
  10902.                     /* communication client window                */
  10903.  
  10904.                     WinSetWindowPos (hSimWindow, HWND_TOP,
  10905.                                      (SHORT)Rect.xLeft,
  10906.                                      (SHORT)Rect.yBottom,
  10907.                                      (SHORT)Rect.xRight,
  10908.                                      (SHORT)Rect.yTop,
  10909.                                      (SWP_SHOW | SWP_SIZE |
  10910.                                       SWP_MOVE | SWP_ACTIVATE));
  10911.  
  10912.                     return (MRESULT)TRUE;
  10913.             }
  10914.  
  10915.         case WM_PAINT:
  10916.  
  10917.             hps = WinBeginPaint (hwnd, (HPS)NULL, (PRECTL)NULL);
  10918.             WinQueryWindowRect (hwnd, &Rect);
  10919.             WinFillRect (hps, &Rect, CLR_RED);
  10920.             WinEndPaint (hps);
  10921.             break;
  10922.  
  10923.         case WM_CLOSE:
  10924.  
  10925.             WinDestroyWindow (WinQueryWindow (hwnd, QW_PARENT));
  10926.             return (MRESULT)TRUE;
  10927.  
  10928.         case WM_DESTROY:
  10929.  
  10930.             PreviousHwnd = (HWND)WinQueryWindowULong (hwnd, 0L);
  10931.             WinSendMsg (WinQueryWindow (hwnd, QW_PARENT),
  10932.                         HM_SET_OBJCOM_WINDOW,
  10933.                         PreviousHwnd,
  10934.                         NULL);
  10935.             break;
  10936.     }
  10937.  
  10938.     return (WinDefWindowProc (hwnd, msg, mp1, mp2));
  10939. }
  10940.  
  10941. /* Create the simulated frame window */
  10942.  
  10943. MRESULT EXPENTRY SimWindowProc(HWND hwnd, USHORT msg, MPARAM mp1, MPARAM mp2)
  10944. {
  10945.     HPS      hps;
  10946.     RECTL    Rect;
  10947.  
  10948.     switch (msg)
  10949.     {
  10950.  
  10951.         case WM_PAINT:
  10952.  
  10953.             hps = WinBeginPaint (hwnd, (HPS)NULL, (PRECTL)NULL);
  10954.             WinQueryWindowRect (hwnd, &Rect);
  10955.             WinFillRect (hps, &Rect, CLR_WHITE);
  10956.             WinEndPaint (hps);
  10957.             break;
  10958.  
  10959.         case WM_CLOSE:
  10960.  
  10961.             WinDestroyWindow (WinQueryWindow (hwnd, QW_PARENT));
  10962.             return (MRESULT)TRUE;
  10963.  
  10964.         case WM_DESTROY:
  10965.  
  10966.             PreviousHwnd = (HWND)WinQueryWindowULong (hwnd, 0L);
  10967.             WinSendMsg (WinQueryWindow (hwnd, QW_PARENT),
  10968.                         HM_SET_OBJCOM_WINDOW,
  10969.                         PreviousHwnd,
  10970.                         NULL);
  10971.             break;
  10972.     }
  10973.  
  10974.     return (WinDefWindowProc (hwnd, msg, mp1, mp2));
  10975. }
  10976.  
  10977. The following shows the tagging that communicates with the communication object 
  10978. through the reftype=inform attribute of :link.. The contents of the right 
  10979. window are defined by IPF.  The contents of the left window are defined and 
  10980. controlled by the communication object ComWindow and resides in INFORM.DLL. 
  10981.  
  10982. :userdoc.
  10983. :docprof ctrlarea=none.
  10984. :h1 id=examp5 scroll=none
  10985.     x=left y=bottom width=100% height=100%.
  10986. Interacting with Application Windows on the Workplace
  10987. .*
  10988. :link reftype=hd refid=mytxt5
  10989.       vpx=left vpy=bottom vpcx=50% vpcy=100%
  10990.       titlebar=none scroll=none auto split.
  10991. .*
  10992. :acviewport dll='inform'
  10993.             objectname='ComWindow'
  10994.             objectid=1
  10995.             objectinfo='optional'
  10996.             vpx=right vpy=bottom
  10997.             vpcx=50% vpcy=100%.
  10998. .*
  10999. .*
  11000. :link reftype=inform res=1000 auto.
  11001. :h1 hide id=mytxt5.My text
  11002. :p.
  11003. This window could contain an explanation of how to interact with
  11004. the application-controlled window displayed on the right.
  11005. :euserdoc.
  11006.  
  11007. In the previous example, IPF processes :acviewport. as follows: 
  11008.  
  11009.        1. It loads INFORM.DLL and calls the procedure ComWindow. 
  11010.        2. ComWindow passes the value of objectid= and objectinfo=.  These 
  11011.           attributes are place holders for this example. 
  11012.        3. ComWindow creates a communication window that will receive the 
  11013.           HM_INFORM messages from IPF when it processes the reftype=inform 
  11014.           attribute of :link.. 
  11015.  
  11016.           When the HM_INFORM message is sent to IPF, IPF creates and displays 
  11017.           the simulated application window. 
  11018.  
  11019.      The following figure displays the windows from the previous tagging 
  11020.      example. 
  11021.  
  11022.      An Application-Controlled Window.  The communication object window is a 
  11023.      functioning frame window. 
  11024.  
  11025.      Communication windows also are useful when the same communication object 
  11026.      is used to support multiple application-controlled windows in help 
  11027.      information.  For example, you can use the same IPF communication object 
  11028.      to represent different simulated application windows from one window to 
  11029.      another.  Using the previous examples, this is accomplished in two steps. 
  11030.  
  11031.        o  Add another :h1. window definition to the tagged source for the help 
  11032.           information.  A different number is specified in the res= attribute 
  11033.           for the :link. tag that has the reftype=inform attribute 
  11034.  
  11035.        o  Add the corresponding res= number as another possible value of the 
  11036.           parameter to the HM_INFORM message. It is processed accordingly by 
  11037.           the communication object window procedure 
  11038.  
  11039.  
  11040. ΓòÉΓòÉΓòÉ 15. Changing Help Information at Run Time (DDF) ΓòÉΓòÉΓòÉ
  11041.  
  11042. Dynamic data formatting (DDF) allows you to incorporate text, bit maps, or 
  11043. metafiles in an IPF window at execution time. You can use the dynamic data 
  11044. formatting facility in conjunction with the dynamic data format tag (:ddf.). 
  11045. The :ddf. tag functions as a request by IPF to the application for the DDF 
  11046. data, and a set of DDF application programming interface calls that provide 
  11047. primitives for formatting text. The DDF calls also allow you to incorporate bit 
  11048. maps and metafiles dynamically, and to specify a hypertext or inform link from 
  11049. DDF data to non-DDF data. 
  11050.  
  11051. IPF has no knowledge of the DDF data it displays, other than that a block of 
  11052. data has been provided to it by the application program. Therefore, DDF data 
  11053. cannot be searched or printed. In effect, DDF is a specific extension of 
  11054. application-controlled windows. When the :ddf. tag is encountered at execution 
  11055. time, IPF sends the HM_QUERY_DDF_DATA message to the application window 
  11056. procedure with which the current instance of help is associated.  IPF sends the 
  11057. message either by a WinAssociateHelpInstance request or a HM_SET_OBJCOM_WINDOW 
  11058. message. 
  11059.  
  11060.  
  11061. ΓòÉΓòÉΓòÉ 15.1. DDF and Online Help ΓòÉΓòÉΓòÉ
  11062.  
  11063. DDF data is treated differently for a help and an online document. In the case 
  11064. of a help facility, the HM_QUERY_DDF_DATA message must be processed in the 
  11065. application's window procedure. Within the processing for this message, you can 
  11066. turn on the number specified in the res= attribute of the :ddf. tag to allow 
  11067. for different processing based on which IPF window with a :ddf. tag is 
  11068. currently being displayed. 
  11069.  
  11070. Therefore, in the case of dynamic data formatting within help, it is not 
  11071. necessary to specify an application-controlled window or a separate DLL. 
  11072. However, this would also work if the application-controlled window used the 
  11073. HM_SET_OBJCOM_WINDOW message to explicitly identify the entry point specified 
  11074. in the dll=' ' and objectname=' ' attributes of the :acviewport. tag as the 
  11075. proper window procedure where the HM_QUERY_DDF_DATA message is processed. 
  11076.  
  11077.  
  11078. ΓòÉΓòÉΓòÉ 15.2. DDF and Online Documents ΓòÉΓòÉΓòÉ
  11079.  
  11080. The situation is different with an online document (as in, filetype INF). To 
  11081. display DDF data in an online document, the :ddf. tag must be specified within 
  11082. an application-controlled window. The window that actually specifies the :ddf. 
  11083. tag must be defined as a LINK AUTO SPLIT of the application-controlled window's 
  11084. parent window that is specified with a heading tag. The reason is based on the 
  11085. serialization sequence when IPF reads an .INF source file. For example, suppose 
  11086. the file is tagged as follows: 
  11087.  
  11088. :h1 res=100 x=0 y=0 width=50% height=50%.DDF Parent
  11089. :acviewport dll='test.dll' objectname='someobject' objectid='1'.
  11090. :ddf res=100.
  11091.  
  11092. The HM_QUERY_DDF_DATA message will be sent to the window procedure of VIEW, 
  11093. which does not process it, and it will be lost. However, suppose the tagging 
  11094. sequence is as follows: 
  11095.  
  11096. :h1 res=100 x=left y=top width=100% height=100% titlebar=both clear.Look here first
  11097. :acviewport dll='flight' objectname='GetName' objectid='2'.
  11098. :link reftype=hd refid=ddf1 auto split.
  11099. :h1 id=ddf1 x=50% y=top width=50% height=100% hide.ddf1
  11100. :ddf res=100.
  11101.  
  11102. The HM_QUERY_DDF_DATA message will be sent to the "GetName" window procedure, 
  11103. which can initialize and process the DDF data. Therefore, to incorporate DDF 
  11104. data in an online document, you must write a DLL to handle the processing. This 
  11105. DLL must be a global communication object. (That is, docproof-loaded) 
  11106.  
  11107. The other DDF message is the HM_INVALIDATE_DDF_DATA.  This message is sent by 
  11108. the application and informs IPF that previous dynamic data formatting (DDF) 
  11109. information is no longer valid. 
  11110.  
  11111. For information about the DDF calls, see Dynamic Data Formatting Functions. 
  11112.  
  11113.  
  11114. ΓòÉΓòÉΓòÉ 15.3. Example using DDF ΓòÉΓòÉΓòÉ
  11115.  
  11116. /* DDF Sample */
  11117.  
  11118. #define INCL_GPIPRIMITIVES
  11119. #define INCL_WINHELP
  11120. #define INCL_WIN
  11121. #define INCL_DDF
  11122. #include <os2.h>
  11123. #include "ddf.h"
  11124.  
  11125. MRESULT EXPENTRY ClientWndProc( HWND, USHORT, MPARAM, MPARAM );
  11126. VOID HelpInit( HAB hab );
  11127.  
  11128. HWND hwndHelpInstance;
  11129.  
  11130. HELPSUBTABLE helpSubTableMAIN[ ] =
  11131. {
  11132.    2, 0, 0
  11133. };
  11134.  
  11135. HELPTABLE helpTableMAIN[ ] =
  11136. {
  11137.       ID_PRIMWIN, helpSubTableMAIN, EXT_HELP_PANEL,
  11138. };
  11139.  
  11140. VOID main()
  11141. {
  11142.    static ULONG flFrameFlags = FCF_TITLEBAR | FCF_SYSMENU | FCF_TASKLIST |
  11143.                                FCF_SIZEBORDER  | FCF_SHELLPOSITION |
  11144.                                FCF_MINBUTTON | FCF_MAXBUTTON;
  11145.  
  11146.  
  11147.    HAB hab;
  11148.    HMQ hmq;
  11149.    QMSG qmsg;
  11150.    HWND hwndFrame, hwndClient;
  11151.    BOOL bReturnCode;
  11152.  
  11153.    hab = WinInitialize( 0 );             /* Get anchor block */
  11154.    hmq = WinCreateMsgQueue( hab, 0 );    /* Create message queue */
  11155.  
  11156.    bReturnCode = WinRegisterClass( hab,                   /* Anchor Block */
  11157.                                    "ClientWindow",        /* Class name   */
  11158.                                    (PFNWP) ClientWndProc, /* Window Proc  */
  11159.                                    CS_SIZEREDRAW,         /* Classstyles  */
  11160.                                    0 );                   /* Extra data   */
  11161.    hwndFrame = WinCreateStdWindow( HWND_DESKTOP,           /* parent */
  11162.                                    WS_VISIBLE,             /* window styles */
  11163.                                    &flFrameFlags,         /* FCF values */
  11164.                                    "ClientWindow",        /* class */
  11165.                                    "Press F1 for a DDF Sample", /* titlebar text */
  11166.                                    0L,                    /* client styles */
  11167.                                    NULLHANDLE,            /* resource handle */
  11168.                                    ID_PRIMWIN,            /* ID */
  11169.                                    &hwndClient );         /* return client */
  11170.  
  11171.    /* Initialize Help */
  11172.    HelpInit( hab );
  11173.    /* Associate the help instance with the window */
  11174.    WinAssociateHelpInstance( hwndHelpInstance, hwndFrame );
  11175.  
  11176.    while ( WinGetMsg( hab, &qmsg, NULLHANDLE, 0, 0 ) )    /* message loop */
  11177.        WinDispatchMsg( hab, &qmsg );
  11178.  
  11179.    /* Destroy the help instance */
  11180.    WinDestroyHelpInstance( hwndHelpInstance );
  11181.  
  11182.    WinDestroyWindow( hwndFrame );      /* destroy window        */
  11183.    WinDestroyMsgQueue( hmq );          /* destroy message queue */
  11184.    WinTerminate( hab );                /* return anchor block   */
  11185. }
  11186.  
  11187. MRESULT EXPENTRY ClientWndProc( HWND hwnd, USHORT msg, MPARAM mp1, MPARAM mp2)
  11188. {
  11189.    HPS hps;
  11190.    ULONG ulResID;
  11191.    HDDF hDDF;
  11192.    HBITMAP hbm;
  11193.    APIRET returncode;
  11194.    ERRORID errcode;
  11195.  
  11196.    switch ( msg ) {
  11197.       case HM_INFORM:
  11198.          switch (SHORT1FROMMP(mp1)) {
  11199.          case 1:
  11200.             WinMessageBox( HWND_DESKTOP, HWND_DESKTOP, "You clicked on the link",
  11201.                           "DDF Sample", 0, MB_OK);
  11202.             break;
  11203.          default:
  11204.             WinMessageBox( HWND_DESKTOP, HWND_DESKTOP, "Unknown Inform link",
  11205.                           "DDF Sample", 0, MB_OK);
  11206.            break;
  11207.          } /* endswitch */
  11208.       break;
  11209.       case HM_QUERY_DDF_DATA:
  11210.          ulResID = LONGFROMMP( mp2 );
  11211.          /* Initialize DDF */
  11212.          hDDF = DdfInitialize( hwndHelpInstance, 0L, 0L);
  11213.          /* Check res id to see which DDF line */
  11214.          switch (ulResID) {
  11215.             case 1:
  11216.                DdfPara( hDDF);
  11217.                DdfText( hDDF, "This text was placed by DDF");
  11218.                DdfPara( hDDF);
  11219.                DdfText( hDDF, "You can use ");
  11220.                DdfSetFontStyle( hDDF, FM_SEL_ITALIC);
  11221.                DdfText( hDDF, "italic, ");
  11222.                DdfSetFontStyle( hDDF, FM_SEL_BOLD);
  11223.                DdfText( hDDF, "bold, ");
  11224.                DdfSetFontStyle( hDDF, FM_SEL_UNDERSCORE);
  11225.                DdfText( hDDF, "underscore, ");
  11226.                DdfSetFontStyle( hDDF, FM_SEL_UNDERSCORE | FM_SEL_ITALIC | FM_SEL_BOLD );
  11227.                DdfText( hDDF, "or all three!");
  11228.                DdfSetFontStyle( hDDF, 0);
  11229.                DdfPara( hDDF);
  11230.                DdfText( hDDF, "How about some color?");
  11231.                DdfPara( hDDF);
  11232.                DdfSetColor( hDDF, CLR_BLUE, CLR_RED);
  11233.                DdfText( hDDF, "Red on Blue\n");
  11234.                DdfSetColor( hDDF, CLR_BLACK, CLR_PALEGRAY);
  11235.                DdfText( hDDF, "Pale Gray on Black\n");
  11236.                DdfSetColor( hDDF, CLR_DEFAULT, CLR_DEFAULT);
  11237.                DdfPara( hDDF);
  11238.                DdfSetFont( hDDF, "Courier", 100, 100);
  11239.                DdfText( hDDF, "Or a font change?");
  11240.                DdfSetFont( hDDF, NULL, 1, 1);
  11241.                DdfPara( hDDF);
  11242.                DdfSetTextAlign( hDDF, TA_CENTER);
  11243.                DdfSetFormat( hDDF, FALSE);
  11244.                DdfText( hDDF, "We can\ncenter text");
  11245.                DdfSetFormat( hDDF, TRUE);
  11246.                DdfSetTextAlign( hDDF, TA_LEFT);
  11247.                hbm = WinGetSysBitmap( HWND_DESKTOP, SBMP_FOLDER);
  11248.                DdfPara( hDDF);
  11249.                DdfBitmap( hDDF, hbm, ART_RUNIN );
  11250.                DdfText( hDDF, "Perhaps a bitmap?" );
  11251.                DdfPara( hDDF);
  11252.                DdfText( hDDF, "Or a list?");
  11253.                DdfBeginList(hDDF, 15, HMBT_FIT, HMLS7us.SINGLELINE);
  11254.                DdfListItem( hDDF, "Item 1", "Item 1 Description");
  11255.                DdfListItem( hDDF, "Item 2", "Item 2 Description");
  11256.                DdfEndList( hDDF);
  11257.                DdfPara( hDDF);
  11258.                DdfText( hDDF, "You can even create a " );
  11259.                DdfHyperText( hDDF, "link to a panel ", "2", REFERENCE_BY_RES );
  11260.                DdfText( hDDF, "or an " );
  11261.                DdfInform( hDDF, "inform link", 1 );
  11262.                /* Return the DDF handle you just created */
  11263.                return (MRESULT) hDDF;
  11264.                break;
  11265.          } /* endswitch */
  11266.          break;
  11267.       case WM_PAINT:
  11268.          hps = WinBeginPaint( hwnd, NULLHANDLE, NULL );
  11269.          GpiErase( hps );
  11270.          WinEndPaint( hps );
  11271.          return 0;
  11272.          break;
  11273.    } /* endswitch */
  11274.    return WinDefWindowProc( hwnd, msg, mp1, mp2 );
  11275. }
  11276.  
  11277. VOID HelpInit( HAB hab )
  11278. {
  11279.    HELPINIT helpinit;
  11280.  
  11281.    helpinit.cb = sizeof( HELPINIT );
  11282.    helpinit.ulReturnCode = 0L;
  11283.    helpinit.pszTutorialName = NULL;
  11284.    helpinit.phtHelpTable = (PVOID) helpTableMAIN;
  11285.    helpinit.hmodHelpTableModule = 0;
  11286.    helpinit.hmodAccelActionBarModule = 0;
  11287.    helpinit.idAccelTable = 0;
  11288.    helpinit.idActionBar = 0;
  11289.    helpinit.pszHelpWindowTitle = "Help for DDF Sample\0";
  11290.    helpinit.fShowPanelId = CMIC_HIDE_PANEL_ID;
  11291.    helpinit.pszHelpLibraryName = "DDF.HLP";
  11292.  
  11293.    hwndHelpInstance = WinCreateHelpInstance( hab, &helpinit );
  11294.    if (!hwndHelpInstance)
  11295.       WinMessageBox( HWND_DESKTOP, HWND_DESKTOP, "Help could not be initialized",
  11296.                     "DDF Sample", 0, MB_OK | MB_ERROR);
  11297.    return;
  11298. }
  11299.  
  11300.  
  11301. ΓòÉΓòÉΓòÉ 16. Creating Master Indexes and Glossaries with Applications ΓòÉΓòÉΓòÉ
  11302.  
  11303. The Workplace Shell "Mindex" software object class exploits IPF's 
  11304. functionality, providing a user object interface from which users can link to 
  11305. online helps. Your applications can instantiate these software object classes 
  11306. at run-time. 
  11307.  
  11308.  
  11309. ΓòÉΓòÉΓòÉ 16.1. Master Help Index Objects and Glossary Objects ΓòÉΓòÉΓòÉ
  11310.  
  11311. The OS/2 operating system's online documentation includes two Workplace Shell 
  11312. user objects that correspond to a single Workplace Shell software class object. 
  11313. The "Master Help Index" user object and the "Glossary" user object are 
  11314. instances of the "Mindex" object class. With the Master Help Index and the 
  11315. Glossary, users can access online help panels which include the global 
  11316. attribute in their index tagging (for more information, see Customizing Master 
  11317. Help Index and Glossary Objects). Note that this object class only works with 
  11318. online help (.HLP files), not online information (.INF files). 
  11319.  
  11320. The Mindex class is a member of the WPAbstract class, which is, in turn, a 
  11321. member of the root WPObject class. All of the WPObject classes are easily 
  11322. accessed and instantiated through the "WP Class List", provided as one of the 
  11323. PM Development Tools in the IBM Developer's Toolkit for OS/2. For additional 
  11324. information about manipulating Mindex class user objects in the Workplace Shell 
  11325. (such as copying and shadowing) see Customizing Master Help Index and Glossary 
  11326. Objects. 
  11327.  
  11328. There are three task scenarios involving Mindex class objects of particular 
  11329. interest to a programmer: 
  11330.  
  11331.        1. Adding index entries to the Master Help Index user object at 
  11332.           installation time. 
  11333.  
  11334.        2. Adding index entries to the Glossary user object at installation 
  11335.           time. 
  11336.  
  11337.        3. Instantiating a new Mindex class object with an application. For 
  11338.           example, creating a product-specific master index user object during 
  11339.           the installation of your application. 
  11340.  
  11341.      These tasks can be done with minimal programming effort. 
  11342.  
  11343.  
  11344. ΓòÉΓòÉΓòÉ 16.1.1. Adding Entries to the Master Help Index at Installation ΓòÉΓòÉΓòÉ
  11345.  
  11346. Mindex class objects such as the Master Help Index and Glossary user objects 
  11347. display index entries that have been tagged with the global attribute (see :i1. 
  11348. and :i2.  (Index)). These index entries can be placed in any .HLP file. The 
  11349. .HLP files available to a given Mindex class user object are identified in the 
  11350. object's Settings Notebook. 
  11351.  
  11352. For example, the Master Help Index user object that is installed with the OS/2 
  11353. operating system has a default "Files/Environment name(s)" setting of "HELP". 
  11354. This refers to the HELP environment variable identified in the CONFIG.SYS file. 
  11355. Therefore, if you wanted the global index entries in your .HLP files to appear 
  11356. in the Master Help Index user object, you could simply copy your .HLP files to 
  11357. directories or files specified by the HELP environment variable. 
  11358.  
  11359. The default value of HELP is: 
  11360.  
  11361. HELP=C:\OS2\HELP;C:\OS2\HELP\TUTORIAL;
  11362. Alternatively, you could modify the value of the "HELP" environment variable by 
  11363. updating CONFIG.SYS. 
  11364.  
  11365.  
  11366. ΓòÉΓòÉΓòÉ 16.1.2. Adding Entries to the Glossary at Installation ΓòÉΓòÉΓòÉ
  11367.  
  11368. Because both the Glossary and the Master Help Index user objects are simply 
  11369. Mindex class software objects, the manner in which you add entries to the 
  11370. Glossary is identical to the manner in which you add entries to the Master Help 
  11371. Index (see Adding Entries to the Master Help Index at Installation). However, 
  11372. if you check the default Settings Notebook for the Glossary user object, you 
  11373. will notice that the Glossary installed with the OS/2 operating has a default 
  11374. "Files/Environment name(s)" that is not set to the "HELP" environment variable. 
  11375. Rather, it is set to the "GLOSSARY" environment variable. Therefore, you can 
  11376. update the value of this variable in CONFIG.SYS to reflect the location of your 
  11377. .HLP files that contain global tagged index entries. Alternatively, you can 
  11378. simply copy your .HLP files to the path defined by the GLOBAL environment 
  11379. variable. The default value is: 
  11380.  
  11381. GLOSSARY=C:\OS2\HELP\GLOSS;
  11382.  
  11383.  
  11384. ΓòÉΓòÉΓòÉ 16.1.3. Creating New Mindex Class Objects ΓòÉΓòÉΓòÉ
  11385.  
  11386. To instantiate a Mindex class object (such as a product-specific index or 
  11387. glossary), you need to create the new instance of the object and pass it 
  11388. necessary setup strings. This can be done with the WinCreateObject PM function. 
  11389.  
  11390. If you need to create an instance of a Mindex class object for use by your 
  11391. application, you will probably want to do so during installation. 
  11392.  
  11393.  
  11394. ΓòÉΓòÉΓòÉ 16.1.3.1. Example- Instantiating a Mindex Class Object Using REXX ΓòÉΓòÉΓòÉ
  11395.  
  11396. Many applications are installed using the REXX procedural language. Rather than 
  11397. use the WinCreateObject function, you can use REXX's SysCreateObject function. 
  11398.  
  11399. A sample REXX implementation might resemble the following: 
  11400.  
  11401. /* Register and load the Rexx Utility Functions                  */
  11402.  
  11403. call RxFuncAdd 'SysLoadFuncs', 'RexxUtil', 'SysLoadFuncs'
  11404. call SysLoadFuncs
  11405.  
  11406. /* Create a new Mindex class object                              */
  11407. /*                                                               */
  11408. /* Call SysCreateObject Rexx Utility function, and pass it       */
  11409. /*          a class name (Mindex);                               */
  11410. /*                                                               */
  11411. /* then pass it the icon title ('My Product Index');             */
  11412. /*                                                               */
  11413. /* then pass it the folder I want the object in (<WP_DESKTOP>;   */
  11414. /*                                                               */
  11415. /* then pass it the setup string with INDEX= set to the names    */
  11416. /*          of the help files that I want to be in my index      */
  11417. /*          (in this case C:\myprod\myhelp\myprod.hlp); the */
  11418. /*          default value of INDEX is equal to the HELP          */
  11419. /*          environment variable;                                */
  11420. /*                                                               */
  11421. /* then pass it a unique object id (MYINDEX);                    */
  11422. /*                                                               */
  11423. /* then tell me if the installation was successful.              */
  11424. if SysCreateObject("Mindex", "My Product Index", "<WP_DESKTOP>",,
  11425.            "INDEX=C:\MYPROD\HELP\MYPROD.HLP; OBJECTID=<MYINDEX>")
  11426. then Say 'Installation of My Product Index was successful!'
  11427. else Say 'Installation of My Product Index failed!'
  11428.  
  11429.  
  11430. ΓòÉΓòÉΓòÉ 17. Window Functions ΓòÉΓòÉΓòÉ
  11431.  
  11432. Following is a summary of the window function calls that you would use to 
  11433. interface with IPF. 
  11434.  
  11435.      WinAssociateHelpInstance 
  11436.          Associates the help instance with the application window chain. 
  11437.  
  11438.      WinCreateHelpInstance 
  11439.          Calls the IPF help hook so that IPF can handle help requests. 
  11440.  
  11441.      WinCreateHelpTable 
  11442.          Identifies or changes the pointer to the help table in application 
  11443.          memory. 
  11444.  
  11445.      WinDestroyHelpInstance 
  11446.          Ends the window chain's association with the help instance. 
  11447.  
  11448.      WinLoadHelpTable 
  11449.          Identifies or changes the handle of the module that contains the help 
  11450.          table resource. 
  11451.  
  11452.      WinQueryHelpInstance 
  11453.          Identifies the help instance associated with a particular application 
  11454.          window chain. 
  11455.  
  11456.  
  11457. ΓòÉΓòÉΓòÉ 17.1. WinAssociateHelpInstance ΓòÉΓòÉΓòÉ
  11458.  
  11459.  
  11460. ΓòÉΓòÉΓòÉ <hidden> WinAssociateHelpInstance - Syntax ΓòÉΓòÉΓòÉ
  11461.  
  11462. /*******************************************/
  11463. /* This function associates the specified  */
  11464. /* instance of the Help Manager with the   */
  11465. /* window chain of the specified           */
  11466. /* application window.                     */
  11467. /*******************************************/
  11468.  
  11469. #define INCL_WINHELP /* Or use INCL_WIN, INCL_PM, */
  11470. #include <os2.h>
  11471.  
  11472. HWND    hwndHelpInstance;  /*  Handle of an instance of the Help Manager. */
  11473. HWND    hwndApp;           /*  Handle of an application window. */
  11474. BOOL    rc;                /*  Success indicator. */
  11475.  
  11476. rc = WinAssociateHelpInstance(hwndHelpInstance,
  11477.        hwndApp);
  11478.  
  11479.  
  11480. ΓòÉΓòÉΓòÉ <hidden> WinAssociateHelpInstance Parameter - hwndHelpInstance ΓòÉΓòÉΓòÉ
  11481.  
  11482.      hwndHelpInstance (HWND) - input 
  11483.         Handle of an instance of the Help Manager. 
  11484.  
  11485.         This is the handle returned by the WinCreateHelpInstance call. 
  11486.  
  11487.           NULLHANDLE 
  11488.              Disassociates an instance of the Help Manager from a window chain 
  11489.              when the instance has been destroyed. 
  11490.  
  11491.           Other 
  11492.              The handle of an instance of the Help Manager to be associated 
  11493.              with the application window chain. 
  11494.  
  11495.  
  11496. ΓòÉΓòÉΓòÉ <hidden> WinAssociateHelpInstance Parameter - hwndApp ΓòÉΓòÉΓòÉ
  11497.  
  11498.      hwndApp (HWND) - input 
  11499.         Handle of an application window. 
  11500.  
  11501.         The handle of the application window with which the instance of the 
  11502.         Help Manager will be associated. The instance of the Help Manager is 
  11503.         associated with the application window and any of its children or owned 
  11504.         windows. 
  11505.  
  11506.  
  11507. ΓòÉΓòÉΓòÉ <hidden> WinAssociateHelpInstance Return Value - rc ΓòÉΓòÉΓòÉ
  11508.  
  11509.      rc (BOOL) - returns 
  11510.         Success indicator. 
  11511.  
  11512.           TRUE 
  11513.              Successful completion 
  11514.           FALSE 
  11515.              Error occurred. 
  11516.  
  11517.  
  11518. ΓòÉΓòÉΓòÉ <hidden> WinAssociateHelpInstance - Parameters ΓòÉΓòÉΓòÉ
  11519.  
  11520.      hwndHelpInstance (HWND) - input 
  11521.         Handle of an instance of the Help Manager. 
  11522.  
  11523.         This is the handle returned by the WinCreateHelpInstance call. 
  11524.  
  11525.           NULLHANDLE 
  11526.              Disassociates an instance of the Help Manager from a window chain 
  11527.              when the instance has been destroyed. 
  11528.  
  11529.           Other 
  11530.              The handle of an instance of the Help Manager to be associated 
  11531.              with the application window chain. 
  11532.  
  11533.      hwndApp (HWND) - input 
  11534.         Handle of an application window. 
  11535.  
  11536.         The handle of the application window with which the instance of the 
  11537.         Help Manager will be associated. The instance of the Help Manager is 
  11538.         associated with the application window and any of its children or owned 
  11539.         windows. 
  11540.  
  11541.      rc (BOOL) - returns 
  11542.         Success indicator. 
  11543.  
  11544.           TRUE 
  11545.              Successful completion 
  11546.           FALSE 
  11547.              Error occurred. 
  11548.  
  11549.  
  11550. ΓòÉΓòÉΓòÉ <hidden> WinAssociateHelpInstance - Remarks ΓòÉΓòÉΓòÉ
  11551.  
  11552. In order to provide help, the application must associate an instance of the 
  11553. Help Manager with a chain of application windows. This association lets the 
  11554. Help Manager know which instance should provide the help function. 
  11555.  
  11556. The Help Manager traces the window chain, starting from the window where help 
  11557. is requested. The application window in the chain with the associated help 
  11558. instance will be the one with which the Help Manager communicates and next to 
  11559. which the help window is positioned, unless a HM_SET_ACTIVE_WINDOW message is 
  11560. sent to the Help Manager. If the HM_SET_ACTIVE_WINDOW message is sent to the 
  11561. Help Manager, the active window parameter is the window with which the Help 
  11562. Manager communicates. The Help Manager positions the help window next to the 
  11563. window specified as the relative window. 
  11564.  
  11565.  
  11566. ΓòÉΓòÉΓòÉ <hidden> WinAssociateHelpInstance - Related Functions ΓòÉΓòÉΓòÉ
  11567.  
  11568.        o  WinAssociateHelpInstance 
  11569.        o  WinCreateHelpInstance 
  11570.        o  WinCreateHelpTable 
  11571.        o  WinDestroyHelpInstance 
  11572.        o  WinLoadHelpTable 
  11573.        o  WinQueryHelpInstance 
  11574.  
  11575.  
  11576. ΓòÉΓòÉΓòÉ <hidden> WinAssociateHelpInstance - Related Messages ΓòÉΓòÉΓòÉ
  11577.  
  11578.        o  HM_SET_ACTIVE_WINDOW 
  11579.  
  11580.  
  11581. ΓòÉΓòÉΓòÉ <hidden> WinAssociateHelpInstance - Example Code ΓòÉΓòÉΓòÉ
  11582.  
  11583. This example shows a typical main function for an application which uses help. 
  11584. Following creation of the main application window the Help Manager is 
  11585. initialized and associated with the window.  The help table is defined in the 
  11586. application's resources. When the window is destroyed, terminating the 
  11587. application, the help instance is also destroyed. 
  11588.  
  11589. #define INCL=_WIN
  11590. #include <os2.h>
  11591.  
  11592. #define IDHT_APPLICATION        100     /* id of HELP TABLE in resource file */
  11593.  
  11594. main( int argc, char *argv[], char *envp[] )
  11595. {
  11596.    HAB  hab = WinInitialize( 0 );
  11597.    HMQ  hmq = WinCreateMsgQueue( hab, 0 );
  11598.    HWND hwnd;
  11599.    HWND hwndClient;
  11600.    HWND hwndHelp;
  11601.    QMSG qmsg;
  11602.    ULONG flStyle;
  11603.    HELPINIT helpinit;
  11604.  
  11605.    /* Setup the help initialization structure */
  11606.    helpinit.cb = sizeof( HELPINIT );
  11607.    helpinit.ulReturnCode =  0L;
  11608.    helpinit.pszTutorialName =  (PSZ)NULL;
  11609.    /* Help table in application resource */
  11610.    helpinit.phtHelpTable = (PHELPTABLE)MAKEULONG( IDHT_APPLICATION, 0xffff );
  11611.    helpinit.hmodHelpTableModule = NULLHANDLE;
  11612.    /* Default action bar and accelerators */
  11613.    helpinit.hmodAccelActionBarModule = NULLHANDLE;
  11614.    helpinit.idAccelTable = 0;
  11615.    helpinit.idActionBar = 0;
  11616.    helpinit.pszHelpWindowTitle = "APPNAME HELP";
  11617.    helpinit.fShowPanelId = CMIC_SHOW_PANEL_ID;
  11618.    helpinit.pszHelpLibraryName = "APPNAME.HLP";
  11619.  
  11620.    /* Register the class */
  11621.    if( WinRegisterClass( ... ) )
  11622.    {
  11623.       /* create the main window */
  11624.       flStyle = FCF_STANDARD;
  11625.       hwnd = WinCreateStdWindow( ... );
  11626.  
  11627.       if( hwnd )
  11628.       {
  11629.          /* Create and associate the help instance */
  11630.          hwndHelp = WinCreateHelpInstance( hab, &helpinit );
  11631.  
  11632.          if( hwndHelp && WinAssociateHelpInstance( hwndHelp, hwnd ) )
  11633.          {
  11634.             /* Process messages */
  11635.             while( WinGetMsg( hab, &qmsg, NULLHANDLE, 0, 0 ) )
  11636.             {
  11637.                WinDispatchMsg( hab, &qmsg );
  11638.             } /* endwhile */
  11639.          }
  11640.  
  11641.          /* Remove help instance - note: add                    */
  11642.          /*     WinAssociateHelpInstance( NULLHANDLE, hwnd );      */
  11643.          /* to WM_DESTROY processing to remove the association. */
  11644.          WinDestroyHelpInstance( hwndHelp );
  11645.       }
  11646.    }
  11647.  
  11648.    /* finish the cleanup and exit */
  11649.    WinDestroyMsgQueue( hmq );
  11650.    WinTerminate( hab );
  11651. }
  11652.  
  11653.  
  11654. ΓòÉΓòÉΓòÉ <hidden> WinAssociateHelpInstance - Topics ΓòÉΓòÉΓòÉ
  11655.  
  11656. Select an item: 
  11657.  
  11658. Syntax
  11659. Parameters
  11660. Returns
  11661. Remarks
  11662. Example Code
  11663. Related Functions
  11664. Related Messages
  11665.  
  11666.  
  11667. ΓòÉΓòÉΓòÉ 17.2. WinCreateHelpInstance ΓòÉΓòÉΓòÉ
  11668.  
  11669.  
  11670. ΓòÉΓòÉΓòÉ <hidden> WinCreateHelpInstance - Syntax ΓòÉΓòÉΓòÉ
  11671.  
  11672. /*******************************************/
  11673. /* This function creates an instance of    */
  11674. /* the Help Manager with which to request  */
  11675. /* Help Manager functions.                 */
  11676. /*******************************************/
  11677.  
  11678. #define INCL_WINHELP /* Or use INCL_WIN, INCL_PM, */
  11679. #include <os2.h>
  11680.  
  11681. HAB          hab;                    /*  Anchor-block handle. */
  11682. PHELPINIT    phinitHMInitStructure;  /*  Help Manager initialization structure. */
  11683. HWND         hwndhelp;               /*  Help Manager handle. */
  11684.  
  11685. hwndhelp = WinCreateHelpInstance(hab, phinitHMInitStructure);
  11686.  
  11687.  
  11688. ΓòÉΓòÉΓòÉ <hidden> WinCreateHelpInstance Parameter - hab ΓòÉΓòÉΓòÉ
  11689.  
  11690.      hab (HAB) - input 
  11691.         Anchor-block handle. 
  11692.  
  11693.         The handle of the application anchor block returned from the 
  11694.         WinInitialize function. 
  11695.  
  11696.  
  11697. ΓòÉΓòÉΓòÉ <hidden> WinCreateHelpInstance Parameter - phinitHMInitStructure ΓòÉΓòÉΓòÉ
  11698.  
  11699.      phinitHMInitStructure (PHELPINIT) - in/out 
  11700.         Help Manager initialization structure. 
  11701.  
  11702.  
  11703. ΓòÉΓòÉΓòÉ <hidden> WinCreateHelpInstance Return Value - hwndhelp ΓòÉΓòÉΓòÉ
  11704.  
  11705.      hwndhelp (HWND) - returns 
  11706.         Help Manager handle. 
  11707.  
  11708.           NULLHANDLE 
  11709.              Error occurred 
  11710.           Other 
  11711.              Help Manager handle. 
  11712.  
  11713.  
  11714. ΓòÉΓòÉΓòÉ <hidden> WinCreateHelpInstance - Parameters ΓòÉΓòÉΓòÉ
  11715.  
  11716.      hab (HAB) - input 
  11717.         Anchor-block handle. 
  11718.  
  11719.         The handle of the application anchor block returned from the 
  11720.         WinInitialize function. 
  11721.  
  11722.      phinitHMInitStructure (PHELPINIT) - in/out 
  11723.         Help Manager initialization structure. 
  11724.  
  11725.      hwndhelp (HWND) - returns 
  11726.         Help Manager handle. 
  11727.  
  11728.           NULLHANDLE 
  11729.              Error occurred 
  11730.           Other 
  11731.              Help Manager handle. 
  11732.  
  11733.  
  11734. ΓòÉΓòÉΓòÉ <hidden> WinCreateHelpInstance - Remarks ΓòÉΓòÉΓòÉ
  11735.  
  11736. If an error occurs, it is in the ulReturnCode parameter of the HELPINIT 
  11737. structure. 
  11738.  
  11739.  
  11740. ΓòÉΓòÉΓòÉ <hidden> WinCreateHelpInstance - Related Functions ΓòÉΓòÉΓòÉ
  11741.  
  11742.        o  WinAssociateHelpInstance 
  11743.        o  WinCreateHelpInstance 
  11744.        o  WinCreateHelpTable 
  11745.        o  WinDestroyHelpInstance 
  11746.        o  WinLoadHelpTable 
  11747.        o  WinQueryHelpInstance 
  11748.  
  11749.  
  11750. ΓòÉΓòÉΓòÉ <hidden> WinCreateHelpInstance - Example Code ΓòÉΓòÉΓòÉ
  11751.  
  11752. This example shows a typical main function for an application which uses help. 
  11753. Following creation of the main application window the Help Manager is 
  11754. initialized and associated with the window.  The help table is defined in the 
  11755. application's resources. When the window is destroyed, terminating the 
  11756. application, the help instance is also destroyed. 
  11757.  
  11758. #define INCL=_WIN
  11759. #include <os2.h>
  11760.  
  11761. #define IDHT_APPLICATION        100     /* id of HELP TABLE in resource file
  11762. */
  11763.  
  11764. main( int argc, char *argv[], char *envp[] )
  11765. {
  11766.    HAB  hab = WinInitialize( 0 );
  11767.    HMQ  hmq = WinCreateMsgQueue( hab, 0 );
  11768.    HWND hwnd;
  11769.    HWND hwndClient;
  11770.    HWND hwndHelp;
  11771.    QMSG qmsg;
  11772.    ULONG flStyle;
  11773.    HELPINIT helpinit;
  11774.  
  11775.    /* Setup the help initialization structure */
  11776.    helpinit.cb = sizeof( HELPINIT );
  11777.    helpinit.ulReturnCode =  0L;
  11778.    helpinit.pszTutorialName =  (PSZ)NULL;
  11779.    /* Help table in application resource */
  11780.    helpinit.phtHelpTable = (PHELPTABLE)MAKEULONG( IDHT_APPLICATION, 0xffff );
  11781.    helpinit.hmodHelpTableModule = NULLHANDLE;
  11782.    /* Default action bar and accelerators */
  11783.    helpinit.hmodAccelActionBarModule = NULLHANDLE;
  11784.    helpinit.idAccelTable = 0;
  11785.    helpinit.idActionBar = 0;
  11786.    helpinit.pszHelpWindowTitle = "APPNAME HELP";
  11787.    helpinit.fShowPanelId = CMIC_SHOW_PANEL_ID;
  11788.    helpinit.pszHelpLibraryName = "APPNAME.HLP";
  11789.  
  11790.    /* Register the class */
  11791.    if( WinRegisterClass( ... ) )
  11792.    {
  11793.       /* create the main window */
  11794.       flStyle = FCF_STANDARD;
  11795.       hwnd = WinCreateStdWindow( ... );
  11796.  
  11797.       if( hwnd )
  11798.       {
  11799.          /* Create and associate the help instance */
  11800.          hwndHelp = WinCreateHelpInstance( hab, &helpinit );
  11801.  
  11802.          if( hwndHelp && WinAssociateHelpInstance( hwndHelp, hwnd ) )
  11803.          {
  11804.             /* Process messages */
  11805.             while( WinGetMsg( hab, &qmsg, NULLHANDLE, 0, 0 ) )
  11806.             {
  11807.                WinDispatchMsg( hab, &qmsg );
  11808.             } /* endwhile */
  11809.          }
  11810.  
  11811.          /* Remove help instance - note: add                    */
  11812.          /*     WinAssociateHelpInstance( NULLHANDLE, hwnd );      */
  11813.          /* to WM_DESTROY processing to remove the association. */
  11814.          WinDestroyHelpInstance( hwndHelp );
  11815.       }
  11816.    }
  11817.  
  11818.    /* finish the cleanup and exit */
  11819.    WinDestroyMsgQueue( hmq );
  11820.    WinTerminate( hab );
  11821. }
  11822.  
  11823.  
  11824. ΓòÉΓòÉΓòÉ <hidden> WinCreateHelpInstance - Topics ΓòÉΓòÉΓòÉ
  11825.  
  11826. Select an item: 
  11827.  
  11828. Syntax
  11829. Parameters
  11830. Returns
  11831. Remarks
  11832. Example Code
  11833. Related Functions
  11834.  
  11835.  
  11836. ΓòÉΓòÉΓòÉ 17.3. WinCreateHelpTable ΓòÉΓòÉΓòÉ
  11837.  
  11838.  
  11839. ΓòÉΓòÉΓòÉ <hidden> WinCreateHelpTable - Syntax ΓòÉΓòÉΓòÉ
  11840.  
  11841. /*******************************************/
  11842. /* This function is used to identify or    */
  11843. /* change the help table.                  */
  11844. /*******************************************/
  11845.  
  11846. #define INCL_WINHELP /* Or use INCL_WIN, INCL_PM, */
  11847. #include <os2.h>
  11848.  
  11849. HWND          hwndHelpInstance;  /*  Handle of an instance of the Help Manager. */
  11850. PHELPTABLE    phtHelpTable;      /*  Help table allocated by the application. */
  11851. BOOL          rc;                /*  Success indicator. */
  11852.  
  11853. rc = WinCreateHelpTable(hwndHelpInstance,
  11854.        phtHelpTable);
  11855.  
  11856.  
  11857. ΓòÉΓòÉΓòÉ <hidden> WinCreateHelpTable Parameter - hwndHelpInstance ΓòÉΓòÉΓòÉ
  11858.  
  11859.      hwndHelpInstance (HWND) - input 
  11860.         Handle of an instance of the Help Manager. 
  11861.  
  11862.         This is the handle returned by the WinCreateHelpInstance call. 
  11863.  
  11864.  
  11865. ΓòÉΓòÉΓòÉ <hidden> WinCreateHelpTable Parameter - phtHelpTable ΓòÉΓòÉΓòÉ
  11866.  
  11867.      phtHelpTable (PHELPTABLE) - input 
  11868.         Help table allocated by the application. 
  11869.  
  11870.  
  11871. ΓòÉΓòÉΓòÉ <hidden> WinCreateHelpTable Return Value - rc ΓòÉΓòÉΓòÉ
  11872.  
  11873.      rc (BOOL) - returns 
  11874.         Success indicator. 
  11875.  
  11876.           TRUE 
  11877.              Successful completion 
  11878.           FALSE 
  11879.              Error occurred. 
  11880.  
  11881.  
  11882. ΓòÉΓòÉΓòÉ <hidden> WinCreateHelpTable - Parameters ΓòÉΓòÉΓòÉ
  11883.  
  11884.      hwndHelpInstance (HWND) - input 
  11885.         Handle of an instance of the Help Manager. 
  11886.  
  11887.         This is the handle returned by the WinCreateHelpInstance call. 
  11888.  
  11889.      phtHelpTable (PHELPTABLE) - input 
  11890.         Help table allocated by the application. 
  11891.  
  11892.      rc (BOOL) - returns 
  11893.         Success indicator. 
  11894.  
  11895.           TRUE 
  11896.              Successful completion 
  11897.           FALSE 
  11898.              Error occurred. 
  11899.  
  11900.  
  11901. ΓòÉΓòÉΓòÉ <hidden> WinCreateHelpTable - Remarks ΓòÉΓòÉΓòÉ
  11902.  
  11903. This function corresponds to the HM_CREATE_HELP_TABLE message that identifies a 
  11904. help table that is in memory. 
  11905.  
  11906.  
  11907. ΓòÉΓòÉΓòÉ <hidden> WinCreateHelpTable - Related Functions ΓòÉΓòÉΓòÉ
  11908.  
  11909.        o  WinAssociateHelpInstance 
  11910.        o  WinCreateHelpInstance 
  11911.        o  WinCreateHelpTable 
  11912.        o  WinDestroyHelpInstance 
  11913.        o  WinLoadHelpTable 
  11914.        o  WinQueryHelpInstance 
  11915.  
  11916.  
  11917. ΓòÉΓòÉΓòÉ <hidden> WinCreateHelpTable - Related Messages ΓòÉΓòÉΓòÉ
  11918.  
  11919.        o  HM_CREATE_HELP_TABLE 
  11920.  
  11921.  
  11922. ΓòÉΓòÉΓòÉ <hidden> WinCreateHelpTable - Example Code ΓòÉΓòÉΓòÉ
  11923.  
  11924. This example creates a help table in memory and passes the table to the Help 
  11925. Manager via WinCreateHelpTable.  The help instance must have been created by 
  11926. WinCreateHelpInstance. 
  11927.  
  11928. #define INCL_WINHELP
  11929. #include <os2.h>
  11930.  
  11931. /* DEFINEs for window id's, menu items, controls, panels, etc. should */
  11932. /* be inserted here or in additional include files.                   */
  11933.  
  11934. /* Subtable for the main window's help */
  11935. HELPSUBTABLE phtMainTable[] = { 2,              /* Length of each entry */
  11936.                                  /* Fill in one line for each menu item   */
  11937.                                  IDM_FILE,       PANELID_FILEMENU,
  11938.                                  IDM_FILENEW,    PANELID_FILENEW,
  11939.                                  IDM_FILEOPEN,   PANELID_FILEOPEN,
  11940.                                  IDM_FILESAVE,   PANELID_FILESAVE,
  11941.                                  IDM_FILESAVEAS, PANELID_FILESAVEAS,
  11942.                                  IDM_FILEEXIT,   PANELID_FILEEXIT };
  11943.  
  11944. /* Subtable for the dialog window's help */
  11945. HELPSUBTABLE phtDlgTable[] = { 2,             /* Length of each entry */
  11946.                                 /* Fill in one line for each control */
  11947.                                 IDC_EDITFLD,    PANELID_DLGEDITFLD,
  11948.                                 IDC_OK,         PANELID_DLGOK,
  11949.                                 IDC_CANCEL,     PANELID_DLGCANCEL,
  11950.                                 IDC_HELP,       PANELID_HELP };
  11951.  
  11952. /* Help table for the applications context sensitive help */
  11953. HELPTABLE phtHelpTable[]= { WINDOWID_MAIN, phtMainTable,
  11954. PANELID_MAINEXT,
  11955.                               WINDOWID_DLG,  phtDlgTable,  PANELID_DLGEXT,
  11956.                               0,             NULL,           0 };
  11957.  
  11958. BOOL CreateHelpTable( HWND hWnd )
  11959. {
  11960.     BOOL bSuccess = FALSE;
  11961.     HWND hwndHelp;
  11962.  
  11963.     /* Get the associated help instance */
  11964.     hwndHelp = WinQueryHelpInstance( hWnd );
  11965.  
  11966.     if( hwndHelp )
  11967.     {
  11968.         /* Pass address of help table to the Help Manager */
  11969.         bSuccess = WinCreateHelpTable( hwndHelp, phtHelpTable );
  11970.     }
  11971.  
  11972.     /* return success indicator */
  11973.     return bSuccess;
  11974. }
  11975.  
  11976.  
  11977. ΓòÉΓòÉΓòÉ <hidden> WinCreateHelpTable - Topics ΓòÉΓòÉΓòÉ
  11978.  
  11979. Select an item: 
  11980.  
  11981. Syntax
  11982. Parameters
  11983. Returns
  11984. Remarks
  11985. Example Code
  11986. Related Functions
  11987. Related Messages
  11988.  
  11989.  
  11990. ΓòÉΓòÉΓòÉ 17.4. WinDestroyHelpInstance ΓòÉΓòÉΓòÉ
  11991.  
  11992.  
  11993. ΓòÉΓòÉΓòÉ <hidden> WinDestroyHelpInstance - Syntax ΓòÉΓòÉΓòÉ
  11994.  
  11995. /*******************************************/
  11996. /* This function destroys the specified    */
  11997. /* instance of the Help Manager.           */
  11998. /*******************************************/
  11999.  
  12000. #define INCL_WINHELP /* Or use INCL_WIN, INCL_PM, */
  12001. #include <os2.h>
  12002.  
  12003. HWND    hwndHelpInstance;  /*  Handle of the instance of the Help Manager to be destroyed. */
  12004. BOOL    rc;                /*  Success indicator. */
  12005.  
  12006. rc = WinDestroyHelpInstance(hwndHelpInstance);
  12007.  
  12008.  
  12009. ΓòÉΓòÉΓòÉ <hidden> WinDestroyHelpInstance Parameter - hwndHelpInstance ΓòÉΓòÉΓòÉ
  12010.  
  12011.      hwndHelpInstance (HWND) - input 
  12012.         Handle of the instance of the Help Manager to be destroyed. 
  12013.  
  12014.         This is the handle returned by the WinCreateHelpInstance call. 
  12015.  
  12016.  
  12017. ΓòÉΓòÉΓòÉ <hidden> WinDestroyHelpInstance Return Value - rc ΓòÉΓòÉΓòÉ
  12018.  
  12019.      rc (BOOL) - returns 
  12020.         Success indicator. 
  12021.  
  12022.           TRUE 
  12023.              Successful completion 
  12024.           FALSE 
  12025.              Error occurred. 
  12026.  
  12027.  
  12028. ΓòÉΓòÉΓòÉ <hidden> WinDestroyHelpInstance - Parameters ΓòÉΓòÉΓòÉ
  12029.  
  12030.      hwndHelpInstance (HWND) - input 
  12031.         Handle of the instance of the Help Manager to be destroyed. 
  12032.  
  12033.         This is the handle returned by the WinCreateHelpInstance call. 
  12034.  
  12035.      rc (BOOL) - returns 
  12036.         Success indicator. 
  12037.  
  12038.           TRUE 
  12039.              Successful completion 
  12040.           FALSE 
  12041.              Error occurred. 
  12042.  
  12043.  
  12044. ΓòÉΓòÉΓòÉ <hidden> WinDestroyHelpInstance - Related Functions ΓòÉΓòÉΓòÉ
  12045.  
  12046.        o  WinAssociateHelpInstance 
  12047.        o  WinCreateHelpInstance 
  12048.        o  WinCreateHelpTable 
  12049.        o  WinDestroyHelpInstance 
  12050.        o  WinLoadHelpTable 
  12051.        o  WinQueryHelpInstance 
  12052.  
  12053.  
  12054. ΓòÉΓòÉΓòÉ <hidden> WinDestroyHelpInstance - Example Code ΓòÉΓòÉΓòÉ
  12055.  
  12056. This example shows a typical main function for an application which uses help. 
  12057. Following creation of the main application window the Help Manager is 
  12058. initialized and associated with the window.  The help table is defined in the 
  12059. application's resources. When the window is destroyed, terminating the 
  12060. application, the help instance is also destroyed. 
  12061.  
  12062. #define INCL=_WIN
  12063. #include <os2.h>
  12064.  
  12065. #define IDHT_APPLICATION        100     /* id of HELP TABLE in resource file
  12066. */
  12067.  
  12068. main( int argc, char *argv[], char *envp[] )
  12069. {
  12070.    HAB  hab = WinInitialize( 0 );
  12071.    HMQ  hmq = WinCreateMsgQueue( hab, 0 );
  12072.    HWND hwnd;
  12073.    HWND hwndClient;
  12074.    HWND hwndHelp;
  12075.    QMSG qmsg;
  12076.    ULONG flStyle;
  12077.    HELPINIT helpinit;
  12078.  
  12079.    /* Setup the help initialization structure */
  12080.    helpinit.cb = sizeof( HELPINIT );
  12081.    helpinit.ulReturnCode =  0L;
  12082.    helpinit.pszTutorialName =  (PSZ)NULL;
  12083.    /* Help table in application resource */
  12084.    helpinit.phtHelpTable = (PHELPTABLE)MAKEULONG( IDHT_APPLICATION, 0xffff );
  12085.    helpinit.hmodHelpTableModule = NULLHANDLE;
  12086.    /* Default action bar and accelerators */
  12087.    helpinit.hmodAccelActionBarModule = NULLHANDLE;
  12088.    helpinit.idAccelTable = 0;
  12089.    helpinit.idActionBar = 0;
  12090.    helpinit.pszHelpWindowTitle = "APPNAME HELP";
  12091.    helpinit.fShowPanelId = CMIC_SHOW_PANEL_ID;
  12092.    helpinit.pszHelpLibraryName = "APPNAME.HLP";
  12093.  
  12094.    /* Register the class */
  12095.    if( WinRegisterClass( ... ) )
  12096.    {
  12097.       /* create the main window */
  12098.       flStyle = FCF_STANDARD;
  12099.       hwnd = WinCreateStdWindow( ... );
  12100.  
  12101.       if( hwnd )
  12102.       {
  12103.          /* Create and associate the help instance */
  12104.          hwndHelp = WinCreateHelpInstance( hab, &helpinit );
  12105.  
  12106.          if( hwndHelp && WinAssociateHelpInstance( hwndHelp, hwnd ) )
  12107.          {
  12108.             /* Process messages */
  12109.             while( WinGetMsg( hab, &qmsg, NULLHANDLE, 0, 0 ) )
  12110.             {
  12111.                WinDispatchMsg( hab, &qmsg );
  12112.             } /* endwhile */
  12113.          }
  12114.  
  12115.          /* Remove help instance - note: add                    */
  12116.          /*     WinAssociateHelpInstance( NULLHANDLE, hwnd );      */
  12117.          /* to WM_DESTROY processing to remove the association. */
  12118.          WinDestroyHelpInstance( hwndHelp );
  12119.       }
  12120.    }
  12121.  
  12122.    /* finish the cleanup and exit */
  12123.    WinDestroyMsgQueue( hmq );
  12124.    WinTerminate( hab );
  12125. }
  12126.  
  12127.  
  12128. ΓòÉΓòÉΓòÉ <hidden> WinDestroyHelpInstance - Topics ΓòÉΓòÉΓòÉ
  12129.  
  12130. Select an item: 
  12131.  
  12132. Syntax
  12133. Parameters
  12134. Returns
  12135. Example Code
  12136. Related Functions
  12137.  
  12138.  
  12139. ΓòÉΓòÉΓòÉ 17.5. WinLoadHelpTable ΓòÉΓòÉΓòÉ
  12140.  
  12141.  
  12142. ΓòÉΓòÉΓòÉ <hidden> WinLoadHelpTable - Syntax ΓòÉΓòÉΓòÉ
  12143.  
  12144. /*******************************************/
  12145. /* This function identifies the module     */
  12146. /* handle and identity of the help table   */
  12147. /* to the instance of the Help Manager.    */
  12148. /*******************************************/
  12149.  
  12150. #define INCL_WINHELP /* Or use INCL_WIN, INCL_PM, */
  12151. #include <os2.h>
  12152.  
  12153. HWND       hwndHelpInstance;  /*  Handle of an instance of the Help Manager. */
  12154. ULONG      idHelpTable;       /*  Identity of the help table. */
  12155. HMODULE    Module;            /*  Handle of the module which contains the help table and help subtable resources. */
  12156. BOOL       rc;                /*  Success indicator. */
  12157.  
  12158. rc = WinLoadHelpTable(hwndHelpInstance, idHelpTable,
  12159.        Module);
  12160.  
  12161.  
  12162. ΓòÉΓòÉΓòÉ <hidden> WinLoadHelpTable Parameter - hwndHelpInstance ΓòÉΓòÉΓòÉ
  12163.  
  12164.      hwndHelpInstance (HWND) - input 
  12165.         Handle of an instance of the Help Manager. 
  12166.  
  12167.         This is the handle returned by the WinCreateHelpInstance call. 
  12168.  
  12169.  
  12170. ΓòÉΓòÉΓòÉ <hidden> WinLoadHelpTable Parameter - idHelpTable ΓòÉΓòÉΓòÉ
  12171.  
  12172.      idHelpTable (ULONG) - input 
  12173.         Identity of the help table. 
  12174.  
  12175.         It must be greater or equal to 0 and less or equal to 0xFFFF. 
  12176.  
  12177.  
  12178. ΓòÉΓòÉΓòÉ <hidden> WinLoadHelpTable Parameter - Module ΓòÉΓòÉΓòÉ
  12179.  
  12180.      Module (HMODULE) - input 
  12181.         Handle of the module which contains the help table and help subtable 
  12182.         resources. 
  12183.  
  12184.           NULLHANDLE 
  12185.              Use the resources file for the application. 
  12186.           Other 
  12187.              The module handle returned by the DosLoadModule or 
  12188.              DosQueryModuleHandle call referencing a dynamic-link library 
  12189.              containing the help resources. 
  12190.  
  12191.  
  12192. ΓòÉΓòÉΓòÉ <hidden> WinLoadHelpTable Return Value - rc ΓòÉΓòÉΓòÉ
  12193.  
  12194.      rc (BOOL) - returns 
  12195.         Success indicator. 
  12196.  
  12197.           TRUE 
  12198.              Successful completion 
  12199.           FALSE 
  12200.              Error occurred. 
  12201.  
  12202.  
  12203. ΓòÉΓòÉΓòÉ <hidden> WinLoadHelpTable - Parameters ΓòÉΓòÉΓòÉ
  12204.  
  12205.      hwndHelpInstance (HWND) - input 
  12206.         Handle of an instance of the Help Manager. 
  12207.  
  12208.         This is the handle returned by the WinCreateHelpInstance call. 
  12209.  
  12210.      idHelpTable (ULONG) - input 
  12211.         Identity of the help table. 
  12212.  
  12213.         It must be greater or equal to 0 and less or equal to 0xFFFF. 
  12214.  
  12215.      Module (HMODULE) - input 
  12216.         Handle of the module which contains the help table and help subtable 
  12217.         resources. 
  12218.  
  12219.           NULLHANDLE 
  12220.              Use the resources file for the application. 
  12221.           Other 
  12222.              The module handle returned by the DosLoadModule or 
  12223.              DosQueryModuleHandle call referencing a dynamic-link library 
  12224.              containing the help resources. 
  12225.  
  12226.      rc (BOOL) - returns 
  12227.         Success indicator. 
  12228.  
  12229.           TRUE 
  12230.              Successful completion 
  12231.           FALSE 
  12232.              Error occurred. 
  12233.  
  12234.  
  12235. ΓòÉΓòÉΓòÉ <hidden> WinLoadHelpTable - Remarks ΓòÉΓòÉΓòÉ
  12236.  
  12237. An application specifies or changes the handle of the module which contains the 
  12238. help table or the identity of the help table. 
  12239.  
  12240. This function corresponds to the HM_LOAD_HELP_TABLE message that identifies the 
  12241. identifier of a help table and the handle of the module which contains the help 
  12242. table and its associated help subtables. 
  12243.  
  12244.  
  12245. ΓòÉΓòÉΓòÉ <hidden> WinLoadHelpTable - Related Functions ΓòÉΓòÉΓòÉ
  12246.  
  12247.        o  WinAssociateHelpInstance 
  12248.        o  WinCreateHelpInstance 
  12249.        o  WinCreateHelpTable 
  12250.        o  WinDestroyHelpInstance 
  12251.        o  WinLoadHelpTable 
  12252.        o  WinQueryHelpInstance 
  12253.  
  12254.  
  12255. ΓòÉΓòÉΓòÉ <hidden> WinLoadHelpTable - Related Messages ΓòÉΓòÉΓòÉ
  12256.  
  12257.        o  HM_LOAD_HELP_TABLE 
  12258.  
  12259.  
  12260. ΓòÉΓòÉΓòÉ <hidden> WinLoadHelpTable - Example Code ΓòÉΓòÉΓòÉ
  12261.  
  12262. BOOL LoadHelpTable( HWND hWnd, USHORT usResource, PSZ pszModuleName )
  12263. {
  12264.     BOOL bSuccess = FALSE;
  12265.     HMODULE hmodule;
  12266.     HWND hwndHelp;
  12267.     PSZ  pszObjNameBuf[ 80 ];
  12268.  
  12269.     /* Get the DLL loaded */
  12270.     if( !DosLoadModule( pszObjNameBuf, sizeof( pszObjNameBuf ),
  12271.                    pszModuleName, &hmodule ) )
  12272.     {
  12273.         /* Get the associated help instance */
  12274.         hwndHelp = WinQueryHelpInstance( hWnd );
  12275.  
  12276.         if( hwndHelp )
  12277.         {
  12278.             /* Pass address of help table to the Help Manager */
  12279.             bSuccess = WinLoadHelpTable( hwndHelp, usResource, hmodule );
  12280.         }
  12281.     }
  12282.  
  12283.     /* Return success indicator */
  12284.     return bSuccess;
  12285. }
  12286.  
  12287.  
  12288. ΓòÉΓòÉΓòÉ <hidden> WinLoadHelpTable - Topics ΓòÉΓòÉΓòÉ
  12289.  
  12290. Select an item: 
  12291.  
  12292. Syntax
  12293. Parameters
  12294. Returns
  12295. Remarks
  12296. Example Code
  12297. Related Functions
  12298. Related Messages
  12299.  
  12300.  
  12301. ΓòÉΓòÉΓòÉ 17.6. WinQueryHelpInstance ΓòÉΓòÉΓòÉ
  12302.  
  12303.  
  12304. ΓòÉΓòÉΓòÉ <hidden> WinQueryHelpInstance - Syntax ΓòÉΓòÉΓòÉ
  12305.  
  12306. /*******************************************/
  12307. /* This function enables the application   */
  12308. /* to query the instance of the Help       */
  12309. /* Manager associated with the             */
  12310. /* application-supplied window handle.     */
  12311. /*******************************************/
  12312.  
  12313. #define INCL_WINHELP /* Or use INCL_WIN, INCL_PM, */
  12314. #include <os2.h>
  12315.  
  12316. HWND    hwndApp;   /*  Handle of the application window. */
  12317. HWND    hwndHelp;  /*  Help Manager window handle. */
  12318.  
  12319. hwndHelp = WinQueryHelpInstance(hwndApp);
  12320.  
  12321.  
  12322. ΓòÉΓòÉΓòÉ <hidden> WinQueryHelpInstance Parameter - hwndApp ΓòÉΓòÉΓòÉ
  12323.  
  12324.      hwndApp (HWND) - input 
  12325.         Handle of the application window. 
  12326.  
  12327.  
  12328. ΓòÉΓòÉΓòÉ <hidden> WinQueryHelpInstance Return Value - hwndHelp ΓòÉΓòÉΓòÉ
  12329.  
  12330.      hwndHelp (HWND) - returns 
  12331.         Help Manager window handle. 
  12332.  
  12333.           NULLHANDLE 
  12334.              No Help Manager instance is associated with the application 
  12335.              window. 
  12336.           Other 
  12337.              Help Manager window handle. 
  12338.  
  12339.  
  12340. ΓòÉΓòÉΓòÉ <hidden> WinQueryHelpInstance - Parameters ΓòÉΓòÉΓòÉ
  12341.  
  12342.      hwndApp (HWND) - input 
  12343.         Handle of the application window. 
  12344.  
  12345.      hwndHelp (HWND) - returns 
  12346.         Help Manager window handle. 
  12347.  
  12348.           NULLHANDLE 
  12349.              No Help Manager instance is associated with the application 
  12350.              window. 
  12351.           Other 
  12352.              Help Manager window handle. 
  12353.  
  12354.  
  12355. ΓòÉΓòÉΓòÉ <hidden> WinQueryHelpInstance - Remarks ΓòÉΓòÉΓòÉ
  12356.  
  12357. The Help Manager first traces the parent window chain until it is NULLHANDLE or 
  12358. HWND_DESKTOP. Then Help Manager traces the owner chain. If a parent of the 
  12359. owner window exists, the trace begins again with the parent chain. 
  12360.  
  12361. The window chain will be traced until the Help Manager finds an instance of the 
  12362. Help Manager or until both the parent and owner windows are NULLHANDLE or 
  12363. HWND_DESKTOP. 
  12364.  
  12365.  
  12366. ΓòÉΓòÉΓòÉ <hidden> WinQueryHelpInstance - Related Functions ΓòÉΓòÉΓòÉ
  12367.  
  12368.        o  WinAssociateHelpInstance 
  12369.        o  WinCreateHelpInstance 
  12370.        o  WinCreateHelpTable 
  12371.        o  WinDestroyHelpInstance 
  12372.        o  WinLoadHelpTable 
  12373.        o  WinQueryHelpInstance 
  12374.  
  12375.  
  12376. ΓòÉΓòÉΓòÉ <hidden> WinQueryHelpInstance - Example Code ΓòÉΓòÉΓòÉ
  12377.  
  12378. This example shows the use of the WinQueryHelpInstance call during the 
  12379. processing of a WM_INITMENU message in order to obtain the handle for sending 
  12380. an HM_SET_ACTIVE_WINDOW message. 
  12381.  
  12382. #define INCL_WIN
  12383. #include <os2.h>
  12384.  
  12385. MRESULT wm_initmenu( HWND hWnd, ULONG ulMsg, MPARAM mp1, MPARAM mp2 )
  12386. {
  12387.    /* Send message to establish the current window's parent      */
  12388.    /* as the active help window.                                 */
  12389.    WinSendMsg( WinQueryHelpInstance( hWnd ),
  12390.                HM_SET_ACTIVE_WINDOW,
  12391.                (MPARAM)WinQueryWindow( hWnd, QW_PARENT ),
  12392.                (MPARAM)WinQueryWindow( hWnd, QW_PARENT ) );
  12393.  
  12394.    /* Pass message on for default processing                     */
  12395.    return WinDefWindowProc( hWnd, ulMsg, mp1, mp2 );
  12396. }
  12397.  
  12398.  
  12399. ΓòÉΓòÉΓòÉ <hidden> WinQueryHelpInstance - Topics ΓòÉΓòÉΓòÉ
  12400.  
  12401. Select an item: 
  12402.  
  12403. Syntax
  12404. Parameters
  12405. Returns
  12406. Remarks
  12407. Example Code
  12408. Related Functions
  12409.  
  12410.  
  12411. ΓòÉΓòÉΓòÉ 18. Dynamic Data Formatting Functions ΓòÉΓòÉΓòÉ
  12412.  
  12413. The application can also use the window to establish a dialog with the user, 
  12414. and format text responses in the window by calling dynamic data formatting 
  12415. (DDF) routines. The DDF functions provide limited formatting of text at run 
  12416. time. 
  12417.  
  12418. Warning: Users can not print or search DDF data. 
  12419.  
  12420. Following is a summary of the DDF calls that you can use in your Presentation 
  12421. Manager application. 
  12422.  
  12423.      DdfBeginList 
  12424.          Begins a definition list in the DDF buffer. 
  12425.  
  12426.      DdfBitmap 
  12427.          Places a reference to a bit map in the DDF buffer. 
  12428.  
  12429.      DdfEndList 
  12430.          Terminates the definition list initialized by DdfBeginList. 
  12431.  
  12432.      DdfHyperText 
  12433.          Defines a hypertext link to another window. 
  12434.  
  12435.      DdfInform 
  12436.          Defines a hypertext inform link. 
  12437.  
  12438.      DdfInitialize 
  12439.          Initializes the IPF internal structures for a DDF facility and returns 
  12440.          a DDF handle. 
  12441.  
  12442.      DdfListItem 
  12443.          Inserts a definition list entry item in the DDF buffer. 
  12444.  
  12445.      DdfMetafile 
  12446.          Places a reference to a metafile into the DDF buffer. 
  12447.  
  12448.      DdfPara 
  12449.          Creates a paragraph within the DDF buffer. 
  12450.  
  12451.      DdfSetColor 
  12452.          Sets the background and foreground colors of the displayed text. 
  12453.  
  12454.      DdfSetFont 
  12455.          Specifies a text font (Courier) in the DDF buffer. 
  12456.  
  12457.      DdfSetFontStyle 
  12458.          Specifies a text font (bold face) in the DDF buffer. 
  12459.  
  12460.      DdfSetFormat 
  12461.          Turns formatting off or on. 
  12462.  
  12463.      DdfSetTextAlign 
  12464.          Defines whether left, center, or right text justification is to be 
  12465.          used when text formatting is off. 
  12466.  
  12467.      DdfText 
  12468.          Adds text to the DDF buffer. 
  12469.  
  12470.  
  12471. ΓòÉΓòÉΓòÉ 18.1. DdfBeginList ΓòÉΓòÉΓòÉ
  12472.  
  12473.  
  12474. ΓòÉΓòÉΓòÉ <hidden> DdfBeginList - Syntax ΓòÉΓòÉΓòÉ
  12475.  
  12476. /*******************************************/
  12477. /* This function begins a definition list  */
  12478. /* in the DDF buffer; it corresponds to    */
  12479. /* the :dl. (definition list) tag.         */
  12480. /*******************************************/
  12481.  
  12482. #define INCL_DDF
  12483. #include <os2.h>
  12484.  
  12485. HDDF     hddf;        /*  Handle to DDF returned by DdfInitialize. */
  12486. ULONG    ulWidthDT;   /*  Width of the definition term. */
  12487. ULONG    fBreakType;  /*  Type of line break to use. */
  12488. ULONG    fSpacing;    /*  Spacing between definitions. */
  12489. BOOL     rc;          /*  Success indicator. */
  12490.  
  12491. rc = DdfBeginList(hddf, ulWidthDT, fBreakType,
  12492.        fSpacing);
  12493.  
  12494.  
  12495. ΓòÉΓòÉΓòÉ <hidden> DdfBeginList Parameter - hddf ΓòÉΓòÉΓòÉ
  12496.  
  12497.      hddf (HDDF) - input 
  12498.         Handle to DDF returned by DdfInitialize. 
  12499.  
  12500.  
  12501. ΓòÉΓòÉΓòÉ <hidden> DdfBeginList Parameter - ulWidthDT ΓòÉΓòÉΓòÉ
  12502.  
  12503.      ulWidthDT (ULONG) - input 
  12504.         Width of the definition term. 
  12505.  
  12506.  
  12507. ΓòÉΓòÉΓòÉ <hidden> DdfBeginList Parameter - fBreakType ΓòÉΓòÉΓòÉ
  12508.  
  12509.      fBreakType (ULONG) - input 
  12510.         Type of line break to use. 
  12511.  
  12512.         The following constants may be specified: 
  12513.  
  12514.           HMBT_ALL 
  12515.              Start all definition descriptions on the next line, regardless of 
  12516.              the actual lengths of definition terms. 
  12517.  
  12518.           HMBT_FIT 
  12519.              Start definition description on the next line only when the 
  12520.              definition term is longer than the width specified. 
  12521.  
  12522.           HMBT_NONE 
  12523.              Do not start the definition description on the next line, even 
  12524.              when the definition term is longer than the width specified. 
  12525.  
  12526.  
  12527. ΓòÉΓòÉΓòÉ <hidden> DdfBeginList Parameter - fSpacing ΓòÉΓòÉΓòÉ
  12528.  
  12529.      fSpacing (ULONG) - input 
  12530.         Spacing between definitions. 
  12531.  
  12532.         Only the following constants may be specified: 
  12533.  
  12534.           HMLS_SINGLELINE 
  12535.              Do not insert a blank line between each definition description and 
  12536.              the next definition term. 
  12537.  
  12538.           HMLS_DOUBLELINE 
  12539.              Insert a blank line between each definition description and the 
  12540.              next definition term. 
  12541.  
  12542.  
  12543. ΓòÉΓòÉΓòÉ <hidden> DdfBeginList Return Value - rc ΓòÉΓòÉΓòÉ
  12544.  
  12545.      rc (BOOL) - returns 
  12546.         Success indicator. 
  12547.  
  12548.           TRUE 
  12549.              Successful completion 
  12550.           FALSE 
  12551.              Error occurred. 
  12552.  
  12553.  
  12554. ΓòÉΓòÉΓòÉ <hidden> DdfBeginList - Parameters ΓòÉΓòÉΓòÉ
  12555.  
  12556.      hddf (HDDF) - input 
  12557.         Handle to DDF returned by DdfInitialize. 
  12558.  
  12559.      ulWidthDT (ULONG) - input 
  12560.         Width of the definition term. 
  12561.  
  12562.      fBreakType (ULONG) - input 
  12563.         Type of line break to use. 
  12564.  
  12565.         The following constants may be specified: 
  12566.  
  12567.           HMBT_ALL 
  12568.              Start all definition descriptions on the next line, regardless of 
  12569.              the actual lengths of definition terms. 
  12570.  
  12571.           HMBT_FIT 
  12572.              Start definition description on the next line only when the 
  12573.              definition term is longer than the width specified. 
  12574.  
  12575.           HMBT_NONE 
  12576.              Do not start the definition description on the next line, even 
  12577.              when the definition term is longer than the width specified. 
  12578.  
  12579.      fSpacing (ULONG) - input 
  12580.         Spacing between definitions. 
  12581.  
  12582.         Only the following constants may be specified: 
  12583.  
  12584.           HMLS_SINGLELINE 
  12585.              Do not insert a blank line between each definition description and 
  12586.              the next definition term. 
  12587.  
  12588.           HMLS_DOUBLELINE 
  12589.              Insert a blank line between each definition description and the 
  12590.              next definition term. 
  12591.  
  12592.      rc (BOOL) - returns 
  12593.         Success indicator. 
  12594.  
  12595.           TRUE 
  12596.              Successful completion 
  12597.           FALSE 
  12598.              Error occurred. 
  12599.  
  12600.  
  12601. ΓòÉΓòÉΓòÉ <hidden> DdfBeginList - Remarks ΓòÉΓòÉΓòÉ
  12602.  
  12603. Once this function has been called, use of any DDF function other than 
  12604. DdfListItem, DdfSetColor, and DdfEndList may produce unpredictable results. 
  12605.  
  12606.  
  12607. ΓòÉΓòÉΓòÉ <hidden> DdfBeginList - Errors ΓòÉΓòÉΓòÉ
  12608.  
  12609. Possible returns from WinGetLastError 
  12610.  
  12611.      HMERR_DDF_MEMORY (0x3001) 
  12612.         Not enough memory is available. 
  12613.  
  12614.      HMERR_DDF_LIST_UNCLOSED (0x3007) 
  12615.         An attempt was made to nest a list. 
  12616.  
  12617.      HMERR_DDF_LIST_BREAKTYPE (0x3009) 
  12618.         The value of BreakType is not valid. 
  12619.  
  12620.      HMERR_DDF_LIST_SPACING (0x300A) 
  12621.         The value for Spacing is not valid. 
  12622.  
  12623.  
  12624. ΓòÉΓòÉΓòÉ <hidden> DdfBeginList - Related Functions ΓòÉΓòÉΓòÉ
  12625.  
  12626.        o  DdfBeginList 
  12627.        o  DdfBitmap 
  12628.        o  DdfEndList 
  12629.        o  DdfHyperText 
  12630.        o  DdfInform 
  12631.        o  DdfInitialize 
  12632.        o  DdfListItem 
  12633.        o  DdfMetafile 
  12634.        o  DdfPara 
  12635.        o  DdfSetColor 
  12636.        o  DdfSetFont 
  12637.        o  DdfSetFontStyle 
  12638.        o  DdfSetFormat 
  12639.        o  DdfSetTextAlign 
  12640.        o  DdfText 
  12641.  
  12642.  
  12643. ΓòÉΓòÉΓòÉ <hidden> DdfBeginList - Example Code ΓòÉΓòÉΓòÉ
  12644.  
  12645. After initializing a DDF buffer with DdfInitialize, the example uses 
  12646. DdfBeginList to indicate the beginning of a definition list in the DDF buffer 
  12647. (this corresponds to the IPF dl tag). For a more detailed example and 
  12648. discussion of initializing DDF, see the DdfInitialize sample. 
  12649.  
  12650. #define INCL_WINWINDOWMGR       /* General window management    */
  12651. #define INCL_WINMESSAGEMGR      /* Message management           */
  12652. #define INCL_DDF                /* Dynamic Data Facility        */
  12653. #include <os2.h>
  12654. #include <pmhelp.h>
  12655.  
  12656. struct _LISTITEM        /* definition list                      */
  12657. {
  12658.     PSZ Term;
  12659.     PSZ Desc;
  12660. } Definition[2] = {{"MVS", "Multiple Virtual System"},
  12661.                    {"VM",  "Virtual Machine"}};
  12662.  
  12663. MRESULT WindowProc( HWND hwnd, ULONG ulMsg, MPARAM mp1, MPARAM mp2)
  12664. {
  12665.  
  12666.     HWND   hwndParent;
  12667.     HWND   hwndInstance;
  12668.     HDDF   hDdf;            /* DDF handle                           */
  12669.     SHORT  i;               /* loop index                           */
  12670.  
  12671.     switch( ulMsg )
  12672.     {
  12673.     case HM_QUERY_DDF_DATA:
  12674.         /* get the help instance */
  12675.         hwndParent = WinQueryWindow( hwnd, QW_PARENT );
  12676.         hwndParent = WinQueryWindow( hwndParent, QW_PARENT );
  12677.         hwndInstance = (HWND)WinSendMsg( hwndParent, HM_QUERY,
  12678.                                  MPFROMSHORT( HMQW_INSTANCE ), NULL );
  12679.  
  12680.         /* Allocate 1K Buffer (default)  */
  12681.         hDdf = DdfInitialize(
  12682.                    hwndInstance,  /* Handle of help instance */
  12683.                    0L,            /* Default buffer size     */
  12684.                    0L             /* Default increment       */
  12685.                    );
  12686.  
  12687.         if (hDdf == NULLHANDLE)       /* Check return code       */
  12688.         {
  12689.             return (MRESULT)FALSE;
  12690.         }
  12691.  
  12692.         /* begin definition list */
  12693.         if (!DdfBeginList(hDdf, 3L, HMBT_ALL, HMLS_SINGLELINE))
  12694.         {
  12695.             return (MRESULT)FALSE;
  12696.         }
  12697.  
  12698.         /* insert 2 entries into definition list */
  12699.         for (i=0; i < 2; i++)
  12700.         {
  12701.             if (!DdfListItem(hDdf, Definition[i].Term,
  12702.                                    Definition[i].Desc))
  12703.             {
  12704.                return (MRESULT)FALSE;
  12705.             }
  12706.         }
  12707.  
  12708.         /* terminate definition list */
  12709.         if (!DdfEndList(hDdf))
  12710.         {
  12711.             return (MRESULT)FALSE;
  12712.         }
  12713.  
  12714.         return (MRESULT)hDdf;
  12715.     }
  12716. }
  12717.  
  12718.  
  12719. ΓòÉΓòÉΓòÉ <hidden> DdfBeginList - Topics ΓòÉΓòÉΓòÉ
  12720.  
  12721. Select an item: 
  12722.  
  12723. Syntax
  12724. Parameters
  12725. Returns
  12726. Errors
  12727. Remarks
  12728. Example Code
  12729. Related Functions
  12730.  
  12731.  
  12732. ΓòÉΓòÉΓòÉ 18.2. DdfBitmap ΓòÉΓòÉΓòÉ
  12733.  
  12734.  
  12735. ΓòÉΓòÉΓòÉ <hidden> DdfBitmap - Syntax ΓòÉΓòÉΓòÉ
  12736.  
  12737. /*******************************************/
  12738. /* This function places a reference to a   */
  12739. /* bit map in the DDF buffer.              */
  12740. /*******************************************/
  12741.  
  12742. #define INCL_DDF
  12743. #include <os2.h>
  12744.  
  12745. HDDF       hddf;    /*  Handle to DDF returned by DdfInitialize. */
  12746. HBITMAP    hbm;     /*  Standard Presentation Manager bit map handle. */
  12747. ULONG      fAlign;  /*  Text justification flag. */
  12748. BOOL       rc;      /*  Success indicator. */
  12749.  
  12750. rc = DdfBitmap(hddf, hbm, fAlign);
  12751.  
  12752.  
  12753. ΓòÉΓòÉΓòÉ <hidden> DdfBitmap Parameter - hddf ΓòÉΓòÉΓòÉ
  12754.  
  12755.      hddf (HDDF) - input 
  12756.         Handle to DDF returned by DdfInitialize. 
  12757.  
  12758.  
  12759. ΓòÉΓòÉΓòÉ <hidden> DdfBitmap Parameter - hbm ΓòÉΓòÉΓòÉ
  12760.  
  12761.      hbm (HBITMAP) - input 
  12762.         Standard Presentation Manager bit map handle. 
  12763.  
  12764.  
  12765. ΓòÉΓòÉΓòÉ <hidden> DdfBitmap Parameter - fAlign ΓòÉΓòÉΓòÉ
  12766.  
  12767.      fAlign (ULONG) - input 
  12768.         Text justification flag. 
  12769.  
  12770.         Any of the following values can be specified: 
  12771.  
  12772.           ART_LEFT 
  12773.              Left-justify the bit map. 
  12774.           ART_RIGHT 
  12775.              Right-justify the bit map. 
  12776.           ART_CENTER 
  12777.              Center the bit map. 
  12778.           ART_RUNIN 
  12779.              Allow the bit map to be reflowed with text. 
  12780.  
  12781.  
  12782. ΓòÉΓòÉΓòÉ <hidden> DdfBitmap Return Value - rc ΓòÉΓòÉΓòÉ
  12783.  
  12784.      rc (BOOL) - returns 
  12785.         Success indicator. 
  12786.  
  12787.           TRUE 
  12788.              Successful completion 
  12789.           FALSE 
  12790.              Error occurred. 
  12791.  
  12792.  
  12793. ΓòÉΓòÉΓòÉ <hidden> DdfBitmap - Parameters ΓòÉΓòÉΓòÉ
  12794.  
  12795.      hddf (HDDF) - input 
  12796.         Handle to DDF returned by DdfInitialize. 
  12797.  
  12798.      hbm (HBITMAP) - input 
  12799.         Standard Presentation Manager bit map handle. 
  12800.  
  12801.      fAlign (ULONG) - input 
  12802.         Text justification flag. 
  12803.  
  12804.         Any of the following values can be specified: 
  12805.  
  12806.           ART_LEFT 
  12807.              Left-justify the bit map. 
  12808.           ART_RIGHT 
  12809.              Right-justify the bit map. 
  12810.           ART_CENTER 
  12811.              Center the bit map. 
  12812.           ART_RUNIN 
  12813.              Allow the bit map to be reflowed with text. 
  12814.  
  12815.      rc (BOOL) - returns 
  12816.         Success indicator. 
  12817.  
  12818.           TRUE 
  12819.              Successful completion 
  12820.           FALSE 
  12821.              Error occurred. 
  12822.  
  12823.  
  12824. ΓòÉΓòÉΓòÉ <hidden> DdfBitmap - Remarks ΓòÉΓòÉΓòÉ
  12825.  
  12826. The handle to the presentation space in which the bit map was created cannot be 
  12827. freed by the application while the panel is displayed. 
  12828.  
  12829. Note:  There is a (3-byte + size of HBITMAP structure). ESC code overhead in 
  12830.        the DDF internal buffer for this function. There is a 1-byte ESC code 
  12831.        overhead required for the fAlign flag. 
  12832.  
  12833.  
  12834. ΓòÉΓòÉΓòÉ <hidden> DdfBitmap - Errors ΓòÉΓòÉΓòÉ
  12835.  
  12836. Possible returns from WinGetLastError 
  12837.  
  12838.      HMERR_DDF_MEMORY (0x3001) 
  12839.         Not enough memory is available. 
  12840.  
  12841.      HMERR_DDF_ALIGN_TYPE (0x3002) 
  12842.         The alignment type is not valid. 
  12843.  
  12844.  
  12845. ΓòÉΓòÉΓòÉ <hidden> DdfBitmap - Related Functions ΓòÉΓòÉΓòÉ
  12846.  
  12847.        o  DdfBeginList 
  12848.        o  DdfBitmap 
  12849.        o  DdfEndList 
  12850.        o  DdfHyperText 
  12851.        o  DdfInform 
  12852.        o  DdfInitialize 
  12853.        o  DdfListItem 
  12854.        o  DdfMetafile 
  12855.        o  DdfPara 
  12856.        o  DdfSetColor 
  12857.        o  DdfSetFont 
  12858.        o  DdfSetFontStyle 
  12859.        o  DdfSetFormat 
  12860.        o  DdfSetTextAlign 
  12861.        o  DdfText 
  12862.  
  12863.  
  12864. ΓòÉΓòÉΓòÉ <hidden> DdfBitmap - Example Code ΓòÉΓòÉΓòÉ
  12865.  
  12866. After initializing a DDF buffer with DdfInitialize, the example obtains a 
  12867. device context (DevOpenDC), creates a presentation space (GpiCreatePS), and 
  12868. loads a bit map (GpiLoadBitmap). It then uses DdfBitmap to place a reference to 
  12869. the bit map in the DDF buffer. For a more detailed example and discussion of 
  12870. initializing DDF, see the DdfInitialize sample. 
  12871.  
  12872. #define INCL_WINWINDOWMGR       /* General window management     */
  12873. #define INCL_WINMESSAGEMGR      /* Message management            */
  12874. #define INCL_GPICONTROL         /* Basic PS control              */
  12875. #define INCL_GPIBITMAPS         /* Bit maps and Pel Operations   */
  12876. #define INCL_GPIPRIMITIVES      /* Drawing Primitives/Attributes */
  12877. #define INCL_DDF                /* Dynamic Data Facility         */
  12878. #include <os2.h>
  12879. #include <pmhelp.h>
  12880.  
  12881. #define ACVP_HAB  12
  12882. #define BM_HPS    16
  12883. #define BM_HDC    20
  12884. #define BM_HWND   24
  12885. #define ID_LEFT   255
  12886.  
  12887. MRESULT WindowProc( HWND hwnd, ULONG ulMsg, MPARAM mp1, MPARAM mp2 )
  12888. {
  12889.     HWND    hwndParent;     /* parent window                        */
  12890.     HWND    hwndInstance;   /* help instance window                 */
  12891.     HDDF    hDdf;           /* DDF handle                           */
  12892.     HDC     hdc;            /* device context handle                */
  12893.     HPS     hps;            /* presentation space handle            */
  12894.     HAB     hab;            /* anchor block handle                  */
  12895.     SIZEL   sizel = {0L,0L};/* size of new PS                       */
  12896.     HBITMAP hBitmap;        /* bit map handle                       */
  12897.     HMODULE hModule;        /* module handle                        */
  12898.  
  12899.     switch( ulMsg )
  12900.     {
  12901.     case HM_QUERY_DDF_DATA:
  12902.         hwndParent = WinQueryWindow( hwnd, QW_PARENT );
  12903.         hwndParent = WinQueryWindow( hwndParent, QW_PARENT );
  12904.         hwndInstance = (HWND)WinSendMsg( hwndParent, HM_QUERY,
  12905.                                  MPFROMSHORT( HMQW_INSTANCE ), NULL );
  12906.  
  12907.         /* Allocate 1K Buffer (default)  */
  12908.         hDdf = DdfInitialize(
  12909.                        hwndInstance,  /* Handle of help instance */
  12910.                        0L,            /* Default buffer size     */
  12911.                        0L             /* Default increment       */
  12912.                        );
  12913.  
  12914.         if (hDdf == NULLHANDLE)       /* Check return code       */
  12915.         {
  12916.             return (MRESULT)FALSE;
  12917.         }
  12918.  
  12919.         /* get module handle for bit map */
  12920.         DosQueryModuleHandle("bitmap", &hModule);
  12921.         if (hModule == NULLHANDLE)
  12922.         {
  12923.             return (MRESULT)FALSE;
  12924.         }
  12925.  
  12926.         /* get hab for this window */
  12927.         if ((hab = (HAB)WinQueryWindowULong(hwnd, ACVP_HAB)) == NULLHANDLE)
  12928.         {
  12929.             return (MRESULT)FALSE;
  12930.         }
  12931.  
  12932.         /* create a device context */
  12933.         if ((hdc = DevOpenDC(hab, OD_MEMORY, "*", 0L,
  12934.                             (PDEVOPENDATA)NULL, (HDC)NULL)) == NULLHANDLE)
  12935.         {
  12936.            return (MRESULT)FALSE;
  12937.         }
  12938.  
  12939.         /* save hdc in reserved word */
  12940.         WinSetWindowULong(hwnd, BM_HDC, (ULONG)hdc);
  12941.  
  12942.         /* create a noncached micro presentation space */
  12943.         /* and associate it with the window */
  12944.         if ((hps = GpiCreatePS(hab, hdc, &sizel,
  12945.                    PU_PELS | GPIF_DEFAULT
  12946.                    | GPIT_MICRO | GPIA_ASSOC)) == NULLHANDLE)
  12947.         {
  12948.            return (MRESULT)FALSE;
  12949.         }
  12950.  
  12951.         /* save hps in reserved word */
  12952.         WinSetWindowULong(hwnd, BM_HPS, (ULONG)hps);
  12953.  
  12954.         /* Load the Bit map to display */
  12955.         if ((hBitmap = GpiLoadBitmap(hps, hModule, ID_LEFT, 300L,
  12956.                                      300L)) == NULLHANDLE)
  12957.         {
  12958.             return (MRESULT)FALSE;
  12959.         }
  12960.  
  12961.         /* save bit map hwnd in reserved word */
  12962.         WinSetWindowULong(hwnd, BM_HWND, (ULONG)hBitmap);
  12963.  
  12964.         /* Display the bit map align left */
  12965.         if (!DdfBitmap(hDdf, hBitmap, ART_LEFT))
  12966.         {
  12967.             return (MRESULT)FALSE;
  12968.         }
  12969.  
  12970.         return (MRESULT)hDdf;
  12971.  
  12972.     case WM_CLOSE:
  12973.         /* release PS, DC, and bit map */
  12974.         GpiDestroyPS((HPS)WinQueryWindowULong(hwnd, BM_HPS));
  12975.         DevCloseDC((HDC)WinQueryWindowULong(hwnd, BM_HDC));
  12976.         GpiDeleteBitmap((HBITMAP)WinQueryWindowULong(hwnd, BM_HWND));
  12977.         WinDestroyWindow(WinQueryWindow(hwnd, QW_PARENT));
  12978.         return (MRESULT)TRUE;
  12979.     }
  12980. }
  12981.  
  12982.  
  12983. ΓòÉΓòÉΓòÉ <hidden> DdfBitmap - Topics ΓòÉΓòÉΓòÉ
  12984.  
  12985. Select an item: 
  12986.  
  12987. Syntax
  12988. Parameters
  12989. Returns
  12990. Errors
  12991. Remarks
  12992. Example Code
  12993. Related Functions
  12994.  
  12995.  
  12996. ΓòÉΓòÉΓòÉ 18.3. DdfEndList ΓòÉΓòÉΓòÉ
  12997.  
  12998.  
  12999. ΓòÉΓòÉΓòÉ <hidden> DdfEndList - Syntax ΓòÉΓòÉΓòÉ
  13000.  
  13001. /*******************************************/
  13002. /* This function terminates the definition */
  13003. /* list initialized by DdfBeginList.       */
  13004. /*******************************************/
  13005.  
  13006. #define INCL_DDF
  13007. #include <os2.h>
  13008.  
  13009. HDDF    hddf;  /*  Handle to DDF returned by DdfInitialize. */
  13010. BOOL    rc;    /*  Success indicator. */
  13011.  
  13012. rc = DdfEndList(hddf);
  13013.  
  13014.  
  13015. ΓòÉΓòÉΓòÉ <hidden> DdfEndList Parameter - hddf ΓòÉΓòÉΓòÉ
  13016.  
  13017.      hddf (HDDF) - input 
  13018.         Handle to DDF returned by DdfInitialize. 
  13019.  
  13020.  
  13021. ΓòÉΓòÉΓòÉ <hidden> DdfEndList Return Value - rc ΓòÉΓòÉΓòÉ
  13022.  
  13023.      rc (BOOL) - returns 
  13024.         Success indicator. 
  13025.  
  13026.           TRUE 
  13027.              Successful completion 
  13028.           FALSE 
  13029.              Error occurred. 
  13030.  
  13031.  
  13032. ΓòÉΓòÉΓòÉ <hidden> DdfEndList - Parameters ΓòÉΓòÉΓòÉ
  13033.  
  13034.      hddf (HDDF) - input 
  13035.         Handle to DDF returned by DdfInitialize. 
  13036.  
  13037.      rc (BOOL) - returns 
  13038.         Success indicator. 
  13039.  
  13040.           TRUE 
  13041.              Successful completion 
  13042.           FALSE 
  13043.              Error occurred. 
  13044.  
  13045.  
  13046. ΓòÉΓòÉΓòÉ <hidden> DdfEndList - Errors ΓòÉΓòÉΓòÉ
  13047.  
  13048. Possible returns from WinGetLastError 
  13049.  
  13050.      HMERR_DDF_LIST_UNINITIALIZED (0x3008) 
  13051.         No definition list has been initialized by DdfBeginList. 
  13052.  
  13053.  
  13054. ΓòÉΓòÉΓòÉ <hidden> DdfEndList - Related Functions ΓòÉΓòÉΓòÉ
  13055.  
  13056.        o  DdfBeginList 
  13057.        o  DdfBitmap 
  13058.        o  DdfEndList 
  13059.        o  DdfHyperText 
  13060.        o  DdfInform 
  13061.        o  DdfInitialize 
  13062.        o  DdfListItem 
  13063.        o  DdfMetafile 
  13064.        o  DdfPara 
  13065.        o  DdfSetColor 
  13066.        o  DdfSetFont 
  13067.        o  DdfSetFontStyle 
  13068.        o  DdfSetFormat 
  13069.        o  DdfSetTextAlign 
  13070.        o  DdfText 
  13071.  
  13072.  
  13073. ΓòÉΓòÉΓòÉ <hidden> DdfEndList - Example Code ΓòÉΓòÉΓòÉ
  13074.  
  13075. After initializing a DDF buffer with DdfInitialize, the example uses 
  13076. DdfBeginList to indicate the beginning of a definition list in the DDF buffer 
  13077. (this corresponds to the IPF dl tag). For a more detailed example and 
  13078. discussion of initializing DDF, see the DdfInitialize sample. 
  13079.  
  13080. #define INCL_WINWINDOWMGR       /* General window management    */
  13081. #define INCL_WINMESSAGEMGR      /* Message management           */
  13082. #define INCL_DDF                /* Dynamic Data Facility        */
  13083. #include <os2.h>
  13084. #include <pmhelp.h>
  13085.  
  13086. struct _LISTITEM        /* definition list                      */
  13087. {
  13088.     PSZ Term;
  13089.     PSZ Desc;
  13090. } Definition[2] = {{"MVS", "Multiple Virtual System"},
  13091.                    {"VM",  "Virtual Machine"}};
  13092.  
  13093. MRESULT WindowProc( HWND hwnd, ULONG ulMsg, MPARAM mp1, MPARAM mp2)
  13094. {
  13095.  
  13096.     HWND   hwndParent;
  13097.     HWND   hwndInstance;
  13098.     HDDF   hDdf;            /* DDF handle                           */
  13099.     SHORT  i;               /* loop index                           */
  13100.  
  13101.     switch( ulMsg )
  13102.     {
  13103.     case HM_QUERY_DDF_DATA:
  13104.         /* get the help instance */
  13105.         hwndParent = WinQueryWindow( hwnd, QW_PARENT );
  13106.         hwndParent = WinQueryWindow( hwndParent, QW_PARENT );
  13107.         hwndInstance = (HWND)WinSendMsg( hwndParent, HM_QUERY,
  13108.                                  MPFROMSHORT( HMQW_INSTANCE ), NULL );
  13109.  
  13110.         /* Allocate 1K Buffer (default)  */
  13111.         hDdf = DdfInitialize(
  13112.                    hwndInstance,  /* Handle of help instance */
  13113.                    0L,            /* Default buffer size     */
  13114.                    0L             /* Default increment       */
  13115.                    );
  13116.  
  13117.         if (hDdf == NULLHANDLE)       /* Check return code       */
  13118.         {
  13119.             return (MRESULT)FALSE;
  13120.         }
  13121.  
  13122.         /* begin definition list */
  13123.         if (!DdfBeginList(hDdf, 3L, HMBT_ALL, HMLS_SINGLELINE))
  13124.         {
  13125.             return (MRESULT)FALSE;
  13126.         }
  13127.  
  13128.         /* insert 2 entries into definition list */
  13129.         for (i=0; i < 2; i++)
  13130.         {
  13131.             if (!DdfListItem(hDdf, Definition[i].Term,
  13132.                                    Definition[i].Desc))
  13133.             {
  13134.                return (MRESULT)FALSE;
  13135.             }
  13136.         }
  13137.  
  13138.         /* terminate definition list */
  13139.         if (!DdfEndList(hDdf))
  13140.         {
  13141.             return (MRESULT)FALSE;
  13142.         }
  13143.  
  13144.         return (MRESULT)hDdf;
  13145.     }
  13146. }
  13147.  
  13148.  
  13149. ΓòÉΓòÉΓòÉ <hidden> DdfEndList - Topics ΓòÉΓòÉΓòÉ
  13150.  
  13151. Select an item: 
  13152.  
  13153. Syntax
  13154. Parameters
  13155. Returns
  13156. Errors
  13157. Example Code
  13158. Related Functions
  13159.  
  13160.  
  13161. ΓòÉΓòÉΓòÉ 18.4. DdfHyperText ΓòÉΓòÉΓòÉ
  13162.  
  13163.  
  13164. ΓòÉΓòÉΓòÉ <hidden> DdfHyperText - Syntax ΓòÉΓòÉΓòÉ
  13165.  
  13166. /*******************************************/
  13167. /* This function defines a hypertext link  */
  13168. /* to another panel, which is equal to a   */
  13169. /* link of reftype=hd.  Links to           */
  13170. /* footnotes, launch links and links to    */
  13171. /* external databases are not supported.   */
  13172. /*******************************************/
  13173.  
  13174. #define INCL_DDF
  13175. #include <os2.h>
  13176.  
  13177. HDDF     hddf;            /*  Handle to DDF returned by DdfInitialize. */
  13178. PSZ      pText;           /*  Hypertext phrase. */
  13179. PSZ      pReference;      /*  Pointer to a string containing the link reference. */
  13180. ULONG    fReferenceType;  /*  Reference Type. */
  13181. BOOL     rc;              /*  Success indicator. */
  13182.  
  13183. rc = DdfHyperText(hddf, pText, pReference,
  13184.        fReferenceType);
  13185.  
  13186.  
  13187. ΓòÉΓòÉΓòÉ <hidden> DdfHyperText Parameter - hddf ΓòÉΓòÉΓòÉ
  13188.  
  13189.      hddf (HDDF) - input 
  13190.         Handle to DDF returned by DdfInitialize. 
  13191.  
  13192.  
  13193. ΓòÉΓòÉΓòÉ <hidden> DdfHyperText Parameter - pText ΓòÉΓòÉΓòÉ
  13194.  
  13195.      pText (PSZ) - input 
  13196.         Hypertext phrase. 
  13197.  
  13198.  
  13199. ΓòÉΓòÉΓòÉ <hidden> DdfHyperText Parameter - pReference ΓòÉΓòÉΓòÉ
  13200.  
  13201.      pReference (PSZ) - input 
  13202.         Pointer to a string containing the link reference. 
  13203.  
  13204.         The value of this parameter depends on the value of fReferenceType. 
  13205.  
  13206.           If fReferenceType is REFERENCE_BY_RES 
  13207.              pReference must contain a pointer to a numeric string containing 
  13208.              the res number; otherwise it will default to a res number of zero. 
  13209.              Valid values are 1 - 64000; all other values are reserved. 
  13210.  
  13211.           If fReferenceType is REFERENCE_BY_ID 
  13212.              pReference must contain a pointer to a string containing the 
  13213.              alphanumeric identifier of the destination panel. 
  13214.  
  13215.  
  13216. ΓòÉΓòÉΓòÉ <hidden> DdfHyperText Parameter - fReferenceType ΓòÉΓòÉΓòÉ
  13217.  
  13218.      fReferenceType (ULONG) - input 
  13219.         Reference Type. 
  13220.  
  13221.         This parameter specifies whether you are linking via a resource 
  13222.         identifier (res number) or via an alphanumeric identifier. 
  13223.  
  13224.           REFERENCE_BY_RES 
  13225.              To link via a resource identifier. 
  13226.           REFERENCE_BY_ID 
  13227.              To link via an alphanumeric identifier. 
  13228.  
  13229.  
  13230. ΓòÉΓòÉΓòÉ <hidden> DdfHyperText Return Value - rc ΓòÉΓòÉΓòÉ
  13231.  
  13232.      rc (BOOL) - returns 
  13233.         Success indicator. 
  13234.  
  13235.           TRUE 
  13236.              Successful completion 
  13237.           FALSE 
  13238.              Error occurred. 
  13239.  
  13240.  
  13241. ΓòÉΓòÉΓòÉ <hidden> DdfHyperText - Parameters ΓòÉΓòÉΓòÉ
  13242.  
  13243.      hddf (HDDF) - input 
  13244.         Handle to DDF returned by DdfInitialize. 
  13245.  
  13246.      pText (PSZ) - input 
  13247.         Hypertext phrase. 
  13248.  
  13249.      pReference (PSZ) - input 
  13250.         Pointer to a string containing the link reference. 
  13251.  
  13252.         The value of this parameter depends on the value of fReferenceType. 
  13253.  
  13254.           If fReferenceType is REFERENCE_BY_RES 
  13255.              pReference must contain a pointer to a numeric string containing 
  13256.              the res number; otherwise it will default to a res number of zero. 
  13257.              Valid values are 1 - 64000; all other values are reserved. 
  13258.  
  13259.           If fReferenceType is REFERENCE_BY_ID 
  13260.              pReference must contain a pointer to a string containing the 
  13261.              alphanumeric identifier of the destination panel. 
  13262.  
  13263.      fReferenceType (ULONG) - input 
  13264.         Reference Type. 
  13265.  
  13266.         This parameter specifies whether you are linking via a resource 
  13267.         identifier (res number) or via an alphanumeric identifier. 
  13268.  
  13269.           REFERENCE_BY_RES 
  13270.              To link via a resource identifier. 
  13271.           REFERENCE_BY_ID 
  13272.              To link via an alphanumeric identifier. 
  13273.  
  13274.      rc (BOOL) - returns 
  13275.         Success indicator. 
  13276.  
  13277.           TRUE 
  13278.              Successful completion 
  13279.           FALSE 
  13280.              Error occurred. 
  13281.  
  13282.  
  13283. ΓòÉΓòÉΓòÉ <hidden> DdfHyperText - Remarks ΓòÉΓòÉΓòÉ
  13284.  
  13285. There is a 3-byte ESC code overhead in the DDF internal buffer for each word in 
  13286. the text buffer.  There is a 1-byte ESC code overhead for each blank and for 
  13287. each newline character.  If fReferenceType is REFERENCE_BY_ID, then there is a 
  13288. (3-byte + Reference length) ESC code overhead. For a fReferenceType of 
  13289. REFERENCE_BY_RES, the overhead is 5 bytes. Finally, there is a 3-byte ESC code 
  13290. overhead that is required for ending the hypertext link. 
  13291.  
  13292.  
  13293. ΓòÉΓòÉΓòÉ <hidden> DdfHyperText - Errors ΓòÉΓòÉΓòÉ
  13294.  
  13295. Possible returns from WinGetLastError 
  13296.  
  13297.      HMERR_DDF_MEMORY (0x3001) 
  13298.         Not enough memory is available. 
  13299.  
  13300.      HMERR_DDF_REFTYPE (0x3006) 
  13301.         The reference type is not valid. 
  13302.  
  13303.  
  13304. ΓòÉΓòÉΓòÉ <hidden> DdfHyperText - Related Functions ΓòÉΓòÉΓòÉ
  13305.  
  13306.        o  DdfBeginList 
  13307.        o  DdfBitmap 
  13308.        o  DdfEndList 
  13309.        o  DdfHyperText 
  13310.        o  DdfInform 
  13311.        o  DdfInitialize 
  13312.        o  DdfListItem 
  13313.        o  DdfMetafile 
  13314.        o  DdfPara 
  13315.        o  DdfSetColor 
  13316.        o  DdfSetFont 
  13317.        o  DdfSetFontStyle 
  13318.        o  DdfSetFormat 
  13319.        o  DdfSetTextAlign 
  13320.        o  DdfText 
  13321.  
  13322.  
  13323. ΓòÉΓòÉΓòÉ <hidden> DdfHyperText - Example Code ΓòÉΓòÉΓòÉ
  13324.  
  13325. After initializing a DDF buffer with DdfInitialize, the example uses 
  13326. DdfHyperText to create a hypertext link with another resource. For a more 
  13327. detailed example and discussion of initializing DDF, see the DdfInitialize 
  13328. sample. 
  13329.  
  13330. #define INCL_WINWINDOWMGR       /* General window management    */
  13331. #define INCL_WINMESSAGEMGR      /* Message management           */
  13332. #define INCL_DDF                /* Dynamic Data Facility        */
  13333. #include <os2.h>
  13334. #include <pmhelp.h>
  13335.  
  13336. PSZ    Text = "This text is a HYPERTEXT message.\n"; /* hypertext string  */
  13337. PSZ    ResID = "1";     /* Resource identifier                  */
  13338.  
  13339. MRESULT WindowProc( HWND hwnd, ULONG ulMsg, MPARAM mp1, MPARAM mp2 )
  13340. {
  13341.     HWND   hwndParent;
  13342.     HWND   hwndInstance;
  13343.     HDDF   hDdf;            /* DDF handle                           */
  13344.  
  13345.     switch( ulMsg )
  13346.     {
  13347.     case HM_QUERY_DDF_DATA:
  13348.         /* get the help instance */
  13349.         hwndParent = WinQueryWindow( hwnd, QW_PARENT );
  13350.         hwndParent = WinQueryWindow( hwndParent, QW_PARENT );
  13351.         hwndInstance = (HWND)WinSendMsg( hwndParent, HM_QUERY,
  13352.                                  MPFROMSHORT( HMQW_INSTANCE ), NULL );
  13353.  
  13354.         /* Allocate 1K Buffer (default)  */
  13355.         hDdf = DdfInitialize(
  13356.                     hwndInstance,  /* Handle of help instance */
  13357.                     0L,            /* Default buffer size     */
  13358.                     0L             /* Default increment       */
  13359.                     );
  13360.  
  13361.         if (hDdf == NULLHANDLE)       /* Check return code       */
  13362.         {
  13363.             return (MRESULT)FALSE;
  13364.         }
  13365.  
  13366.         /* create hypertext link with resource 1 */
  13367.         if (!DdfHyperText(hDdf, (PSZ)Text, ResID, REFERENCE_BY_RES))
  13368.         {
  13369.             return (MRESULT)FALSE;
  13370.         }
  13371.  
  13372.         return (MRESULT)hDdf;
  13373.     }
  13374. }
  13375.  
  13376.  
  13377. ΓòÉΓòÉΓòÉ <hidden> DdfHyperText - Topics ΓòÉΓòÉΓòÉ
  13378.  
  13379. Select an item: 
  13380.  
  13381. Syntax
  13382. Parameters
  13383. Returns
  13384. Errors
  13385. Remarks
  13386. Example Code
  13387. Related Functions
  13388.  
  13389.  
  13390. ΓòÉΓòÉΓòÉ 18.5. DdfInform ΓòÉΓòÉΓòÉ
  13391.  
  13392.  
  13393. ΓòÉΓòÉΓòÉ <hidden> DdfInform - Syntax ΓòÉΓòÉΓòÉ
  13394.  
  13395. /*******************************************/
  13396. /* This function defines a hypertext       */
  13397. /* inform link, which sends an HM_INFORM   */
  13398. /* message to the application with a res=  */
  13399. /* attribute. It also corresponds to the   */
  13400. /* link tag with reftype=inform.           */
  13401. /*******************************************/
  13402.  
  13403. #define INCL_DDF
  13404. #include <os2.h>
  13405.  
  13406. HDDF     hddf;             /*  Handle to DDF returned by DdfInitialize. */
  13407. PSZ      pText;            /*  Hypertext phrase. */
  13408. ULONG    resInformNumber;  /*  Res number associated with this hypertext field. */
  13409. BOOL     rc;               /*  Success indicator. */
  13410.  
  13411. rc = DdfInform(hddf, pText, resInformNumber);
  13412.  
  13413.  
  13414. ΓòÉΓòÉΓòÉ <hidden> DdfInform Parameter - hddf ΓòÉΓòÉΓòÉ
  13415.  
  13416.      hddf (HDDF) - input 
  13417.         Handle to DDF returned by DdfInitialize. 
  13418.  
  13419.  
  13420. ΓòÉΓòÉΓòÉ <hidden> DdfInform Parameter - pText ΓòÉΓòÉΓòÉ
  13421.  
  13422.      pText (PSZ) - input 
  13423.         Hypertext phrase. 
  13424.  
  13425.  
  13426. ΓòÉΓòÉΓòÉ <hidden> DdfInform Parameter - resInformNumber ΓòÉΓòÉΓòÉ
  13427.  
  13428.      resInformNumber (ULONG) - input 
  13429.         Res number associated with this hypertext field. 
  13430.  
  13431.         Possible values are 1 to 64000; all other values are reserved. 
  13432.  
  13433.  
  13434. ΓòÉΓòÉΓòÉ <hidden> DdfInform Return Value - rc ΓòÉΓòÉΓòÉ
  13435.  
  13436.      rc (BOOL) - returns 
  13437.         Success indicator. 
  13438.  
  13439.           TRUE 
  13440.              Successful completion 
  13441.           FALSE 
  13442.              Error occurred. 
  13443.  
  13444.  
  13445. ΓòÉΓòÉΓòÉ <hidden> DdfInform - Parameters ΓòÉΓòÉΓòÉ
  13446.  
  13447.      hddf (HDDF) - input 
  13448.         Handle to DDF returned by DdfInitialize. 
  13449.  
  13450.      pText (PSZ) - input 
  13451.         Hypertext phrase. 
  13452.  
  13453.      resInformNumber (ULONG) - input 
  13454.         Res number associated with this hypertext field. 
  13455.  
  13456.         Possible values are 1 to 64000; all other values are reserved. 
  13457.  
  13458.      rc (BOOL) - returns 
  13459.         Success indicator. 
  13460.  
  13461.           TRUE 
  13462.              Successful completion 
  13463.           FALSE 
  13464.              Error occurred. 
  13465.  
  13466.  
  13467. ΓòÉΓòÉΓòÉ <hidden> DdfInform - Errors ΓòÉΓòÉΓòÉ
  13468.  
  13469. Possible returns from WinGetLastError 
  13470.  
  13471.      HMERR_DDF_MEMORY (0x3001) 
  13472.         Not enough memory is available. 
  13473.  
  13474.  
  13475. ΓòÉΓòÉΓòÉ <hidden> DdfInform - Related Functions ΓòÉΓòÉΓòÉ
  13476.  
  13477.        o  DdfBeginList 
  13478.        o  DdfBitmap 
  13479.        o  DdfEndList 
  13480.        o  DdfHyperText 
  13481.        o  DdfInform 
  13482.        o  DdfInitialize 
  13483.        o  DdfListItem 
  13484.        o  DdfMetafile 
  13485.        o  DdfPara 
  13486.        o  DdfSetColor 
  13487.        o  DdfSetFont 
  13488.        o  DdfSetFontStyle 
  13489.        o  DdfSetFormat 
  13490.        o  DdfSetTextAlign 
  13491.        o  DdfText 
  13492.  
  13493.  
  13494. ΓòÉΓòÉΓòÉ <hidden> DdfInform - Example Code ΓòÉΓòÉΓòÉ
  13495.  
  13496. After initializing a DDF buffer with DdfInitialize, the example uses DdfInform 
  13497. to create a hypertext inform link with another resource (corresponds to the IPF 
  13498. :link. tag with reftype=inform). For a more detailed example and discussion of 
  13499. initializing DDF, see the DdfInitialize sample. 
  13500.  
  13501. #define INCL_WINWINDOWMGR       /* General window management    */
  13502. #define INCL_WINMESSAGEMGR      /* Message management           */
  13503. #define INCL_DDF                /* Dynamic Data Facility        */
  13504. #include <os2.h>
  13505. #include <pmhelp.h>
  13506.  
  13507. PSZ    Text = "This text is a HYPERTEXT message.\n"; /* hypertext string  */
  13508. MRESULT WindowProc( HWND hwnd, ULONG ulMsg, MPARAM mp1, MPARAM mp2 )
  13509. {
  13510.     HWND   hwndParent;
  13511.     HWND   hwndInstance;
  13512.     HDDF   hDdf;            /* DDF handle                           */
  13513.  
  13514.     switch( ulMsg )
  13515.     {
  13516.         case HM_QUERY_DDF_DATA:
  13517.             /* get the help instance */
  13518.             hwndParent = WinQueryWindow( hwnd, QW_PARENT );
  13519.             hwndParent = WinQueryWindow( hwndParent, QW_PARENT );
  13520.             hwndInstance = (HWND)WinSendMsg( hwndParent, HM_QUERY,
  13521.                                      MPFROMSHORT( HMQW_INSTANCE ), NULL );
  13522.  
  13523.         /* Allocate 1K Buffer (default)  */
  13524.         hDdf = DdfInitialize(
  13525.                         hwndInstance,  /* Handle of help instance */
  13526.                         0L,            /* Default buffer size     */
  13527.                         0L             /* Default increment       */
  13528.                         );
  13529.  
  13530.         if (hDdf == NULLHANDLE)       /* Check return code       */
  13531.         {
  13532.             return (MRESULT)FALSE;
  13533.         }
  13534.  
  13535.         /* create hypertext inform link with resource 1 */
  13536.         if (!DdfInform(hDdf, (PSZ)Text, 1L))
  13537.         {
  13538.             return (MRESULT)FALSE;
  13539.         }
  13540.  
  13541.         return (MRESULT)hDdf;
  13542.     }
  13543. }
  13544.  
  13545.  
  13546. ΓòÉΓòÉΓòÉ <hidden> DdfInform - Topics ΓòÉΓòÉΓòÉ
  13547.  
  13548. Select an item: 
  13549.  
  13550. Syntax
  13551. Parameters
  13552. Returns
  13553. Errors
  13554. Example Code
  13555. Related Functions
  13556.  
  13557.  
  13558. ΓòÉΓòÉΓòÉ 18.6. DdfInitialize ΓòÉΓòÉΓòÉ
  13559.  
  13560.  
  13561. ΓòÉΓòÉΓòÉ <hidden> DdfInitialize - Syntax ΓòÉΓòÉΓòÉ
  13562.  
  13563. /*******************************************/
  13564. /* This function initializes the IPF       */
  13565. /* internal structures for dynamic data    */
  13566. /* formatting and returns a DDF handle.    */
  13567. /* The application uses this handle to     */
  13568. /* refer to a particular DDF panel.        */
  13569. /*******************************************/
  13570.  
  13571. #define INCL_DDF
  13572. #include <os2.h>
  13573.  
  13574. HWND     hwndHelpInstance;  /*  Handle of a help instance. */
  13575. ULONG    cbBuffer;          /*  Initial length of internal buffer. */
  13576. ULONG    ulIncrement;       /*  Amount by which to increment the buffer size, if necessary. */
  13577. HDDF     hddf;              /*  Handle to DDF. */
  13578.  
  13579. hddf = DdfInitialize(hwndHelpInstance, cbBuffer,
  13580.          ulIncrement);
  13581.  
  13582.  
  13583. ΓòÉΓòÉΓòÉ <hidden> DdfInitialize Parameter - hwndHelpInstance ΓòÉΓòÉΓòÉ
  13584.  
  13585.      hwndHelpInstance (HWND) - input 
  13586.         Handle of a help instance. 
  13587.  
  13588.  
  13589. ΓòÉΓòÉΓòÉ <hidden> DdfInitialize Parameter - cbBuffer ΓòÉΓòÉΓòÉ
  13590.  
  13591.      cbBuffer (ULONG) - input 
  13592.         Initial length of internal buffer. 
  13593.  
  13594.         Initial length of internal buffer where DDF information is to be 
  13595.         stored. If this field is 0L, a default value of 1K is defined. The 
  13596.         maximum value is 61 440 bytes (60KB). 
  13597.  
  13598.  
  13599. ΓòÉΓòÉΓòÉ <hidden> DdfInitialize Parameter - ulIncrement ΓòÉΓòÉΓòÉ
  13600.  
  13601.      ulIncrement (ULONG) - input 
  13602.         Amount by which to increment the buffer size, if necessary. 
  13603.  
  13604.         If this field is NULL, a default value of 256 bytes is defined.  The 
  13605.         maximum value is 60KB. 
  13606.  
  13607.  
  13608. ΓòÉΓòÉΓòÉ <hidden> DdfInitialize Return Value - hddf ΓòÉΓòÉΓòÉ
  13609.  
  13610.      hddf (HDDF) - returns 
  13611.         Handle to DDF. 
  13612.  
  13613.         A handle to DDF is returned if initialization was successful. 
  13614.         Otherwise, the value returned is NULL, indicating that an error has 
  13615.         occurred because of insufficient memory or incorrect instance. 
  13616.  
  13617.  
  13618. ΓòÉΓòÉΓòÉ <hidden> DdfInitialize - Parameters ΓòÉΓòÉΓòÉ
  13619.  
  13620.      hwndHelpInstance (HWND) - input 
  13621.         Handle of a help instance. 
  13622.  
  13623.      cbBuffer (ULONG) - input 
  13624.         Initial length of internal buffer. 
  13625.  
  13626.         Initial length of internal buffer where DDF information is to be 
  13627.         stored. If this field is 0L, a default value of 1K is defined. The 
  13628.         maximum value is 61 440 bytes (60KB). 
  13629.  
  13630.      ulIncrement (ULONG) - input 
  13631.         Amount by which to increment the buffer size, if necessary. 
  13632.  
  13633.         If this field is NULL, a default value of 256 bytes is defined.  The 
  13634.         maximum value is 60KB. 
  13635.  
  13636.      hddf (HDDF) - returns 
  13637.         Handle to DDF. 
  13638.  
  13639.         A handle to DDF is returned if initialization was successful. 
  13640.         Otherwise, the value returned is NULL, indicating that an error has 
  13641.         occurred because of insufficient memory or incorrect instance. 
  13642.  
  13643.  
  13644. ΓòÉΓòÉΓòÉ <hidden> DdfInitialize - Remarks ΓòÉΓòÉΓòÉ
  13645.  
  13646. At initialization, the default for dynamic data display is that text aligned on 
  13647. the left, and formatting is turned on. 
  13648.  
  13649.  
  13650. ΓòÉΓòÉΓòÉ <hidden> DdfInitialize - Related Functions ΓòÉΓòÉΓòÉ
  13651.  
  13652.        o  DdfBeginList 
  13653.        o  DdfBitmap 
  13654.        o  DdfEndList 
  13655.        o  DdfHyperText 
  13656.        o  DdfInform 
  13657.        o  DdfInitialize 
  13658.        o  DdfListItem 
  13659.        o  DdfMetafile 
  13660.        o  DdfPara 
  13661.        o  DdfSetColor 
  13662.        o  DdfSetFont 
  13663.        o  DdfSetFontStyle 
  13664.        o  DdfSetFormat 
  13665.        o  DdfSetTextAlign 
  13666.        o  DdfText 
  13667.  
  13668.  
  13669. ΓòÉΓòÉΓòÉ <hidden> DdfInitialize - Example Code ΓòÉΓòÉΓòÉ
  13670.  
  13671. This example shows how to initialize and use the Dynamic Data Facility for 
  13672. displaying an online document. Two functions are defined: the first, SampleObj, 
  13673. creates a window that will display the online information and specifies the 
  13674. second function, SampleWindowProc, as the corresponding window procedure. These 
  13675. two functions are compiled into a DLL and exported, so that IPF can invoke them 
  13676. when it encounters the :ddf and :acviewport tags during execution. The 
  13677. :acviewport tag will specify the DLL name and the SampleObj function; when IPF 
  13678. calls SampleObj, it initializes an application-controlled window with 
  13679. SampleWindowProc as the window procedure and returns the window handle. Later, 
  13680. when IPF encounters the :ddf tag, it will send SampleWindowProc an 
  13681. HM_QUERY_DDF_DATA message. At this point, before calling any of the DDF API, 
  13682. DdfInitialize must first be called to initiate a DDF buffer, after which the 
  13683. other DDF API can be called to display the online information. 
  13684.  
  13685. #define INCL_WINWINDOWMGR       /* General window management    */
  13686. #define INCL_WINMESSAGEMGR      /* Message management           */
  13687. #define INCL_WINDIALOGS         /* Dialog boxes                 */
  13688. #define INCL_DDF                /* Dynamic Data Facility        */
  13689. #define INCL_32
  13690. #include <os2.h>
  13691. #include <pmhelp.h>
  13692.  
  13693. #define COM_HWND 4                /* window word offsets        */
  13694. #define PAGE_HWND 8
  13695. #define ACVP_HAB  12
  13696.  
  13697. USHORT DdfClass = FALSE;
  13698.  
  13699. MRESULT EXPENTRY SampleWindowProc(HWND hWnd, ULONG Message,
  13700.                                  MPARAM lParam1, MPARAM lParam2);
  13701.  
  13702. USHORT APIENTRY SampleObj(PACVP pACVP, PCH Parameter)
  13703. {
  13704. HWND DdfHwnd;           /* Client window handle                  */
  13705. HWND DdfCHwnd;          /* Child window handle                   */
  13706. HWND PreviousHwnd;      /* Handle for setting comm window active */
  13707.  
  13708.     /* register DDF Base class if not registered already */
  13709.     if (!DdfClass)
  13710.     {
  13711.          if (!WinRegisterClass(
  13712.                    pACVP->hAB,        /* Anchor block handle           */
  13713.                    "CLASS_Ddf",       /* Application window class name */
  13714.                    SampleWindowProc,  /* Address of window procedure   */
  13715.                    CS_SYNCPAINT |     /* Window class style            */
  13716.                    CS_SIZEREDRAW |
  13717.                    CS_MOVENOTIFY,
  13718.                    20))               /* Extra storage                 */
  13719.         {
  13720.             return TRUE;
  13721.         }
  13722.         DdfClass = TRUE;
  13723.     }
  13724.  
  13725.     /*  create standard window  */
  13726.     if (!(DdfHwnd = WinCreateStdWindow(
  13727.                       pACVP->hWndParent, /* ACVP is parent       */
  13728.                       0L,                /* No class style       */
  13729.                       NULL,              /* Frame control flag   */
  13730.                       "CLASS_Ddf",       /* Window class name    */
  13731.                       NULL,              /* No title bar         */
  13732.                       0L,                /* No special style     */
  13733.                       0L,                /* Resource in .EXE     */
  13734.                       0,                 /* No window identifier */
  13735.                       &DdfCHwnd )))      /* Client window handle */
  13736.     {
  13737.         return FALSE;
  13738.     }
  13739.  
  13740.     /* store the frame window handle in ACVP data structure */
  13741.     pACVP->hWndACVP = DdfHwnd;
  13742.  
  13743.     /* set this window as active communication window */
  13744.     PreviousHwnd = (HWND)WinSendMsg(pACVP->hWndParent,
  13745.                            HM_SET_OBJCOM_WINDOW,
  13746.                            MPFROMHWND(DdfHwnd), NULL);
  13747.  
  13748.     /* save returned communication hwnd in reserved word */
  13749.     WinSetWindowULong(DdfCHwnd, COM_HWND, (ULONG)PreviousHwnd);
  13750.  
  13751.     /* save anchor block handle in reserved word */
  13752.     WinSetWindowULong (DdfCHwnd, ACVP_HAB, (ULONG)pACVP->hAB);
  13753.  
  13754.     return FALSE;
  13755. } /* SampleObj */
  13756.  
  13757. MRESULT EXPENTRY SampleWindowProc(HWND hWnd, ULONG Message,
  13758.                                  MPARAM lParam1, MPARAM lParam2)
  13759. {
  13760.     HWND   hwndParent;       /* parent window                        */
  13761.     HWND   hwndHelpInstance; /* help instance window                 */
  13762.     HDDF   hDdf;             /* DDF handle                           */
  13763.     ULONG  DdfID;            /* DDF resource id                      */
  13764.  
  13765.     switch (Message)
  13766.     {
  13767.     case HM_QUERY_DDF_DATA:
  13768.         WinSetWindowULong(hWnd, PAGE_HWND, LONGFROMMP(lParam1));
  13769.         DdfID = LONGFROMMP(lParam2);
  13770.         hwndParent = WinQueryWindow(hWnd, QW_PARENT);
  13771.         hwndParent = WinQueryWindow(hwndParent, QW_PARENT);
  13772.         hwndHelpInstance = (HWND)WinSendMsg(hwndParent, HM_QUERY,
  13773.                                   MPFROMSHORT(HMQW_INSTANCE), NULL);
  13774.  
  13775.         /* Allocate 1K Buffer (default)  */
  13776.         hDdf = DdfInitialize(
  13777.                         hwndHelpInstance, /* Handle of help instance */
  13778.                         0L,               /* Default buffer size     */
  13779.                         0L                /* Default increment       */
  13780.                         );
  13781.  
  13782.         if (hDdf == NULLHANDLE)       /* Check return code       */
  13783.         {
  13784.             return (MRESULT)FALSE;
  13785.         }
  13786.  
  13787.         return (MRESULT)hDdf;
  13788.  
  13789.     default:
  13790.         return (WinDefWindowProc(hWnd, Message, lParam1, lParam2));
  13791.     }
  13792. } /* SampleWindowProc */
  13793.  
  13794.  
  13795. ΓòÉΓòÉΓòÉ <hidden> DdfInitialize - Topics ΓòÉΓòÉΓòÉ
  13796.  
  13797. Select an item: 
  13798.  
  13799. Syntax
  13800. Parameters
  13801. Returns
  13802. Remarks
  13803. Example Code
  13804. Related Functions
  13805.  
  13806.  
  13807. ΓòÉΓòÉΓòÉ 18.7. DdfListItem ΓòÉΓòÉΓòÉ
  13808.  
  13809.  
  13810. ΓòÉΓòÉΓòÉ <hidden> DdfListItem - Syntax ΓòÉΓòÉΓòÉ
  13811.  
  13812. /*******************************************/
  13813. /* This function inserts a definition list */
  13814. /* entry in the DDF buffer; it corresponds */
  13815. /* to a combination of the :dt.            */
  13816. /* (definition term) and :dd. (definition  */
  13817. /* define) tags.                           */
  13818. /*******************************************/
  13819.  
  13820. #define INCL_DDF
  13821. #include <os2.h>
  13822.  
  13823. HDDF    hddf;          /*  Handle to DDF returned by DdfInitialize. */
  13824. PSZ     pTerm;         /*  Term portion of the definition list entry. */
  13825. PSZ     pDescription;  /*  Description portion of the definition list entry. */
  13826. BOOL    rc;            /*  Success indicator. */
  13827.  
  13828. rc = DdfListItem(hddf, pTerm, pDescription);
  13829.  
  13830.  
  13831. ΓòÉΓòÉΓòÉ <hidden> DdfListItem Parameter - hddf ΓòÉΓòÉΓòÉ
  13832.  
  13833.      hddf (HDDF) - input 
  13834.         Handle to DDF returned by DdfInitialize. 
  13835.  
  13836.  
  13837. ΓòÉΓòÉΓòÉ <hidden> DdfListItem Parameter - pTerm ΓòÉΓòÉΓòÉ
  13838.  
  13839.      pTerm (PSZ) - input 
  13840.         Term portion of the definition list entry. 
  13841.  
  13842.  
  13843. ΓòÉΓòÉΓòÉ <hidden> DdfListItem Parameter - pDescription ΓòÉΓòÉΓòÉ
  13844.  
  13845.      pDescription (PSZ) - input 
  13846.         Description portion of the definition list entry. 
  13847.  
  13848.         Note:  There is a 3-byte ESC code overhead in the DDF internal buffer 
  13849.         for each word in both the term and the description.  There is a 1-byte 
  13850.         ESC code overhead for each blank and for each newline character.  For 
  13851.         each list item, there is a 5-byte ESC code overhead for the margin 
  13852.         alignment. 
  13853.  
  13854.  
  13855. ΓòÉΓòÉΓòÉ <hidden> DdfListItem Return Value - rc ΓòÉΓòÉΓòÉ
  13856.  
  13857.      rc (BOOL) - returns 
  13858.         Success indicator. 
  13859.  
  13860.           TRUE 
  13861.              Successful completion 
  13862.           FALSE 
  13863.              Error occurred. 
  13864.  
  13865.  
  13866. ΓòÉΓòÉΓòÉ <hidden> DdfListItem - Parameters ΓòÉΓòÉΓòÉ
  13867.  
  13868.      hddf (HDDF) - input 
  13869.         Handle to DDF returned by DdfInitialize. 
  13870.  
  13871.      pTerm (PSZ) - input 
  13872.         Term portion of the definition list entry. 
  13873.  
  13874.      pDescription (PSZ) - input 
  13875.         Description portion of the definition list entry. 
  13876.  
  13877.         Note:  There is a 3-byte ESC code overhead in the DDF internal buffer 
  13878.         for each word in both the term and the description.  There is a 1-byte 
  13879.         ESC code overhead for each blank and for each newline character.  For 
  13880.         each list item, there is a 5-byte ESC code overhead for the margin 
  13881.         alignment. 
  13882.  
  13883.      rc (BOOL) - returns 
  13884.         Success indicator. 
  13885.  
  13886.           TRUE 
  13887.              Successful completion 
  13888.           FALSE 
  13889.              Error occurred. 
  13890.  
  13891.  
  13892. ΓòÉΓòÉΓòÉ <hidden> DdfListItem - Remarks ΓòÉΓòÉΓòÉ
  13893.  
  13894. The handle to the presentation space in which the bit map was created cannot be 
  13895. freed by the application while the panel is displayed. 
  13896.  
  13897. Note:  There is a (3-byte + size of HBITMAP structure) ESC code overhead in the 
  13898. DDF internal buffer for this function. There is a 1-byte ESC code overhead 
  13899. required for the Align flag. 
  13900.  
  13901.  
  13902. ΓòÉΓòÉΓòÉ <hidden> DdfListItem - Errors ΓòÉΓòÉΓòÉ
  13903.  
  13904. Possible returns from WinGetLastError 
  13905.  
  13906.      HMERR_DDF_MEMORY (0x3001) 
  13907.         Not enough memory is available. 
  13908.  
  13909.      HMERR_DDF_LIST_UNINITIALIZED (0x3008) 
  13910.         No definition list has been initialized by DdfBeginList. 
  13911.  
  13912.  
  13913. ΓòÉΓòÉΓòÉ <hidden> DdfListItem - Related Functions ΓòÉΓòÉΓòÉ
  13914.  
  13915.        o  DdfBeginList 
  13916.        o  DdfBitmap 
  13917.        o  DdfEndList 
  13918.        o  DdfHyperText 
  13919.        o  DdfInform 
  13920.        o  DdfInitialize 
  13921.        o  DdfListItem 
  13922.        o  DdfMetafile 
  13923.        o  DdfPara 
  13924.        o  DdfSetColor 
  13925.        o  DdfSetFont 
  13926.        o  DdfSetFontStyle 
  13927.        o  DdfSetFormat 
  13928.        o  DdfSetTextAlign 
  13929.        o  DdfText 
  13930.  
  13931.  
  13932. ΓòÉΓòÉΓòÉ <hidden> DdfListItem - Example Code ΓòÉΓòÉΓòÉ
  13933.  
  13934. After initializing a DDF buffer with DdfInitialize, the example uses 
  13935. DdfBeginList to indicate the beginning of a definition list in the DDF buffer 
  13936. (this corresponds to the IPF dl tag). For a more detailed example and 
  13937. discussion of initializing DDF, see the DdfInitialize sample. 
  13938.  
  13939. #define INCL_WINWINDOWMGR       /* General window management    */
  13940. #define INCL_WINMESSAGEMGR      /* Message management           */
  13941. #define INCL_DDF                /* Dynamic Data Facility        */
  13942. #include <os2.h>
  13943. #include <pmhelp.h>
  13944.  
  13945. struct _LISTITEM        /* definition list                      */
  13946. {
  13947.     PSZ Term;
  13948.     PSZ Desc;
  13949. } Definition[2] = {{"MVS", "Multiple Virtual System"},
  13950.                    {"VM",  "Virtual Machine"}};
  13951.  
  13952. MRESULT WindowProc( HWND hwnd, ULONG ulMsg, MPARAM mp1, MPARAM mp2)
  13953. {
  13954.  
  13955.     HWND   hwndParent;
  13956.     HWND   hwndInstance;
  13957.     HDDF   hDdf;            /* DDF handle                           */
  13958.     SHORT i;               /* loop index                           */
  13959.  
  13960.     switch( ulMsg )
  13961.     {
  13962.     case HM_QUERY_DDF_DATA:
  13963.         /* get the help instance */
  13964.         hwndParent = WinQueryWindow( hwnd, QW_PARENT );
  13965.         hwndParent = WinQueryWindow( hwndParent, QW_PARENT );
  13966.         hwndInstance = (HWND)WinSendMsg( hwndParent, HM_QUERY,
  13967.                                  MPFROMSHORT( HMQW_INSTANCE ), NULL );
  13968.  
  13969.         /* Allocate 1K Buffer (default)  */
  13970.         hDdf = DdfInitialize(
  13971.                    hwndInstance,  /* Handle of help instance */
  13972.                    0L,            /* Default buffer size     */
  13973.                    0L             /* Default increment       */
  13974.                    );
  13975.  
  13976.         if (hDdf == NULLHANDLE)       /* Check return code       */
  13977.         {
  13978.             return (MRESULT)FALSE;
  13979.         }
  13980.  
  13981.         /* begin definition list */
  13982.         if (!DdfBeginList(hDdf, 3L, HMBT_ALL, HMLS_SINGLELINE))
  13983.         {
  13984.             return (MRESULT)FALSE;
  13985.         }
  13986.  
  13987.         /* insert 2 entries into definition list */
  13988.         for (i=0; i < 2; i++)
  13989.         {
  13990.             if (!DdfListItem(hDdf, Definition[i].Term,
  13991.                                    Definition[i].Desc))
  13992.             {
  13993.                return (MRESULT)FALSE;
  13994.             }
  13995.         }
  13996.  
  13997.         /* terminate definition list */
  13998.         if (!DdfEndList(hDdf))
  13999.         {
  14000.             return (MRESULT)FALSE;
  14001.         }
  14002.  
  14003.         return (MRESULT)hDdf;
  14004.     }
  14005. }
  14006.  
  14007.  
  14008. ΓòÉΓòÉΓòÉ <hidden> DdfListItem - Topics ΓòÉΓòÉΓòÉ
  14009.  
  14010. Select an item: 
  14011.  
  14012. Syntax
  14013. Parameters
  14014. Returns
  14015. Errors
  14016. Remarks
  14017. Example Code
  14018. Related Functions
  14019.  
  14020.  
  14021. ΓòÉΓòÉΓòÉ 18.8. DdfMetafile ΓòÉΓòÉΓòÉ
  14022.  
  14023.  
  14024. ΓòÉΓòÉΓòÉ <hidden> DdfMetafile - Syntax ΓòÉΓòÉΓòÉ
  14025.  
  14026. /*******************************************/
  14027. /* This function places a reference to a   */
  14028. /* metafile into the DDF buffer.           */
  14029. /*******************************************/
  14030.  
  14031. #define INCL_DDF
  14032. #include <os2.h>
  14033.  
  14034. HDDF      hddf;      /*  Handle to DDF returned by DdfInitialize. */
  14035. HMF       hmf;       /*  The handle of the metafile to display. */
  14036. PRECTL    prclRect;  /*  Size of the rectangle. */
  14037. BOOL      rc;        /*  Success indicator. */
  14038.  
  14039. rc = DdfMetafile(hddf, hmf, prclRect);
  14040.  
  14041.  
  14042. ΓòÉΓòÉΓòÉ <hidden> DdfMetafile Parameter - hddf ΓòÉΓòÉΓòÉ
  14043.  
  14044.      hddf (HDDF) - input 
  14045.         Handle to DDF returned by DdfInitialize. 
  14046.  
  14047.  
  14048. ΓòÉΓòÉΓòÉ <hidden> DdfMetafile Parameter - hmf ΓòÉΓòÉΓòÉ
  14049.  
  14050.      hmf (HMF) - input 
  14051.         The handle of the metafile to display. 
  14052.  
  14053.  
  14054. ΓòÉΓòÉΓòÉ <hidden> DdfMetafile Parameter - prclRect ΓòÉΓòÉΓòÉ
  14055.  
  14056.      prclRect (PRECTL) - input 
  14057.         Size of the rectangle. 
  14058.  
  14059.         If not NULL, contains the size of the rectangle in which the metafile 
  14060.         will be displayed.  The aspect ratio of the metafile is adjusted to fit 
  14061.         this rectangle. 
  14062.  
  14063.  
  14064. ΓòÉΓòÉΓòÉ <hidden> DdfMetafile Return Value - rc ΓòÉΓòÉΓòÉ
  14065.  
  14066.      rc (BOOL) - returns 
  14067.         Success indicator. 
  14068.  
  14069.           TRUE 
  14070.              Successful completion 
  14071.           FALSE 
  14072.              Error occurred. 
  14073.  
  14074.  
  14075. ΓòÉΓòÉΓòÉ <hidden> DdfMetafile - Parameters ΓòÉΓòÉΓòÉ
  14076.  
  14077.      hddf (HDDF) - input 
  14078.         Handle to DDF returned by DdfInitialize. 
  14079.  
  14080.      hmf (HMF) - input 
  14081.         The handle of the metafile to display. 
  14082.  
  14083.      prclRect (PRECTL) - input 
  14084.         Size of the rectangle. 
  14085.  
  14086.         If not NULL, contains the size of the rectangle in which the metafile 
  14087.         will be displayed.  The aspect ratio of the metafile is adjusted to fit 
  14088.         this rectangle. 
  14089.  
  14090.      rc (BOOL) - returns 
  14091.         Success indicator. 
  14092.  
  14093.           TRUE 
  14094.              Successful completion 
  14095.           FALSE 
  14096.              Error occurred. 
  14097.  
  14098.  
  14099. ΓòÉΓòÉΓòÉ <hidden> DdfMetafile - Remarks ΓòÉΓòÉΓòÉ
  14100.  
  14101. There is a 3-byte ESC code overhead in the DDF internal buffer for this 
  14102. function.  There is also a (MetaFilename length) overhead. Finally, the 
  14103. prclRect variable requires an additional 16 bytes of overhead in the DDF 
  14104. internal buffer. 
  14105.  
  14106.  
  14107. ΓòÉΓòÉΓòÉ <hidden> DdfMetafile - Errors ΓòÉΓòÉΓòÉ
  14108.  
  14109. Possible returns from WinGetLastError 
  14110.  
  14111.      HMERR_DDF_MEMORY (0x3001) 
  14112.         Not enough memory is available. 
  14113.  
  14114.  
  14115. ΓòÉΓòÉΓòÉ <hidden> DdfMetafile - Related Functions ΓòÉΓòÉΓòÉ
  14116.  
  14117.        o  DdfBeginList 
  14118.        o  DdfBitmap 
  14119.        o  DdfEndList 
  14120.        o  DdfHyperText 
  14121.        o  DdfInform 
  14122.        o  DdfInitialize 
  14123.        o  DdfListItem 
  14124.        o  DdfMetafile 
  14125.        o  DdfPara 
  14126.        o  DdfSetColor 
  14127.        o  DdfSetFont 
  14128.        o  DdfSetFontStyle 
  14129.        o  DdfSetFormat 
  14130.        o  DdfSetTextAlign 
  14131.        o  DdfText 
  14132.  
  14133.  
  14134. ΓòÉΓòÉΓòÉ <hidden> DdfMetafile - Example Code ΓòÉΓòÉΓòÉ
  14135.  
  14136. After initializing a DDF buffer with DdfInitialize, and loading a metafile with 
  14137. GpiLoadMetaFile, the example uses DdfMetafile to place a reference to the 
  14138. metafile in the DDF buffer.  For a more detailed example and discussion of 
  14139. initializing DDF, see the DdfInitialize sample. 
  14140.  
  14141. #define INCL_WINWINDOWMGR       /* General window management    */
  14142. #define INCL_WINMESSAGEMGR      /* Message management           */
  14143. #define INCL_DDF                /* Dynamic Data Facility        */
  14144. #define INCL_GPIMETAFILES       /* MetaFiles                    */
  14145. #include <os2.h>
  14146. #include <pmhelp.h>
  14147.  
  14148. #define MF_HWND   0
  14149. #define ACVP_HAB  4
  14150.  
  14151. MRESULT WindowProc( HWND hwnd, ULONG ulMsg, MPARAM mp1, MPARAM mp2 )
  14152. {
  14153.     HWND   hwndParent;
  14154.     HAB    hab;
  14155.     HWND   hwndInstance;    /* help instance window                 */
  14156.     HDDF   hDdf;            /* DDF handle                           */
  14157.     HMF    hwndMetaFile;    /* metafile handle                      */
  14158.  
  14159.     switch( ulMsg )
  14160.     {
  14161.     case HM_QUERY_DDF_DATA:
  14162.         /* get the help instance */
  14163.         hwndParent = WinQueryWindow( hwnd, QW_PARENT );
  14164.         hwndParent = WinQueryWindow( hwndParent, QW_PARENT );
  14165.         hwndInstance = (HWND)WinSendMsg( hwndParent, HM_QUERY,
  14166.                                  MPFROMSHORT( HMQW_INSTANCE ), NULL );
  14167.  
  14168.         /* Allocate 1K Buffer (default)  */
  14169.         hDdf = DdfInitialize(
  14170.                     hwndInstance,  /* Handle of help instance */
  14171.                     0L,            /* Default buffer size     */
  14172.                     0L             /* Default increment       */
  14173.                     );
  14174.  
  14175.         if (hDdf == NULLHANDLE)       /* Check return code       */
  14176.         {
  14177.             return (MRESULT)FALSE;
  14178.         }
  14179.  
  14180.         /* get hab for this window */
  14181.         if ((hab = (HAB)WinQueryWindowULong(hwnd, ACVP_HAB)) == NULLHANDLE)
  14182.         {
  14183.            return (MRESULT)FALSE;
  14184.         }
  14185.  
  14186.         /* Load the Metafile to display */
  14187.         if ((hwndMetaFile = GpiLoadMetaFile(hab, "SAMP.MET")) == NULLHANDLE)
  14188.         {
  14189.             return (MRESULT)FALSE;
  14190.         }
  14191.  
  14192.         /* Save MetaFile hwnd in reserved word */
  14193.         WinSetWindowULong(hwnd, MF_HWND, hwndMetaFile);
  14194.  
  14195.         if (!DdfMetafile(hDdf, hwndMetaFile, NULL))
  14196.         {
  14197.             return (MRESULT)FALSE;
  14198.         }
  14199.  
  14200.         return (hDdf);
  14201.  
  14202.     case WM_CLOSE:
  14203.         GpiDeleteMetaFile((HMF)WinQueryWindowULong(hwnd, MF_HWND));
  14204.         WinDestroyWindow(WinQueryWindow(hwnd, QW_PARENT));
  14205.  
  14206.         return (MRESULT)TRUE;
  14207.     }
  14208.     return WinDefWindowProc( hwnd, ulMsg, mp1, mp2 );
  14209. }
  14210.  
  14211.  
  14212. ΓòÉΓòÉΓòÉ <hidden> DdfMetafile - Topics ΓòÉΓòÉΓòÉ
  14213.  
  14214. Select an item: 
  14215.  
  14216. Syntax
  14217. Parameters
  14218. Returns
  14219. Errors
  14220. Remarks
  14221. Example Code
  14222. Related Functions
  14223.  
  14224.  
  14225. ΓòÉΓòÉΓòÉ 18.9. DdfPara ΓòÉΓòÉΓòÉ
  14226.  
  14227.  
  14228. ΓòÉΓòÉΓòÉ <hidden> DdfPara - Syntax ΓòÉΓòÉΓòÉ
  14229.  
  14230. /*******************************************/
  14231. /* This function creates a paragraph       */
  14232. /* within the DDF buffer. It corresponds   */
  14233. /* to the :p. tag. This function places a  */
  14234. /* reference to a bit map in the DDF       */
  14235. /* buffer.                                 */
  14236. /*******************************************/
  14237.  
  14238. #define INCL_DDF
  14239. #include <os2.h>
  14240.  
  14241. HDDF    hddf;  /*  Handle to DDF returned by DdfInitialize. */
  14242. BOOL    rc;    /*  Success indicator. */
  14243.  
  14244. rc = DdfPara(hddf);
  14245.  
  14246.  
  14247. ΓòÉΓòÉΓòÉ <hidden> DdfPara Parameter - hddf ΓòÉΓòÉΓòÉ
  14248.  
  14249.      hddf (HDDF) - input 
  14250.         Handle to DDF returned by DdfInitialize. 
  14251.  
  14252.  
  14253. ΓòÉΓòÉΓòÉ <hidden> DdfPara Return Value - rc ΓòÉΓòÉΓòÉ
  14254.  
  14255.      rc (BOOL) - returns 
  14256.         Success indicator. 
  14257.  
  14258.           TRUE 
  14259.              Successful completion 
  14260.           FALSE 
  14261.              Error occurred. 
  14262.  
  14263.  
  14264. ΓòÉΓòÉΓòÉ <hidden> DdfPara - Parameters ΓòÉΓòÉΓòÉ
  14265.  
  14266.      hddf (HDDF) - input 
  14267.         Handle to DDF returned by DdfInitialize. 
  14268.  
  14269.      rc (BOOL) - returns 
  14270.         Success indicator. 
  14271.  
  14272.           TRUE 
  14273.              Successful completion 
  14274.           FALSE 
  14275.              Error occurred. 
  14276.  
  14277.  
  14278. ΓòÉΓòÉΓòÉ <hidden> DdfPara - Remarks ΓòÉΓòÉΓòÉ
  14279.  
  14280. There is a 1-byte ESC code overhead in the DDF internal buffer for this 
  14281. function. 
  14282.  
  14283.  
  14284. ΓòÉΓòÉΓòÉ <hidden> DdfPara - Errors ΓòÉΓòÉΓòÉ
  14285.  
  14286. Possible returns from WinGetLastError 
  14287.  
  14288.      HMERR_DDF_MEMORY (0x3001) 
  14289.         Not enough memory is available. 
  14290.  
  14291.  
  14292. ΓòÉΓòÉΓòÉ <hidden> DdfPara - Related Functions ΓòÉΓòÉΓòÉ
  14293.  
  14294.        o  DdfBeginList 
  14295.        o  DdfBitmap 
  14296.        o  DdfEndList 
  14297.        o  DdfHyperText 
  14298.        o  DdfInform 
  14299.        o  DdfInitialize 
  14300.        o  DdfListItem 
  14301.        o  DdfMetafile 
  14302.        o  DdfPara 
  14303.        o  DdfSetColor 
  14304.        o  DdfSetFont 
  14305.        o  DdfSetFontStyle 
  14306.        o  DdfSetFormat 
  14307.        o  DdfSetTextAlign 
  14308.        o  DdfText 
  14309.  
  14310.  
  14311. ΓòÉΓòÉΓòÉ <hidden> DdfPara - Example Code ΓòÉΓòÉΓòÉ
  14312.  
  14313. After initializing a DDF buffer with DdfInitialize, the example uses DdfPara to 
  14314. start a new paragraph, DdfSetFont and DdfSetFontStyle to have the text 
  14315. displayed in a large, bold Courier font, DdfSetColor to change the text color, 
  14316. and DdfText to place text in the buffer.  For a more detailed example and 
  14317. discussion of initializing DDF, see the DdfInitialize DdfInitialize sample. 
  14318.  
  14319. #define INCL_WINWINDOWMGR       /* General window management    */
  14320. #define INCL_WINMESSAGEMGR      /* Message management           */
  14321. #define INCL_DDF                /* Dynamic Data Facility        */
  14322. #include <os2.h>
  14323. #include <pmhelp.h>
  14324.  
  14325. MRESULT WindowProc( HWND hwnd, ULONG ulMsg, MPARAM mp1, MPARAM mp2 )
  14326. {
  14327.    HWND   hwndParent;
  14328.    HWND   hwndInstance;    /* help instance window                 */
  14329.    HDDF   hDdf;            /* DDF handle                           */
  14330.  
  14331.     switch( ulMsg )
  14332.     {
  14333.     case HM_QUERY_DDF_DATA:
  14334.         /* get the help instance */
  14335.         hwndParent = WinQueryWindow( hwnd, QW_PARENT );
  14336.         hwndParent = WinQueryWindow( hwndParent, QW_PARENT );
  14337.         hwndInstance = (HWND)WinSendMsg( hwndParent, HM_QUERY,
  14338.                                  MPFROMSHORT( HMQW_INSTANCE ), NULL );
  14339.  
  14340.         /* Allocate 1K Buffer (default)  */
  14341.         hDdf = DdfInitialize(
  14342.                     hwndInstance,  /* Handle of help instance */
  14343.                     0L,            /* Default buffer size     */
  14344.                     0L             /* Default increment       */
  14345.                     );
  14346.  
  14347.         if (hDdf == NULLHANDLE)       /* Check return code       */
  14348.         {
  14349.             return (MRESULT)FALSE;
  14350.         }
  14351.  
  14352.         /* create paragraph in DDF buffer */
  14353.         if( !DdfPara( hDdf ) )
  14354.         {
  14355.            return (MRESULT)FALSE;
  14356.         }
  14357.  
  14358.         /* Change to large (100 x 100 dimensions) Courier font */
  14359.         if( !DdfSetFont( hDdf, "Courier", 100L, 100L ) )
  14360.         {
  14361.            return (MRESULT)FALSE;
  14362.         }
  14363.  
  14364.         /* make the font BOLDFACE */
  14365.         if( !DdfSetFontStyle( hDdf, FM_SEL_BOLD ) )
  14366.         {
  14367.            return (MRESULT)FALSE;
  14368.         }
  14369.  
  14370.         /* make the text display as BLUE on a PALE GRAY background */
  14371.         if( !DdfSetColor( hDdf, CLR_PALEGRAY, CLR_BLUE ) )
  14372.         {
  14373.            return (MRESULT)FALSE;
  14374.         }
  14375.  
  14376.         /* Write data into the buffer */
  14377.         if (!DdfText(hDdf, "Sample Text"))
  14378.         {
  14379.            return (MRESULT)FALSE;
  14380.         }
  14381.  
  14382.         return (MRESULT)hDdf;
  14383.     }
  14384.     return WinDefWindowProc( hwnd, ulMsg, mp1, mp2 );
  14385. }
  14386.  
  14387.  
  14388. ΓòÉΓòÉΓòÉ <hidden> DdfPara - Topics ΓòÉΓòÉΓòÉ
  14389.  
  14390. Select an item: 
  14391.  
  14392. Syntax
  14393. Parameters
  14394. Returns
  14395. Errors
  14396. Remarks
  14397. Example Code
  14398. Related Functions
  14399.  
  14400.  
  14401. ΓòÉΓòÉΓòÉ 18.10. DdfSetColor ΓòÉΓòÉΓòÉ
  14402.  
  14403.  
  14404. ΓòÉΓòÉΓòÉ <hidden> DdfSetColor - Syntax ΓòÉΓòÉΓòÉ
  14405.  
  14406. /*******************************************/
  14407. /* This function sets the background and   */
  14408. /* foreground colors of the displayed text.*/
  14409. /*******************************************/
  14410.  
  14411. #define INCL_DDF
  14412. #include <os2.h>
  14413.  
  14414. HDDF     hddf;       /*  Handle to DDF returned by DdfInitialize. */
  14415. COLOR    BackColor;  /*  Specifies the desired background color. */
  14416. COLOR    ForColor;   /*  Specifies the desired foreground color. */
  14417. BOOL     rc;         /*  Success indicator. */
  14418.  
  14419. rc = DdfSetColor(hddf, BackColor, ForColor);
  14420.  
  14421.  
  14422. ΓòÉΓòÉΓòÉ <hidden> DdfSetColor Parameter - hddf ΓòÉΓòÉΓòÉ
  14423.  
  14424.      hddf (HDDF) - input 
  14425.         Handle to DDF returned by DdfInitialize. 
  14426.  
  14427.  
  14428. ΓòÉΓòÉΓòÉ <hidden> DdfSetColor Parameter - BackColor ΓòÉΓòÉΓòÉ
  14429.  
  14430.      BackColor (COLOR) - input 
  14431.         Specifies the desired background color. 
  14432.  
  14433.  
  14434. ΓòÉΓòÉΓòÉ <hidden> DdfSetColor Parameter - ForColor ΓòÉΓòÉΓòÉ
  14435.  
  14436.      ForColor (COLOR) - input 
  14437.         Specifies the desired foreground color. 
  14438.  
  14439.         The following color value constants may be used for the foreground and 
  14440.         background colors: 
  14441.  
  14442.           CLR_DEFAULT -  used to set IPF default text color 
  14443.           CLR_BLACK 
  14444.           CLR_BLUE 
  14445.           CLR_RED 
  14446.           CLR_PINK 
  14447.           CLR_GREEN 
  14448.           CLR_CYAN 
  14449.           CLR_YELLOW 
  14450.           CLR_BROWN 
  14451.           CLR_DARKGRAY 
  14452.           CLR_DARKBLUE 
  14453.           CLR_DARKRED 
  14454.           CLR_DARKPINK 
  14455.           CLR_DARKGREEN 
  14456.           CLR_DARKCYAN 
  14457.           CLR_PALEGRAY 
  14458.  
  14459.  
  14460. ΓòÉΓòÉΓòÉ <hidden> DdfSetColor Return Value - rc ΓòÉΓòÉΓòÉ
  14461.  
  14462.      rc (BOOL) - returns 
  14463.         Success indicator. 
  14464.  
  14465.           TRUE 
  14466.              Successful completion 
  14467.           FALSE 
  14468.              Error occurred. 
  14469.  
  14470.  
  14471. ΓòÉΓòÉΓòÉ <hidden> DdfSetColor - Parameters ΓòÉΓòÉΓòÉ
  14472.  
  14473.      hddf (HDDF) - input 
  14474.         Handle to DDF returned by DdfInitialize. 
  14475.  
  14476.      BackColor (COLOR) - input 
  14477.         Specifies the desired background color. 
  14478.  
  14479.      ForColor (COLOR) - input 
  14480.         Specifies the desired foreground color. 
  14481.  
  14482.         The following color value constants may be used for the foreground and 
  14483.         background colors: 
  14484.  
  14485.           CLR_DEFAULT -  used to set IPF default text color 
  14486.           CLR_BLACK 
  14487.           CLR_BLUE 
  14488.           CLR_RED 
  14489.           CLR_PINK 
  14490.           CLR_GREEN 
  14491.           CLR_CYAN 
  14492.           CLR_YELLOW 
  14493.           CLR_BROWN 
  14494.           CLR_DARKGRAY 
  14495.           CLR_DARKBLUE 
  14496.           CLR_DARKRED 
  14497.           CLR_DARKPINK 
  14498.           CLR_DARKGREEN 
  14499.           CLR_DARKCYAN 
  14500.           CLR_PALEGRAY 
  14501.  
  14502.      rc (BOOL) - returns 
  14503.         Success indicator. 
  14504.  
  14505.           TRUE 
  14506.              Successful completion 
  14507.           FALSE 
  14508.              Error occurred. 
  14509.  
  14510.  
  14511. ΓòÉΓòÉΓòÉ <hidden> DdfSetColor - Remarks ΓòÉΓòÉΓòÉ
  14512.  
  14513. There is a 4-byte ESC code overhead in the DDF internal buffer for the 
  14514. foreground color, and a 4-byte overhead for the background color, with this 
  14515. function. 
  14516.  
  14517.  
  14518. ΓòÉΓòÉΓòÉ <hidden> DdfSetColor - Errors ΓòÉΓòÉΓòÉ
  14519.  
  14520. Possible returns from WinGetLastError 
  14521.  
  14522.      HMERR_DDF_MEMORY (0x3001) 
  14523.         Not enough memory is available. 
  14524.  
  14525.      HMERR_DDF_BACKCOLOR (0x3003) 
  14526.         The background color is not valid. 
  14527.  
  14528.      HMERR_DDF_FORECOLOR (0x3004) 
  14529.         The foreground color is not valid. 
  14530.  
  14531.  
  14532. ΓòÉΓòÉΓòÉ <hidden> DdfSetColor - Related Functions ΓòÉΓòÉΓòÉ
  14533.  
  14534.        o  DdfBeginList 
  14535.        o  DdfBitmap 
  14536.        o  DdfEndList 
  14537.        o  DdfHyperText 
  14538.        o  DdfInform 
  14539.        o  DdfInitialize 
  14540.        o  DdfListItem 
  14541.        o  DdfMetafile 
  14542.        o  DdfPara 
  14543.        o  DdfSetColor 
  14544.        o  DdfSetFont 
  14545.        o  DdfSetFontStyle 
  14546.        o  DdfSetFormat 
  14547.        o  DdfSetTextAlign 
  14548.        o  DdfText 
  14549.  
  14550.  
  14551. ΓòÉΓòÉΓòÉ <hidden> DdfSetColor - Example Code ΓòÉΓòÉΓòÉ
  14552.  
  14553. After initializing a DDF buffer with DdfInitialize, the example uses DdfPara to 
  14554. start a new paragraph, DdfSetFont and DdfSetFontStyle to have the text 
  14555. displayed in a large, bold Courier font, DdfSetColor to change the text color, 
  14556. and DdfText to place text in the buffer.  For a more detailed example and 
  14557. discussion of initializing DDF, see the DdfInitialize sample. 
  14558.  
  14559. #define INCL_WINWINDOWMGR       /* General window management    */
  14560. #define INCL_WINMESSAGEMGR      /* Message management           */
  14561. #define INCL_DDF                /* Dynamic Data Facility        */
  14562. #include <os2.h>
  14563. #include <pmhelp.h>
  14564.  
  14565. MRESULT WindowProc( HWND hwnd, ULONG ulMsg, MPARAM mp1, MPARAM mp2 )
  14566. {
  14567.    HWND   hwndParent;
  14568.    HWND   hwndInstance;    /* help instance window                 */
  14569.    HDDF   hDdf;            /* DDF handle                           */
  14570.  
  14571.     switch( ulMsg )
  14572.     {
  14573.     case HM_QUERY_DDF_DATA:
  14574.         /* get the help instance */
  14575.         hwndParent = WinQueryWindow( hwnd, QW_PARENT );
  14576.         hwndParent = WinQueryWindow( hwndParent, QW_PARENT );
  14577.         hwndInstance = (HWND)WinSendMsg( hwndParent, HM_QUERY,
  14578.                                  MPFROMSHORT( HMQW_INSTANCE ), NULL );
  14579.  
  14580.         /* Allocate 1K Buffer (default)  */
  14581.         hDdf = DdfInitialize(
  14582.                     hwndInstance,  /* Handle of help instance */
  14583.                     0L,            /* Default buffer size     */
  14584.                     0L             /* Default increment       */
  14585.                     );
  14586.  
  14587.         if (hDdf == NULLHANDLE)       /* Check return code       */
  14588.         {
  14589.             return (MRESULT)FALSE;
  14590.         }
  14591.  
  14592.         /* create paragraph in DDF buffer */
  14593.         if( !DdfPara( hDdf ) )
  14594.         {
  14595.            return (MRESULT)FALSE;
  14596.         }
  14597.  
  14598.         /* Change to large (100 x 100 dimensions) Courier font */
  14599.         if( !DdfSetFont( hDdf, "Courier", 100L, 100L ) )
  14600.         {
  14601.            return (MRESULT)FALSE;
  14602.         }
  14603.  
  14604.         /* make the font BOLDFACE */
  14605.         if( !DdfSetFontStyle( hDdf, FM_SEL_BOLD ) )
  14606.         {
  14607.            return (MRESULT)FALSE;
  14608.         }
  14609.  
  14610.         /* make the text display as BLUE on a PALE GRAY background */
  14611.         if( !DdfSetColor( hDdf, CLR_PALEGRAY, CLR_BLUE ) )
  14612.         {
  14613.            return (MRESULT)FALSE;
  14614.         }
  14615.  
  14616.         /* Write data into the buffer */
  14617.         if (!DdfText(hDdf, "Sample Text"))
  14618.         {
  14619.            return (MRESULT)FALSE;
  14620.         }
  14621.  
  14622.         return (MRESULT)hDdf;
  14623.     }
  14624.     return WinDefWindowProc( hwnd, ulMsg, mp1, mp2 );
  14625. }
  14626.  
  14627.  
  14628. ΓòÉΓòÉΓòÉ <hidden> DdfSetColor - Topics ΓòÉΓòÉΓòÉ
  14629.  
  14630. Select an item: 
  14631.  
  14632. Syntax
  14633. Parameters
  14634. Returns
  14635. Errors
  14636. Remarks
  14637. Example Code
  14638. Related Functions
  14639.  
  14640.  
  14641. ΓòÉΓòÉΓòÉ 18.11. DdfSetFont ΓòÉΓòÉΓòÉ
  14642.  
  14643.  
  14644. ΓòÉΓòÉΓòÉ <hidden> DdfSetFont - Syntax ΓòÉΓòÉΓòÉ
  14645.  
  14646. /*******************************************/
  14647. /* This function specifies a text font in  */
  14648. /* the DDF buffer.                         */
  14649. /*******************************************/
  14650.  
  14651. #define INCL_DDF
  14652. #include <os2.h>
  14653.  
  14654. HDDF     hddf;       /*  Handle to DDF returned by DdfInitialize. */
  14655. PSZ      pFaceName;  /*  Pointer to font name. */
  14656. ULONG    ulWidth;    /*  Font width in points. */
  14657. ULONG    ulHeight;   /*  Font height in points. */
  14658. BOOL     rc;         /*  Success indicator. */
  14659.  
  14660. rc = DdfSetFont(hddf, pFaceName, ulWidth,
  14661.        ulHeight);
  14662.  
  14663.  
  14664. ΓòÉΓòÉΓòÉ <hidden> DdfSetFont Parameter - hddf ΓòÉΓòÉΓòÉ
  14665.  
  14666.      hddf (HDDF) - input 
  14667.         Handle to DDF returned by DdfInitialize. 
  14668.  
  14669.  
  14670. ΓòÉΓòÉΓòÉ <hidden> DdfSetFont Parameter - pFaceName ΓòÉΓòÉΓòÉ
  14671.  
  14672.      pFaceName (PSZ) - input 
  14673.         Pointer to font name. 
  14674.  
  14675.         This parameter can be specified in two ways: 
  14676.  
  14677.        o  An ASCIIZ string specifying the font name. 
  14678.        o  NULL or "default" to specify the default font. 
  14679.  
  14680.  
  14681. ΓòÉΓòÉΓòÉ <hidden> DdfSetFont Parameter - ulWidth ΓòÉΓòÉΓòÉ
  14682.  
  14683.      ulWidth (ULONG) - input 
  14684.         Font width in points. 
  14685.  
  14686.         A point is approximately 1/72 of an inch. 
  14687.  
  14688.  
  14689. ΓòÉΓòÉΓòÉ <hidden> DdfSetFont Parameter - ulHeight ΓòÉΓòÉΓòÉ
  14690.  
  14691.      ulHeight (ULONG) - input 
  14692.         Font height in points. 
  14693.  
  14694.  
  14695. ΓòÉΓòÉΓòÉ <hidden> DdfSetFont Return Value - rc ΓòÉΓòÉΓòÉ
  14696.  
  14697.      rc (BOOL) - returns 
  14698.         Success indicator. 
  14699.  
  14700.           TRUE 
  14701.              Successful completion 
  14702.           FALSE 
  14703.              Error occurred. 
  14704.  
  14705.  
  14706. ΓòÉΓòÉΓòÉ <hidden> DdfSetFont - Parameters ΓòÉΓòÉΓòÉ
  14707.  
  14708.      hddf (HDDF) - input 
  14709.         Handle to DDF returned by DdfInitialize. 
  14710.  
  14711.      pFaceName (PSZ) - input 
  14712.         Pointer to font name. 
  14713.  
  14714.         This parameter can be specified in two ways: 
  14715.  
  14716.        o  An ASCIIZ string specifying the font name. 
  14717.        o  NULL or "default" to specify the default font. 
  14718.  
  14719.      ulWidth (ULONG) - input 
  14720.         Font width in points. 
  14721.  
  14722.         A point is approximately 1/72 of an inch. 
  14723.  
  14724.      ulHeight (ULONG) - input 
  14725.         Font height in points. 
  14726.  
  14727.      rc (BOOL) - returns 
  14728.         Success indicator. 
  14729.  
  14730.           TRUE 
  14731.              Successful completion 
  14732.           FALSE 
  14733.              Error occurred. 
  14734.  
  14735.  
  14736. ΓòÉΓòÉΓòÉ <hidden> DdfSetFont - Errors ΓòÉΓòÉΓòÉ
  14737.  
  14738. Possible returns from WinGetLastError 
  14739.  
  14740.      HMERR_DDF_MEMORY (0x3001) 
  14741.         Not enough memory is available. 
  14742.  
  14743.  
  14744. ΓòÉΓòÉΓòÉ <hidden> DdfSetFont - Related Functions ΓòÉΓòÉΓòÉ
  14745.  
  14746.        o  DdfBeginList 
  14747.        o  DdfBitmap 
  14748.        o  DdfEndList 
  14749.        o  DdfHyperText 
  14750.        o  DdfInform 
  14751.        o  DdfInitialize 
  14752.        o  DdfListItem 
  14753.        o  DdfMetafile 
  14754.        o  DdfPara 
  14755.        o  DdfSetColor 
  14756.        o  DdfSetFont 
  14757.        o  DdfSetFontStyle 
  14758.        o  DdfSetFormat 
  14759.        o  DdfSetTextAlign 
  14760.        o  DdfText 
  14761.  
  14762.  
  14763. ΓòÉΓòÉΓòÉ <hidden> DdfSetFont - Example Code ΓòÉΓòÉΓòÉ
  14764.  
  14765. After initializing a DDF buffer with DdfInitialize, the example uses DdfPara to 
  14766. start a new paragraph, DdfSetFont and DdfSetFontStyle to have the text 
  14767. displayed in a large, bold Courier font, DdfSetColor to change the text color, 
  14768. and DdfText to place text in the buffer.  For a more detailed example and 
  14769. discussion of initializing DDF, see the DdfInitialize sample. 
  14770.  
  14771. #define INCL_WINWINDOWMGR       /* General window management    */
  14772. #define INCL_WINMESSAGEMGR      /* Message management           */
  14773. #define INCL_DDF                /* Dynamic Data Facility        */
  14774. #include <os2.h>
  14775. #include <pmhelp.h>
  14776.  
  14777. MRESULT WindowProc( HWND hwnd, ULONG ulMsg, MPARAM mp1, MPARAM mp2 )
  14778. {
  14779.    HWND   hwndParent;
  14780.    HWND   hwndInstance;    /* help instance window                 */
  14781.    HDDF   hDdf;            /* DDF handle                           */
  14782.  
  14783.     switch( ulMsg )
  14784.     {
  14785.     case HM_QUERY_DDF_DATA:
  14786.         /* get the help instance */
  14787.         hwndParent = WinQueryWindow( hwnd, QW_PARENT );
  14788.         hwndParent = WinQueryWindow( hwndParent, QW_PARENT );
  14789.         hwndInstance = (HWND)WinSendMsg( hwndParent, HM_QUERY,
  14790.                                  MPFROMSHORT( HMQW_INSTANCE ), NULL );
  14791.  
  14792.         /* Allocate 1K Buffer (default)  */
  14793.         hDdf = DdfInitialize(
  14794.                     hwndInstance,  /* Handle of help instance */
  14795.                     0L,            /* Default buffer size     */
  14796.                     0L             /* Default increment       */
  14797.                     );
  14798.  
  14799.         if (hDdf == NULLHANDLE)       /* Check return code       */
  14800.         {
  14801.             return (MRESULT)FALSE;
  14802.         }
  14803.  
  14804.         /* create paragraph in DDF buffer */
  14805.         if( !DdfPara( hDdf ) )
  14806.         {
  14807.            return (MRESULT)FALSE;
  14808.         }
  14809.  
  14810.         /* Change to large (100 x 100 dimensions) Courier font */
  14811.         if( !DdfSetFont( hDdf, "Courier", 100L, 100L ) )
  14812.         {
  14813.            return (MRESULT)FALSE;
  14814.         }
  14815.  
  14816.         /* make the font BOLDFACE */
  14817.         if( !DdfSetFontStyle( hDdf, FM_SEL_BOLD ) )
  14818.         {
  14819.            return (MRESULT)FALSE;
  14820.         }
  14821.  
  14822.         /* make the text display as BLUE on a PALE GRAY background */
  14823.         if( !DdfSetColor( hDdf, CLR_PALEGRAY, CLR_BLUE ) )
  14824.         {
  14825.            return (MRESULT)FALSE;
  14826.         }
  14827.  
  14828.         /* Write data into the buffer */
  14829.         if (!DdfText(hDdf, "Sample Text"))
  14830.         {
  14831.            return (MRESULT)FALSE;
  14832.         }
  14833.  
  14834.         return (MRESULT)hDdf;
  14835.     }
  14836.     return WinDefWindowProc( hwnd, ulMsg, mp1, mp2 );
  14837. }
  14838.  
  14839.  
  14840. ΓòÉΓòÉΓòÉ <hidden> DdfSetFont - Topics ΓòÉΓòÉΓòÉ
  14841.  
  14842. Select an item: 
  14843.  
  14844. Syntax
  14845. Parameters
  14846. Returns
  14847. Errors
  14848. Example Code
  14849. Related Functions
  14850.  
  14851.  
  14852. ΓòÉΓòÉΓòÉ 18.12. DdfSetFontStyle ΓòÉΓòÉΓòÉ
  14853.  
  14854.  
  14855. ΓòÉΓòÉΓòÉ <hidden> DdfSetFontStyle - Syntax ΓòÉΓòÉΓòÉ
  14856.  
  14857. /*******************************************/
  14858. /* This function specifies a text font     */
  14859. /* style in the DDF buffer.                */
  14860. /*******************************************/
  14861.  
  14862. #define INCL_DDF
  14863. #include <os2.h>
  14864.  
  14865. HDDF     hddf;        /*  Handle to DDF returned by DdfInitialize. */
  14866. ULONG    fFontStyle;  /*  Font style flag. */
  14867. BOOL     rc;          /*  Success indicator. */
  14868.  
  14869. rc = DdfSetFontStyle(hddf, fFontStyle);
  14870.  
  14871.  
  14872. ΓòÉΓòÉΓòÉ <hidden> DdfSetFontStyle Parameter - hddf ΓòÉΓòÉΓòÉ
  14873.  
  14874.      hddf (HDDF) - input 
  14875.         Handle to DDF returned by DdfInitialize. 
  14876.  
  14877.  
  14878. ΓòÉΓòÉΓòÉ <hidden> DdfSetFontStyle Parameter - fFontStyle ΓòÉΓòÉΓòÉ
  14879.  
  14880.      fFontStyle (ULONG) - input 
  14881.         Font style flag. 
  14882.  
  14883.         A NULL value for this parameter will set the font-style back to the 
  14884.         default. Any of the following values can be specified: 
  14885.  
  14886.           FM_SEL_ITALIC 
  14887.           FM_SEL_BOLD 
  14888.           FM_SEL_UNDERSCORE 
  14889.  
  14890.      These values can be "ORed" together to combine different font styles. 
  14891.  
  14892.      Note:  There is a 4-byte ESC code overhead in the DDF internal buffer for 
  14893.      fFontStyle. 
  14894.  
  14895.  
  14896. ΓòÉΓòÉΓòÉ <hidden> DdfSetFontStyle Return Value - rc ΓòÉΓòÉΓòÉ
  14897.  
  14898.      rc (BOOL) - returns 
  14899.         Success indicator. 
  14900.  
  14901.           TRUE 
  14902.              Successful completion. 
  14903.           FALSE 
  14904.              Error occurred. 
  14905.  
  14906.  
  14907. ΓòÉΓòÉΓòÉ <hidden> DdfSetFontStyle - Parameters ΓòÉΓòÉΓòÉ
  14908.  
  14909.      hddf (HDDF) - input 
  14910.         Handle to DDF returned by DdfInitialize. 
  14911.  
  14912.      fFontStyle (ULONG) - input 
  14913.         Font style flag. 
  14914.  
  14915.         A NULL value for this parameter will set the font-style back to the 
  14916.         default. Any of the following values can be specified: 
  14917.  
  14918.           FM_SEL_ITALIC 
  14919.           FM_SEL_BOLD 
  14920.           FM_SEL_UNDERSCORE 
  14921.  
  14922.      These values can be "ORed" together to combine different font styles. 
  14923.  
  14924.      Note:  There is a 4-byte ESC code overhead in the DDF internal buffer for 
  14925.      fFontStyle. 
  14926.  
  14927.      rc (BOOL) - returns 
  14928.         Success indicator. 
  14929.  
  14930.           TRUE 
  14931.              Successful completion. 
  14932.           FALSE 
  14933.              Error occurred. 
  14934.  
  14935.  
  14936. ΓòÉΓòÉΓòÉ <hidden> DdfSetFontStyle - Errors ΓòÉΓòÉΓòÉ
  14937.  
  14938. Possible returns from WinGetLastError 
  14939.  
  14940.      HMERR_DDF_MEMORY (0x3001) 
  14941.         Not enough memory is available. 
  14942.  
  14943.      HMERR_DDF_FONTSTYLE (0x3005) 
  14944.         The font style is not valid. 
  14945.  
  14946.  
  14947. ΓòÉΓòÉΓòÉ <hidden> DdfSetFontStyle - Related Functions ΓòÉΓòÉΓòÉ
  14948.  
  14949.        o  DdfBeginList 
  14950.        o  DdfBitmap 
  14951.        o  DdfEndList 
  14952.        o  DdfHyperText 
  14953.        o  DdfInform 
  14954.        o  DdfInitialize 
  14955.        o  DdfListItem 
  14956.        o  DdfMetafile 
  14957.        o  DdfPara 
  14958.        o  DdfSetColor 
  14959.        o  DdfSetFont 
  14960.        o  DdfSetFontStyle 
  14961.        o  DdfSetFormat 
  14962.        o  DdfSetTextAlign 
  14963.        o  DdfText 
  14964.  
  14965.  
  14966. ΓòÉΓòÉΓòÉ <hidden> DdfSetFontStyle - Example Code ΓòÉΓòÉΓòÉ
  14967.  
  14968. After initializing a DDF buffer with DdfInitialize, the example uses DdfPara to 
  14969. start a new paragraph, DdfSetFont and DdfSetFontStyle to have the text 
  14970. displayed in a large, bold Courier font, DdfSetColor to change the text color, 
  14971. and DdfText to place text in the buffer.  For a more detailed example and 
  14972. discussion of initializing DDF, see the DdfInitialize sample. 
  14973.  
  14974. #define INCL_WINWINDOWMGR       /* General window management    */
  14975. #define INCL_WINMESSAGEMGR      /* Message management           */
  14976. #define INCL_DDF                /* Dynamic Data Facility        */
  14977. #include <os2.h>
  14978. #include <pmhelp.h>
  14979.  
  14980. MRESULT WindowProc( HWND hwnd, ULONG ulMsg, MPARAM mp1, MPARAM mp2 )
  14981. {
  14982.    HWND   hwndParent;
  14983.    HWND   hwndInstance;    /* help instance window                 */
  14984.    HDDF   hDdf;            /* DDF handle                           */
  14985.  
  14986.     switch( ulMsg )
  14987.     {
  14988.     case HM_QUERY_DDF_DATA:
  14989.         /* get the help instance */
  14990.         hwndParent = WinQueryWindow( hwnd, QW_PARENT );
  14991.         hwndParent = WinQueryWindow( hwndParent, QW_PARENT );
  14992.         hwndInstance = (HWND)WinSendMsg( hwndParent, HM_QUERY,
  14993.                                  MPFROMSHORT( HMQW_INSTANCE ), NULL );
  14994.  
  14995.         /* Allocate 1K Buffer (default)  */
  14996.         hDdf = DdfInitialize(
  14997.                     hwndInstance,  /* Handle of help instance */
  14998.                     0L,            /* Default buffer size     */
  14999.                     0L             /* Default increment       */
  15000.                     );
  15001.  
  15002.         if (hDdf == NULLHANDLE)       /* Check return code       */
  15003.         {
  15004.             return (MRESULT)FALSE;
  15005.         }
  15006.  
  15007.         /* create paragraph in DDF buffer */
  15008.         if( !DdfPara( hDdf ) )
  15009.         {
  15010.            return (MRESULT)FALSE;
  15011.         }
  15012.  
  15013.         /* Change to large (100 x 100 dimensions) Courier font */
  15014.         if( !DdfSetFont( hDdf, "Courier", 100L, 100L ) )
  15015.         {
  15016.            return (MRESULT)FALSE;
  15017.         }
  15018.  
  15019.         /* make the font BOLDFACE */
  15020.         if( !DdfSetFontStyle( hDdf, FM_SEL_BOLD ) )
  15021.         {
  15022.            return (MRESULT)FALSE;
  15023.         }
  15024.  
  15025.         /* make the text display as BLUE on a PALE GRAY background */
  15026.         if( !DdfSetColor( hDdf, CLR_PALEGRAY, CLR_BLUE ) )
  15027.         {
  15028.            return (MRESULT)FALSE;
  15029.         }
  15030.  
  15031.         /* Write data into the buffer */
  15032.         if (!DdfText(hDdf, "Sample Text"))
  15033.         {
  15034.            return (MRESULT)FALSE;
  15035.         }
  15036.  
  15037.         return (MRESULT)hDdf;
  15038.     }
  15039.     return WinDefWindowProc( hwnd, ulMsg, mp1, mp2 );
  15040. }
  15041.  
  15042.  
  15043. ΓòÉΓòÉΓòÉ <hidden> DdfSetFontStyle - Topics ΓòÉΓòÉΓòÉ
  15044.  
  15045. Select an item: 
  15046.  
  15047. Syntax
  15048. Parameters
  15049. Returns
  15050. Errors
  15051. Example Code
  15052. Related Functions
  15053.  
  15054.  
  15055. ΓòÉΓòÉΓòÉ 18.13. DdfSetFormat ΓòÉΓòÉΓòÉ
  15056.  
  15057.  
  15058. ΓòÉΓòÉΓòÉ <hidden> DdfSetFormat - Syntax ΓòÉΓòÉΓòÉ
  15059.  
  15060. /*******************************************/
  15061. /* This function is used to turn           */
  15062. /* formatting off or on. It corresponds to */
  15063. /* the :lines. tag.                        */
  15064. /*******************************************/
  15065.  
  15066. #define INCL_DDF
  15067. #include <os2.h>
  15068.  
  15069. HDDF     hddf;         /*  Handle to DDF returned by DdfInitialize. */
  15070. ULONG    fFormatType;  /*  Formatting-activation flag. */
  15071. BOOL     rc;           /*  Success indicator. */
  15072.  
  15073. rc = DdfSetFormat(hddf, fFormatType);
  15074.  
  15075.  
  15076. ΓòÉΓòÉΓòÉ <hidden> DdfSetFormat Parameter - hddf ΓòÉΓòÉΓòÉ
  15077.  
  15078.      hddf (HDDF) - input 
  15079.         Handle to DDF returned by DdfInitialize. 
  15080.  
  15081.  
  15082. ΓòÉΓòÉΓòÉ <hidden> DdfSetFormat Parameter - fFormatType ΓòÉΓòÉΓòÉ
  15083.  
  15084.      fFormatType (ULONG) - input 
  15085.         Formatting-activation flag. 
  15086.  
  15087.         Only the following constants may be used in this parameter: 
  15088.  
  15089.           TRUE 
  15090.              Turn formatting on. 
  15091.           FALSE 
  15092.              Turn formatting off. 
  15093.  
  15094.  
  15095. ΓòÉΓòÉΓòÉ <hidden> DdfSetFormat Return Value - rc ΓòÉΓòÉΓòÉ
  15096.  
  15097.      rc (BOOL) - returns 
  15098.         Success indicator. 
  15099.  
  15100.           TRUE 
  15101.              Successful completion 
  15102.           FALSE 
  15103.              Error occurred. 
  15104.  
  15105.  
  15106. ΓòÉΓòÉΓòÉ <hidden> DdfSetFormat - Parameters ΓòÉΓòÉΓòÉ
  15107.  
  15108.      hddf (HDDF) - input 
  15109.         Handle to DDF returned by DdfInitialize. 
  15110.  
  15111.      fFormatType (ULONG) - input 
  15112.         Formatting-activation flag. 
  15113.  
  15114.         Only the following constants may be used in this parameter: 
  15115.  
  15116.           TRUE 
  15117.              Turn formatting on. 
  15118.           FALSE 
  15119.              Turn formatting off. 
  15120.  
  15121.      rc (BOOL) - returns 
  15122.         Success indicator. 
  15123.  
  15124.           TRUE 
  15125.              Successful completion 
  15126.           FALSE 
  15127.              Error occurred. 
  15128.  
  15129.  
  15130. ΓòÉΓòÉΓòÉ <hidden> DdfSetFormat - Remarks ΓòÉΓòÉΓòÉ
  15131.  
  15132. If formatting is ON, there is a 3-byte ESC code overhead in the DDF internal 
  15133. buffer for this function. Otherwise, there is a 4-byte ESC code overhead. 
  15134.  
  15135.  
  15136. ΓòÉΓòÉΓòÉ <hidden> DdfSetFormat - Errors ΓòÉΓòÉΓòÉ
  15137.  
  15138. Possible returns from WinGetLastError 
  15139.  
  15140.      HMERR_DDF_MEMORY (0x3001) 
  15141.         Not enough memory is available. 
  15142.  
  15143.  
  15144. ΓòÉΓòÉΓòÉ <hidden> DdfSetFormat - Related Functions ΓòÉΓòÉΓòÉ
  15145.  
  15146.        o  DdfBeginList 
  15147.        o  DdfBitmap 
  15148.        o  DdfEndList 
  15149.        o  DdfHyperText 
  15150.        o  DdfInform 
  15151.        o  DdfInitialize 
  15152.        o  DdfListItem 
  15153.        o  DdfMetafile 
  15154.        o  DdfPara 
  15155.        o  DdfSetColor 
  15156.        o  DdfSetFont 
  15157.        o  DdfSetFontStyle 
  15158.        o  DdfSetFormat 
  15159.        o  DdfSetTextAlign 
  15160.        o  DdfText 
  15161.  
  15162.  
  15163. ΓòÉΓòÉΓòÉ <hidden> DdfSetFormat - Example Code ΓòÉΓòÉΓòÉ
  15164.  
  15165. After initializing a DDF buffer with DdfInitialize, the example uses 
  15166. DdfSetTextAlign to specify left justified test in the DDF buffer when 
  15167. formatting is OFF. The example then uses DdfSetFormat to turn off formatting 
  15168. for text in the DDF buffer (corresponds to the IPF lines tag). For a more 
  15169. detailed example and discussion of initializing DDF, see the DdfInitialize 
  15170. sample. 
  15171.  
  15172. #define INCL_WINWINDOWMGR       /* General window management    */
  15173. #define INCL_WINMESSAGEMGR      /* Message management           */
  15174. #define INCL_GPIPRIMITIVES      /* Drawing Primitives/Attributes*/
  15175. #define INCL_DDF                /* Dynamic Data Facility        */
  15176. #include <os2.h>
  15177. #include <pmhelp.h>
  15178.  
  15179. MRESULT WindowProc( HWND hwnd, ULONG ulMsg, MPARAM mp1, MPARAM mp2 )
  15180. {
  15181.    HWND   hwndParent;
  15182.    HWND   hwndInstance;    /* help instance window                 */
  15183.    HDDF   hDdf;            /* DDF handle                           */
  15184.  
  15185.     switch( ulMsg )
  15186.     {
  15187.     case HM_QUERY_DDF_DATA:
  15188.         /* get the help instance */
  15189.         hwndParent = WinQueryWindow( hwnd, QW_PARENT );
  15190.         hwndParent = WinQueryWindow( hwndParent, QW_PARENT );
  15191.         hwndInstance = (HWND)WinSendMsg( hwndParent, HM_QUERY,
  15192.                                  MPFROMSHORT( HMQW_INSTANCE ), NULL );
  15193.  
  15194.         /* Allocate 1K Buffer (default)  */
  15195.         hDdf = DdfInitialize(
  15196.                     hwndInstance,  /* Handle of help instance */
  15197.                     0L,            /* Default buffer size     */
  15198.                     0L             /* Default increment       */
  15199.                     );
  15200.  
  15201.         if (hDdf == NULLHANDLE)       /* Check return code       */
  15202.         {
  15203.            return (MRESULT)FALSE;
  15204.         }
  15205.  
  15206.         /* left justify text when formatting is OFF */
  15207.         if (!DdfSetTextAlign(hDdf, TA_LEFT))
  15208.         {
  15209.            return (MRESULT)FALSE;
  15210.         }
  15211.  
  15212.         /* turn formatting OFF */
  15213.         if (!DdfSetFormat(hDdf, FALSE))
  15214.         {
  15215.            return (MRESULT)FALSE;
  15216.         }
  15217.  
  15218.         if (!DdfText(hDdf,
  15219.                 "Format OFF: This text should be Left Aligned!\n"))
  15220.         {
  15221.            return (MRESULT)FALSE;
  15222.         }
  15223.  
  15224.         return (MRESULT)hDdf;
  15225.      }
  15226.      return WinDefWindowProc( hwnd, ulMsg, mp1, mp2 );
  15227. }
  15228.  
  15229.  
  15230. ΓòÉΓòÉΓòÉ <hidden> DdfSetFormat - Topics ΓòÉΓòÉΓòÉ
  15231.  
  15232. Select an item: 
  15233.  
  15234. Syntax
  15235. Parameters
  15236. Returns
  15237. Errors
  15238. Remarks
  15239. Example Code
  15240. Related Functions
  15241.  
  15242.  
  15243. ΓòÉΓòÉΓòÉ 18.14. DdfSetTextAlign ΓòÉΓòÉΓòÉ
  15244.  
  15245.  
  15246. ΓòÉΓòÉΓòÉ <hidden> DdfSetTextAlign - Syntax ΓòÉΓòÉΓòÉ
  15247.  
  15248. /*******************************************/
  15249. /* This function defines whether left,     */
  15250. /* center, or right text justification is  */
  15251. /* to be used when text formatting is off. */
  15252. /*******************************************/
  15253.  
  15254. #define INCL_DDF
  15255. #include <os2.h>
  15256.  
  15257. HDDF     hddf;    /*  Handle to DDF returned by DdfInitialize. */
  15258. ULONG    fAlign;  /*  Justification flag. */
  15259. BOOL     rc;      /*  Success indicator. */
  15260.  
  15261. rc = DdfSetTextAlign(hddf, fAlign);
  15262.  
  15263.  
  15264. ΓòÉΓòÉΓòÉ <hidden> DdfSetTextAlign Parameter - hddf ΓòÉΓòÉΓòÉ
  15265.  
  15266.      hddf (HDDF) - input 
  15267.         Handle to DDF returned by DdfInitialize. 
  15268.  
  15269.  
  15270. ΓòÉΓòÉΓòÉ <hidden> DdfSetTextAlign Parameter - fAlign ΓòÉΓòÉΓòÉ
  15271.  
  15272.      fAlign (ULONG) - input 
  15273.         Justification flag. 
  15274.  
  15275.         Only the following constants may be used: 
  15276.  
  15277.           TA_LEFT 
  15278.              Left-justify text. 
  15279.           TA_RIGHT 
  15280.              Right-justify text. 
  15281.           TA_CENTER 
  15282.              Center text. 
  15283.  
  15284.  
  15285. ΓòÉΓòÉΓòÉ <hidden> DdfSetTextAlign Return Value - rc ΓòÉΓòÉΓòÉ
  15286.  
  15287.      rc (BOOL) - returns 
  15288.         Success indicator. 
  15289.  
  15290.           TRUE 
  15291.              Successful completion. 
  15292.           FALSE 
  15293.              Error occurred. 
  15294.  
  15295.  
  15296. ΓòÉΓòÉΓòÉ <hidden> DdfSetTextAlign - Parameters ΓòÉΓòÉΓòÉ
  15297.  
  15298.      hddf (HDDF) - input 
  15299.         Handle to DDF returned by DdfInitialize. 
  15300.  
  15301.      fAlign (ULONG) - input 
  15302.         Justification flag. 
  15303.  
  15304.         Only the following constants may be used: 
  15305.  
  15306.           TA_LEFT 
  15307.              Left-justify text. 
  15308.           TA_RIGHT 
  15309.              Right-justify text. 
  15310.           TA_CENTER 
  15311.              Center text. 
  15312.  
  15313.      rc (BOOL) - returns 
  15314.         Success indicator. 
  15315.  
  15316.           TRUE 
  15317.              Successful completion. 
  15318.           FALSE 
  15319.              Error occurred. 
  15320.  
  15321.  
  15322. ΓòÉΓòÉΓòÉ <hidden> DdfSetTextAlign - Remarks ΓòÉΓòÉΓòÉ
  15323.  
  15324. It should be called before DdfSetFormat is called to turn off text formatting, 
  15325. and should not be called again until formatting is turned back on. Note that 
  15326. leading and trailing spaces are not stripped from the text as a result of this 
  15327. alignment. 
  15328.  
  15329.  
  15330. ΓòÉΓòÉΓòÉ <hidden> DdfSetTextAlign - Errors ΓòÉΓòÉΓòÉ
  15331.  
  15332. Possible returns from WinGetLastError 
  15333.  
  15334.      HMERR_DDF_ALIGN_TYPE (0x3002) 
  15335.         The alignment type is not valid. 
  15336.  
  15337.  
  15338. ΓòÉΓòÉΓòÉ <hidden> DdfSetTextAlign - Related Functions ΓòÉΓòÉΓòÉ
  15339.  
  15340.        o  DdfBeginList 
  15341.        o  DdfBitmap 
  15342.        o  DdfEndList 
  15343.        o  DdfHyperText 
  15344.        o  DdfInform 
  15345.        o  DdfInitialize 
  15346.        o  DdfListItem 
  15347.        o  DdfMetafile 
  15348.        o  DdfPara 
  15349.        o  DdfSetColor 
  15350.        o  DdfSetFont 
  15351.        o  DdfSetFontStyle 
  15352.        o  DdfSetFormat 
  15353.        o  DdfSetTextAlign 
  15354.        o  DdfText 
  15355.  
  15356.  
  15357. ΓòÉΓòÉΓòÉ <hidden> DdfSetTextAlign - Example Code ΓòÉΓòÉΓòÉ
  15358.  
  15359. After initializing a DDF buffer with DdfInitialize, the example uses 
  15360. DdfSetTextAlign to specify left justified test in the DDF buffer when 
  15361. formatting is OFF. The example then uses DdfSetFormat to turn off formatting 
  15362. for text in the DDF buffer (corresponds to the IPF lines tag). For a more 
  15363. detailed example and discussion of initializing DDF, see the DdfInitialize 
  15364. sample. 
  15365.  
  15366. #define INCL_WINWINDOWMGR       /* General window management    */
  15367. #define INCL_WINMESSAGEMGR      /* Message management           */
  15368. #define INCL_GPIPRIMITIVES      /* Drawing Primitives/Attributes*/
  15369. #define INCL_DDF                /* Dynamic Data Facility        */
  15370. #include <os2.h>
  15371. #include <pmhelp.h>
  15372.  
  15373. MRESULT WindowProc( HWND hwnd, ULONG ulMsg, MPARAM mp1, MPARAM mp2 )
  15374. {
  15375.    HWND   hwndParent;
  15376.    HWND   hwndInstance;    /* help instance window                 */
  15377.    HDDF   hDdf;            /* DDF handle                           */
  15378.  
  15379.     switch( ulMsg )
  15380.     {
  15381.     case HM_QUERY_DDF_DATA:
  15382.         /* get the help instance */
  15383.         hwndParent = WinQueryWindow( hwnd, QW_PARENT );
  15384.         hwndParent = WinQueryWindow( hwndParent, QW_PARENT );
  15385.         hwndInstance = (HWND)WinSendMsg( hwndParent, HM_QUERY,
  15386.                                  MPFROMSHORT( HMQW_INSTANCE ), NULL );
  15387.  
  15388.         /* Allocate 1K Buffer (default)  */
  15389.         hDdf = DdfInitialize(
  15390.                     hwndInstance,  /* Handle of help instance */
  15391.                     0L,            /* Default buffer size     */
  15392.                     0L             /* Default increment       */
  15393.                     );
  15394.  
  15395.         if (hDdf == NULLHANDLE)       /* Check return code       */
  15396.         {
  15397.            return (MRESULT)FALSE;
  15398.         }
  15399.  
  15400.         /* left justify text when formatting is OFF */
  15401.         if (!DdfSetTextAlign(hDdf, TA_LEFT))
  15402.         {
  15403.            return (MRESULT)FALSE;
  15404.         }
  15405.  
  15406.         /* turn formatting OFF */
  15407.         if (!DdfSetFormat(hDdf, FALSE))
  15408.         {
  15409.            return (MRESULT)FALSE;
  15410.         }
  15411.  
  15412.         if (!DdfText(hDdf,
  15413.                 "Format OFF: This text should be Left Aligned!\n"))
  15414.         {
  15415.            return (MRESULT)FALSE;
  15416.         }
  15417.  
  15418.         return (MRESULT)hDdf;
  15419.      }
  15420.      return WinDefWindowProc( hwnd, ulMsg, mp1, mp2 );
  15421. }
  15422.  
  15423.  
  15424. ΓòÉΓòÉΓòÉ <hidden> DdfSetTextAlign - Topics ΓòÉΓòÉΓòÉ
  15425.  
  15426. Select an item: 
  15427.  
  15428. Syntax
  15429. Parameters
  15430. Returns
  15431. Errors
  15432. Remarks
  15433. Example Code
  15434. Related Functions
  15435.  
  15436.  
  15437. ΓòÉΓòÉΓòÉ 18.15. DdfText ΓòÉΓòÉΓòÉ
  15438.  
  15439.  
  15440. ΓòÉΓòÉΓòÉ <hidden> DdfText - Syntax ΓòÉΓòÉΓòÉ
  15441.  
  15442. /*******************************************/
  15443. /* This function adds text to the DDF      */
  15444. /* buffer.                                 */
  15445. /*******************************************/
  15446.  
  15447. #define INCL_DDF
  15448. #include <os2.h>
  15449.  
  15450. HDDF    hddf;   /*  Handle to DDF returned by DdfInitialize. */
  15451. PSZ     pText;  /*  Pointer to the text buffer to be formatted. */
  15452. BOOL    rc;     /*  Success indicator. */
  15453.  
  15454. rc = DdfText(hddf, pText);
  15455.  
  15456.  
  15457. ΓòÉΓòÉΓòÉ <hidden> DdfText Parameter - hddf ΓòÉΓòÉΓòÉ
  15458.  
  15459.      hddf (HDDF) - input 
  15460.         Handle to DDF returned by DdfInitialize. 
  15461.  
  15462.  
  15463. ΓòÉΓòÉΓòÉ <hidden> DdfText Parameter - pText ΓòÉΓòÉΓòÉ
  15464.  
  15465.      pText (PSZ) - input 
  15466.         Pointer to the text buffer to be formatted. 
  15467.  
  15468.         Note:  There is a 3-byte ESC code overhead in the DDF internal buffer 
  15469.                for each word in the text buffer. There is a 1-byte ESC code 
  15470.                overhead for each blank and for each newline character. 
  15471.  
  15472.  
  15473. ΓòÉΓòÉΓòÉ <hidden> DdfText Return Value - rc ΓòÉΓòÉΓòÉ
  15474.  
  15475.      rc (BOOL) - returns 
  15476.         Success indicator. 
  15477.  
  15478.           TRUE 
  15479.              Successful completion. 
  15480.           FALSE 
  15481.              Error occurred. 
  15482.  
  15483.  
  15484. ΓòÉΓòÉΓòÉ <hidden> DdfText - Parameters ΓòÉΓòÉΓòÉ
  15485.  
  15486.      hddf (HDDF) - input 
  15487.         Handle to DDF returned by DdfInitialize. 
  15488.  
  15489.      pText (PSZ) - input 
  15490.         Pointer to the text buffer to be formatted. 
  15491.  
  15492.         Note:  There is a 3-byte ESC code overhead in the DDF internal buffer 
  15493.                for each word in the text buffer. There is a 1-byte ESC code 
  15494.                overhead for each blank and for each newline character. 
  15495.  
  15496.  
  15497.      rc (BOOL) - returns 
  15498.         Success indicator. 
  15499.  
  15500.           TRUE 
  15501.              Successful completion. 
  15502.           FALSE 
  15503.              Error occurred. 
  15504.  
  15505.  
  15506. ΓòÉΓòÉΓòÉ <hidden> DdfText - Related Functions ΓòÉΓòÉΓòÉ
  15507.  
  15508.        o  DdfBeginList 
  15509.        o  DdfBitmap 
  15510.        o  DdfEndList 
  15511.        o  DdfHyperText 
  15512.        o  DdfInform 
  15513.        o  DdfInitialize 
  15514.        o  DdfListItem 
  15515.        o  DdfMetafile 
  15516.        o  DdfPara 
  15517.        o  DdfSetColor 
  15518.        o  DdfSetFont 
  15519.        o  DdfSetFontStyle 
  15520.        o  DdfSetFormat 
  15521.        o  DdfSetTextAlign 
  15522.        o  DdfText 
  15523.  
  15524.  
  15525. ΓòÉΓòÉΓòÉ <hidden> DdfText - Example Code ΓòÉΓòÉΓòÉ
  15526.  
  15527. After initializing a DDF buffer with DdfInitialize, the example uses DdfPara to 
  15528. start a new paragraph, DdfSetFont and DdfSetFontStyle to have the text 
  15529. displayed in a large, bold Courier font, DdfSetColor to change the text color, 
  15530. and DdfText to place text in the buffer.  For a more detailed example and 
  15531. discussion of initializing DDF, see the DdfInitialize sample. 
  15532.  
  15533. #define INCL_WINWINDOWMGR       /* General window management    */
  15534. #define INCL_WINMESSAGEMGR      /* Message management           */
  15535. #define INCL_DDF                /* Dynamic Data Facility        */
  15536. #include <os2.h>
  15537. #include <pmhelp.h>
  15538.  
  15539. MRESULT WindowProc( HWND hwnd, ULONG ulMsg, MPARAM mp1, MPARAM mp2 )
  15540. {
  15541.    HWND   hwndParent;
  15542.    HWND   hwndInstance;    /* help instance window                 */
  15543.    HDDF   hDdf;            /* DDF handle                           */
  15544.  
  15545.     switch( ulMsg )
  15546.     {
  15547.     case HM_QUERY_DDF_DATA:
  15548.         /* get the help instance */
  15549.         hwndParent = WinQueryWindow( hwnd, QW_PARENT );
  15550.         hwndParent = WinQueryWindow( hwndParent, QW_PARENT );
  15551.         hwndInstance = (HWND)WinSendMsg( hwndParent, HM_QUERY,
  15552.                                  MPFROMSHORT( HMQW_INSTANCE ), NULL );
  15553.  
  15554.         /* Allocate 1K Buffer (default)  */
  15555.         hDdf = DdfInitialize(
  15556.                     hwndInstance,  /* Handle of help instance */
  15557.                     0L,            /* Default buffer size     */
  15558.                     0L             /* Default increment       */
  15559.                     );
  15560.  
  15561.         if (hDdf == NULLHANDLE)       /* Check return code       */
  15562.         {
  15563.             return (MRESULT)FALSE;
  15564.         }
  15565.  
  15566.         /* create paragraph in DDF buffer */
  15567.         if( !DdfPara( hDdf ) )
  15568.         {
  15569.            return (MRESULT)FALSE;
  15570.         }
  15571.  
  15572.         /* Change to large (100 x 100 dimensions) Courier font */
  15573.         if( !DdfSetFont( hDdf, "Courier", 100L, 100L ) )
  15574.         {
  15575.            return (MRESULT)FALSE;
  15576.         }
  15577.  
  15578.         /* make the font BOLDFACE */
  15579.         if( !DdfSetFontStyle( hDdf, FM_SEL_BOLD ) )
  15580.         {
  15581.            return (MRESULT)FALSE;
  15582.         }
  15583.  
  15584.         /* make the text display as BLUE on a PALE GRAY background */
  15585.         if( !DdfSetColor( hDdf, CLR_PALEGRAY, CLR_BLUE ) )
  15586.         {
  15587.            return (MRESULT)FALSE;
  15588.         }
  15589.  
  15590.         /* Write data into the buffer */
  15591.         if (!DdfText(hDdf, "Sample Text"))
  15592.         {
  15593.            return (MRESULT)FALSE;
  15594.         }
  15595.  
  15596.         return (MRESULT)hDdf;
  15597.     }
  15598.     return WinDefWindowProc( hwnd, ulMsg, mp1, mp2 );
  15599. }
  15600.  
  15601.  
  15602. ΓòÉΓòÉΓòÉ <hidden> DdfText - Topics ΓòÉΓòÉΓòÉ
  15603.  
  15604. Select an item: 
  15605.  
  15606. Syntax
  15607. Parameters
  15608. Returns
  15609. Example Code
  15610. Related Functions
  15611.  
  15612.  
  15613. ΓòÉΓòÉΓòÉ 19. Help Manager Messages ΓòÉΓòÉΓòÉ
  15614.  
  15615. The following is a summary of the messages sent by IPF and the application in 
  15616. response to user help requests. 
  15617.  
  15618.      HM_ACTIONBAR_COMMAND 
  15619.          This message is sent by IPF and notifies the application that a user 
  15620.          has selected a tailored menu bar item. 
  15621.  
  15622.      HM_CONTROL 
  15623.          This message is sent to the application or the communication object by 
  15624.          IPF prior to the addition of a push button in the control area of a 
  15625.          window. 
  15626.  
  15627.      HM_CREATE_HELP_TABLE 
  15628.          This message is sent by the application and informs IPF to use the new 
  15629.          help table indicated by this address in memory. 
  15630.  
  15631.      HM_DISMISS_WINDOW 
  15632.          This message is sent by the application and informs IPF to remove the 
  15633.          active help window. 
  15634.  
  15635.      HM_DISPLAY_HELP 
  15636.          This message is sent by the application and informs IPF to display a 
  15637.          specific help window. 
  15638.  
  15639.      HM_ERROR 
  15640.          This message notifies the application of an error caused by user 
  15641.          interaction. 
  15642.  
  15643.      HM_EXT_HELP 
  15644.          This message is sent by the application and informs IPF to display the 
  15645.          extended help window for the active application window. 
  15646.  
  15647.      HM_EXT_HELP_UNDEFINED 
  15648.          This message is sent by IPF and notifies the application that an 
  15649.          extended help window has not been defined. 
  15650.  
  15651.      HM_GENERAL_HELP 
  15652.          This message is sent by the application and informs IPF to display the 
  15653.          general help window for the active application window. 
  15654.  
  15655.      HM_GENERAL_HELP_UNDEFINED 
  15656.          This message is sent by IPF and notifies the application that a 
  15657.          general help window has not been defined. 
  15658.  
  15659.      HM_HELP_CONTENTS 
  15660.          This message is sent by the application and informs IPF to display the 
  15661.          Contents window. 
  15662.  
  15663.      HM_HELP_INDEX 
  15664.          This message is sent by the application and informs IPF to display the 
  15665.          help index window. 
  15666.  
  15667.      HM_HELPSUBITEM_NOT_FOUND 
  15668.          This message is sent by IPF and notifies the application that a user 
  15669.          has requested help on a field but that IPF cannot find a related entry 
  15670.          in the help subtable. 
  15671.  
  15672.      HM_INFORM 
  15673.          This message is sent by IPF and notifies the application that a user 
  15674.          has selected a hypertext field that was specified with the 
  15675.          reftype=inform attribute of the :link. tag. 
  15676.  
  15677.      HM_INVALIDATE_DDF_DATA 
  15678.          This message is sent by the application and informs IPF that previous 
  15679.          dynamic data formatting (DDF) information is no longer valid. 
  15680.  
  15681.      HM_KEYS_HELP 
  15682.          This message is sent by the application and informs IPF to display the 
  15683.          keys help window. 
  15684.  
  15685.      HM_LOAD_HELP_TABLE 
  15686.          This message is sent by the application and provides IPF with the 
  15687.          module handle that contains the help table, the help subtable, and the 
  15688.          identity of the help table. 
  15689.  
  15690.      HM_NOTIFY 
  15691.          This message is sent by IPF and notifies the application or 
  15692.          communication object that an event has occurred that the application 
  15693.          may be interested in controlling. 
  15694.  
  15695.      HM_QUERY 
  15696.          This message is sent by the application and notifies IPF that the 
  15697.          application requires IPF-specific information. 
  15698.  
  15699.      HM_QUERY_DDF_DATA 
  15700.          This message is sent by IPF and notifies the communication object that 
  15701.          IPF has encountered the dynamic data formatting tag (:ddf.). 
  15702.  
  15703.      HM_QUERY_KEYS_HELP 
  15704.          This message is sent by IPF and notifies the application that a user 
  15705.          has requested keys help for a function. 
  15706.  
  15707.      HM_REPLACE_HELP_FOR_HELP 
  15708.          This message is sent by the application and informs IPF to display the 
  15709.          application-defined Help for Help window instead of the IPF Help for 
  15710.          Help window. 
  15711.  
  15712.      HM_REPLACE_USING_HELP 
  15713.          This message is sent by the application and informs IPF to display the 
  15714.          application-defined Using help window instead of the IPF Using help 
  15715.          window. 
  15716.  
  15717.      HM_SET_ACTIVE_WINDOW 
  15718.          This message is sent by the application and enables the application to 
  15719.          change the active application window with which the IPF help window is 
  15720.          associated. 
  15721.  
  15722.      HM_SET_COVERPAGE_SIZE 
  15723.          This message is sent by the application and informs IPF to set the 
  15724.          size of the coverpage window (the window within which all other IPF 
  15725.          windows are displayed). 
  15726.  
  15727.      HM_SET_HELP_LIBRARY_NAME 
  15728.          This message is sent by the application and informs IPF to replace the 
  15729.          list of help libraries specified in the initialization structure with 
  15730.          a new list. 
  15731.  
  15732.      HM_SET_HELP_WINDOW_TITLE 
  15733.          This message is sent by the application and informs IPF to change the 
  15734.          text of a help window title. 
  15735.  
  15736.      HM_SET_OBJCOM_WINDOW 
  15737.          This message is sent by the application and informs IPF to identify 
  15738.          the communication object to which the HM_INFORM and HM_QUERY_DDF_DATA 
  15739.          messages are sent. 
  15740.  
  15741.      HM_SET_SHOW_PANEL_ID 
  15742.          This message is sent by the application and informs IPF to display or 
  15743.          hide window IDs for each help window. 
  15744.  
  15745.      HM_SET_USERDATA 
  15746.          This message is sent by the application and informs IPF to store data 
  15747.          in the IPF data area. 
  15748.  
  15749.      HM_TUTORIAL 
  15750.          This message is sent by IPF and notifies the application when the user 
  15751.          selects Tutorial choice from the Help menu bar. 
  15752.  
  15753.      HM_UPDATE_OBJCOM_WINDOW_CHAIN 
  15754.          This message is sent to the currently active communication object by 
  15755.          the communication object who wants to withdraw from the communication 
  15756.          chain. 
  15757.  
  15758.      A detailed description of the parameters and returns for these messages 
  15759.      follows. 
  15760.  
  15761.  
  15762. ΓòÉΓòÉΓòÉ 19.1. HM_ACTIONBAR_COMMAND ΓòÉΓòÉΓòÉ
  15763.  
  15764.  
  15765. ΓòÉΓòÉΓòÉ <hidden> HM_ACTIONBAR_COMMAND - Syntax ΓòÉΓòÉΓòÉ
  15766.  
  15767. This message is sent to the current active application window by the Help 
  15768. Manager to notify the application when the user selects a tailored action bar 
  15769. item. 
  15770.  
  15771.  
  15772. param1
  15773.     USHORT  idCommand   /*  Identity of the action bar item that was selected. */
  15774.  
  15775. param2
  15776.     ULONG   ulReserved  /*  Reserved value, should be 0. */
  15777.  
  15778. returns
  15779.     ULONG   ulReserved  /*  Reserved value, should be 0. */
  15780.  
  15781.  
  15782. ΓòÉΓòÉΓòÉ <hidden> HM_ACTIONBAR_COMMAND Fields - idCommand ΓòÉΓòÉΓòÉ
  15783.  
  15784.      idCommand (USHORT) 
  15785.         Identity of the action bar item that was selected. 
  15786.  
  15787.  
  15788. ΓòÉΓòÉΓòÉ <hidden> HM_ACTIONBAR_COMMAND Fields - ulReserved ΓòÉΓòÉΓòÉ
  15789.  
  15790.      ulReserved (ULONG) 
  15791.         Reserved value, should be 0. 
  15792.  
  15793.  
  15794. ΓòÉΓòÉΓòÉ <hidden> HM_ACTIONBAR_COMMAND Return Value - ulReserved ΓòÉΓòÉΓòÉ
  15795.  
  15796.      ulReserved (ULONG) 
  15797.         Reserved value, should be 0. 
  15798.  
  15799.  
  15800. ΓòÉΓòÉΓòÉ <hidden> HM_ACTIONBAR_COMMAND - Parameters ΓòÉΓòÉΓòÉ
  15801.  
  15802.      idCommand (USHORT) 
  15803.         Identity of the action bar item that was selected. 
  15804.  
  15805.      ulReserved (ULONG) 
  15806.         Reserved value, should be 0. 
  15807.  
  15808.      ulReserved (ULONG) 
  15809.         Reserved value, should be 0. 
  15810.  
  15811.  
  15812. ΓòÉΓòÉΓòÉ <hidden> HM_ACTIONBAR_COMMAND - Default Processing ΓòÉΓòÉΓòÉ
  15813.  
  15814. None. 
  15815.  
  15816.  
  15817. ΓòÉΓòÉΓòÉ <hidden> HM_ACTIONBAR_COMMAND - Topics ΓòÉΓòÉΓòÉ
  15818.  
  15819. Select an item: 
  15820.  
  15821. Syntax
  15822. Parameters
  15823. Returns
  15824. Default Processing
  15825.  
  15826.  
  15827. ΓòÉΓòÉΓòÉ 19.2. HM_CONTROL ΓòÉΓòÉΓòÉ
  15828.  
  15829.  
  15830. ΓòÉΓòÉΓòÉ <hidden> HM_CONTROL - Syntax ΓòÉΓòÉΓòÉ
  15831.  
  15832. This message is sent by the Help Manager to the child of the coverpage window 
  15833. to add a control in the control area of a window. 
  15834.  
  15835.  
  15836. param1
  15837.     USHORT  usReserve   /*  Reserved value. */
  15838.     USHORT  controlres  /*  Res number of the control that was selected. */
  15839.  
  15840. param2
  15841.     ULONG   ulReserved  /*  Reserved value. */
  15842.  
  15843. returns
  15844.     ULONG   ulReserved  /*  Reserved value, should be 0. */
  15845.  
  15846.  
  15847. ΓòÉΓòÉΓòÉ <hidden> HM_CONTROL Fields - usReserve ΓòÉΓòÉΓòÉ
  15848.  
  15849.      usReserve (USHORT) 
  15850.         Reserved value. 
  15851.  
  15852.  
  15853. ΓòÉΓòÉΓòÉ <hidden> HM_CONTROL Fields - controlres ΓòÉΓòÉΓòÉ
  15854.  
  15855.      controlres (USHORT) 
  15856.         Res number of the control that was selected. 
  15857.  
  15858.         For author-defined push buttons, this is the res identification number 
  15859.         that was specified with the push button tag (:pbutton.).  For default 
  15860.         push buttons, this is the res identification number defined in the 
  15861.         PMHELP.H file. 
  15862.  
  15863.  
  15864. ΓòÉΓòÉΓòÉ <hidden> HM_CONTROL Fields - ulReserved ΓòÉΓòÉΓòÉ
  15865.  
  15866.      ulReserved (ULONG) 
  15867.         Reserved value. 
  15868.  
  15869.  
  15870. ΓòÉΓòÉΓòÉ <hidden> HM_CONTROL Return Value - ulReserved ΓòÉΓòÉΓòÉ
  15871.  
  15872.      ulReserved (ULONG) 
  15873.         Reserved value, should be 0. 
  15874.  
  15875.  
  15876. ΓòÉΓòÉΓòÉ <hidden> HM_CONTROL - Parameters ΓòÉΓòÉΓòÉ
  15877.  
  15878.      usReserve (USHORT) 
  15879.         Reserved value. 
  15880.  
  15881.      controlres (USHORT) 
  15882.         Res number of the control that was selected. 
  15883.  
  15884.         For author-defined push buttons, this is the res identification number 
  15885.         that was specified with the push button tag (:pbutton.).  For default 
  15886.         push buttons, this is the res identification number defined in the 
  15887.         PMHELP.H file. 
  15888.  
  15889.      ulReserved (ULONG) 
  15890.         Reserved value. 
  15891.  
  15892.      ulReserved (ULONG) 
  15893.         Reserved value, should be 0. 
  15894.  
  15895.  
  15896. ΓòÉΓòÉΓòÉ <hidden> HM_CONTROL - Remarks ΓòÉΓòÉΓòÉ
  15897.  
  15898. If an application wants to filter any of the controls, it can subclass the 
  15899. child of the coverpage window and intercept this message.  If the application 
  15900. does not intercept this message, the Help Manager adds the control to the 
  15901. control area. 
  15902.  
  15903.  
  15904. ΓòÉΓòÉΓòÉ <hidden> HM_CONTROL - Default Processing ΓòÉΓòÉΓòÉ
  15905.  
  15906. None. 
  15907.  
  15908.  
  15909. ΓòÉΓòÉΓòÉ <hidden> HM_CONTROL - Topics ΓòÉΓòÉΓòÉ
  15910.  
  15911. Select an item: 
  15912.  
  15913. Syntax
  15914. Parameters
  15915. Returns
  15916. Remarks
  15917. Default Processing
  15918.  
  15919.  
  15920. ΓòÉΓòÉΓòÉ 19.3. HM_CREATE_HELP_TABLE ΓòÉΓòÉΓòÉ
  15921.  
  15922.  
  15923. ΓòÉΓòÉΓòÉ <hidden> HM_CREATE_HELP_TABLE - Syntax ΓòÉΓòÉΓòÉ
  15924.  
  15925. This message is sent by the application to give the Help Manager a new help 
  15926. table. 
  15927.  
  15928.  
  15929. param1
  15930.     PHELPTABLE  pHELPTABLE  /*  Help table. */
  15931.  
  15932. param2
  15933.     ULONG       ulReserved  /*  Reserved value, should be 0. */
  15934.  
  15935. returns
  15936.     ULONG       rc          /*  Return code. */
  15937.  
  15938.  
  15939. ΓòÉΓòÉΓòÉ <hidden> HM_CREATE_HELP_TABLE Fields - pHELPTABLE ΓòÉΓòÉΓòÉ
  15940.  
  15941.      pHELPTABLE (PHELPTABLE) 
  15942.         Help table. 
  15943.  
  15944.         This points to a help table structure; see HELPTABLE. 
  15945.  
  15946.  
  15947. ΓòÉΓòÉΓòÉ <hidden> HM_CREATE_HELP_TABLE Fields - ulReserved ΓòÉΓòÉΓòÉ
  15948.  
  15949.      ulReserved (ULONG) 
  15950.         Reserved value, should be 0. 
  15951.  
  15952.  
  15953. ΓòÉΓòÉΓòÉ <hidden> HM_CREATE_HELP_TABLE Return Value - rc ΓòÉΓòÉΓòÉ
  15954.  
  15955.      rc (ULONG) 
  15956.         Return code. 
  15957.  
  15958.           0 
  15959.              The procedure was successfully completed 
  15960.           Other 
  15961.              See the values of the ulErrorCode parameter of the HM_ERROR 
  15962.              message. 
  15963.  
  15964.  
  15965. ΓòÉΓòÉΓòÉ <hidden> HM_CREATE_HELP_TABLE - Parameters ΓòÉΓòÉΓòÉ
  15966.  
  15967.      pHELPTABLE (PHELPTABLE) 
  15968.         Help table. 
  15969.  
  15970.         This points to a help table structure; see HELPTABLE. 
  15971.  
  15972.      ulReserved (ULONG) 
  15973.         Reserved value, should be 0. 
  15974.  
  15975.      rc (ULONG) 
  15976.         Return code. 
  15977.  
  15978.           0 
  15979.              The procedure was successfully completed 
  15980.           Other 
  15981.              See the values of the ulErrorCode parameter of the HM_ERROR 
  15982.              message. 
  15983.  
  15984.  
  15985. ΓòÉΓòÉΓòÉ <hidden> HM_CREATE_HELP_TABLE - Default Processing ΓòÉΓòÉΓòÉ
  15986.  
  15987. None. 
  15988.  
  15989.  
  15990. ΓòÉΓòÉΓòÉ <hidden> HM_CREATE_HELP_TABLE - Topics ΓòÉΓòÉΓòÉ
  15991.  
  15992. Select an item: 
  15993.  
  15994. Syntax
  15995. Parameters
  15996. Returns
  15997. Default Processing
  15998.  
  15999.  
  16000. ΓòÉΓòÉΓòÉ 19.4. HM_DISMISS_WINDOW ΓòÉΓòÉΓòÉ
  16001.  
  16002.  
  16003. ΓòÉΓòÉΓòÉ <hidden> HM_DISMISS_WINDOW - Syntax ΓòÉΓòÉΓòÉ
  16004.  
  16005. This message tells the Help Manager to remove the active help window. 
  16006.  
  16007.  
  16008. param1
  16009.     ULONG  ulReserved  /*  Reserved value, should be 0. */
  16010.  
  16011. param2
  16012.     ULONG  ulReserved  /*  Reserved value, should be 0. */
  16013.  
  16014. returns
  16015.     ULONG  rc          /*  Return code. */
  16016.  
  16017.  
  16018. ΓòÉΓòÉΓòÉ <hidden> HM_DISMISS_WINDOW Fields - ulReserved ΓòÉΓòÉΓòÉ
  16019.  
  16020.      ulReserved (ULONG) 
  16021.         Reserved value, should be 0. 
  16022.  
  16023.  
  16024. ΓòÉΓòÉΓòÉ <hidden> HM_DISMISS_WINDOW Fields - ulReserved ΓòÉΓòÉΓòÉ
  16025.  
  16026.      ulReserved (ULONG) 
  16027.         Reserved value, should be 0. 
  16028.  
  16029.  
  16030. ΓòÉΓòÉΓòÉ <hidden> HM_DISMISS_WINDOW Return Value - rc ΓòÉΓòÉΓòÉ
  16031.  
  16032.      rc (ULONG) 
  16033.         Return code. 
  16034.  
  16035.           0 
  16036.              The help window was successfully removed 
  16037.           Other 
  16038.              There was no associated help window. 
  16039.  
  16040.              See also the values of the ulErrorCode parameter of the HM_ERROR 
  16041.              message. 
  16042.  
  16043.  
  16044. ΓòÉΓòÉΓòÉ <hidden> HM_DISMISS_WINDOW - Parameters ΓòÉΓòÉΓòÉ
  16045.  
  16046.      ulReserved (ULONG) 
  16047.         Reserved value, should be 0. 
  16048.  
  16049.      ulReserved (ULONG) 
  16050.         Reserved value, should be 0. 
  16051.  
  16052.      rc (ULONG) 
  16053.         Return code. 
  16054.  
  16055.           0 
  16056.              The help window was successfully removed 
  16057.           Other 
  16058.              There was no associated help window. 
  16059.  
  16060.              See also the values of the ulErrorCode parameter of the HM_ERROR 
  16061.              message. 
  16062.  
  16063.  
  16064. ΓòÉΓòÉΓòÉ <hidden> HM_DISMISS_WINDOW - Remarks ΓòÉΓòÉΓòÉ
  16065.  
  16066. If the user requests help from a primary or secondary window, and then 
  16067. interacts with the primary or secondary window without leaving help, the 
  16068. currently displayed help window might not be appropriate for the application 
  16069. window. This message gives the application the ability to remove that help 
  16070. window. 
  16071.  
  16072.  
  16073. ΓòÉΓòÉΓòÉ <hidden> HM_DISMISS_WINDOW - Default Processing ΓòÉΓòÉΓòÉ
  16074.  
  16075. None. 
  16076.  
  16077.  
  16078. ΓòÉΓòÉΓòÉ <hidden> HM_DISMISS_WINDOW - Topics ΓòÉΓòÉΓòÉ
  16079.  
  16080. Select an item: 
  16081.  
  16082. Syntax
  16083. Parameters
  16084. Returns
  16085. Remarks
  16086. Default Processing
  16087.  
  16088.  
  16089. ΓòÉΓòÉΓòÉ 19.5. HM_DISPLAY_HELP ΓòÉΓòÉΓòÉ
  16090.  
  16091.  
  16092. ΓòÉΓòÉΓòÉ <hidden> HM_DISPLAY_HELP - Syntax ΓòÉΓòÉΓòÉ
  16093.  
  16094. This message tells the Help Manager to display a specific help window. 
  16095.  
  16096.  
  16097. param1
  16098.     USHORT  idHelpPanelId     /*  Identity of the help window. */
  16099.     PSZ     pszHelpPanelName  /*  Name of the help window. */
  16100.  
  16101. param2
  16102.     USHORT  usTypeFlag        /*  Flag indicating how to interpret the first parameter. */
  16103.  
  16104. returns
  16105.     ULONG   rc                /*  Return code. */
  16106.  
  16107.  
  16108. ΓòÉΓòÉΓòÉ <hidden> HM_DISPLAY_HELP Fields - idHelpPanelId ΓòÉΓòÉΓòÉ
  16109.  
  16110.      idHelpPanelId (USHORT) 
  16111.         Identity of the help window. 
  16112.  
  16113.         This points to a USHORT data type. 
  16114.  
  16115.      For a value of the usTypeFlag parameter of HM_PANELNAME. 
  16116.  
  16117.  
  16118. ΓòÉΓòÉΓòÉ <hidden> HM_DISPLAY_HELP Fields - pszHelpPanelName ΓòÉΓòÉΓòÉ
  16119.  
  16120.         pszHelpPanelName (PSZ) 
  16121.         Name of the help window. 
  16122.  
  16123.         This points to a string containing the name of the help window. 
  16124.  
  16125.  
  16126. ΓòÉΓòÉΓòÉ <hidden> HM_DISPLAY_HELP Fields - usTypeFlag ΓòÉΓòÉΓòÉ
  16127.  
  16128.      usTypeFlag (USHORT) 
  16129.         Flag indicating how to interpret the first parameter. 
  16130.  
  16131.           HM_RESOURCEID 
  16132.              Indicates the param1 points to the identity of the help window. 
  16133.  
  16134.           HM_PANELNAME 
  16135.              Indicates the param1 points to the name of the help window. 
  16136.  
  16137.  
  16138. ΓòÉΓòÉΓòÉ <hidden> HM_DISPLAY_HELP Return Value - rc ΓòÉΓòÉΓòÉ
  16139.  
  16140.      rc (ULONG) 
  16141.         Return code. 
  16142.  
  16143.           0 
  16144.              The window was successfully displayed 
  16145.           Other 
  16146.              See the values of the ulErrorCode parameter of the HM_ERROR 
  16147.              message. 
  16148.  
  16149.  
  16150. ΓòÉΓòÉΓòÉ <hidden> HM_DISPLAY_HELP - Parameters ΓòÉΓòÉΓòÉ
  16151.  
  16152.      idHelpPanelId (USHORT) 
  16153.         Identity of the help window. 
  16154.  
  16155.         This points to a USHORT data type. 
  16156.  
  16157.      For a value of the usTypeFlag parameter of HM_PANELNAME. 
  16158.  
  16159.         pszHelpPanelName (PSZ) 
  16160.         Name of the help window. 
  16161.  
  16162.         This points to a string containing the name of the help window. 
  16163.  
  16164.      usTypeFlag (USHORT) 
  16165.         Flag indicating how to interpret the first parameter. 
  16166.  
  16167.           HM_RESOURCEID 
  16168.              Indicates the param1 points to the identity of the help window. 
  16169.  
  16170.           HM_PANELNAME 
  16171.              Indicates the param1 points to the name of the help window. 
  16172.  
  16173.      rc (ULONG) 
  16174.         Return code. 
  16175.  
  16176.           0 
  16177.              The window was successfully displayed 
  16178.           Other 
  16179.              See the values of the ulErrorCode parameter of the HM_ERROR 
  16180.              message. 
  16181.  
  16182.  
  16183. ΓòÉΓòÉΓòÉ <hidden> HM_DISPLAY_HELP - Remarks ΓòÉΓòÉΓòÉ
  16184.  
  16185. param1 depends on the value of the usTypeFlag parameter. 
  16186.  
  16187.  
  16188. ΓòÉΓòÉΓòÉ <hidden> HM_DISPLAY_HELP - Default Processing ΓòÉΓòÉΓòÉ
  16189.  
  16190. None. 
  16191.  
  16192.  
  16193. ΓòÉΓòÉΓòÉ <hidden> HM_DISPLAY_HELP - Topics ΓòÉΓòÉΓòÉ
  16194.  
  16195. Select an item: 
  16196.  
  16197. Syntax
  16198. Parameters
  16199. Returns
  16200. Remarks
  16201. Default Processing
  16202.  
  16203.  
  16204. ΓòÉΓòÉΓòÉ 19.6. HM_ERROR ΓòÉΓòÉΓòÉ
  16205.  
  16206.  
  16207. ΓòÉΓòÉΓòÉ <hidden> HM_ERROR - Syntax ΓòÉΓòÉΓòÉ
  16208.  
  16209. This message notifies the application of an error caused by a user interaction. 
  16210.  
  16211.  
  16212. param1
  16213.     ULONG  ulErrorCode  /*  Error code. */
  16214.  
  16215. param2
  16216.     ULONG  ulReserved   /*  Reserved value, should be 0. */
  16217.  
  16218. returns
  16219.     ULONG  ulReserved   /*  Reserved value, should be 0. */
  16220.  
  16221.  
  16222. ΓòÉΓòÉΓòÉ <hidden> HM_ERROR Fields - ulErrorCode ΓòÉΓòÉΓòÉ
  16223.  
  16224.      ulErrorCode (ULONG) 
  16225.         Error code. 
  16226.  
  16227.         A constant describing the type of error that occurred. The application 
  16228.         can also receive some of these error constants in the ulReserved 
  16229.         parameter of messages it has sent to the Help Manager. 
  16230.  
  16231.         The error constants are: 
  16232.  
  16233.           HMERR_LOAD_DLL 
  16234.               The resource DLL was unable to be loaded. 
  16235.  
  16236.           HMERR_NO_FRAME_WND_IN_CHAIN 
  16237.               There is no frame window in the window chain from which to find 
  16238.               or set the associated help instance. 
  16239.  
  16240.           HMERR_INVALID_ASSOC_APP_WND 
  16241.               The application window handle specified on the 
  16242.               WinAssociateHelpInstance function is not a valid window handle. 
  16243.  
  16244.           HMERR_INVALID_ASSOC_HELP_INST 
  16245.               The help instance handle specified on the 
  16246.               WinAssociateHelpInstance function is not a valid window handle. 
  16247.  
  16248.           HMERR_INVALID_DESTROY_HELP_INST 
  16249.               The window handle specified as the help instance to destroy is 
  16250.               not of the help instance class. 
  16251.  
  16252.           HMERR_NO_HELP_INST_IN_CHAIN 
  16253.               The parent or owner chain of the application window specified 
  16254.               does not have an associated help instance. 
  16255.  
  16256.           HMERR_INVALID_HELP_INSTANCE_HDL 
  16257.               The handle specified to be a help instance does not have the 
  16258.               class name of a Help Manager instance. 
  16259.  
  16260.           HMERR_INVALID_QUERY_APP_WND 
  16261.               The application window specified on a WinQueryHelpInstance 
  16262.               function is not a valid window handle. 
  16263.  
  16264.           HMERR_HELP_INST_CALLED_INVALID 
  16265.               The handle of the instance specified on a call to the Help 
  16266.               Manager does not have the class name of a Help Manager instance. 
  16267.  
  16268.           HMERR_HELPTABLE_UNDEFINE 
  16269.               The application did not provide a help table for 
  16270.               context-sensitive help. 
  16271.  
  16272.           HMERR_HELP_INSTANCE_UNDEFINE 
  16273.               The help instance handle specified is invalid. 
  16274.  
  16275.           HMERR_HELPITEM_NOT_FOUND 
  16276.               Context-sensitive help was requested but the ID of the main help 
  16277.               item specified was not found in the help table. 
  16278.  
  16279.           HMERR_INVALID_HELPSUBITEM_SIZE 
  16280.               The help subtable item size is less than 2. 
  16281.  
  16282.           HMERR_HELPSUBITEM_NOT_FOUND 
  16283.               Context-sensitive help was requested but the ID of the help item 
  16284.               specified was not found in the help subtable. 
  16285.  
  16286.           HMERR_INDEX_NOT_FOUND 
  16287.               The index is not in the library file. 
  16288.  
  16289.           HMERR_CONTENT_NOT_FOUND 
  16290.               The library file does not have any content. 
  16291.  
  16292.           HMERR_OPEN_LIB_FILE 
  16293.               The library file cannot be opened. 
  16294.  
  16295.           HMERR_READ_LIB_FILE 
  16296.               The library file cannot be read. 
  16297.  
  16298.           HMERR_CLOSE_LIB_FILE 
  16299.               The library file cannot be closed. 
  16300.  
  16301.           HMERR_INVALID_LIB_FILE 
  16302.               Improper library file provided. 
  16303.  
  16304.           HMERR_NO_MEMORY 
  16305.               Unable to allocate the requested amount of memory. 
  16306.  
  16307.           HMERR_ALLOCATE_SEGMENT 
  16308.               Unable to allocate a segment of memory for memory allocation 
  16309.               requests from the Help Manager. 
  16310.  
  16311.           HMERR_FREE_MEMORY 
  16312.               Unable to free allocated memory. 
  16313.  
  16314.           HMERR_PANEL_NOT_FOUND 
  16315.               Unable to find the requested help window. 
  16316.  
  16317.           HMERR_DATABASE_NOT_OPEN 
  16318.               Unable to read the unopened database. 
  16319.  
  16320.  
  16321. ΓòÉΓòÉΓòÉ <hidden> HM_ERROR Fields - ulReserved ΓòÉΓòÉΓòÉ
  16322.  
  16323.      ulReserved (ULONG) 
  16324.         Reserved value, should be 0. 
  16325.  
  16326.  
  16327. ΓòÉΓòÉΓòÉ <hidden> HM_ERROR Return Value - ulReserved ΓòÉΓòÉΓòÉ
  16328.  
  16329.      ulReserved (ULONG) 
  16330.         Reserved value, should be 0. 
  16331.  
  16332.  
  16333. ΓòÉΓòÉΓòÉ <hidden> HM_ERROR - Parameters ΓòÉΓòÉΓòÉ
  16334.  
  16335.      ulErrorCode (ULONG) 
  16336.         Error code. 
  16337.  
  16338.         A constant describing the type of error that occurred. The application 
  16339.         can also receive some of these error constants in the ulReserved 
  16340.         parameter of messages it has sent to the Help Manager. 
  16341.  
  16342.         The error constants are: 
  16343.  
  16344.           HMERR_LOAD_DLL 
  16345.               The resource DLL was unable to be loaded. 
  16346.  
  16347.           HMERR_NO_FRAME_WND_IN_CHAIN 
  16348.               There is no frame window in the window chain from which to find 
  16349.               or set the associated help instance. 
  16350.  
  16351.           HMERR_INVALID_ASSOC_APP_WND 
  16352.               The application window handle specified on the 
  16353.               WinAssociateHelpInstance function is not a valid window handle. 
  16354.  
  16355.           HMERR_INVALID_ASSOC_HELP_INST 
  16356.               The help instance handle specified on the 
  16357.               WinAssociateHelpInstance function is not a valid window handle. 
  16358.  
  16359.           HMERR_INVALID_DESTROY_HELP_INST 
  16360.               The window handle specified as the help instance to destroy is 
  16361.               not of the help instance class. 
  16362.  
  16363.           HMERR_NO_HELP_INST_IN_CHAIN 
  16364.               The parent or owner chain of the application window specified 
  16365.               does not have an associated help instance. 
  16366.  
  16367.           HMERR_INVALID_HELP_INSTANCE_HDL 
  16368.               The handle specified to be a help instance does not have the 
  16369.               class name of a Help Manager instance. 
  16370.  
  16371.           HMERR_INVALID_QUERY_APP_WND 
  16372.               The application window specified on a WinQueryHelpInstance 
  16373.               function is not a valid window handle. 
  16374.  
  16375.           HMERR_HELP_INST_CALLED_INVALID 
  16376.               The handle of the instance specified on a call to the Help 
  16377.               Manager does not have the class name of a Help Manager instance. 
  16378.  
  16379.           HMERR_HELPTABLE_UNDEFINE 
  16380.               The application did not provide a help table for 
  16381.               context-sensitive help. 
  16382.  
  16383.           HMERR_HELP_INSTANCE_UNDEFINE 
  16384.               The help instance handle specified is invalid. 
  16385.  
  16386.           HMERR_HELPITEM_NOT_FOUND 
  16387.               Context-sensitive help was requested but the ID of the main help 
  16388.               item specified was not found in the help table. 
  16389.  
  16390.           HMERR_INVALID_HELPSUBITEM_SIZE 
  16391.               The help subtable item size is less than 2. 
  16392.  
  16393.           HMERR_HELPSUBITEM_NOT_FOUND 
  16394.               Context-sensitive help was requested but the ID of the help item 
  16395.               specified was not found in the help subtable. 
  16396.  
  16397.           HMERR_INDEX_NOT_FOUND 
  16398.               The index is not in the library file. 
  16399.  
  16400.           HMERR_CONTENT_NOT_FOUND 
  16401.               The library file does not have any content. 
  16402.  
  16403.           HMERR_OPEN_LIB_FILE 
  16404.               The library file cannot be opened. 
  16405.  
  16406.           HMERR_READ_LIB_FILE 
  16407.               The library file cannot be read. 
  16408.  
  16409.           HMERR_CLOSE_LIB_FILE 
  16410.               The library file cannot be closed. 
  16411.  
  16412.           HMERR_INVALID_LIB_FILE 
  16413.               Improper library file provided. 
  16414.  
  16415.           HMERR_NO_MEMORY 
  16416.               Unable to allocate the requested amount of memory. 
  16417.  
  16418.           HMERR_ALLOCATE_SEGMENT 
  16419.               Unable to allocate a segment of memory for memory allocation 
  16420.               requests from the Help Manager. 
  16421.  
  16422.           HMERR_FREE_MEMORY 
  16423.               Unable to free allocated memory. 
  16424.  
  16425.           HMERR_PANEL_NOT_FOUND 
  16426.               Unable to find the requested help window. 
  16427.  
  16428.           HMERR_DATABASE_NOT_OPEN 
  16429.               Unable to read the unopened database. 
  16430.  
  16431.      ulReserved (ULONG) 
  16432.         Reserved value, should be 0. 
  16433.  
  16434.      ulReserved (ULONG) 
  16435.         Reserved value, should be 0. 
  16436.  
  16437.  
  16438. ΓòÉΓòÉΓòÉ <hidden> HM_ERROR - Remarks ΓòÉΓòÉΓòÉ
  16439.  
  16440. There is no other way to communicate the error to the application since the 
  16441. user initiated communication, not the application. Other errors which occur 
  16442. when the application sends a message to the Help Manager are returned as the 
  16443. ulReserved parameter of the message. 
  16444.  
  16445. The Help Manager does not display any error messages to the user. Instead, the 
  16446. Help Manager sends or returns all error notifications to the application so 
  16447. that it can display its own messages. This procedure ensures a consistent 
  16448. message interface for all user messages. 
  16449.  
  16450.  
  16451. ΓòÉΓòÉΓòÉ <hidden> HM_ERROR - Default Processing ΓòÉΓòÉΓòÉ
  16452.  
  16453. None. 
  16454.  
  16455.  
  16456. ΓòÉΓòÉΓòÉ <hidden> HM_ERROR - Topics ΓòÉΓòÉΓòÉ
  16457.  
  16458. Select an item: 
  16459.  
  16460. Syntax
  16461. Parameters
  16462. Returns
  16463. Remarks
  16464. Default Processing
  16465.  
  16466.  
  16467. ΓòÉΓòÉΓòÉ 19.7. HM_EXT_HELP ΓòÉΓòÉΓòÉ
  16468.  
  16469.  
  16470. ΓòÉΓòÉΓòÉ <hidden> HM_EXT_HELP - Syntax ΓòÉΓòÉΓòÉ
  16471.  
  16472. When the Help Manager receives this message, it displays the extended help 
  16473. window for the active application panel. 
  16474.  
  16475.  
  16476. param1
  16477.     ULONG  ulReserved  /*  Reserved value, should be 0. */
  16478.  
  16479. param2
  16480.     ULONG  ulReserved  /*  Reserved value, should be 0. */
  16481.  
  16482. returns
  16483.     ULONG  rc          /*  Return code. */
  16484.  
  16485.  
  16486. ΓòÉΓòÉΓòÉ <hidden> HM_EXT_HELP Fields - ulReserved ΓòÉΓòÉΓòÉ
  16487.  
  16488.      ulReserved (ULONG) 
  16489.         Reserved value, should be 0. 
  16490.  
  16491.  
  16492. ΓòÉΓòÉΓòÉ <hidden> HM_EXT_HELP Fields - ulReserved ΓòÉΓòÉΓòÉ
  16493.  
  16494.      ulReserved (ULONG) 
  16495.         Reserved value, should be 0. 
  16496.  
  16497.  
  16498. ΓòÉΓòÉΓòÉ <hidden> HM_EXT_HELP Return Value - rc ΓòÉΓòÉΓòÉ
  16499.  
  16500.      rc (ULONG) 
  16501.         Return code. 
  16502.  
  16503.           0 
  16504.              The extended help window was successfully displayed 
  16505.           Other 
  16506.              See the values of the ulErrorCode parameter of the HM_ERROR 
  16507.              message. 
  16508.  
  16509.  
  16510. ΓòÉΓòÉΓòÉ <hidden> HM_EXT_HELP - Parameters ΓòÉΓòÉΓòÉ
  16511.  
  16512.      ulReserved (ULONG) 
  16513.         Reserved value, should be 0. 
  16514.  
  16515.      ulReserved (ULONG) 
  16516.         Reserved value, should be 0. 
  16517.  
  16518.      rc (ULONG) 
  16519.         Return code. 
  16520.  
  16521.           0 
  16522.              The extended help window was successfully displayed 
  16523.           Other 
  16524.              See the values of the ulErrorCode parameter of the HM_ERROR 
  16525.              message. 
  16526.  
  16527.  
  16528. ΓòÉΓòÉΓòÉ <hidden> HM_EXT_HELP - Default Processing ΓòÉΓòÉΓòÉ
  16529.  
  16530. None. 
  16531.  
  16532.  
  16533. ΓòÉΓòÉΓòÉ <hidden> HM_EXT_HELP - Topics ΓòÉΓòÉΓòÉ
  16534.  
  16535. Select an item: 
  16536.  
  16537. Syntax
  16538. Parameters
  16539. Returns
  16540. Default Processing
  16541.  
  16542.  
  16543. ΓòÉΓòÉΓòÉ 19.8. HM_EXT_HELP_UNDEFINED ΓòÉΓòÉΓòÉ
  16544.  
  16545.  
  16546. ΓòÉΓòÉΓòÉ <hidden> HM_EXT_HELP_UNDEFINED - Syntax ΓòÉΓòÉΓòÉ
  16547.  
  16548. This message is sent to the application by the Help Manager to notify it that 
  16549. an extended help window has not been defined. 
  16550.  
  16551.  
  16552. param1
  16553.     ULONG  ulReserved  /*  Reserved value, should be 0. */
  16554.  
  16555. param2
  16556.     ULONG  ulReserved  /*  Reserved value, should be 0. */
  16557.  
  16558. returns
  16559.     ULONG  ulReserved  /*  Reserved value, should be 0. */
  16560.  
  16561.  
  16562. ΓòÉΓòÉΓòÉ <hidden> HM_EXT_HELP_UNDEFINED Fields - ulReserved ΓòÉΓòÉΓòÉ
  16563.  
  16564.      ulReserved (ULONG) 
  16565.         Reserved value, should be 0. 
  16566.  
  16567.  
  16568. ΓòÉΓòÉΓòÉ <hidden> HM_EXT_HELP_UNDEFINED Fields - ulReserved ΓòÉΓòÉΓòÉ
  16569.  
  16570.      ulReserved (ULONG) 
  16571.         Reserved value, should be 0. 
  16572.  
  16573.  
  16574. ΓòÉΓòÉΓòÉ <hidden> HM_EXT_HELP_UNDEFINED Return Value - ulReserved ΓòÉΓòÉΓòÉ
  16575.  
  16576.      ulReserved (ULONG) 
  16577.         Reserved value, should be 0. 
  16578.  
  16579.  
  16580. ΓòÉΓòÉΓòÉ <hidden> HM_EXT_HELP_UNDEFINED - Parameters ΓòÉΓòÉΓòÉ
  16581.  
  16582.      ulReserved (ULONG) 
  16583.         Reserved value, should be 0. 
  16584.  
  16585.      ulReserved (ULONG) 
  16586.         Reserved value, should be 0. 
  16587.  
  16588.      ulReserved (ULONG) 
  16589.         Reserved value, should be 0. 
  16590.  
  16591.  
  16592. ΓòÉΓòÉΓòÉ <hidden> HM_EXT_HELP_UNDEFINED - Remarks ΓòÉΓòÉΓòÉ
  16593.  
  16594. When the extended help window is requested, the Help Manager searches the help 
  16595. table for its identity. If the extended help window identity associated with 
  16596. the current active window is zero, the Help Manager sends this message to the 
  16597. application to notify it that an extended help window has not been defined. The 
  16598. application then can: 
  16599.  
  16600.        o  Ignore the request for help and not display a help window. 
  16601.  
  16602.        o  Display its own window. 
  16603.  
  16604.        o  Use the HM_DISPLAY_HELP message to tell the Help Manager to display a 
  16605.           particular window. 
  16606.  
  16607.  
  16608. ΓòÉΓòÉΓòÉ <hidden> HM_EXT_HELP_UNDEFINED - Default Processing ΓòÉΓòÉΓòÉ
  16609.  
  16610. None. 
  16611.  
  16612.  
  16613. ΓòÉΓòÉΓòÉ <hidden> HM_EXT_HELP_UNDEFINED - Topics ΓòÉΓòÉΓòÉ
  16614.  
  16615. Select an item: 
  16616.  
  16617. Syntax
  16618. Parameters
  16619. Returns
  16620. Remarks
  16621. Default Processing
  16622.  
  16623.  
  16624. ΓòÉΓòÉΓòÉ 19.9. HM_GENERAL_HELP ΓòÉΓòÉΓòÉ
  16625.  
  16626.  
  16627. ΓòÉΓòÉΓòÉ <hidden> HM_GENERAL_HELP - Syntax ΓòÉΓòÉΓòÉ
  16628.  
  16629. When the Help Manager receives this message, it displays the general help 
  16630. window for the active application window. 
  16631.  
  16632.  
  16633. param1
  16634.     ULONG  ulReserved  /*  Reserved value, should be 0. */
  16635.  
  16636. param2
  16637.     ULONG  ulReserved  /*  Reserved value, should be 0. */
  16638.  
  16639. returns
  16640.     ULONG  rc          /*  Return code. */
  16641.  
  16642.  
  16643. ΓòÉΓòÉΓòÉ <hidden> HM_GENERAL_HELP Fields - ulReserved ΓòÉΓòÉΓòÉ
  16644.  
  16645.      ulReserved (ULONG) 
  16646.         Reserved value, should be 0. 
  16647.  
  16648.  
  16649. ΓòÉΓòÉΓòÉ <hidden> HM_GENERAL_HELP Fields - ulReserved ΓòÉΓòÉΓòÉ
  16650.  
  16651.      ulReserved (ULONG) 
  16652.         Reserved value, should be 0. 
  16653.  
  16654.  
  16655. ΓòÉΓòÉΓòÉ <hidden> HM_GENERAL_HELP Return Value - rc ΓòÉΓòÉΓòÉ
  16656.  
  16657.      rc (ULONG) 
  16658.         Return code. 
  16659.  
  16660.           0 
  16661.              The general help window was successfully displayed. 
  16662.           Other 
  16663.              See the values of the ulErrorCode parameter of the HM_ERROR 
  16664.              message. 
  16665.  
  16666.  
  16667. ΓòÉΓòÉΓòÉ <hidden> HM_GENERAL_HELP - Parameters ΓòÉΓòÉΓòÉ
  16668.  
  16669.      ulReserved (ULONG) 
  16670.         Reserved value, should be 0. 
  16671.  
  16672.      ulReserved (ULONG) 
  16673.         Reserved value, should be 0. 
  16674.  
  16675.      rc (ULONG) 
  16676.         Return code. 
  16677.  
  16678.           0 
  16679.              The general help window was successfully displayed. 
  16680.           Other 
  16681.              See the values of the ulErrorCode parameter of the HM_ERROR 
  16682.              message. 
  16683.  
  16684.  
  16685. ΓòÉΓòÉΓòÉ <hidden> HM_GENERAL_HELP - Default Processing ΓòÉΓòÉΓòÉ
  16686.  
  16687. None. 
  16688.  
  16689.  
  16690. ΓòÉΓòÉΓòÉ <hidden> HM_GENERAL_HELP - Topics ΓòÉΓòÉΓòÉ
  16691.  
  16692. Select an item: 
  16693.  
  16694. Syntax
  16695. Parameters
  16696. Returns
  16697. Default Processing
  16698.  
  16699.  
  16700. ΓòÉΓòÉΓòÉ 19.10. HM_GENERAL_HELP_UNDEFINED ΓòÉΓòÉΓòÉ
  16701.  
  16702.  
  16703. ΓòÉΓòÉΓòÉ <hidden> HM_GENERAL_HELP_UNDEFINED - Syntax ΓòÉΓòÉΓòÉ
  16704.  
  16705. This message is sent to the application by the Help Manager to notify it that a 
  16706. general help window has not been defined. 
  16707.  
  16708.  
  16709. param1
  16710.     ULONG  ulReserved  /*  Reserved value, should be 0. */
  16711.  
  16712. param2
  16713.     ULONG  ulReserved  /*  Reserved. */
  16714.  
  16715. returns
  16716.     ULONG  ulReserved  /*  Reserved value, should be 0. */
  16717.  
  16718.  
  16719. ΓòÉΓòÉΓòÉ <hidden> HM_GENERAL_HELP_UNDEFINED Fields - ulReserved ΓòÉΓòÉΓòÉ
  16720.  
  16721.      ulReserved (ULONG) 
  16722.         Reserved value, should be 0. 
  16723.  
  16724.  
  16725. ΓòÉΓòÉΓòÉ <hidden> HM_GENERAL_HELP_UNDEFINED Fields - ulReserved ΓòÉΓòÉΓòÉ
  16726.  
  16727.      ulReserved (ULONG) 
  16728.         Reserved. 
  16729.  
  16730.           0 
  16731.              Reserved value, 0. 
  16732.  
  16733.  
  16734. ΓòÉΓòÉΓòÉ <hidden> HM_GENERAL_HELP_UNDEFINED Return Value - ulReserved ΓòÉΓòÉΓòÉ
  16735.  
  16736.      ulReserved (ULONG) 
  16737.         Reserved value, should be 0. 
  16738.  
  16739.  
  16740. ΓòÉΓòÉΓòÉ <hidden> HM_GENERAL_HELP_UNDEFINED - Parameters ΓòÉΓòÉΓòÉ
  16741.  
  16742.      ulReserved (ULONG) 
  16743.         Reserved value, should be 0. 
  16744.  
  16745.      ulReserved (ULONG) 
  16746.         Reserved. 
  16747.  
  16748.           0 
  16749.              Reserved value, 0. 
  16750.  
  16751.      ulReserved (ULONG) 
  16752.         Reserved value, should be 0. 
  16753.  
  16754.  
  16755. ΓòÉΓòÉΓòÉ <hidden> HM_GENERAL_HELP_UNDEFINED - Remarks ΓòÉΓòÉΓòÉ
  16756.  
  16757. When the general help window is requested, the Help Manager searches the help 
  16758. table for its identity. If the general help window identity associated with the 
  16759. current active window is zero, the Help Manager sends this message to the 
  16760. application to notify it that a general help window has not been defined. The 
  16761. application can then: 
  16762.  
  16763.        o  Ignore the request for help and not display a help window. 
  16764.  
  16765.        o  Display its own window. 
  16766.  
  16767.        o  Use the HM_DISPLAY_HELP message to tell the Help Manager to display a 
  16768.           particular window. 
  16769.  
  16770.  
  16771. ΓòÉΓòÉΓòÉ <hidden> HM_GENERAL_HELP_UNDEFINED - Default Processing ΓòÉΓòÉΓòÉ
  16772.  
  16773. None. 
  16774.  
  16775.  
  16776. ΓòÉΓòÉΓòÉ <hidden> HM_GENERAL_HELP_UNDEFINED - Topics ΓòÉΓòÉΓòÉ
  16777.  
  16778. Select an item: 
  16779.  
  16780. Syntax
  16781. Parameters
  16782. Returns
  16783. Remarks
  16784. Default Processing
  16785.  
  16786.  
  16787. ΓòÉΓòÉΓòÉ 19.11. HM_HELP_CONTENTS ΓòÉΓòÉΓòÉ
  16788.  
  16789.  
  16790. ΓòÉΓòÉΓòÉ <hidden> HM_HELP_CONTENTS - Syntax ΓòÉΓòÉΓòÉ
  16791.  
  16792. When the Help Manager receives this message, it displays the help contents 
  16793. window. 
  16794.  
  16795.  
  16796. param1
  16797.     ULONG  ulReserved  /*  Reserved value, should be 0. */
  16798.  
  16799. param2
  16800.     ULONG  ulReserved  /*  Reserved value, should be 0. */
  16801.  
  16802. returns
  16803.     ULONG  rc          /*  Return code. */
  16804.  
  16805.  
  16806. ΓòÉΓòÉΓòÉ <hidden> HM_HELP_CONTENTS Fields - ulReserved ΓòÉΓòÉΓòÉ
  16807.  
  16808.      ulReserved (ULONG) 
  16809.         Reserved value, should be 0. 
  16810.  
  16811.  
  16812. ΓòÉΓòÉΓòÉ <hidden> HM_HELP_CONTENTS Fields - ulReserved ΓòÉΓòÉΓòÉ
  16813.  
  16814.      ulReserved (ULONG) 
  16815.         Reserved value, should be 0. 
  16816.  
  16817.  
  16818. ΓòÉΓòÉΓòÉ <hidden> HM_HELP_CONTENTS Return Value - rc ΓòÉΓòÉΓòÉ
  16819.  
  16820.      rc (ULONG) 
  16821.         Return code. 
  16822.  
  16823.           0 
  16824.              The help contents window was successfully displayed. 
  16825.           Other 
  16826.              See the values of the ulErrorCode parameter of the HM_ERROR 
  16827.              message. 
  16828.  
  16829.  
  16830. ΓòÉΓòÉΓòÉ <hidden> HM_HELP_CONTENTS - Parameters ΓòÉΓòÉΓòÉ
  16831.  
  16832.      ulReserved (ULONG) 
  16833.         Reserved value, should be 0. 
  16834.  
  16835.      ulReserved (ULONG) 
  16836.         Reserved value, should be 0. 
  16837.  
  16838.      rc (ULONG) 
  16839.         Return code. 
  16840.  
  16841.           0 
  16842.              The help contents window was successfully displayed. 
  16843.           Other 
  16844.              See the values of the ulErrorCode parameter of the HM_ERROR 
  16845.              message. 
  16846.  
  16847.  
  16848. ΓòÉΓòÉΓòÉ <hidden> HM_HELP_CONTENTS - Default Processing ΓòÉΓòÉΓòÉ
  16849.  
  16850. None. 
  16851.  
  16852.  
  16853. ΓòÉΓòÉΓòÉ <hidden> HM_HELP_CONTENTS - Topics ΓòÉΓòÉΓòÉ
  16854.  
  16855. Select an item: 
  16856.  
  16857. Syntax
  16858. Parameters
  16859. Returns
  16860. Default Processing
  16861.  
  16862.  
  16863. ΓòÉΓòÉΓòÉ 19.12. HM_HELP_INDEX ΓòÉΓòÉΓòÉ
  16864.  
  16865.  
  16866. ΓòÉΓòÉΓòÉ <hidden> HM_HELP_INDEX - Syntax ΓòÉΓòÉΓòÉ
  16867.  
  16868. When the Help Manager receives this message, it displays the help index window. 
  16869.  
  16870.  
  16871. param1
  16872.     ULONG  ulReserved  /*  Reserved value, should be 0. */
  16873.  
  16874. param2
  16875.     ULONG  ulReserved  /*  Reserved value, should be 0. */
  16876.  
  16877. returns
  16878.     ULONG  rc          /*  Return code. */
  16879.  
  16880.  
  16881. ΓòÉΓòÉΓòÉ <hidden> HM_HELP_INDEX Fields - ulReserved ΓòÉΓòÉΓòÉ
  16882.  
  16883.      ulReserved (ULONG) 
  16884.         Reserved value, should be 0. 
  16885.  
  16886.  
  16887. ΓòÉΓòÉΓòÉ <hidden> HM_HELP_INDEX Fields - ulReserved ΓòÉΓòÉΓòÉ
  16888.  
  16889.      ulReserved (ULONG) 
  16890.         Reserved value, should be 0. 
  16891.  
  16892.  
  16893. ΓòÉΓòÉΓòÉ <hidden> HM_HELP_INDEX Return Value - rc ΓòÉΓòÉΓòÉ
  16894.  
  16895.      rc (ULONG) 
  16896.         Return code. 
  16897.  
  16898.           0 
  16899.              The help index window was successfully displayed. 
  16900.           Other 
  16901.              See the values of the ulErrorCode parameter of the HM_ERROR 
  16902.              message. 
  16903.  
  16904.  
  16905. ΓòÉΓòÉΓòÉ <hidden> HM_HELP_INDEX - Parameters ΓòÉΓòÉΓòÉ
  16906.  
  16907.      ulReserved (ULONG) 
  16908.         Reserved value, should be 0. 
  16909.  
  16910.      ulReserved (ULONG) 
  16911.         Reserved value, should be 0. 
  16912.  
  16913.      rc (ULONG) 
  16914.         Return code. 
  16915.  
  16916.           0 
  16917.              The help index window was successfully displayed. 
  16918.           Other 
  16919.              See the values of the ulErrorCode parameter of the HM_ERROR 
  16920.              message. 
  16921.  
  16922.  
  16923. ΓòÉΓòÉΓòÉ <hidden> HM_HELP_INDEX - Default Processing ΓòÉΓòÉΓòÉ
  16924.  
  16925. None. 
  16926.  
  16927.  
  16928. ΓòÉΓòÉΓòÉ <hidden> HM_HELP_INDEX - Topics ΓòÉΓòÉΓòÉ
  16929.  
  16930. Select an item: 
  16931.  
  16932. Syntax
  16933. Parameters
  16934. Returns
  16935. Default Processing
  16936.  
  16937.  
  16938. ΓòÉΓòÉΓòÉ 19.13. HM_HELPSUBITEM_NOT_FOUND ΓòÉΓòÉΓòÉ
  16939.  
  16940.  
  16941. ΓòÉΓòÉΓòÉ <hidden> HM_HELPSUBITEM_NOT_FOUND - Syntax ΓòÉΓòÉΓòÉ
  16942.  
  16943. The Help Manager sends this message to the application when the user requests 
  16944. help on a field and it cannot find a related entry in the help subtable. 
  16945.  
  16946.  
  16947. param1
  16948.     USHORT  usContext  /*  Type of window on which help was requested. */
  16949.  
  16950. param2
  16951.     SHORT   sTopic     /*  Topic identifier. */
  16952.     SHORT   sSubTopic  /*  Subtopic identifier. */
  16953.  
  16954. returns
  16955.     BOOL    rc         /*  Action indicator. */
  16956.  
  16957.  
  16958. ΓòÉΓòÉΓòÉ <hidden> HM_HELPSUBITEM_NOT_FOUND Fields - usContext ΓòÉΓòÉΓòÉ
  16959.  
  16960.      usContext (USHORT) 
  16961.         Type of window on which help was requested. 
  16962.  
  16963.           HLPM_WINDOW       An application window 
  16964.           HLPM_FRAME        A frame window 
  16965.           HLPM_MENU         A menu window. 
  16966.  
  16967.  
  16968. ΓòÉΓòÉΓòÉ <hidden> HM_HELPSUBITEM_NOT_FOUND Fields - sTopic ΓòÉΓòÉΓòÉ
  16969.  
  16970.      sTopic (SHORT) 
  16971.         Topic identifier. 
  16972.  
  16973.         For a value of the usContext parameter of HLPM_WINDOW or HLPM_FRAME: 
  16974.  
  16975.           window 
  16976.              Identity of the window containing the field on which help was 
  16977.              requested. 
  16978.           menu 
  16979.              Identity of the submenu containing the field on which help was 
  16980.              requested. 
  16981.  
  16982.  
  16983. ΓòÉΓòÉΓòÉ <hidden> HM_HELPSUBITEM_NOT_FOUND Fields - sSubTopic ΓòÉΓòÉΓòÉ
  16984.  
  16985.      sSubTopic (SHORT) 
  16986.         Subtopic identifier. 
  16987.  
  16988.         For a value of the usContext parameter of HLPM_WINDOW or HLPM_FRAME: 
  16989.  
  16990.           control   Control identity of the cursored field and on which help 
  16991.                     was requested. 
  16992.  
  16993.         For a value of the usContext parameter of HLPM_MENU: 
  16994.  
  16995.           -1        No menu item was selected 
  16996.  
  16997.           other     Menu item identity of the currently selected submenu item 
  16998.                     on which help was requested. 
  16999.  
  17000.  
  17001. ΓòÉΓòÉΓòÉ <hidden> HM_HELPSUBITEM_NOT_FOUND Return Value - rc ΓòÉΓòÉΓòÉ
  17002.  
  17003.      rc (BOOL) 
  17004.         Action indicator. 
  17005.  
  17006.  
  17007. ΓòÉΓòÉΓòÉ <hidden> HM_HELPSUBITEM_NOT_FOUND - Parameters ΓòÉΓòÉΓòÉ
  17008.  
  17009.      usContext (USHORT) 
  17010.         Type of window on which help was requested. 
  17011.  
  17012.           HLPM_WINDOW       An application window 
  17013.           HLPM_FRAME        A frame window 
  17014.           HLPM_MENU         A menu window. 
  17015.  
  17016.      sTopic (SHORT) 
  17017.         Topic identifier. 
  17018.  
  17019.         For a value of the usContext parameter of HLPM_WINDOW or HLPM_FRAME: 
  17020.  
  17021.           window 
  17022.              Identity of the window containing the field on which help was 
  17023.              requested. 
  17024.           menu 
  17025.              Identity of the submenu containing the field on which help was 
  17026.              requested. 
  17027.  
  17028.      sSubTopic (SHORT) 
  17029.         Subtopic identifier. 
  17030.  
  17031.         For a value of the usContext parameter of HLPM_WINDOW or HLPM_FRAME: 
  17032.  
  17033.           control   Control identity of the cursored field and on which help 
  17034.                     was requested. 
  17035.  
  17036.         For a value of the usContext parameter of HLPM_MENU: 
  17037.  
  17038.           -1        No menu item was selected 
  17039.  
  17040.           other     Menu item identity of the currently selected submenu item 
  17041.                     on which help was requested. 
  17042.  
  17043.      rc (BOOL) 
  17044.         Action indicator. 
  17045.  
  17046.  
  17047. ΓòÉΓòÉΓòÉ <hidden> HM_HELPSUBITEM_NOT_FOUND - Remarks ΓòÉΓòÉΓòÉ
  17048.  
  17049. If FALSE is returned from this message, the Help Manager displays the extended 
  17050. help window. 
  17051.  
  17052. The application has the following options: 
  17053.  
  17054.        o  Ignore the notification and not display help for that field or 
  17055.           window. 
  17056.  
  17057.        o  Display its own window. 
  17058.  
  17059.        o  Use the HM_DISPLAY_HELP message to tell the Help Manager to display a 
  17060.           particular window. 
  17061.  
  17062.  
  17063. ΓòÉΓòÉΓòÉ <hidden> HM_HELPSUBITEM_NOT_FOUND - Default Processing ΓòÉΓòÉΓòÉ
  17064.  
  17065. None. 
  17066.  
  17067.  
  17068. ΓòÉΓòÉΓòÉ <hidden> HM_HELPSUBITEM_NOT_FOUND - Topics ΓòÉΓòÉΓòÉ
  17069.  
  17070. Select an item: 
  17071.  
  17072. Syntax
  17073. Parameters
  17074. Returns
  17075. Remarks
  17076. Default Processing
  17077.  
  17078.  
  17079. ΓòÉΓòÉΓòÉ 19.14. HM_INFORM ΓòÉΓòÉΓòÉ
  17080.  
  17081.  
  17082. ΓòÉΓòÉΓòÉ <hidden> HM_INFORM - Syntax ΓòÉΓòÉΓòÉ
  17083.  
  17084. This message is used by the Help Manager to notify the application when the 
  17085. user selects a hypertext field that was specified with the reftype=inform 
  17086. attribute of the :link. tag. 
  17087.  
  17088.  
  17089. param1
  17090.     USHORT  idnum       /*  Window identity. */
  17091.  
  17092. param2
  17093.     ULONG   ulReserved  /*  Reserved value, should be 0. */
  17094.  
  17095. returns
  17096.     ULONG   ulReserved  /*  Reserved value, should be 0. */
  17097.  
  17098.  
  17099. ΓòÉΓòÉΓòÉ <hidden> HM_INFORM Fields - idnum ΓòÉΓòÉΓòÉ
  17100.  
  17101.      idnum (USHORT) 
  17102.         Window identity. 
  17103.  
  17104.         The identity that is associated with the hypertext field. 
  17105.  
  17106.  
  17107. ΓòÉΓòÉΓòÉ <hidden> HM_INFORM Fields - ulReserved ΓòÉΓòÉΓòÉ
  17108.  
  17109.      ulReserved (ULONG) 
  17110.         Reserved value, should be 0. 
  17111.  
  17112.  
  17113. ΓòÉΓòÉΓòÉ <hidden> HM_INFORM Return Value - ulReserved ΓòÉΓòÉΓòÉ
  17114.  
  17115.      ulReserved (ULONG) 
  17116.         Reserved value, should be 0. 
  17117.  
  17118.           0 
  17119.              Reserved value, zero. 
  17120.  
  17121.  
  17122. ΓòÉΓòÉΓòÉ <hidden> HM_INFORM - Parameters ΓòÉΓòÉΓòÉ
  17123.  
  17124.      idnum (USHORT) 
  17125.         Window identity. 
  17126.  
  17127.         The identity that is associated with the hypertext field. 
  17128.  
  17129.      ulReserved (ULONG) 
  17130.         Reserved value, should be 0. 
  17131.  
  17132.      ulReserved (ULONG) 
  17133.         Reserved value, should be 0. 
  17134.  
  17135.           0 
  17136.              Reserved value, zero. 
  17137.  
  17138.  
  17139. ΓòÉΓòÉΓòÉ <hidden> HM_INFORM - Default Processing ΓòÉΓòÉΓòÉ
  17140.  
  17141. None. 
  17142.  
  17143.  
  17144. ΓòÉΓòÉΓòÉ <hidden> HM_INFORM - Topics ΓòÉΓòÉΓòÉ
  17145.  
  17146. Select an item: 
  17147.  
  17148. Syntax
  17149. Parameters
  17150. Returns
  17151. Default Processing
  17152.  
  17153.  
  17154. ΓòÉΓòÉΓòÉ 19.15. HM_INVALIDATE_DDF_DATA ΓòÉΓòÉΓòÉ
  17155.  
  17156.  
  17157. ΓòÉΓòÉΓòÉ <hidden> HM_INVALIDATE_DDF_DATA - Syntax ΓòÉΓòÉΓòÉ
  17158.  
  17159. The application sends this message to IPF to indicate that the previous DDF 
  17160. data is no longer valid. 
  17161.  
  17162.  
  17163. param1
  17164.     ULONG    rescount  /*  The count of DDFs to be invalidated. */
  17165.  
  17166. param2
  17167.     PUSHORT  resarray  /*  Pointer to an array. */
  17168.  
  17169. returns
  17170.     ULONG    rc        /*  Return code. */
  17171.  
  17172.  
  17173. ΓòÉΓòÉΓòÉ <hidden> HM_INVALIDATE_DDF_DATA Fields - rescount ΓòÉΓòÉΓòÉ
  17174.  
  17175.      rescount (ULONG) 
  17176.         The count of DDFs to be invalidated. 
  17177.  
  17178.  
  17179. ΓòÉΓòÉΓòÉ <hidden> HM_INVALIDATE_DDF_DATA Fields - resarray ΓòÉΓòÉΓòÉ
  17180.  
  17181.      resarray (PUSHORT) 
  17182.         Pointer to an array. 
  17183.  
  17184.         The pointer to an array of unsigned 16-bit (USHORT) integers that are 
  17185.         the res numbers of DDFs to be invalidated. 
  17186.  
  17187.         Note:  If both param1 and param2 are NULL, then all the DDFs in that 
  17188.                page will be invalidated. 
  17189.  
  17190.  
  17191. ΓòÉΓòÉΓòÉ <hidden> HM_INVALIDATE_DDF_DATA Return Value - rc ΓòÉΓòÉΓòÉ
  17192.  
  17193.      rc (ULONG) 
  17194.         Return code. 
  17195.  
  17196.           0 
  17197.              The procedure was successfully completed. 
  17198.           Other 
  17199.              See the values of the errorcode parameter of the HM_ERROR message. 
  17200.  
  17201.  
  17202. ΓòÉΓòÉΓòÉ <hidden> HM_INVALIDATE_DDF_DATA - Parameters ΓòÉΓòÉΓòÉ
  17203.  
  17204.      rescount (ULONG) 
  17205.         The count of DDFs to be invalidated. 
  17206.  
  17207.      resarray (PUSHORT) 
  17208.         Pointer to an array. 
  17209.  
  17210.         The pointer to an array of unsigned 16-bit (USHORT) integers that are 
  17211.         the res numbers of DDFs to be invalidated. 
  17212.  
  17213.         Note:  If both param1 and param2 are NULL, then all the DDFs in that 
  17214.                page will be invalidated. 
  17215.  
  17216.  
  17217.      rc (ULONG) 
  17218.         Return code. 
  17219.  
  17220.           0 
  17221.              The procedure was successfully completed. 
  17222.           Other 
  17223.              See the values of the errorcode parameter of the HM_ERROR message. 
  17224.  
  17225.  
  17226. ΓòÉΓòÉΓòÉ <hidden> HM_INVALIDATE_DDF_DATA - Remarks ΓòÉΓòÉΓòÉ
  17227.  
  17228. When IPF receives this message, it discards the current DDF data and sends a 
  17229. new HM_QUERY_DDF_DATA message to the object communication window. 
  17230.  
  17231. This message should be sent to the child of the coverpage window handle. 
  17232.  
  17233.  
  17234. ΓòÉΓòÉΓòÉ <hidden> HM_INVALIDATE_DDF_DATA - Default Processing ΓòÉΓòÉΓòÉ
  17235.  
  17236. None. 
  17237.  
  17238.  
  17239. ΓòÉΓòÉΓòÉ <hidden> HM_INVALIDATE_DDF_DATA - Topics ΓòÉΓòÉΓòÉ
  17240.  
  17241. Select an item: 
  17242.  
  17243. Syntax
  17244. Parameters
  17245. Returns
  17246. Remarks
  17247. Default Processing
  17248.  
  17249.  
  17250. ΓòÉΓòÉΓòÉ 19.16. HM_KEYS_HELP ΓòÉΓòÉΓòÉ
  17251.  
  17252.  
  17253. ΓòÉΓòÉΓòÉ <hidden> HM_KEYS_HELP - Syntax ΓòÉΓòÉΓòÉ
  17254.  
  17255. This message is sent by the application and informs the help manager to display 
  17256. the keys help window. 
  17257.  
  17258.  
  17259. param1
  17260.     ULONG  ulReserved  /*  Reserved value, should be 0. */
  17261.  
  17262. param2
  17263.     ULONG  ulReserved  /*  Reserved value, should be 0. */
  17264.  
  17265. returns
  17266.     ULONG  rc          /*  Return code. */
  17267.  
  17268.  
  17269. ΓòÉΓòÉΓòÉ <hidden> HM_KEYS_HELP Fields - ulReserved ΓòÉΓòÉΓòÉ
  17270.  
  17271.      ulReserved (ULONG) 
  17272.         Reserved value, should be 0. 
  17273.  
  17274.  
  17275. ΓòÉΓòÉΓòÉ <hidden> HM_KEYS_HELP Fields - ulReserved ΓòÉΓòÉΓòÉ
  17276.  
  17277.      ulReserved (ULONG) 
  17278.         Reserved value, should be 0. 
  17279.  
  17280.  
  17281. ΓòÉΓòÉΓòÉ <hidden> HM_KEYS_HELP Return Value - rc ΓòÉΓòÉΓòÉ
  17282.  
  17283.      rc (ULONG) 
  17284.         Return code. 
  17285.  
  17286.           0 
  17287.              The keys help window was successfully displayed 
  17288.           Other 
  17289.              See the values of the ulErrorCode parameter of the HM_ERROR 
  17290.              message. 
  17291.  
  17292.  
  17293. ΓòÉΓòÉΓòÉ <hidden> HM_KEYS_HELP - Parameters ΓòÉΓòÉΓòÉ
  17294.  
  17295.      ulReserved (ULONG) 
  17296.         Reserved value, should be 0. 
  17297.  
  17298.      ulReserved (ULONG) 
  17299.         Reserved value, should be 0. 
  17300.  
  17301.      rc (ULONG) 
  17302.         Return code. 
  17303.  
  17304.           0 
  17305.              The keys help window was successfully displayed 
  17306.           Other 
  17307.              See the values of the ulErrorCode parameter of the HM_ERROR 
  17308.              message. 
  17309.  
  17310.  
  17311. ΓòÉΓòÉΓòÉ <hidden> HM_KEYS_HELP - Remarks ΓòÉΓòÉΓòÉ
  17312.  
  17313. When the Help Manager receives this message, it sends a HM_QUERY_KEYS_HELP 
  17314. message to the active application window. The active application window is the 
  17315. window that was specified when the last HM_SET_ACTIVE_WINDOW message was sent. 
  17316. If no HM_SET_ACTIVE_WINDOW message was issued, then the active application 
  17317. window is the window specified in the WinAssociateHelpInstance call. 
  17318.  
  17319. The application must return one of the following: 
  17320.  
  17321.        o  The identity of a keys help window in the usHelpPanel parameter of 
  17322.           the HM_QUERY_KEYS_HELP message. 
  17323.  
  17324.        o  Zero, if no action is to be taken by the Help Manager for keys help. 
  17325.  
  17326.  
  17327. ΓòÉΓòÉΓòÉ <hidden> HM_KEYS_HELP - Default Processing ΓòÉΓòÉΓòÉ
  17328.  
  17329. None. 
  17330.  
  17331.  
  17332. ΓòÉΓòÉΓòÉ <hidden> HM_KEYS_HELP - Topics ΓòÉΓòÉΓòÉ
  17333.  
  17334. Select an item: 
  17335.  
  17336. Syntax
  17337. Parameters
  17338. Returns
  17339. Remarks
  17340. Default Processing
  17341.  
  17342.  
  17343. ΓòÉΓòÉΓòÉ 19.17. HM_LOAD_HELP_TABLE ΓòÉΓòÉΓòÉ
  17344.  
  17345.  
  17346. ΓòÉΓòÉΓòÉ <hidden> HM_LOAD_HELP_TABLE - Syntax ΓòÉΓòÉΓòÉ
  17347.  
  17348. The application sends this message to give the Help Manager the module handle 
  17349. that contains the help table, the help subtable, and the identity of the help 
  17350. table. 
  17351.  
  17352.  
  17353. param1
  17354.     USHORT   idHelpTable     /*  Identity of the help table. */
  17355.     USHORT   fsidentityflag  /*  Help table identity indicator. */
  17356.  
  17357. param2
  17358.     HMODULE  MODULE          /*  Resource identity. */
  17359.  
  17360. returns
  17361.     ULONG    rc              /*  Return code. */
  17362.  
  17363.  
  17364. ΓòÉΓòÉΓòÉ <hidden> HM_LOAD_HELP_TABLE Fields - idHelpTable ΓòÉΓòÉΓòÉ
  17365.  
  17366.      idHelpTable (USHORT) 
  17367.         Identity of the help table. 
  17368.  
  17369.  
  17370. ΓòÉΓòÉΓòÉ <hidden> HM_LOAD_HELP_TABLE Fields - fsidentityflag ΓòÉΓòÉΓòÉ
  17371.  
  17372.      fsidentityflag (USHORT) 
  17373.         Help table identity indicator. 
  17374.  
  17375.           0xFFFF 
  17376.              Reserved value. 
  17377.  
  17378.  
  17379. ΓòÉΓòÉΓòÉ <hidden> HM_LOAD_HELP_TABLE Fields - MODULE ΓòÉΓòÉΓòÉ
  17380.  
  17381.      MODULE (HMODULE) 
  17382.         Resource identity. 
  17383.  
  17384.         Handle of the module that contains the help table and help subtable. 
  17385.  
  17386.  
  17387. ΓòÉΓòÉΓòÉ <hidden> HM_LOAD_HELP_TABLE Return Value - rc ΓòÉΓòÉΓòÉ
  17388.  
  17389.      rc (ULONG) 
  17390.         Return code. 
  17391.  
  17392.           0 
  17393.              The procedure was successfully completed. 
  17394.           Other 
  17395.              See the values of the ulErrorCode parameter of the HM_ERROR 
  17396.              message. 
  17397.  
  17398.  
  17399. ΓòÉΓòÉΓòÉ <hidden> HM_LOAD_HELP_TABLE - Parameters ΓòÉΓòÉΓòÉ
  17400.  
  17401.      idHelpTable (USHORT) 
  17402.         Identity of the help table. 
  17403.  
  17404.      fsidentityflag (USHORT) 
  17405.         Help table identity indicator. 
  17406.  
  17407.           0xFFFF 
  17408.              Reserved value. 
  17409.  
  17410.      MODULE (HMODULE) 
  17411.         Resource identity. 
  17412.  
  17413.         Handle of the module that contains the help table and help subtable. 
  17414.  
  17415.      rc (ULONG) 
  17416.         Return code. 
  17417.  
  17418.           0 
  17419.              The procedure was successfully completed. 
  17420.           Other 
  17421.              See the values of the ulErrorCode parameter of the HM_ERROR 
  17422.              message. 
  17423.  
  17424.  
  17425. ΓòÉΓòÉΓòÉ <hidden> HM_LOAD_HELP_TABLE - Default Processing ΓòÉΓòÉΓòÉ
  17426.  
  17427. None. 
  17428.  
  17429.  
  17430. ΓòÉΓòÉΓòÉ <hidden> HM_LOAD_HELP_TABLE - Topics ΓòÉΓòÉΓòÉ
  17431.  
  17432. Select an item: 
  17433.  
  17434. Syntax
  17435. Parameters
  17436. Returns
  17437. Default Processing
  17438.  
  17439.  
  17440. ΓòÉΓòÉΓòÉ 19.18. HM_NOTIFY ΓòÉΓòÉΓòÉ
  17441.  
  17442.  
  17443. ΓòÉΓòÉΓòÉ <hidden> HM_NOTIFY - Syntax ΓòÉΓòÉΓòÉ
  17444.  
  17445. This message is used by the application to sub-class and change the behavior or 
  17446. appearance of the help window. 
  17447.  
  17448.  
  17449. param1
  17450.     USHORT  controlres  /*  Res number of the control that was selected. */
  17451.     USHORT  usReserve   /*  Reserved value, should be 0. */
  17452.     USHORT  usevent     /*  The type of event which has occurred. */
  17453.  
  17454. param2
  17455.     ULONG   ulhwnd      /*  Window handle of relevant window. */
  17456.  
  17457. returns
  17458.     BOOL    rc          /*  Return code. */
  17459.  
  17460.  
  17461. ΓòÉΓòÉΓòÉ <hidden> HM_NOTIFY Fields - controlres ΓòÉΓòÉΓòÉ
  17462.  
  17463.      controlres (USHORT) 
  17464.         Res number of the control that was selected. 
  17465.  
  17466.         For author-defined push buttons, this is the res number that was 
  17467.         specified with the push button tag (:pbutton.).  For default push 
  17468.         buttons, this is the res number defined in the PMHELP.H file. 
  17469.  
  17470.  
  17471. ΓòÉΓòÉΓòÉ <hidden> HM_NOTIFY Fields - usReserve ΓòÉΓòÉΓòÉ
  17472.  
  17473.      usReserve (USHORT) 
  17474.         Reserved value, should be 0. 
  17475.  
  17476.         Reserved for events other than CONTROL_SELECTED and HELP_REQUESTED. 
  17477.  
  17478.  
  17479. ΓòÉΓòÉΓòÉ <hidden> HM_NOTIFY Fields - usevent ΓòÉΓòÉΓòÉ
  17480.  
  17481.      usevent (USHORT) 
  17482.         The type of event which has occurred. 
  17483.  
  17484.           CONTROL_SELECTED           A control was selected. 
  17485.  
  17486.           HELP_REQUESTED             Help was requested. 
  17487.  
  17488.           OPEN_COVERPAGE             The coverpage is displayed. 
  17489.  
  17490.           OPEN_PAGE                  The child window of the coverpage is 
  17491.                                      opened. 
  17492.  
  17493.           SWAP_PAGE                  The child window of the coverpage is 
  17494.                                      swapped. 
  17495.  
  17496.           OPEN_INDEX                 The index window is displayed. 
  17497.  
  17498.           OPEN_TOC                   The table of contents window is displayed. 
  17499.  
  17500.           OPEN_HISTORY               The history window is displayed. 
  17501.  
  17502.           OPEN_LIBRARY               The new library is opened. 
  17503.  
  17504.           OPEN_SEARCH_HIT_LIST       The search list displayed. 
  17505.  
  17506.  
  17507. ΓòÉΓòÉΓòÉ <hidden> HM_NOTIFY Fields - ulhwnd ΓòÉΓòÉΓòÉ
  17508.  
  17509.      ulhwnd (ULONG) 
  17510.         Window handle of relevant window. 
  17511.  
  17512.  
  17513. ΓòÉΓòÉΓòÉ <hidden> HM_NOTIFY Return Value - rc ΓòÉΓòÉΓòÉ
  17514.  
  17515.      rc (BOOL) 
  17516.         Return code. 
  17517.  
  17518.           TRUE 
  17519.              IPF will not format the controls and re-size the window. 
  17520.           FALSE 
  17521.              IPF will process as normal. 
  17522.  
  17523.  
  17524. ΓòÉΓòÉΓòÉ <hidden> HM_NOTIFY - Parameters ΓòÉΓòÉΓòÉ
  17525.  
  17526.      controlres (USHORT) 
  17527.         Res number of the control that was selected. 
  17528.  
  17529.         For author-defined push buttons, this is the res number that was 
  17530.         specified with the push button tag (:pbutton.).  For default push 
  17531.         buttons, this is the res number defined in the PMHELP.H file. 
  17532.  
  17533.      usReserve (USHORT) 
  17534.         Reserved value, should be 0. 
  17535.  
  17536.         Reserved for events other than CONTROL_SELECTED and HELP_REQUESTED. 
  17537.  
  17538.      usevent (USHORT) 
  17539.         The type of event which has occurred. 
  17540.  
  17541.           CONTROL_SELECTED           A control was selected. 
  17542.  
  17543.           HELP_REQUESTED             Help was requested. 
  17544.  
  17545.           OPEN_COVERPAGE             The coverpage is displayed. 
  17546.  
  17547.           OPEN_PAGE                  The child window of the coverpage is 
  17548.                                      opened. 
  17549.  
  17550.           SWAP_PAGE                  The child window of the coverpage is 
  17551.                                      swapped. 
  17552.  
  17553.           OPEN_INDEX                 The index window is displayed. 
  17554.  
  17555.           OPEN_TOC                   The table of contents window is displayed. 
  17556.  
  17557.           OPEN_HISTORY               The history window is displayed. 
  17558.  
  17559.           OPEN_LIBRARY               The new library is opened. 
  17560.  
  17561.           OPEN_SEARCH_HIT_LIST       The search list displayed. 
  17562.  
  17563.      ulhwnd (ULONG) 
  17564.         Window handle of relevant window. 
  17565.  
  17566.      rc (BOOL) 
  17567.         Return code. 
  17568.  
  17569.           TRUE 
  17570.              IPF will not format the controls and re-size the window. 
  17571.           FALSE 
  17572.              IPF will process as normal. 
  17573.  
  17574.  
  17575. ΓòÉΓòÉΓòÉ <hidden> HM_NOTIFY - Remarks ΓòÉΓòÉΓòÉ
  17576.  
  17577. This message is sent to the application to notify it of events that the 
  17578. application would be interested in controlling. 
  17579.  
  17580.  
  17581. ΓòÉΓòÉΓòÉ <hidden> HM_NOTIFY - Default Processing ΓòÉΓòÉΓòÉ
  17582.  
  17583. None. 
  17584.  
  17585.  
  17586. ΓòÉΓòÉΓòÉ <hidden> HM_NOTIFY - Topics ΓòÉΓòÉΓòÉ
  17587.  
  17588. Select an item: 
  17589.  
  17590. Syntax
  17591. Parameters
  17592. Returns
  17593. Remarks
  17594. Default Processing
  17595.  
  17596.  
  17597. ΓòÉΓòÉΓòÉ 19.19. HM_QUERY ΓòÉΓòÉΓòÉ
  17598.  
  17599.  
  17600. ΓòÉΓòÉΓòÉ <hidden> HM_QUERY - Syntax ΓòÉΓòÉΓòÉ
  17601.  
  17602. This message is sent to IPF by the application to request IPF-specific 
  17603. information, such as the current Instance handle, the active communication 
  17604. object window, the active window, or the group number of the current window. 
  17605.  
  17606.  
  17607. param1
  17608.     USHORT  usselectionid  /*  What is being requested. */
  17609.     USHORT  usmessageid    /*  Type of window queried. */
  17610.  
  17611. param2
  17612.     PVOID   pvoid          /*  Varies, depending on value selected above. */
  17613.  
  17614. returns
  17615.     ULONG   rc             /*  Return code. */
  17616.  
  17617.  
  17618. ΓòÉΓòÉΓòÉ <hidden> HM_QUERY Fields - usselectionid ΓòÉΓòÉΓòÉ
  17619.  
  17620.      usselectionid (USHORT) 
  17621.         What is being requested. 
  17622.  
  17623.         This parameter should be specified only if the query is for 
  17624.         HMQW_VIEWPORT and should otherwise be coded as NULL. 
  17625.  
  17626.         Specifies whether a res ID, ID number, or group number is being 
  17627.         requested.  The value can be any of the following constants: 
  17628.  
  17629.           HMQVP_NUMBER 
  17630.                                    A pointer to a USHORT that holds the res ID 
  17631.                                    of the window. 
  17632.  
  17633.           HMQVP_NAME 
  17634.                                    A pointer to a null-terminated string that 
  17635.                                    holds the ID of the window. 
  17636.  
  17637.           HMQVP_GROUP 
  17638.                                    The group number of the window. 
  17639.  
  17640.  
  17641. ΓòÉΓòÉΓòÉ <hidden> HM_QUERY Fields - usmessageid ΓòÉΓòÉΓòÉ
  17642.  
  17643.      usmessageid (USHORT) 
  17644.         Type of window queried. 
  17645.  
  17646.         Specifies the type of window to query.  The value can be any of the 
  17647.         following constants: 
  17648.  
  17649.           HMQW_INDEX 
  17650.                                         The handle of the index window. 
  17651.           HMQW_TOC 
  17652.                                         The handle of the Table of Contents 
  17653.                                         window. 
  17654.           HMQW_SEARCH 
  17655.                                         The handle of the Search Hitlist 
  17656.                                         window. 
  17657.           HMQW_VIEWEDPAGES 
  17658.                                         The handle of the Viewed Pages window. 
  17659.           HMQW_LIBRARY 
  17660.                                         The handle of the Library List window. 
  17661.           HMQW_OBJCOM_WINDOW 
  17662.                                         The handle of the active communication 
  17663.                                         window. 
  17664.           HMQW_INSTANCE 
  17665.                                         The handle of the help instance. 
  17666.           HMQW_COVERPAGE 
  17667.                                         The handle of the help manager multiple 
  17668.                                         document interface (MDI) parent window. 
  17669.                                         It is where the secondary windows are 
  17670.                                         contained within the parent window. 
  17671.           HMQW_VIEWPORT 
  17672.                                         The handle of the viewport window 
  17673.                                         specified in the low-order word of 
  17674.                                         param1 and in param2. 
  17675.  
  17676.                                         When HMQW_VIEWPORT is specified in 
  17677.                                         usmessageid, a value must be specified 
  17678.                                         in usselectionid to indicate whether a 
  17679.                                         res ID, ID number, or group number is 
  17680.                                         being requested. 
  17681.           HMQW_GROUP_VIEWPORT 
  17682.                                         The group number of the window whose 
  17683.                                         handle is specified in param2. 
  17684.           HMQW_RES_VIEWPORT 
  17685.                                         The res number of the window whose 
  17686.                                         handle is specified in param2. 
  17687.           HMQW_ACTIVEVIEWPORT 
  17688.                                         The handle of the currently active 
  17689.                                         window. 
  17690.           USERDATA 
  17691.                                         The previously stored user-data. 
  17692.  
  17693.  
  17694. ΓòÉΓòÉΓòÉ <hidden> HM_QUERY Fields - pvoid ΓòÉΓòÉΓòÉ
  17695.  
  17696.      pvoid (PVOID) 
  17697.         Varies, depending on value selected above. 
  17698.  
  17699.         param2 depends on the value of param1 usmessageid. 
  17700.  
  17701.         If param1 usmessageid is HMQW_VIEWPORT, then param2 is a pointer to the 
  17702.         res number, ID, or group ID. 
  17703.  
  17704.         If param1 usmessageid is HMQW_GROUP_VIEWPORT, then param2 is the handle 
  17705.         of the viewport for which the group number is assigned. 
  17706.  
  17707.         If param1 usmessageid is HMQW_RES_VIEWPORT, then param2 is the handle 
  17708.         of the viewport for which the res number is requested. 
  17709.  
  17710.  
  17711. ΓòÉΓòÉΓòÉ <hidden> HM_QUERY Return Value - rc ΓòÉΓòÉΓòÉ
  17712.  
  17713.      rc (ULONG) 
  17714.         Return code. 
  17715.  
  17716.           0 
  17717.              The procedure was not successfully completed. 
  17718.  
  17719.           Other 
  17720.              The handle (HWND), group number (USHORT), or res number (USHORT) 
  17721.              of the window, or the user data (USHORT), depending on the value 
  17722.              of param1 usselectionid. 
  17723.  
  17724.  
  17725. ΓòÉΓòÉΓòÉ <hidden> HM_QUERY - Parameters ΓòÉΓòÉΓòÉ
  17726.  
  17727.      usselectionid (USHORT) 
  17728.         What is being requested. 
  17729.  
  17730.         This parameter should be specified only if the query is for 
  17731.         HMQW_VIEWPORT and should otherwise be coded as NULL. 
  17732.  
  17733.         Specifies whether a res ID, ID number, or group number is being 
  17734.         requested.  The value can be any of the following constants: 
  17735.  
  17736.           HMQVP_NUMBER 
  17737.                                    A pointer to a USHORT that holds the res ID 
  17738.                                    of the window. 
  17739.  
  17740.           HMQVP_NAME 
  17741.                                    A pointer to a null-terminated string that 
  17742.                                    holds the ID of the window. 
  17743.  
  17744.           HMQVP_GROUP 
  17745.                                    The group number of the window. 
  17746.  
  17747.      usmessageid (USHORT) 
  17748.         Type of window queried. 
  17749.  
  17750.         Specifies the type of window to query.  The value can be any of the 
  17751.         following constants: 
  17752.  
  17753.           HMQW_INDEX 
  17754.                                         The handle of the index window. 
  17755.           HMQW_TOC 
  17756.                                         The handle of the Table of Contents 
  17757.                                         window. 
  17758.           HMQW_SEARCH 
  17759.                                         The handle of the Search Hitlist 
  17760.                                         window. 
  17761.           HMQW_VIEWEDPAGES 
  17762.                                         The handle of the Viewed Pages window. 
  17763.           HMQW_LIBRARY 
  17764.                                         The handle of the Library List window. 
  17765.           HMQW_OBJCOM_WINDOW 
  17766.                                         The handle of the active communication 
  17767.                                         window. 
  17768.           HMQW_INSTANCE 
  17769.                                         The handle of the help instance. 
  17770.           HMQW_COVERPAGE 
  17771.                                         The handle of the help manager multiple 
  17772.                                         document interface (MDI) parent window. 
  17773.                                         It is where the secondary windows are 
  17774.                                         contained within the parent window. 
  17775.           HMQW_VIEWPORT 
  17776.                                         The handle of the viewport window 
  17777.                                         specified in the low-order word of 
  17778.                                         param1 and in param2. 
  17779.  
  17780.                                         When HMQW_VIEWPORT is specified in 
  17781.                                         usmessageid, a value must be specified 
  17782.                                         in usselectionid to indicate whether a 
  17783.                                         res ID, ID number, or group number is 
  17784.                                         being requested. 
  17785.           HMQW_GROUP_VIEWPORT 
  17786.                                         The group number of the window whose 
  17787.                                         handle is specified in param2. 
  17788.           HMQW_RES_VIEWPORT 
  17789.                                         The res number of the window whose 
  17790.                                         handle is specified in param2. 
  17791.           HMQW_ACTIVEVIEWPORT 
  17792.                                         The handle of the currently active 
  17793.                                         window. 
  17794.           USERDATA 
  17795.                                         The previously stored user-data. 
  17796.  
  17797.      pvoid (PVOID) 
  17798.         Varies, depending on value selected above. 
  17799.  
  17800.         param2 depends on the value of param1 usmessageid. 
  17801.  
  17802.         If param1 usmessageid is HMQW_VIEWPORT, then param2 is a pointer to the 
  17803.         res number, ID, or group ID. 
  17804.  
  17805.         If param1 usmessageid is HMQW_GROUP_VIEWPORT, then param2 is the handle 
  17806.         of the viewport for which the group number is assigned. 
  17807.  
  17808.         If param1 usmessageid is HMQW_RES_VIEWPORT, then param2 is the handle 
  17809.         of the viewport for which the res number is requested. 
  17810.  
  17811.      rc (ULONG) 
  17812.         Return code. 
  17813.  
  17814.           0 
  17815.              The procedure was not successfully completed. 
  17816.  
  17817.           Other 
  17818.              The handle (HWND), group number (USHORT), or res number (USHORT) 
  17819.              of the window, or the user data (USHORT), depending on the value 
  17820.              of param1 usselectionid. 
  17821.  
  17822.  
  17823. ΓòÉΓòÉΓòÉ <hidden> HM_QUERY - Default Processing ΓòÉΓòÉΓòÉ
  17824.  
  17825. None. 
  17826.  
  17827.  
  17828. ΓòÉΓòÉΓòÉ <hidden> HM_QUERY - Topics ΓòÉΓòÉΓòÉ
  17829.  
  17830. Select an item: 
  17831.  
  17832. Syntax
  17833. Parameters
  17834. Returns
  17835. Default Processing
  17836.  
  17837.  
  17838. ΓòÉΓòÉΓòÉ 19.20. HM_QUERY_DDF_DATA ΓòÉΓòÉΓòÉ
  17839.  
  17840.  
  17841. ΓòÉΓòÉΓòÉ <hidden> HM_QUERY_DDF_DATA - Syntax ΓòÉΓòÉΓòÉ
  17842.  
  17843. This message is sent to the communication object window by IPF when it 
  17844. encounters the dynamic data formatting (:ddf.) tag. 
  17845.  
  17846.  
  17847. param1
  17848.     HWND   pageclienthwnd  /*  Client handle. */
  17849.  
  17850. param2
  17851.     ULONG  resid           /*  The res ID associated with the DDF tag. */
  17852.  
  17853. returns
  17854.     HDDF   rc              /*  Return code. */
  17855.  
  17856.  
  17857. ΓòÉΓòÉΓòÉ <hidden> HM_QUERY_DDF_DATA Fields - pageclienthwnd ΓòÉΓòÉΓòÉ
  17858.  
  17859.      pageclienthwnd (HWND) 
  17860.         Client handle. 
  17861.  
  17862.         The client handle of the page that contains the object communication 
  17863.         window. 
  17864.  
  17865.  
  17866. ΓòÉΓòÉΓòÉ <hidden> HM_QUERY_DDF_DATA Fields - resid ΓòÉΓòÉΓòÉ
  17867.  
  17868.      resid (ULONG) 
  17869.         The res ID associated with the DDF tag. 
  17870.  
  17871.  
  17872. ΓòÉΓòÉΓòÉ <hidden> HM_QUERY_DDF_DATA Return Value - rc ΓòÉΓòÉΓòÉ
  17873.  
  17874.      rc (HDDF) 
  17875.         Return code. 
  17876.  
  17877.           0 
  17878.              An error has occurred in the application's DDF processing. 
  17879.  
  17880.           Other 
  17881.              The DDF handle to be displayed. 
  17882.  
  17883.              Note:  Once this handle has been returned, the HDDF handle can no 
  17884.                     longer be used by the application. 
  17885.  
  17886.  
  17887. ΓòÉΓòÉΓòÉ <hidden> HM_QUERY_DDF_DATA - Parameters ΓòÉΓòÉΓòÉ
  17888.  
  17889.      pageclienthwnd (HWND) 
  17890.         Client handle. 
  17891.  
  17892.         The client handle of the page that contains the object communication 
  17893.         window. 
  17894.  
  17895.      resid (ULONG) 
  17896.         The res ID associated with the DDF tag. 
  17897.  
  17898.      rc (HDDF) 
  17899.         Return code. 
  17900.  
  17901.           0 
  17902.              An error has occurred in the application's DDF processing. 
  17903.  
  17904.           Other 
  17905.              The DDF handle to be displayed. 
  17906.  
  17907.              Note:  Once this handle has been returned, the HDDF handle can no 
  17908.                     longer be used by the application. 
  17909.  
  17910.  
  17911. ΓòÉΓòÉΓòÉ <hidden> HM_QUERY_DDF_DATA - Remarks ΓòÉΓòÉΓòÉ
  17912.  
  17913. Upon receiving this message, the communication object calls DdfInitialize to 
  17914. indicate the start of dynamic data formatting (DDF).  Any combination of other 
  17915. DDF calls are then made to describe this data.  When this is complete, the 
  17916. communication object finishes processing this message, indicating that the DDF 
  17917. data is complete.  After that time, the DDF handle received from DdfInitialize 
  17918. is considered invalid. 
  17919.  
  17920.  
  17921. ΓòÉΓòÉΓòÉ <hidden> HM_QUERY_DDF_DATA - Default Processing ΓòÉΓòÉΓòÉ
  17922.  
  17923. None. 
  17924.  
  17925.  
  17926. ΓòÉΓòÉΓòÉ <hidden> HM_QUERY_DDF_DATA - Topics ΓòÉΓòÉΓòÉ
  17927.  
  17928. Select an item: 
  17929.  
  17930. Syntax
  17931. Parameters
  17932. Returns
  17933. Remarks
  17934. Default Processing
  17935.  
  17936.  
  17937. ΓòÉΓòÉΓòÉ 19.21. HM_QUERY_KEYS_HELP ΓòÉΓòÉΓòÉ
  17938.  
  17939.  
  17940. ΓòÉΓòÉΓòÉ <hidden> HM_QUERY_KEYS_HELP - Syntax ΓòÉΓòÉΓòÉ
  17941.  
  17942. When the user requests the keys help function, the Help Manager sends this 
  17943. message to the application. 
  17944.  
  17945.  
  17946. param1
  17947.     ULONG   ulReserved   /*  Reserved value, should be 0. */
  17948.  
  17949. param2
  17950.     ULONG   ulReserved   /*  Reserved value, should be 0. */
  17951.  
  17952. returns
  17953.     USHORT  usHelpPanel  /*  Help panel ID. */
  17954.  
  17955.  
  17956. ΓòÉΓòÉΓòÉ <hidden> HM_QUERY_KEYS_HELP Fields - ulReserved ΓòÉΓòÉΓòÉ
  17957.  
  17958.      ulReserved (ULONG) 
  17959.         Reserved value, should be 0. 
  17960.  
  17961.  
  17962. ΓòÉΓòÉΓòÉ <hidden> HM_QUERY_KEYS_HELP Fields - ulReserved ΓòÉΓòÉΓòÉ
  17963.  
  17964.      ulReserved (ULONG) 
  17965.         Reserved value, should be 0. 
  17966.  
  17967.  
  17968. ΓòÉΓòÉΓòÉ <hidden> HM_QUERY_KEYS_HELP Return Value - usHelpPanel ΓòÉΓòÉΓòÉ
  17969.  
  17970.      usHelpPanel (USHORT) 
  17971.         Help panel ID. 
  17972.  
  17973.         The identity of the application-defined keys help window to be 
  17974.         displayed. 
  17975.  
  17976.           0 
  17977.              Do nothing 
  17978.           Other 
  17979.              Identity of the keys help window to be displayed. 
  17980.  
  17981.  
  17982. ΓòÉΓòÉΓòÉ <hidden> HM_QUERY_KEYS_HELP - Parameters ΓòÉΓòÉΓòÉ
  17983.  
  17984.      ulReserved (ULONG) 
  17985.         Reserved value, should be 0. 
  17986.  
  17987.      ulReserved (ULONG) 
  17988.         Reserved value, should be 0. 
  17989.  
  17990.      usHelpPanel (USHORT) 
  17991.         Help panel ID. 
  17992.  
  17993.         The identity of the application-defined keys help window to be 
  17994.         displayed. 
  17995.  
  17996.           0 
  17997.              Do nothing 
  17998.           Other 
  17999.              Identity of the keys help window to be displayed. 
  18000.  
  18001.  
  18002. ΓòÉΓòÉΓòÉ <hidden> HM_QUERY_KEYS_HELP - Remarks ΓòÉΓòÉΓòÉ
  18003.  
  18004. The application responds by returning the identity of the requested keys help 
  18005. window. The Help Manager then displays that help window. Returning 0 in the 
  18006. usHelpPanel parameter indicates that the Help Manager should do nothing for the 
  18007. keys help function. 
  18008.  
  18009.  
  18010. ΓòÉΓòÉΓòÉ <hidden> HM_QUERY_KEYS_HELP - Default Processing ΓòÉΓòÉΓòÉ
  18011.  
  18012. None. 
  18013.  
  18014.  
  18015. ΓòÉΓòÉΓòÉ <hidden> HM_QUERY_KEYS_HELP - Topics ΓòÉΓòÉΓòÉ
  18016.  
  18017. Select an item: 
  18018.  
  18019. Syntax
  18020. Parameters
  18021. Returns
  18022. Remarks
  18023. Default Processing
  18024.  
  18025.  
  18026. ΓòÉΓòÉΓòÉ 19.22. HM_REPLACE_HELP_FOR_HELP ΓòÉΓòÉΓòÉ
  18027.  
  18028.  
  18029. ΓòÉΓòÉΓòÉ <hidden> HM_REPLACE_HELP_FOR_HELP - Syntax ΓòÉΓòÉΓòÉ
  18030.  
  18031. This message tells the Help Manager to display the application-defined Help for 
  18032. Help window instead of the Help Manager Help for Help window. 
  18033.  
  18034.  
  18035. param1
  18036.     USHORT  idHelpForHelpPanel  /*  Identity of the application-defined Help for Help window. */
  18037.  
  18038. param2
  18039.     ULONG   ulReserved          /*  Reserved value, should be 0. */
  18040.  
  18041. returns
  18042.     ULONG   ulReserved          /*  Reserved value, should be 0. */
  18043.  
  18044.  
  18045. ΓòÉΓòÉΓòÉ <hidden> HM_REPLACE_HELP_FOR_HELP Fields - idHelpForHelpPanel ΓòÉΓòÉΓòÉ
  18046.  
  18047.      idHelpForHelpPanel (USHORT) 
  18048.         Identity of the application-defined Help for Help window. 
  18049.  
  18050.           0 
  18051.              Use the Help Manager Help for Help window. 
  18052.           Other 
  18053.              Identity of the application-defined Help for Help window. 
  18054.  
  18055.  
  18056. ΓòÉΓòÉΓòÉ <hidden> HM_REPLACE_HELP_FOR_HELP Fields - ulReserved ΓòÉΓòÉΓòÉ
  18057.  
  18058.      ulReserved (ULONG) 
  18059.         Reserved value, should be 0. 
  18060.  
  18061.  
  18062. ΓòÉΓòÉΓòÉ <hidden> HM_REPLACE_HELP_FOR_HELP Return Value - ulReserved ΓòÉΓòÉΓòÉ
  18063.  
  18064.      ulReserved (ULONG) 
  18065.         Reserved value, should be 0. 
  18066.  
  18067.  
  18068. ΓòÉΓòÉΓòÉ <hidden> HM_REPLACE_HELP_FOR_HELP - Parameters ΓòÉΓòÉΓòÉ
  18069.  
  18070.      idHelpForHelpPanel (USHORT) 
  18071.         Identity of the application-defined Help for Help window. 
  18072.  
  18073.           0 
  18074.              Use the Help Manager Help for Help window. 
  18075.           Other 
  18076.              Identity of the application-defined Help for Help window. 
  18077.  
  18078.      ulReserved (ULONG) 
  18079.         Reserved value, should be 0. 
  18080.  
  18081.      ulReserved (ULONG) 
  18082.         Reserved value, should be 0. 
  18083.  
  18084.  
  18085. ΓòÉΓòÉΓòÉ <hidden> HM_REPLACE_HELP_FOR_HELP - Remarks ΓòÉΓòÉΓòÉ
  18086.  
  18087. An application may prefer to provide information that is more specific to 
  18088. itself, rather than the more general help information provided in the Help 
  18089. Manager Help for Help window. 
  18090.  
  18091.  
  18092. ΓòÉΓòÉΓòÉ <hidden> HM_REPLACE_HELP_FOR_HELP - Default Processing ΓòÉΓòÉΓòÉ
  18093.  
  18094. None. 
  18095.  
  18096.  
  18097. ΓòÉΓòÉΓòÉ <hidden> HM_REPLACE_HELP_FOR_HELP - Topics ΓòÉΓòÉΓòÉ
  18098.  
  18099. Select an item: 
  18100.  
  18101. Syntax
  18102. Parameters
  18103. Returns
  18104. Remarks
  18105. Default Processing
  18106.  
  18107.  
  18108. ΓòÉΓòÉΓòÉ 19.23. HM_REPLACE_USING_HELP ΓòÉΓòÉΓòÉ
  18109.  
  18110.  
  18111. ΓòÉΓòÉΓòÉ <hidden> HM_REPLACE_USING_HELP - Syntax ΓòÉΓòÉΓòÉ
  18112.  
  18113. This message tells the Help Manager to display the application-defined Using 
  18114. help window instead of the Help Manager Using help window. 
  18115.  
  18116.  
  18117. param1
  18118.     USHORT  idUsingHelpPanel
  18119.  
  18120. param2
  18121.     ULONG   ulReserved        /*  Reserved value, should be 0. */
  18122.  
  18123. returns
  18124.     ULONG   ulReserved        /*  Reserved value, should be 0. */
  18125.  
  18126.  
  18127. ΓòÉΓòÉΓòÉ <hidden> HM_REPLACE_USING_HELP Fields - idUsingHelpPanel ΓòÉΓòÉΓòÉ
  18128.  
  18129.      idUsingHelpPanel (USHORT) 
  18130.         The identity of the application-defined Using Help window. 
  18131.  
  18132.           0 
  18133.              Use the Help Manager Using Help window. 
  18134.           Other 
  18135.              The identity of the application-defined Using Help window. 
  18136.  
  18137.  
  18138. ΓòÉΓòÉΓòÉ <hidden> HM_REPLACE_USING_HELP Fields - ulReserved ΓòÉΓòÉΓòÉ
  18139.  
  18140.      ulReserved (ULONG) 
  18141.         Reserved value, should be 0. 
  18142.  
  18143.  
  18144. ΓòÉΓòÉΓòÉ <hidden> HM_REPLACE_USING_HELP Return Value - ulReserved ΓòÉΓòÉΓòÉ
  18145.  
  18146.      ulReserved (ULONG) 
  18147.         Reserved value, should be 0. 
  18148.  
  18149.  
  18150. ΓòÉΓòÉΓòÉ <hidden> HM_REPLACE_USING_HELP - Parameters ΓòÉΓòÉΓòÉ
  18151.  
  18152.      idUsingHelpPanel (USHORT) 
  18153.         The identity of the application-defined Using Help window. 
  18154.  
  18155.           0 
  18156.              Use the Help Manager Using Help window. 
  18157.           Other 
  18158.              The identity of the application-defined Using Help window. 
  18159.  
  18160.      ulReserved (ULONG) 
  18161.         Reserved value, should be 0. 
  18162.  
  18163.      ulReserved (ULONG) 
  18164.         Reserved value, should be 0. 
  18165.  
  18166.  
  18167. ΓòÉΓòÉΓòÉ <hidden> HM_REPLACE_USING_HELP - Remarks ΓòÉΓòÉΓòÉ
  18168.  
  18169. An application may prefer to provide information that is more specific to 
  18170. itself, rather than the more general help information that is provided in the 
  18171. Help Manager Using help window.  The guidelines that define the current CUA 
  18172. interface recommend the Using help choice be provided in a pull-down menu from 
  18173. the Help choice. 
  18174.  
  18175.  
  18176. ΓòÉΓòÉΓòÉ <hidden> HM_REPLACE_USING_HELP - Default Processing ΓòÉΓòÉΓòÉ
  18177.  
  18178. None. 
  18179.  
  18180.  
  18181. ΓòÉΓòÉΓòÉ <hidden> HM_REPLACE_USING_HELP - Topics ΓòÉΓòÉΓòÉ
  18182.  
  18183. Select an item: 
  18184.  
  18185. Syntax
  18186. Parameters
  18187. Returns
  18188. Remarks
  18189. Default Processing
  18190.  
  18191.  
  18192. ΓòÉΓòÉΓòÉ 19.24. HM_SET_ACTIVE_WINDOW ΓòÉΓòÉΓòÉ
  18193.  
  18194.  
  18195. ΓòÉΓòÉΓòÉ <hidden> HM_SET_ACTIVE_WINDOW - Syntax ΓòÉΓòÉΓòÉ
  18196.  
  18197. This message allows the application to change the window with which the Help 
  18198. Manager communicates and the window to which the help window is to be 
  18199. positioned. 
  18200.  
  18201.  
  18202. param1
  18203.     HWND   hwndActiveWindow    /*  The handle of the window to be made active. */
  18204.  
  18205. param2
  18206.     HWND   hwndRelativeWindow  /*  The handle of the window next to which the help window is to be positioned. */
  18207.  
  18208. returns
  18209.     ULONG  rc                  /*  Return code. */
  18210.  
  18211.  
  18212. ΓòÉΓòÉΓòÉ <hidden> HM_SET_ACTIVE_WINDOW Fields - hwndActiveWindow ΓòÉΓòÉΓòÉ
  18213.  
  18214.      hwndActiveWindow (HWND) 
  18215.         The handle of the window to be made active. 
  18216.  
  18217.         Its window procedure receives all messages from the Help Manager until 
  18218.         the application changes the active window with another 
  18219.         HM_SET_ACTIVE_WINDOW message. 
  18220.  
  18221.  
  18222. ΓòÉΓòÉΓòÉ <hidden> HM_SET_ACTIVE_WINDOW Fields - hwndRelativeWindow ΓòÉΓòÉΓòÉ
  18223.  
  18224.      hwndRelativeWindow (HWND) 
  18225.         The handle of the window next to which the help window is to be 
  18226.         positioned. 
  18227.  
  18228.         The handle of the application window next to which the Help Manager 
  18229.         will position a new help window. 
  18230.  
  18231.           HWND_PARENT 
  18232.              This Help Manager defined constant tells the Help Manager to trace 
  18233.              the parent chain of the window that had the focus when the user 
  18234.              requested help. 
  18235.  
  18236.           Other 
  18237.              Handle of the window next to which the help window is to be 
  18238.              positioned. 
  18239.  
  18240.  
  18241. ΓòÉΓòÉΓòÉ <hidden> HM_SET_ACTIVE_WINDOW Return Value - rc ΓòÉΓòÉΓòÉ
  18242.  
  18243.      rc (ULONG) 
  18244.         Return code. 
  18245.  
  18246.           0 
  18247.              The procedure has been successfully completed. 
  18248.           Other 
  18249.              See the values of the ulErrorCode parameter of the HM_ERROR 
  18250.              message. 
  18251.  
  18252.  
  18253. ΓòÉΓòÉΓòÉ <hidden> HM_SET_ACTIVE_WINDOW - Parameters ΓòÉΓòÉΓòÉ
  18254.  
  18255.      hwndActiveWindow (HWND) 
  18256.         The handle of the window to be made active. 
  18257.  
  18258.         Its window procedure receives all messages from the Help Manager until 
  18259.         the application changes the active window with another 
  18260.         HM_SET_ACTIVE_WINDOW message. 
  18261.  
  18262.      hwndRelativeWindow (HWND) 
  18263.         The handle of the window next to which the help window is to be 
  18264.         positioned. 
  18265.  
  18266.         The handle of the application window next to which the Help Manager 
  18267.         will position a new help window. 
  18268.  
  18269.           HWND_PARENT 
  18270.              This Help Manager defined constant tells the Help Manager to trace 
  18271.              the parent chain of the window that had the focus when the user 
  18272.              requested help. 
  18273.  
  18274.           Other 
  18275.              Handle of the window next to which the help window is to be 
  18276.              positioned. 
  18277.  
  18278.      rc (ULONG) 
  18279.         Return code. 
  18280.  
  18281.           0 
  18282.              The procedure has been successfully completed. 
  18283.           Other 
  18284.              See the values of the ulErrorCode parameter of the HM_ERROR 
  18285.              message. 
  18286.  
  18287.  
  18288. ΓòÉΓòÉΓòÉ <hidden> HM_SET_ACTIVE_WINDOW - Remarks ΓòÉΓòÉΓòÉ
  18289.  
  18290. Normally the Help Manager communicates with the application window with which 
  18291. the Help Manager instance has been associated. The help window is positioned 
  18292. next to this same application window. 
  18293.  
  18294. If the hwndActiveWindow parameter is 0, the hwndRelativeWindow parameter is set 
  18295. to 0. That is, if the active window is NULL HANDLE, the relative window is not 
  18296. used. 
  18297.  
  18298.  
  18299. ΓòÉΓòÉΓòÉ <hidden> HM_SET_ACTIVE_WINDOW - Default Processing ΓòÉΓòÉΓòÉ
  18300.  
  18301. None. 
  18302.  
  18303.  
  18304. ΓòÉΓòÉΓòÉ <hidden> HM_SET_ACTIVE_WINDOW - Topics ΓòÉΓòÉΓòÉ
  18305.  
  18306. Select an item: 
  18307.  
  18308. Syntax
  18309. Parameters
  18310. Returns
  18311. Remarks
  18312. Default Processing
  18313.  
  18314.  
  18315. ΓòÉΓòÉΓòÉ 19.25. HM_SET_COVERPAGE_SIZE ΓòÉΓòÉΓòÉ
  18316.  
  18317.  
  18318. ΓòÉΓòÉΓòÉ <hidden> HM_SET_COVERPAGE_SIZE - Syntax ΓòÉΓòÉΓòÉ
  18319.  
  18320. This message is sent to IPF by the application to set the size of the 
  18321. coverpage, the window within which all other IPF windows are displayed. 
  18322.  
  18323.  
  18324. param1
  18325.     PRECTL  coverpagerectl  /*  Pointer to RECTL containing the size of the coverpage. */
  18326.  
  18327. param2
  18328.     ULONG   ulReserved      /*  Reserved value, should be 0. */
  18329.  
  18330. returns
  18331.     ULONG   rc              /*  Return code. */
  18332.  
  18333.  
  18334. ΓòÉΓòÉΓòÉ <hidden> HM_SET_COVERPAGE_SIZE Fields - coverpagerectl ΓòÉΓòÉΓòÉ
  18335.  
  18336.      coverpagerectl (PRECTL) 
  18337.         Pointer to RECTL containing the size of the coverpage. 
  18338.  
  18339.  
  18340. ΓòÉΓòÉΓòÉ <hidden> HM_SET_COVERPAGE_SIZE Fields - ulReserved ΓòÉΓòÉΓòÉ
  18341.  
  18342.      ulReserved (ULONG) 
  18343.         Reserved value, should be 0. 
  18344.  
  18345.  
  18346. ΓòÉΓòÉΓòÉ <hidden> HM_SET_COVERPAGE_SIZE Return Value - rc ΓòÉΓòÉΓòÉ
  18347.  
  18348.      rc (ULONG) 
  18349.         Return code. 
  18350.  
  18351.           0 
  18352.              The procedure was successfully completed. 
  18353.           Other 
  18354.              See the values of the errorcode parameter of the HM_ERROR message. 
  18355.  
  18356.  
  18357. ΓòÉΓòÉΓòÉ <hidden> HM_SET_COVERPAGE_SIZE - Parameters ΓòÉΓòÉΓòÉ
  18358.  
  18359.      coverpagerectl (PRECTL) 
  18360.         Pointer to RECTL containing the size of the coverpage. 
  18361.  
  18362.      ulReserved (ULONG) 
  18363.         Reserved value, should be 0. 
  18364.  
  18365.      rc (ULONG) 
  18366.         Return code. 
  18367.  
  18368.           0 
  18369.              The procedure was successfully completed. 
  18370.           Other 
  18371.              See the values of the errorcode parameter of the HM_ERROR message. 
  18372.  
  18373.  
  18374. ΓòÉΓòÉΓòÉ <hidden> HM_SET_COVERPAGE_SIZE - Remarks ΓòÉΓòÉΓòÉ
  18375.  
  18376. The default size for the coverpage of a book is the full width of the screen, 
  18377. while the default size for a help file is one-half the width of the screen. 
  18378.  
  18379. This message takes effect immediately, changing the size of the coverpage.  If 
  18380. the coverpage is not currently open, the requested size is saved for the next 
  18381. open. 
  18382.  
  18383.  
  18384. ΓòÉΓòÉΓòÉ <hidden> HM_SET_COVERPAGE_SIZE - Default Processing ΓòÉΓòÉΓòÉ
  18385.  
  18386. None. 
  18387.  
  18388.  
  18389. ΓòÉΓòÉΓòÉ <hidden> HM_SET_COVERPAGE_SIZE - Topics ΓòÉΓòÉΓòÉ
  18390.  
  18391. Select an item: 
  18392.  
  18393. Syntax
  18394. Parameters
  18395. Returns
  18396. Remarks
  18397. Default Processing
  18398.  
  18399.  
  18400. ΓòÉΓòÉΓòÉ 19.26. HM_SET_HELP_LIBRARY_NAME ΓòÉΓòÉΓòÉ
  18401.  
  18402.  
  18403. ΓòÉΓòÉΓòÉ <hidden> HM_SET_HELP_LIBRARY_NAME - Syntax ΓòÉΓòÉΓòÉ
  18404.  
  18405. This message identifies a list of help window library names to the Help Manager 
  18406. instance. 
  18407.  
  18408.  
  18409. param1
  18410.     PSZ    pszHelpLibraryName  /*  Library name. */
  18411.  
  18412. param2
  18413.     ULONG  ulReserved          /*  Reserved value, should be 0. */
  18414.  
  18415. returns
  18416.     ULONG  rc                  /*  Return code. */
  18417.  
  18418.  
  18419. ΓòÉΓòÉΓòÉ <hidden> HM_SET_HELP_LIBRARY_NAME Fields - pszHelpLibraryName ΓòÉΓòÉΓòÉ
  18420.  
  18421.      pszHelpLibraryName (PSZ) 
  18422.         Library name. 
  18423.  
  18424.         This points to a string that contains a list of help window library 
  18425.         names that will be searched by the Help Manager for the requested help 
  18426.         window. The names must be separated by a blank. 
  18427.  
  18428.  
  18429. ΓòÉΓòÉΓòÉ <hidden> HM_SET_HELP_LIBRARY_NAME Fields - ulReserved ΓòÉΓòÉΓòÉ
  18430.  
  18431.      ulReserved (ULONG) 
  18432.         Reserved value, should be 0. 
  18433.  
  18434.  
  18435. ΓòÉΓòÉΓòÉ <hidden> HM_SET_HELP_LIBRARY_NAME Return Value - rc ΓòÉΓòÉΓòÉ
  18436.  
  18437.      rc (ULONG) 
  18438.         Return code. 
  18439.  
  18440.           0 
  18441.              The newly specified library successfully replaced the current help 
  18442.              window library name. 
  18443.           Other 
  18444.              See the values of the ulErrorCode parameter of the HM_ERROR 
  18445.              message. 
  18446.  
  18447.  
  18448. ΓòÉΓòÉΓòÉ <hidden> HM_SET_HELP_LIBRARY_NAME - Parameters ΓòÉΓòÉΓòÉ
  18449.  
  18450.      pszHelpLibraryName (PSZ) 
  18451.         Library name. 
  18452.  
  18453.         This points to a string that contains a list of help window library 
  18454.         names that will be searched by the Help Manager for the requested help 
  18455.         window. The names must be separated by a blank. 
  18456.  
  18457.      ulReserved (ULONG) 
  18458.         Reserved value, should be 0. 
  18459.  
  18460.      rc (ULONG) 
  18461.         Return code. 
  18462.  
  18463.           0 
  18464.              The newly specified library successfully replaced the current help 
  18465.              window library name. 
  18466.           Other 
  18467.              See the values of the ulErrorCode parameter of the HM_ERROR 
  18468.              message. 
  18469.  
  18470.  
  18471. ΓòÉΓòÉΓòÉ <hidden> HM_SET_HELP_LIBRARY_NAME - Remarks ΓòÉΓòÉΓòÉ
  18472.  
  18473. Any subsequent communication to the Help Manager with this message replaces the 
  18474. current list of names with the newly specified list. 
  18475.  
  18476. When help is requested, the Help Manager will search each library in the list 
  18477. for the requested help window. 
  18478.  
  18479.  
  18480. ΓòÉΓòÉΓòÉ <hidden> HM_SET_HELP_LIBRARY_NAME - Default Processing ΓòÉΓòÉΓòÉ
  18481.  
  18482. None. 
  18483.  
  18484.  
  18485. ΓòÉΓòÉΓòÉ <hidden> HM_SET_HELP_LIBRARY_NAME - Topics ΓòÉΓòÉΓòÉ
  18486.  
  18487. Select an item: 
  18488.  
  18489. Syntax
  18490. Parameters
  18491. Returns
  18492. Remarks
  18493. Default Processing
  18494.  
  18495.  
  18496. ΓòÉΓòÉΓòÉ 19.27. HM_SET_HELP_WINDOW_TITLE ΓòÉΓòÉΓòÉ
  18497.  
  18498.  
  18499. ΓòÉΓòÉΓòÉ <hidden> HM_SET_HELP_WINDOW_TITLE - Syntax ΓòÉΓòÉΓòÉ
  18500.  
  18501. This message allows the application to change the window text of a help window 
  18502. title. 
  18503.  
  18504.  
  18505. param1
  18506.     PSZ    pszHelpWindowTitle  /*  Help window title. */
  18507.  
  18508. param2
  18509.     ULONG  ulReserved          /*  Reserved value, should be 0. */
  18510.  
  18511. returns
  18512.     ULONG  rc                  /*  Return code. */
  18513.  
  18514.  
  18515. ΓòÉΓòÉΓòÉ <hidden> HM_SET_HELP_WINDOW_TITLE Fields - pszHelpWindowTitle ΓòÉΓòÉΓòÉ
  18516.  
  18517.      pszHelpWindowTitle (PSZ) 
  18518.         Help window title. 
  18519.  
  18520.         This points to a string containing the new Help Window title. 
  18521.  
  18522.  
  18523. ΓòÉΓòÉΓòÉ <hidden> HM_SET_HELP_WINDOW_TITLE Fields - ulReserved ΓòÉΓòÉΓòÉ
  18524.  
  18525.      ulReserved (ULONG) 
  18526.         Reserved value, should be 0. 
  18527.  
  18528.  
  18529. ΓòÉΓòÉΓòÉ <hidden> HM_SET_HELP_WINDOW_TITLE Return Value - rc ΓòÉΓòÉΓòÉ
  18530.  
  18531.      rc (ULONG) 
  18532.         Return code. 
  18533.  
  18534.           0 
  18535.              The window title was successfully set. 
  18536.           Other 
  18537.              See the values of the ulErrorCode parameter of the HM_ERROR 
  18538.              message. 
  18539.  
  18540.  
  18541. ΓòÉΓòÉΓòÉ <hidden> HM_SET_HELP_WINDOW_TITLE - Parameters ΓòÉΓòÉΓòÉ
  18542.  
  18543.      pszHelpWindowTitle (PSZ) 
  18544.         Help window title. 
  18545.  
  18546.         This points to a string containing the new Help Window title. 
  18547.  
  18548.      ulReserved (ULONG) 
  18549.         Reserved value, should be 0. 
  18550.  
  18551.      rc (ULONG) 
  18552.         Return code. 
  18553.  
  18554.           0 
  18555.              The window title was successfully set. 
  18556.           Other 
  18557.              See the values of the ulErrorCode parameter of the HM_ERROR 
  18558.              message. 
  18559.  
  18560.  
  18561. ΓòÉΓòÉΓòÉ <hidden> HM_SET_HELP_WINDOW_TITLE - Default Processing ΓòÉΓòÉΓòÉ
  18562.  
  18563. None. 
  18564.  
  18565.  
  18566. ΓòÉΓòÉΓòÉ <hidden> HM_SET_HELP_WINDOW_TITLE - Topics ΓòÉΓòÉΓòÉ
  18567.  
  18568. Select an item: 
  18569.  
  18570. Syntax
  18571. Parameters
  18572. Returns
  18573. Default Processing
  18574.  
  18575.  
  18576. ΓòÉΓòÉΓòÉ 19.28. HM_SET_OBJCOM_WINDOW ΓòÉΓòÉΓòÉ
  18577.  
  18578.  
  18579. ΓòÉΓòÉΓòÉ <hidden> HM_SET_OBJCOM_WINDOW - Syntax ΓòÉΓòÉΓòÉ
  18580.  
  18581. This message is sent to IPF by the application to identify the communication 
  18582. object window to which the HM_INFORM and HM_QUERY_DDF_DATA messages will be 
  18583. sent.  This message is not necessary if the communication object does not 
  18584. expect to receive either of these messages. 
  18585.  
  18586.  
  18587. hwndparam1
  18588.     HWND   objcomhwnd        /*  Handle of the communication object window to be set. */
  18589.  
  18590. param2
  18591.     ULONG  ulReserved        /*  Reserved value, should be 0. */
  18592.  
  18593. returns
  18594.     HWND   hwndprevioushwnd  /*  The handle of the previous communication object window. */
  18595.  
  18596.  
  18597. ΓòÉΓòÉΓòÉ <hidden> HM_SET_OBJCOM_WINDOW Fields - objcomhwnd ΓòÉΓòÉΓòÉ
  18598.  
  18599.      objcomhwnd (HWND) 
  18600.         Handle of the communication object window to be set. 
  18601.  
  18602.  
  18603. ΓòÉΓòÉΓòÉ <hidden> HM_SET_OBJCOM_WINDOW Fields - ulReserved ΓòÉΓòÉΓòÉ
  18604.  
  18605.      ulReserved (ULONG) 
  18606.         Reserved value, should be 0. 
  18607.  
  18608.  
  18609. ΓòÉΓòÉΓòÉ <hidden> HM_SET_OBJCOM_WINDOW Return Value - hwndprevioushwnd ΓòÉΓòÉΓòÉ
  18610.  
  18611.      hwndprevioushwnd (HWND) 
  18612.         The handle of the previous communication object window. 
  18613.  
  18614.  
  18615. ΓòÉΓòÉΓòÉ <hidden> HM_SET_OBJCOM_WINDOW - Parameters ΓòÉΓòÉΓòÉ
  18616.  
  18617.      objcomhwnd (HWND) 
  18618.         Handle of the communication object window to be set. 
  18619.  
  18620.      ulReserved (ULONG) 
  18621.         Reserved value, should be 0. 
  18622.  
  18623.      hwndprevioushwnd (HWND) 
  18624.         The handle of the previous communication object window. 
  18625.  
  18626.  
  18627. ΓòÉΓòÉΓòÉ <hidden> HM_SET_OBJCOM_WINDOW - Remarks ΓòÉΓòÉΓòÉ
  18628.  
  18629. HM_INFORM and HM_QUERY_DDF_DATA messages which are not processed must be passed 
  18630. to the previous communication object window which was returned when 
  18631. HM_SET_OBJECT_WINDOW was sent. 
  18632.  
  18633.  
  18634. ΓòÉΓòÉΓòÉ <hidden> HM_SET_OBJCOM_WINDOW - Default Processing ΓòÉΓòÉΓòÉ
  18635.  
  18636. None. 
  18637.  
  18638.  
  18639. ΓòÉΓòÉΓòÉ <hidden> HM_SET_OBJCOM_WINDOW - Topics ΓòÉΓòÉΓòÉ
  18640.  
  18641. Select an item: 
  18642.  
  18643. Syntax
  18644. Parameters
  18645. Returns
  18646. Remarks
  18647. Default Processing
  18648.  
  18649.  
  18650. ΓòÉΓòÉΓòÉ 19.29. HM_SET_SHOW_PANEL_ID ΓòÉΓòÉΓòÉ
  18651.  
  18652.  
  18653. ΓòÉΓòÉΓòÉ <hidden> HM_SET_SHOW_PANEL_ID - Syntax ΓòÉΓòÉΓòÉ
  18654.  
  18655. This message tells the Help Manager to display, hide, or toggle the window 
  18656. identity for each help window displayed. 
  18657.  
  18658.  
  18659. param1
  18660.     USHORT  fsShowPanelId  /*  The show window identity indicator. */
  18661.  
  18662. param2
  18663.     ULONG   ulReserved     /*  Reserved value, should be 0. */
  18664.  
  18665. rc
  18666.     ULONG   rc             /*  Return code. */
  18667.  
  18668.  
  18669. ΓòÉΓòÉΓòÉ <hidden> HM_SET_SHOW_PANEL_ID Fields - fsShowPanelId ΓòÉΓòÉΓòÉ
  18670.  
  18671.      fsShowPanelId (USHORT) 
  18672.         The show window identity indicator. 
  18673.  
  18674.           CMIC_HIDE_PANEL_ID 
  18675.              Sets the show option off and the window identity is not displayed. 
  18676.  
  18677.           CMIC_SHOW_PANEL_ID 
  18678.              Sets the show option on and the window identity is displayed. 
  18679.  
  18680.           CMIC_TOGGLE_PANEL_ID 
  18681.              Toggles the display of the window identity. 
  18682.  
  18683.  
  18684. ΓòÉΓòÉΓòÉ <hidden> HM_SET_SHOW_PANEL_ID Fields - ulReserved ΓòÉΓòÉΓòÉ
  18685.  
  18686.      ulReserved (ULONG) 
  18687.         Reserved value, should be 0. 
  18688.  
  18689.  
  18690. ΓòÉΓòÉΓòÉ <hidden> HM_SET_SHOW_PANEL_ID Parameter - rc ΓòÉΓòÉΓòÉ
  18691.  
  18692.      rc (ULONG) 
  18693.         Return code. 
  18694.  
  18695.           0 
  18696.              The show window identity indicator was successfully changed. 
  18697.           Other 
  18698.              See the values of the ulErrorCode parameter of the HM_ERROR 
  18699.              message. 
  18700.  
  18701.  
  18702. ΓòÉΓòÉΓòÉ <hidden> HM_SET_SHOW_PANEL_ID - Parameters ΓòÉΓòÉΓòÉ
  18703.  
  18704.      fsShowPanelId (USHORT) 
  18705.         The show window identity indicator. 
  18706.  
  18707.           CMIC_HIDE_PANEL_ID 
  18708.              Sets the show option off and the window identity is not displayed. 
  18709.  
  18710.           CMIC_SHOW_PANEL_ID 
  18711.              Sets the show option on and the window identity is displayed. 
  18712.  
  18713.           CMIC_TOGGLE_PANEL_ID 
  18714.              Toggles the display of the window identity. 
  18715.  
  18716.      ulReserved (ULONG) 
  18717.         Reserved value, should be 0. 
  18718.  
  18719.      rc (ULONG) 
  18720.         Return code. 
  18721.  
  18722.           0 
  18723.              The show window identity indicator was successfully changed. 
  18724.           Other 
  18725.              See the values of the ulErrorCode parameter of the HM_ERROR 
  18726.              message. 
  18727.  
  18728.  
  18729. ΓòÉΓòÉΓòÉ <hidden> HM_SET_SHOW_PANEL_ID - Default Processing ΓòÉΓòÉΓòÉ
  18730.  
  18731. None. 
  18732.  
  18733.  
  18734. ΓòÉΓòÉΓòÉ <hidden> HM_SET_SHOW_PANEL_ID - Topics ΓòÉΓòÉΓòÉ
  18735.  
  18736. Select an item: 
  18737.  
  18738. Syntax
  18739. Parameters
  18740. Default Processing
  18741.  
  18742.  
  18743. ΓòÉΓòÉΓòÉ 19.30. HM_SET_USERDATA ΓòÉΓòÉΓòÉ
  18744.  
  18745.  
  18746. ΓòÉΓòÉΓòÉ <hidden> HM_SET_USERDATA - Syntax ΓòÉΓòÉΓòÉ
  18747.  
  18748. The application sends this message to IPF to store data in the IPF data area. 
  18749.  
  18750.  
  18751. param1
  18752.     ULONG  ulReserved  /*  Reserved value, should be 0. */
  18753.  
  18754. param2
  18755.     VOID   usrdata     /*  4-byte user data area. */
  18756.  
  18757. rc
  18758.     ULONG  rc          /*  Return code. */
  18759.  
  18760.  
  18761. ΓòÉΓòÉΓòÉ <hidden> HM_SET_USERDATA Fields - ulReserved ΓòÉΓòÉΓòÉ
  18762.  
  18763.      ulReserved (ULONG) 
  18764.         Reserved value, should be 0. 
  18765.  
  18766.  
  18767. ΓòÉΓòÉΓòÉ <hidden> HM_SET_USERDATA Fields - usrdata ΓòÉΓòÉΓòÉ
  18768.  
  18769.      usrdata (VOID) 
  18770.         4-byte user data area. 
  18771.  
  18772.  
  18773. ΓòÉΓòÉΓòÉ <hidden> HM_SET_USERDATA Parameter - rc ΓòÉΓòÉΓòÉ
  18774.  
  18775.      rc (ULONG) 
  18776.         Return code. 
  18777.  
  18778.           TRUE 
  18779.              The user data was successfully stored. 
  18780.           FALSE 
  18781.              The call failed. 
  18782.  
  18783.  
  18784. ΓòÉΓòÉΓòÉ <hidden> HM_SET_USERDATA - Parameters ΓòÉΓòÉΓòÉ
  18785.  
  18786.      ulReserved (ULONG) 
  18787.         Reserved value, should be 0. 
  18788.  
  18789.      usrdata (VOID) 
  18790.         4-byte user data area. 
  18791.  
  18792.      rc (ULONG) 
  18793.         Return code. 
  18794.  
  18795.           TRUE 
  18796.              The user data was successfully stored. 
  18797.           FALSE 
  18798.              The call failed. 
  18799.  
  18800.  
  18801. ΓòÉΓòÉΓòÉ <hidden> HM_SET_USERDATA - Default Processing ΓòÉΓòÉΓòÉ
  18802.  
  18803. None. 
  18804.  
  18805.  
  18806. ΓòÉΓòÉΓòÉ <hidden> HM_SET_USERDATA - Topics ΓòÉΓòÉΓòÉ
  18807.  
  18808. Select an item: 
  18809.  
  18810. Syntax
  18811. Parameters
  18812. Default Processing
  18813.  
  18814.  
  18815. ΓòÉΓòÉΓòÉ 19.31. HM_TUTORIAL ΓòÉΓòÉΓòÉ
  18816.  
  18817.  
  18818. ΓòÉΓòÉΓòÉ <hidden> HM_TUTORIAL - Syntax ΓòÉΓòÉΓòÉ
  18819.  
  18820. The Help Manager sends this message to the application window when the user 
  18821. selects the Tutorial choice from a help window. 
  18822.  
  18823.  
  18824. param1
  18825.     PSZ    pszTutorialName  /*  Default tutorial name. */
  18826.  
  18827. param2
  18828.     ULONG  ulReserved       /*  Reserved value, should be 0. */
  18829.  
  18830. returns
  18831.     ULONG  ulReserved       /*  Reserved value, should be 0. */
  18832.  
  18833.  
  18834. ΓòÉΓòÉΓòÉ <hidden> HM_TUTORIAL Fields - pszTutorialName ΓòÉΓòÉΓòÉ
  18835.  
  18836.      pszTutorialName (PSZ) 
  18837.         Default tutorial name. 
  18838.  
  18839.         This points to a string that contains the name of the default tutorial 
  18840.         program specified in the Help Manager initialization structure. A 
  18841.         tutorial name specified in the help window definition overrides this 
  18842.         default tutorial program. 
  18843.  
  18844.  
  18845. ΓòÉΓòÉΓòÉ <hidden> HM_TUTORIAL Fields - ulReserved ΓòÉΓòÉΓòÉ
  18846.  
  18847.      ulReserved (ULONG) 
  18848.         Reserved value, should be 0. 
  18849.  
  18850.  
  18851. ΓòÉΓòÉΓòÉ <hidden> HM_TUTORIAL Return Value - ulReserved ΓòÉΓòÉΓòÉ
  18852.  
  18853.      ulReserved (ULONG) 
  18854.         Reserved value, should be 0. 
  18855.  
  18856.  
  18857. ΓòÉΓòÉΓòÉ <hidden> HM_TUTORIAL - Parameters ΓòÉΓòÉΓòÉ
  18858.  
  18859.      pszTutorialName (PSZ) 
  18860.         Default tutorial name. 
  18861.  
  18862.         This points to a string that contains the name of the default tutorial 
  18863.         program specified in the Help Manager initialization structure. A 
  18864.         tutorial name specified in the help window definition overrides this 
  18865.         default tutorial program. 
  18866.  
  18867.      ulReserved (ULONG) 
  18868.         Reserved value, should be 0. 
  18869.  
  18870.      ulReserved (ULONG) 
  18871.         Reserved value, should be 0. 
  18872.  
  18873.  
  18874. ΓòÉΓòÉΓòÉ <hidden> HM_TUTORIAL - Remarks ΓòÉΓòÉΓòÉ
  18875.  
  18876. The application then calls its own tutorial program. 
  18877.  
  18878.  
  18879. ΓòÉΓòÉΓòÉ <hidden> HM_TUTORIAL - Default Processing ΓòÉΓòÉΓòÉ
  18880.  
  18881. None. 
  18882.  
  18883.  
  18884. ΓòÉΓòÉΓòÉ <hidden> HM_TUTORIAL - Topics ΓòÉΓòÉΓòÉ
  18885.  
  18886. Select an item: 
  18887.  
  18888. Syntax
  18889. Parameters
  18890. Returns
  18891. Remarks
  18892. Default Processing
  18893.  
  18894.  
  18895. ΓòÉΓòÉΓòÉ 19.32. HM_UPDATE_OBJCOM_WINDOW_CHAIN ΓòÉΓòÉΓòÉ
  18896.  
  18897.  
  18898. ΓòÉΓòÉΓòÉ <hidden> HM_UPDATE_OBJCOM_WINDOW_CHAIN - Syntax ΓòÉΓòÉΓòÉ
  18899.  
  18900. This message is sent to the currently active communication object by the 
  18901. communication object who wants to withdraw from the communication chain. 
  18902.  
  18903.  
  18904. param1
  18905.     HWND   hwnd        /*  The handle of the object to be withdrawn from the communication chain. */
  18906.  
  18907. param2
  18908.     HWND   hwnd        /*  Window containing the handle of the object to be replaced. */
  18909.  
  18910. returns
  18911.     ULONG  ulReserved  /*  Reserved value, should be 0. */
  18912.  
  18913.  
  18914. ΓòÉΓòÉΓòÉ <hidden> HM_UPDATE_OBJCOM_WINDOW_CHAIN Fields - hwnd ΓòÉΓòÉΓòÉ
  18915.  
  18916.      hwnd (HWND) 
  18917.         The handle of the object to be withdrawn from the communication chain. 
  18918.  
  18919.  
  18920. ΓòÉΓòÉΓòÉ <hidden> HM_UPDATE_OBJCOM_WINDOW_CHAIN Fields - hwnd ΓòÉΓòÉΓòÉ
  18921.  
  18922.      hwnd (HWND) 
  18923.         Window containing the handle of the object to be replaced. 
  18924.  
  18925.  
  18926. ΓòÉΓòÉΓòÉ <hidden> HM_UPDATE_OBJCOM_WINDOW_CHAIN Return Value - ulReserved ΓòÉΓòÉΓòÉ
  18927.  
  18928.      ulReserved (ULONG) 
  18929.         Reserved value, should be 0. 
  18930.  
  18931.  
  18932. ΓòÉΓòÉΓòÉ <hidden> HM_UPDATE_OBJCOM_WINDOW_CHAIN - Parameters ΓòÉΓòÉΓòÉ
  18933.  
  18934.      hwnd (HWND) 
  18935.         The handle of the object to be withdrawn from the communication chain. 
  18936.  
  18937.      hwnd (HWND) 
  18938.         Window containing the handle of the object to be replaced. 
  18939.  
  18940.      ulReserved (ULONG) 
  18941.         Reserved value, should be 0. 
  18942.  
  18943.  
  18944. ΓòÉΓòÉΓòÉ <hidden> HM_UPDATE_OBJCOM_WINDOW_CHAIN - Remarks ΓòÉΓòÉΓòÉ
  18945.  
  18946. The object that receives this message should check to see if the object handle 
  18947. returned from HM_SET_OBJCOM_WINDOW is equal to the handle in param1. If the 
  18948. handle is equal, then the handle in param1 should be replaced by the handle in 
  18949. param2. If the handle is not equal and the handle previously received is not 
  18950. NULL HANDLE, then send HM_UPDATE_OBJCOM_WINDOW_CHAIN to that object. 
  18951.  
  18952.  
  18953. ΓòÉΓòÉΓòÉ <hidden> HM_UPDATE_OBJCOM_WINDOW_CHAIN - Default Processing ΓòÉΓòÉΓòÉ
  18954.  
  18955. None. 
  18956.  
  18957.  
  18958. ΓòÉΓòÉΓòÉ <hidden> HM_UPDATE_OBJCOM_WINDOW_CHAIN - Topics ΓòÉΓòÉΓòÉ
  18959.  
  18960. Select an item: 
  18961.  
  18962. Syntax
  18963. Parameters
  18964. Returns
  18965. Remarks
  18966. Default Processing
  18967.  
  18968.  
  18969. ΓòÉΓòÉΓòÉ 20. Glossary ΓòÉΓòÉΓòÉ
  18970.  
  18971. This glossary defines many of the terms used in this book. It includes terms 
  18972. and definitions from the IBM Dictionary of Computing, as well as terms specific 
  18973. to the OS/2 operating system and the Presentation Manager. It is not a complete 
  18974. glossary for the entire OS/2 operating system; nor is it a complete dictionary 
  18975. of computer terms. 
  18976.  
  18977. Other primary sources for these definitions are: 
  18978.  
  18979.        o  The American National Standard Dictionary for Information Systems, 
  18980.           ANSI X3.172-1990, copyrighted 1990 by the American National Standards 
  18981.           Institute, 11 West 42nd Street, New York, New York 10036. These 
  18982.           definitions are identified by the symbol (A) after the definition. 
  18983.  
  18984.        o  The Information Technology Vocabulary, developed by Subcommittee 1, 
  18985.           Joint Technical Committee 1, of the International Organization for 
  18986.           Standardization and the International Electrotechnical Commission 
  18987.           (ISO/IEC JTC1/SC1). Definitions of published parts of this vocabulary 
  18988.           are identified by the symbol (I) after the definition; definitions 
  18989.           taken from draft international standards, committee drafts, and 
  18990.           working papers being developed by ISO/IEC JTC1/SC1 are identified by 
  18991.           the symbol (T) after the definition, indicating that final agreement 
  18992.           has not yet been reached among the participating National Bodies of 
  18993.           SC1. 
  18994.  
  18995.  
  18996. ΓòÉΓòÉΓòÉ 20.1. Glossary Listing ΓòÉΓòÉΓòÉ
  18997.  
  18998. Select a starting letter of glossary terms: 
  18999.  
  19000.      A    N 
  19001.      B    O 
  19002.      C    P 
  19003.      D    Q 
  19004.      E    R 
  19005.      F    S 
  19006.      G    T 
  19007.      H    U 
  19008.      I    V 
  19009.      J    W 
  19010.      K    X 
  19011.      L    Y 
  19012.      M    Z 
  19013.  
  19014.  
  19015. ΓòÉΓòÉΓòÉ <hidden> Glossary - A ΓòÉΓòÉΓòÉ
  19016.  
  19017.      accelerator  - In SAA Common User Access architecture, a key or 
  19018.        combination of keys that invokes an application-defined function. 
  19019.  
  19020.      accelerator table  - A table used to define which key strokes are treated 
  19021.        as accelerators and the commands they are translated into. 
  19022.  
  19023.      access mode  - The manner in which an application gains access to a file 
  19024.        it has opened. Examples of access modes are read-only, write-only, and 
  19025.        read/write. 
  19026.  
  19027.      access permission  - All access rights that a user has regarding an 
  19028.        object. (I)
  19029.  
  19030.      action  - One of a set of defined tasks that a computer performs. Users 
  19031.        request the application to perform an action in several ways, such as 
  19032.        typing a command, pressing a function key, or selecting the action name 
  19033.        from an action bar or menu. 
  19034.  
  19035.      action bar  - In SAA Common User Access architecture, the area at the top 
  19036.        of a window that contains choices that give a user access to actions 
  19037.        available in that window. 
  19038.  
  19039.      action point  - The current position on the screen at which the pointer is 
  19040.        pointing. Contrast with hot spot and input focus. 
  19041.  
  19042.      active program  - A program currently running on the computer.  An active 
  19043.        program can be interactive (running and receiving input from the user) 
  19044.        or noninteractive (running but not receiving input from the user). See 
  19045.        also interactive program and noninteractive program. 
  19046.  
  19047.      active window  - The window with which the user is currently interacting. 
  19048.  
  19049.      address space  - (1) The range of addresses available to a 
  19050.        program. (A)  (2) The area of virtual storage available for a particular 
  19051.        job. 
  19052.  
  19053.      alphanumeric video output  - Output to the logical video buffer when the 
  19054.        video adapter is in text mode and the logical video buffer is addressed 
  19055.        by an application as a rectangular array of character cells. 
  19056.  
  19057.      American National Standard Code for Information Interchange  - The 
  19058.        standard code, using a coded character set consisting of 7-bit coded 
  19059.        characters (8 bits including parity check), that is used for information 
  19060.        interchange among data processing systems, data communication systems, 
  19061.        and associated equipment. The ASCII set consists of control characters 
  19062.        and graphic characters. (A) 
  19063.  
  19064.        Note:  IBM has defined an extension to ASCII code (characters 128-255). 
  19065.  
  19066.      anchor  - A window procedure that handles Presentation Manager* message 
  19067.        conversions between an icon procedure and an application. 
  19068.  
  19069.      anchor block  - An area of Presentation-Manager-internal resources to 
  19070.        allocated process or thread that calls WinInitialize. 
  19071.  
  19072.      anchor point  - A point in a window used by a program designer or by a 
  19073.        window manager to position a subsequently appearing window. 
  19074.  
  19075.      ANSI  - American National Standards Institute. 
  19076.  
  19077.      APA  - All points addressable. 
  19078.  
  19079.      API  - Application programming interface. 
  19080.  
  19081.      application  - A collection of software components used to perform 
  19082.        specific types of work on a computer; for example, a payroll 
  19083.        application, an airline reservation application, a network application. 
  19084.  
  19085.      application object  - In SAA Advanced Common User Access architecture, a 
  19086.        form that an application provides for a user; for example, a spreadsheet 
  19087.        form. Contrast with user object. 
  19088.  
  19089.      application programming interface (API)  - A functional interface supplied 
  19090.        by the operating system or by a separately orderable licensed program 
  19091.        that allows an application program written in a high-level language to 
  19092.        use specific data or functions of the operating system or the licensed 
  19093.        program. 
  19094.  
  19095.      application-modal  - Pertaining to a message box or dialog box for which 
  19096.        processing must be completed before further interaction with any other 
  19097.        window owned by the same application may take place. 
  19098.  
  19099.      area  - In computer graphics, a filled shape such as a solid rectangle. 
  19100.  
  19101.      ASCII  - American National Standard Code for Information Interchange. 
  19102.  
  19103.      ASCIIZ  - A string of ASCII characters that is terminated with a byte 
  19104.        containing the value 0. 
  19105.  
  19106.      aspect ratio  - In computer graphics, the width-to-height ratio of an 
  19107.        area, symbol, or shape. 
  19108.  
  19109.      asynchronous (ASYNC)  - (1) Pertaining to two or more processes that do 
  19110.        not depend upon the occurrence of specific events such as common timing 
  19111.        signals. (T)  (2) Without regular time relationship;  unexpected or 
  19112.        unpredictable with respect to the execution of program instructions. See 
  19113.        also synchronous. 
  19114.  
  19115.      atom  - A constant that represents a string. As soon as a string has been 
  19116.        defined as an atom, the atom can be used in place of the string to save 
  19117.        space. Strings are associated with their respective atoms in an atom 
  19118.        table. See also integer atom. 
  19119.  
  19120.      atom table  - A table used to relate atoms with the strings that they 
  19121.        represent. Also in the table is the mechanism by which the presence of a 
  19122.        string can be checked. 
  19123.  
  19124.      atomic operation  - An operation that completes its work on an object 
  19125.        before another operation can be performed on the same object. 
  19126.  
  19127.      attribute  - A characteristic or property that can be controlled, usually 
  19128.        to obtain a required appearance;  for example, the color of a line. See 
  19129.        also graphics attributes and segment attributes. 
  19130.  
  19131.      automatic link  - In Information Presentation Facility (IPF), a link that 
  19132.        begins a chain reaction at the primary window. When the user selects the 
  19133.        primary window, an automatic link is activated to display secondary 
  19134.        windows. 
  19135.  
  19136.      AVIO  - Advanced Video Input/Output. 
  19137.  
  19138.  
  19139. ΓòÉΓòÉΓòÉ <hidden> Glossary - B ΓòÉΓòÉΓòÉ
  19140.  
  19141.      B╨Æzier curve  - (1) A mathematical technique of specifying smooth 
  19142.        continous lines and surfaces, which require a starting point and a 
  19143.        finishing point with several intermediate points that influence or 
  19144.        control the path of the linking curve. Named after Dr. P. B╨Æzier. (2) (D 
  19145.        of C) In the AIX Graphics Library, a cubic spline approximation to a set 
  19146.        of four control points that passes through the first and fourth control 
  19147.        points and that has a continuous slope where two spline segments meet. 
  19148.        Named after Dr. P. B╨Æzier. 
  19149.  
  19150.      background  - (1) In multiprogramming, the conditions under which 
  19151.        low-priority programs are executed. Contrast with foreground. (2) An 
  19152.        active session that is not currently displayed on the screen. 
  19153.  
  19154.      background color  - The color in which the background of a graphic 
  19155.        primitive is drawn. 
  19156.  
  19157.      background mix  - An attribute that determines how the background of a 
  19158.        graphic primitive is combined with the existing color of the graphics 
  19159.        presentation space. Contrast with mix. 
  19160.  
  19161.      background program  - In multiprogramming, a program that executes with a 
  19162.        low priority. Contrast with foreground program. 
  19163.  
  19164.      bit map  - A representation in memory of the data displayed on an APA 
  19165.        device, usually the screen. 
  19166.  
  19167.      block  - (1) A string of data elements recorded or transmitted as a unit. 
  19168.        The elements may be characters, words, or logical records. (T)  (2) To 
  19169.        record data in a block. (3) A collection of contiguous records recorded 
  19170.        as a unit. Blocks are separated by interblock gaps and each block may 
  19171.        contain one or more records. (A)
  19172.  
  19173.      block device  - A storage device that performs I/O operations on blocks of 
  19174.        data called sectors. Data on block devices can be randomly accessed. 
  19175.        Block devices are designated by a drive letter (for example, C:). 
  19176.  
  19177.      blocking mode  - A condition set by an application that determines when 
  19178.        its threads might block. For example, an application might set the 
  19179.        Pipemode parameter for the DosCreateNPipe function so that its threads 
  19180.        perform I/O operations to the named pipe block when no data is 
  19181.        available. 
  19182.  
  19183.      border  - A visual indication (for example, a separator line or a 
  19184.        background color) of the boundaries of a window. 
  19185.  
  19186.      boundary determination  - An operation used to compute the size of the 
  19187.        smallest rectangle that encloses a graphics object on the screen. 
  19188.  
  19189.      breakpoint  - (1) A point in a computer program where execution may be 
  19190.        halted. A breakpoint is usually at the beginning of an instruction where 
  19191.        halts, caused by external intervention, are convenient for resuming 
  19192.        execution. (T)  (2) A place in a program, specified by a command or a 
  19193.        condition, where the system halts execution and gives control to the 
  19194.        workstation user or to a specified program. 
  19195.  
  19196.      broken pipe  - When all of the handles that access one end of a pipe have 
  19197.        been closed. 
  19198.  
  19199.      bucket  - One or more fields in which the result of an operation is kept. 
  19200.  
  19201.      buffer  - (1) A portion of storage used to hold input or output data 
  19202.        temporarily. (2) To allocate and schedule the use of buffers. (A)
  19203.  
  19204.      button  - A mechanism used to request or initiate an action. See also 
  19205.        barrel buttons, bezel buttons, mouse button, push button, and radio 
  19206.        button. 
  19207.  
  19208.      byte pipe  - Pipes that handle data as byte streams. All unnamed pipes are 
  19209.        byte pipes. Named pipes can be byte pipes or message pipes. See byte 
  19210.        stream. 
  19211.  
  19212.      byte stream  - Data that consists of an unbroken stream of bytes. 
  19213.  
  19214.  
  19215. ΓòÉΓòÉΓòÉ <hidden> Glossary - C ΓòÉΓòÉΓòÉ
  19216.  
  19217.      cache  - A high-speed buffer storage that contains frequently accessed 
  19218.        instructions and data; it is used to reduce access time. 
  19219.  
  19220.      cached micro presentation space  - A presentation space from a 
  19221.        Presentation-Manager-owned store of micro presentation spaces. It can be 
  19222.        used for drawing to a window only, and must be returned to the store 
  19223.        when the task is complete. 
  19224.  
  19225.      CAD  - Computer-Aided Design. 
  19226.  
  19227.      call  - (1) The action of bringing a computer program, a routine, or a 
  19228.        subroutine into effect, usually by specifying the entry conditions and 
  19229.        jumping to an entry point. (I)  (A)  (2) To transfer control to a 
  19230.        procedure, program, routine, or subroutine. 
  19231.  
  19232.      calling sequence  - A sequence of instructions together with any 
  19233.        associated data necessary to execute a call. (T)
  19234.  
  19235.      Cancel  - An action that removes the current window or menu without 
  19236.        processing it, and returns the previous window. 
  19237.  
  19238.      cascaded menu  - In the OS/2 operating system, a menu that appears when 
  19239.        the arrow to the right of a cascading choice is selected. It contains a 
  19240.        set of choices that are related to the cascading choice. Cascaded menus 
  19241.        are used to reduce the length of a menu. See also cascading choice. 
  19242.  
  19243.      cascading choice  - In SAA Common User Access architecture, a choice in a 
  19244.        menu that, when selected, produces a cascaded menu containing other 
  19245.        choices.  An arrow () appears to the right of the cascading choice. 
  19246.  
  19247.      CASE statement  - In PM programming, provides the body of a window 
  19248.        procedure. There is usually one CASE statement for each message type 
  19249.        supported by an application. 
  19250.  
  19251.      CGA  - Color graphics adapter. 
  19252.  
  19253.      chained list  - A list in which the data elements may be dispersed but in 
  19254.        which each data element contains information for locating the 
  19255.        next. (T)Synonymous with linked list. 
  19256.  
  19257.      character  - A letter, digit, or other symbol. 
  19258.  
  19259.      character box  - In computer graphics, the boundary that defines, in world 
  19260.        coordinates, the horizontal and vertical space occupied by a single 
  19261.        character from a character set. See also character mode. Contrast with 
  19262.        character cell. 
  19263.  
  19264.      character cell  - The physical, rectangular space in which any single 
  19265.        character is displayed on a screen or printer device. Position is 
  19266.        addressed by row and column coordinates. Contrast with character box. 
  19267.  
  19268.      character code  - The means of addressing a character in a character set, 
  19269.        sometimes called code point. 
  19270.  
  19271.      character device  - A device that performs I/O operations on one character 
  19272.        at a time. Because character devices view data as a stream of bytes, 
  19273.        character-device data cannot be randomly accessed. Character devices 
  19274.        include the keyboard, mouse, and printer, and are referred to by name. 
  19275.  
  19276.      character mode  - A mode that, in conjunction with the font type, 
  19277.        determines the extent to which graphics characters are affected by the 
  19278.        character box, shear, and angle attributes. 
  19279.  
  19280.      character set  - (1) An ordered set of unique representations called 
  19281.        characters; for example, the 26 letters of English alphabet, Boolean 0 
  19282.        and 1, the set of symbols in the Morse code, and the 128 ASCII 
  19283.        characters. (A)  (2) All the valid characters for a programming language 
  19284.        or for a computer system. (3) A group of characters used for a specific 
  19285.        reason; for example, the set of characters a printer can print. 
  19286.  
  19287.      check box  - In SAA Advanced Common User Access architecture, a square box 
  19288.        with associated text that represents a choice. When a user selects a 
  19289.        choice, an X appears in the check box to indicate that the choice is in 
  19290.        effect. The user can clear the check box by selecting the choice again. 
  19291.        Contrast with radio button. 
  19292.  
  19293.      check mark  -  (1) (D of C) In SAA Advanced Common User Access 
  19294.        architecture, a symbol that shows that a choice is currently in effect. 
  19295.        (2) The symbol that is used to indicate a selected item on a pull-down 
  19296.        menu. 
  19297.  
  19298.      child process  - In the OS/2 operating system, a process started by 
  19299.        another process, which is called the parent process. Contrast with 
  19300.        parent process. 
  19301.  
  19302.      child window  - A window that appears within the border of its parent 
  19303.        window (either a primary window or another child window). When the 
  19304.        parent window is resized, moved, or destroyed, the child window also is 
  19305.        resized, moved, or destroyed; however, the child window can be moved or 
  19306.        resized independently from the parent window, within the boundaries of 
  19307.        the parent window. Contrast with parent window. 
  19308.  
  19309.      choice  - (1) An option that can be selected. The choice can be presented 
  19310.        as text, as a symbol (number or letter), or as an icon (a pictorial 
  19311.        symbol). (2) (D of C) In SAA Common User Access architecture, an item 
  19312.        that a user can select. 
  19313.  
  19314.      chord  - (1) To press more than one button on a pointing device while the 
  19315.        pointer is within the limits that the user has specified for the 
  19316.        operating environment. (2) (D of C) In graphics, a short line segment 
  19317.        whose end points lie on a circle. Chords are a means for producing a 
  19318.        circular image from straight lines. The higher the number of chords per 
  19319.        circle, the smoother the circular image. 
  19320.  
  19321.      class  - In object-oriented design or programming, a group of objects that 
  19322.        share a common definition and that therefore share common properties, 
  19323.        operations, and behavior. Members of the group are called instances of 
  19324.        the class. 
  19325.  
  19326.      class method  - In System Object Model, an action that can be performed on 
  19327.        a class object. Synonymous with factory method. 
  19328.  
  19329.      class object  - In System Object Model, the run-time implementation of a 
  19330.        class. 
  19331.  
  19332.      class style  - The set of properties that apply to every window in a 
  19333.        window class. 
  19334.  
  19335.      client  - (1) A functional unit that receives shared services from a 
  19336.        server. (T)  (2) A user, as in a client process that uses a named pipe 
  19337.        or queue that is created and owned by a server process. 
  19338.  
  19339.      client area  - The part of the window, inside the border, that is below 
  19340.        the menu bar. It is the user's work space, where a user types 
  19341.        information and selects choices from selection fields.  In primary 
  19342.        windows, it is where an application programmer presents the objects that 
  19343.        a user works on. 
  19344.  
  19345.      client program  - An application that creates and manipulates instances of 
  19346.        classes. 
  19347.  
  19348.      client window  - The window in which the application displays output and 
  19349.        receives input. This window is located inside the frame window, under 
  19350.        the window title bar and any menu bar, and within any scroll bars. 
  19351.  
  19352.      clip limits  - The area of the paper that can be reached by a printer or 
  19353.        plotter. 
  19354.  
  19355.      clipboard  - In SAA Common User Access architecture, an area of computer 
  19356.        memory, or storage, that temporarily holds data. Data in the clipboard 
  19357.        is available to other applications. 
  19358.  
  19359.      clipping  - In computer graphics, removing those parts of a display image 
  19360.        that lie outside a given boundary. (I)  (A)
  19361.  
  19362.      clipping area  - The area in which the window can paint. 
  19363.  
  19364.      clipping path  - A clipping boundary in world-coordinate space. 
  19365.  
  19366.      clock tick  - The minimum unit of time that the system tracks. If the 
  19367.        system timer currently counts at a rate of X Hz, the system tracks the 
  19368.        time every 1/X of a second. Also known as time tick. 
  19369.  
  19370.      CLOCK$  - Character-device name reserved for the system clock. 
  19371.  
  19372.      code page  - An assignment of graphic characters and control-function 
  19373.        meanings to all code points. 
  19374.  
  19375.      code point  - (1) Synonym for character code. (2) (D of C) A 1-byte code 
  19376.        representing one of 256 potential characters. 
  19377.  
  19378.      code segment  - An executable section of programming code within a load 
  19379.        module. 
  19380.  
  19381.      color dithering  - See dithering. 
  19382.  
  19383.      color graphics adapter (CGA)  - An adapter that simultaneously provides 
  19384.        four colors and is supported by all IBM Personal Computer and Personal 
  19385.        System/2 models. 
  19386.  
  19387.      command  - The name and parameters associated with an action that a 
  19388.        program can perform. 
  19389.  
  19390.      command area  - An area composed of a command field prompt and a command 
  19391.        entry field. 
  19392.  
  19393.      command entry field  - An entry field in which users type commands. 
  19394.  
  19395.      command line  - On a display screen, a display line, sometimes at the 
  19396.        bottom of the screen, in which only commands can be entered. 
  19397.  
  19398.      command mode  - A state of a system or device in which the user can enter 
  19399.        commands. 
  19400.  
  19401.      command prompt  - A field prompt showing the location of the command entry 
  19402.        field in a panel. 
  19403.  
  19404.      Common Programming Interface (CPI)  - Definitions of those application 
  19405.        development languages and services that have, or are intended to have, 
  19406.        implementations on and a high degree of commonality across the SAA 
  19407.        environments. One of the three SAA architectural areas. See also Common 
  19408.        User Access architecture. 
  19409.  
  19410.      Common User Access (CUA) architecture  -  Guidelines for the dialog 
  19411.        between a human and a workstation or terminal. One of the three SAA 
  19412.        architectural areas. See also Common Programming Interface. 
  19413.  
  19414.      compile  - To translate a program written in a higher-level programming 
  19415.        language into a machine language program. 
  19416.  
  19417.      composite window  - A window composed of other windows (such as a frame 
  19418.        window, frame-control windows, and a client window) that are kept 
  19419.        together as a unit and that interact with each other. 
  19420.  
  19421.      computer-aided design (CAD)  - The use of a computer to design or change a 
  19422.        product, tool, or machine, such as using a computer for drafting or 
  19423.        illustrating. 
  19424.  
  19425.      COM1, COM2, COM3  - Character-device names reserved for serial ports 1 
  19426.        through 3. 
  19427.  
  19428.      CON  - Character-device name reserved for the console keyboard and screen. 
  19429.  
  19430.      conditional cascaded menu  - A pull-down menu associated with a menu item 
  19431.        that has a cascade mini-push button beside it in an object's pop-up 
  19432.        menu. The conditional cascaded menu is displayed when the user selects 
  19433.        the mini-push button. 
  19434.  
  19435.      container  - In SAA Common User Access architecture, an object that holds 
  19436.        other objects. A folder is an example of a container object. See also 
  19437.        folder and object. 
  19438.  
  19439.      contextual help  - In SAA Common User Access Architecture, help that gives 
  19440.        specific information about the item the cursor is on. The help is 
  19441.        contextual because it provides information about a specific item as it 
  19442.        is currently being used. Contrast with extended help. 
  19443.  
  19444.      contiguous  - Touching or joining at a common edge or boundary, for 
  19445.        example, an unbroken consecutive series of storage locations. 
  19446.  
  19447.      control  - In SAA Advanced Common User Access architecture, a component of 
  19448.        the user interface that allows a user to select choices or type 
  19449.        information; for example, a check box, an entry field, a radio button. 
  19450.  
  19451.      control area  - A storage area used by a computer program to hold control information. (I)  (A)
  19452.  
  19453.      Control Panel  - In the Presentation Manager, a program used to set up 
  19454.        user preferences that act globally across the system. 
  19455.  
  19456.      Control Program  - (1) The basic functions of the operating system, 
  19457.        including DOS emulation and the support for keyboard, mouse, and video 
  19458.        input/output. (2) A computer program designed to schedule and to 
  19459.        supervise the execution of programs of a computer system. (I)  (A)
  19460.  
  19461.      control window  - A window that is used as part of a composite window to 
  19462.        perform simple input and output tasks. Radio buttons and check boxes are 
  19463.        examples. 
  19464.  
  19465.      control word  - An instruction within a document that identifies its parts 
  19466.        or indicates how to format the document. 
  19467.  
  19468.      coordinate space  - A two-dimensional set of points used to generate 
  19469.        output on a video display of printer. 
  19470.  
  19471.      Copy  - A choice that places onto the clipboard, a copy of what the user 
  19472.        has selected. See also Cut and Paste. 
  19473.  
  19474.      correlation  - The action of determining which element or object within a 
  19475.        picture is at a given position on the display. This follows a pick 
  19476.        operation. 
  19477.  
  19478.      coverpage window  - A window in which the application's help information 
  19479.        is displayed. 
  19480.  
  19481.      CPI  - Common Programming Interface. 
  19482.  
  19483.      critical extended attribute  - An extended attribute that is necessary for 
  19484.        the correct operation of the system or a particular application. 
  19485.  
  19486.      critical section  - (1) In programming languages, a part of an 
  19487.        asynchronous procedure that cannot be executed simultaneously with a 
  19488.        certain part of another asynchronous procedure. (I)
  19489.  
  19490.        Note:  Part of the other asynchronous procedure also is a critical 
  19491.        section. (2) A section of code that is not reentrant; that is, code that 
  19492.        can be executed by only one thread at a time. 
  19493.  
  19494.      CUA architecture  - Common User Access architecture. 
  19495.  
  19496.      current position  - In computer graphics, the position, in user 
  19497.        coordinates, that becomes the starting point for the next graphics 
  19498.        routine, if that routine does not explicitly specify a starting point. 
  19499.  
  19500.      cursor  - A symbol displayed on the screen and associated with an input 
  19501.        device. The cursor indicates where input from the device will be placed. 
  19502.        Types of cursors include text cursors, graphics cursors, and selection 
  19503.        cursors. Contrast with pointer and input focus. 
  19504.  
  19505.      Cut  - In SAA Common User Access architecture, a choice that removes a 
  19506.        selected object, or a part of an object, to the clipboard, usually 
  19507.        compressing the space it occupied in a window. See also Copy and Paste. 
  19508.  
  19509.  
  19510. ΓòÉΓòÉΓòÉ <hidden> Glossary - D ΓòÉΓòÉΓòÉ
  19511.  
  19512.      daisy chain  - A method of device interconnection for determining 
  19513.        interrupt priority by connecting the interrupt sources serially. 
  19514.  
  19515.      data segment  - A nonexecutable section of a program module; that is, a 
  19516.        section of a program that contains data definitions. 
  19517.  
  19518.      data structure  - The syntactic structure of symbolic expressions and 
  19519.        their storage-allocation characteristics. (T)
  19520.  
  19521.      data transfer  - The movement of data from one object to another by way of 
  19522.        the clipboard or by direct manipulation. 
  19523.  
  19524.      DBCS  - Double-byte character set. 
  19525.  
  19526.      DDE  - Dynamic data exchange. 
  19527.  
  19528.      deadlock  - (1) Unresolved contention for the use of a resource. (2) An 
  19529.        error condition in which processing cannot continue because each of two 
  19530.        elements of the process is waiting for an action by, or a response from, 
  19531.        the other. (3) An impasse that occurs when multiple processes are 
  19532.        waiting for the availability of a resource that will not become 
  19533.        available because it is being held by another process that is in a 
  19534.        similar wait state. 
  19535.  
  19536.      debug  - To detect, diagnose, and eliminate errors in programs. (T)
  19537.  
  19538.      decipoint  - In printing, one tenth of a point.  There are 72 points in an 
  19539.        inch. 
  19540.  
  19541.      default procedure  - A function provided by the Presentation Manager 
  19542.        Interface that may be used to process standard messages from dialogs or 
  19543.        windows. 
  19544.  
  19545.      default value  - A value assumed when no value has been specified. 
  19546.        Synonymous with assumed value. For example, in the graphics programming 
  19547.        interface, the default line-type is `solid'. 
  19548.  
  19549.      definition list  - A type of list that pairs a term and its description. 
  19550.  
  19551.      delta  - An application-defined threshold, or number of container items, 
  19552.        from either end of the list. 
  19553.  
  19554.      descendant  - See child process. 
  19555.  
  19556.      descriptive text  - Text used in addition to a field prompt to give more 
  19557.        information about a field. 
  19558.  
  19559.      Deselect all  - A choice that cancels the selection of all of the objects 
  19560.        that have been selected in that window. 
  19561.  
  19562.      Desktop Manager  - In the Presentation Manager, a window that displays a 
  19563.        list of groups of programs, each of which can be started or stopped. 
  19564.  
  19565.      desktop window  - The window, corresponding to the physical device, 
  19566.        against which all other types of windows are established. 
  19567.  
  19568.      detached process  - A background process that runs independent of the 
  19569.        parent process. 
  19570.  
  19571.      detent  - A point on a slider that represents an exact value to which a 
  19572.        user can move the slider arm. 
  19573.  
  19574.      device context  - A logical description of a data destination such as 
  19575.        memory, metafile, display, printer, or plotter. See also direct device 
  19576.        context, information device context, memory device context, metafile 
  19577.        device context, queued device context, and screen device context. 
  19578.  
  19579.      device driver  - A file that contains the code needed to attach and use a 
  19580.        device such as a display, printer, or plotter. 
  19581.  
  19582.      device space  - (1) Coordinate space in which graphics are assembled after 
  19583.        all GPI transformations have been applied. Device space is defined in 
  19584.        device-specific units. (2) (D of C) In computer graphics, a space 
  19585.        defined by the complete set of addressable points of a display device. (A)
  19586.  
  19587.      dialog  - The interchange of information between a computer and its user 
  19588.        through a sequence of requests by the user and the presentation of 
  19589.        responses by the computer. 
  19590.  
  19591.      dialog box  - In SAA Advanced Common User Access architecture, a movable 
  19592.        window, fixed in size, containing controls that a user uses to provide 
  19593.        information required by an application so that it can continue to 
  19594.        process a user request. See also message box, primary window, secondary 
  19595.        window. Also known as a pop-up window. 
  19596.  
  19597.      Dialog Box Editor  - A WYSIWYG editor that creates dialog boxes for 
  19598.        communicating with the application user. 
  19599.  
  19600.      dialog item  - A component (for example, a menu or a button) of a dialog 
  19601.        box. Dialog items are also used when creating dialog templates. 
  19602.  
  19603.      dialog procedure  - A dialog window that is controlled by a window 
  19604.        procedure. It is responsible for responding to all messages sent to the 
  19605.        dialog window. 
  19606.  
  19607.      dialog tag language  - A markup language used by the DTL compiler to 
  19608.        create dialog objects. 
  19609.  
  19610.      dialog template  - The definition of a dialog box, which contains details 
  19611.        of its position, appearance, and window ID, and the window ID of each of 
  19612.        its child windows. 
  19613.  
  19614.      direct device context  - A logical description of a data destination that 
  19615.        is a device other than the screen (for example, a printer or plotter), 
  19616.        and where the output is not to go through the spooler. Its purpose is to 
  19617.        satisfy queries. See also device context. 
  19618.  
  19619.      direct manipulation  - The user's ability to interact with an object by 
  19620.        using the mouse, typically by dragging an object around on the Desktop 
  19621.        and dropping it on other objects. 
  19622.  
  19623.      direct memory access (DMA)  - A technique for moving data directly between 
  19624.        main storage and peripheral equipment without requiring processing of 
  19625.        the data by the processing unit.(T)
  19626.  
  19627.      directory  - A type of file containing the names and controlling 
  19628.        information for other files or other directories. 
  19629.  
  19630.      display point  - Synonym for pel. 
  19631.  
  19632.      dithering  - (1) The process used in color displays whereby every other 
  19633.        pel is set to one color, and the intermediate pels are set to another. 
  19634.        Together they produce the effect of a third color at normal viewing 
  19635.        distances. This process can only be used on solid areas of color; it 
  19636.        does not work, for example, on narrow lines. (2) (D of C ) In computer 
  19637.        graphics, a technique of interleaving dark and light pixels so that the 
  19638.        resulting image looks smoothly shaded when viewed from a distance. 
  19639.  
  19640.      DMA  - Direct memory access. 
  19641.  
  19642.      DOS Protect Mode Interface (DPMI)  - An interface between protect mode and 
  19643.        real mode programs. 
  19644.  
  19645.      double-byte character set (DBCS)  - A set of characters in which each 
  19646.        character is represented by two bytes.  Languages such as Japanese, 
  19647.        Chinese, and Korean, which contain more characters than can be 
  19648.        represented by 256 code points, require double-byte character sets. 
  19649.        Since each character requires two bytes, the entering, displaying, and 
  19650.        printing of DBCS characters requires hardware and software that can 
  19651.        support DBCS. 
  19652.  
  19653.      doubleword  - A contiguous sequence of bits or characters that comprises 
  19654.        two computer words and is capable of being addressed as a unit. (A)
  19655.  
  19656.      DPMI  - DOS Protect Mode Interface. 
  19657.  
  19658.      drag  - In SAA Common User Access, to use a pointing device to move an 
  19659.        object; for example, clicking on a window border, and dragging it to 
  19660.        make the window larger. 
  19661.  
  19662.      dragging  - (1) In computer graphics, moving an object on the display 
  19663.        screen as if it were attached to the pointer. (2) (D of C) In computer 
  19664.        graphics, moving one or more segments on a display surface by translating. (I)  (A)
  19665.  
  19666.      drawing chain  - See segment chain. 
  19667.  
  19668.      drop  - To fix the position of an object that is being dragged, by 
  19669.        releasing the select button of the pointing device. 
  19670.  
  19671.      drop  - To fix the position of an object that is being dragged, by 
  19672.        releasing the select button of the pointing device. See also drag. 
  19673.  
  19674.      DTL  - Dialog tag language. 
  19675.  
  19676.      dual-boot function  - A feature of the OS/2 operating system that allows 
  19677.        the user to start DOS from within the operating system, or an OS/2 
  19678.        session from within DOS. 
  19679.  
  19680.      duplex  - Pertaining to communication in which data can be sent and 
  19681.        received at the same time. Synonymous with full duplex. 
  19682.  
  19683.      dynamic data exchange (DDE)  - A message protocol used to communicate 
  19684.        between applications that share data. The protocol uses shared memory as 
  19685.        the means of exchanging data between applications. 
  19686.  
  19687.      dynamic data formatting  - A formatting procedure that enables you to 
  19688.        incorporate text, bit maps or metafiles in an IPF window at execution 
  19689.        time. 
  19690.  
  19691.      dynamic link library  - A collection of executable programming code and 
  19692.        data that is bound to an application at load time or run time, rather 
  19693.        than during linking. The programming code and data in a dynamic link 
  19694.        library can be shared by several applications simultaneously. 
  19695.  
  19696.      dynamic linking  - The process of resolving external references in a 
  19697.        program module at load time or run time rather than during linking. 
  19698.  
  19699.      dynamic segments  - Graphics segments drawn in exclusive-OR mix mode so 
  19700.        that they can be moved from one screen position to another without 
  19701.        affecting the rest of the displayed picture. 
  19702.  
  19703.      dynamic storage  - (1) A device that stores data in a manner that permits 
  19704.        the data to move or vary with time such that the specified data is not 
  19705.        always available for recovery. (A)  (2) A storage in which the cells 
  19706.        require repetitive application of control signals in order to retain 
  19707.        stored data. Such repetitive application of the control signals is 
  19708.        called a refresh operation. A dynamic storage may use static addressing 
  19709.        or sensing circuits. (A)  (3) See also static storage. 
  19710.  
  19711.      dynamic time slicing  - Varies the size of the time slice depending on 
  19712.        system load and paging activity. 
  19713.  
  19714.      dynamic-link module  - A module that is linked at load time or run time. 
  19715.  
  19716.  
  19717. ΓòÉΓòÉΓòÉ <hidden> Glossary - E ΓòÉΓòÉΓòÉ
  19718.  
  19719.      EBCDIC  - Extended binary-coded decimal interchange code. A coded 
  19720.        character set consisting of 8-bit coded characters (9 bits including 
  19721.        parity check), used for information interchange among data processing 
  19722.        systems, data communications systems, and associated equipment. 
  19723.  
  19724.      edge-triggered  - Pertaining to an event semaphore that is posted then 
  19725.        reset before a waiting thread gets a chance to run. The semaphore is 
  19726.        considered to be posted for the rest of that thread's waiting period; 
  19727.        the thread does not have to wait for the semaphore to be posted again. 
  19728.  
  19729.      EGA  - Extended graphics adapter. 
  19730.  
  19731.      element  - An entry in a graphics segment that comprises one or more 
  19732.        graphics orders and that is addressed by the element pointer. 
  19733.  
  19734.      EMS  - Expanded Memory Specification. 
  19735.  
  19736.      encapsulation  - Hiding an object's implementation, that is, its private, 
  19737.        internal data and methods. Private variables and methods are accessible 
  19738.        only to the object that contains them. 
  19739.  
  19740.      entry field  - In SAA Common User Access architecture, an area where a 
  19741.        user types information. Its boundaries are usually indicated. See also 
  19742.        selection field. 
  19743.  
  19744.      entry panel  - A defined panel type containing one or more entry fields 
  19745.        and protected information such as headings, prompts, and explanatory 
  19746.        text. 
  19747.  
  19748.      entry-field control  - The component of a user interface that provides the 
  19749.        means by which the application receives data entered by the user in an 
  19750.        entry field. When it has the input focus, the entry field displays a 
  19751.        flashing pointer at the position where the next typed character will go. 
  19752.  
  19753.      environment segment  - The list of environment variables and their values 
  19754.        for a process. 
  19755.  
  19756.      environment strings  - ASCII text strings that define the value of 
  19757.        environment variables. 
  19758.  
  19759.      environment variables  - Variables that describe the execution environment 
  19760.        of a process. These variables are named by the operating system or by 
  19761.        the application. Environment variables named by the operating system are 
  19762.        PATH, DPATH, INCLUDE, INIT, LIB, PROMPT, and TEMP. The values of 
  19763.        environment variables are defined by the user in the CONFIG.SYS file, or 
  19764.        by using the SET command at the OS/2 command prompt. 
  19765.  
  19766.      error message  - An indication that an error has been detected. (A)
  19767.  
  19768.      event semaphore  - A semaphore that enables a thread to signal a waiting 
  19769.        thread or threads that an event has occurred or that a task has been 
  19770.        completed. The waiting threads can then perform an action that is 
  19771.        dependent on the completion of the signaled event. 
  19772.  
  19773.      exception  - An abnormal condition such as an I/O error encountered in 
  19774.        processing a data set or a file. 
  19775.  
  19776.      exclusive system semaphore  - A system semaphore that can be modified only 
  19777.        by threads within the same process. 
  19778.  
  19779.      executable file  - (1) A file that contains programs or commands that 
  19780.        perform operations or actions to be taken. (2) A collection of related 
  19781.        data records that execute programs. 
  19782.  
  19783.      exit  - To execute an instruction within a portion of a computer program 
  19784.        in order to terminate the execution of that portion. Such portions of 
  19785.        computer programs include loops, subroutines, modules, and so 
  19786.        on. (T)Repeated exit requests return the user to the point from which 
  19787.        all functions provided to the system are accessible. Contrast with 
  19788.        cancel. 
  19789.  
  19790.      expanded memory specification (EMS)  - Enables DOS applications to access 
  19791.        memory above the 1MB real mode addressing limit. 
  19792.  
  19793.      extended attribute  - An additional piece of information about a file 
  19794.        object, such as its data format or category. It consists of a name and a 
  19795.        value. A file object may have more than one extended attribute 
  19796.        associated with it. 
  19797.  
  19798.      extended help  - In SAA Common User Access architecture, a help action 
  19799.        that provides information about the contents of the application window 
  19800.        from which a user requested help. Contrast with contextual help. 
  19801.  
  19802.      extended-choice selection  - A mode that allows the user to select more 
  19803.        than one item from a window. Not all windows allow extended choice 
  19804.        selection. Contrast with multiple-choice selection. 
  19805.  
  19806.      extent  - Continuous space on a disk or diskette that is occupied by or 
  19807.        reserved for a particular data set, data space, or file. 
  19808.  
  19809.      external link  - In Information Presentation Facility, a link that 
  19810.        connects external online document files. 
  19811.  
  19812.  
  19813. ΓòÉΓòÉΓòÉ <hidden> Glossary - F ΓòÉΓòÉΓòÉ
  19814.  
  19815.      family-mode application  - An application program that can run in the OS/2 
  19816.        environment and in the DOS environment; however, it cannot take 
  19817.        advantage of many of the OS/2-mode facilities, such as multitasking, 
  19818.        interprocess communication, and dynamic linking. 
  19819.  
  19820.      FAT  - File allocation table. 
  19821.  
  19822.      FEA  - Full extended attribute. 
  19823.  
  19824.      field-level help  - Information specific to the field on which the cursor 
  19825.        is positioned. This help function is "contextual" because it provides 
  19826.        information about a specific item as it is currently used; the 
  19827.        information is dependent upon the context within the work session. 
  19828.  
  19829.      FIFO  - First-in-first-out. (A)
  19830.  
  19831.      file  - A named set of records stored or processed as a unit. (T)
  19832.  
  19833.      file allocation table (FAT)  - In IBM personal computers, a table used by 
  19834.        the operating system to allocate space on a disk for a file, and to 
  19835.        locate and chain together parts of the file that may be scattered on 
  19836.        different sectors so that the file can be used in a random or sequential 
  19837.        manner. 
  19838.  
  19839.      file attribute  - Any of the attributes that describe the characteristics 
  19840.        of a file. 
  19841.  
  19842.      File Manager  - In the Presentation Manager, a program that displays 
  19843.        directories and files, and allows various actions on them. 
  19844.  
  19845.      file specification  - The full identifier for a file, which includes its 
  19846.        drive designation, path, file name, and extension. 
  19847.  
  19848.      file system  - The combination of software and hardware that supports 
  19849.        storing information on a storage device. 
  19850.  
  19851.      file system driver (FSD)  - A program that manages file I\O and controls 
  19852.        the format of information on the storage media. 
  19853.  
  19854.      fillet  - A curve that is tangential to the end points of two adjoining 
  19855.        lines. See also polyfillet. 
  19856.  
  19857.      filtering  - An application process that changes the order of data in a 
  19858.        queue. 
  19859.  
  19860.      first-in-first-out (FIFO)  - A queuing technique in which the next item to 
  19861.        be retrieved is the item that has been in the queue for the longest time. (A)
  19862.  
  19863.      flag  - (1) An indicator or parameter that shows the setting of a switch. 
  19864.        (2) A character that signals the occurrence of some condition, such as 
  19865.        the end of a word. (A)  (3) (D of C) A characteristic of a file or 
  19866.        directory that enables it to be used in certain ways. See also archive 
  19867.        flag, hidden flag, and read-only flag. 
  19868.  
  19869.      focus  - See input focus. 
  19870.  
  19871.      folder  - A container used to organize objects. 
  19872.  
  19873.      font  - A particular size and style of typeface that contains definitions 
  19874.        of character sets, marker sets, and pattern sets. 
  19875.  
  19876.      Font Editor  - A utility program provided with the IBM Developers Toolkit 
  19877.        that enables the design and creation of new fonts. 
  19878.  
  19879.      foreground program  - (1) The program with which the user is currently 
  19880.        interacting. Also known as interactive program. Contrast with background 
  19881.        program. (2) (D of C) In multiprogramming,  a high-priority program. 
  19882.  
  19883.      frame  - The part of a window that can contain several different visual 
  19884.        elements specified by the application, but drawn and controlled by the 
  19885.        Presentation Manager. The frame encloses the client area. 
  19886.  
  19887.      frame styles  - Standard window layouts provided by the Presentation 
  19888.        Manager. 
  19889.  
  19890.      FSD  - File system driver. 
  19891.  
  19892.      full-duplex  - Synonym for duplex. 
  19893.  
  19894.      full-screen application  - An application that has complete control of the 
  19895.        screen. 
  19896.  
  19897.      function  - (1) In a programming language, a block, with or without formal 
  19898.        parameters, whose execution is invoked by means of a call. (2) A set of 
  19899.        related control statements that cause one or more programs to be 
  19900.        performed. 
  19901.  
  19902.      function key  - A key that causes a specified sequence of operations to be 
  19903.        performed when it is pressed, for example, F1 and Alt-K. 
  19904.  
  19905.      function key area  - The area at the bottom of a window that contains 
  19906.        function key assignments such as F1=Help. 
  19907.  
  19908.  
  19909. ΓòÉΓòÉΓòÉ <hidden> Glossary - G ΓòÉΓòÉΓòÉ
  19910.  
  19911.      GDT  - Global Descriptor Table. 
  19912.  
  19913.      general protection fault  - An exception condition that occurs when a 
  19914.        process attempts to use storage or a module that has some level of 
  19915.        protection assigned to it, such as I/O privilege level. See also IOPL 
  19916.        code segment. 
  19917.  
  19918.      Global Descriptor Table (GDT)  - A table that defines code and data 
  19919.        segments available to all tasks in an application. 
  19920.  
  19921.      global dynamic-link module  - A dynamic-link module that can be shared by 
  19922.        all processes in the system that refer to the module name. 
  19923.  
  19924.      global file-name character  - Either a question mark (?) or an asterisk 
  19925.        (*) used as a variable in a file name or file name extension when 
  19926.        referring to a particular file or group of files. 
  19927.  
  19928.      glyph  - A graphic symbol whose appearance conveys information. 
  19929.  
  19930.      GPI  - Graphics programming interface. 
  19931.  
  19932.      graphic primitive  - In computer graphics, a basic element, such as an arc 
  19933.        or a line, that is not made up of smaller parts and that is used to 
  19934.        create diagrams and pictures. See also graphics segment. 
  19935.  
  19936.      graphics  - (1) A picture defined in terms of graphic primitives and 
  19937.        graphics attributes. (2) (D of C) The making of charts and pictures. (3) 
  19938.        Pertaining to charts, tables, and their creation. (4) See computer 
  19939.        graphics, coordinate graphics, fixed-image graphics, interactive 
  19940.        graphics, passive graphics, raster graphics. 
  19941.  
  19942.      graphics attributes  - Attributes that apply to graphic primitives. 
  19943.        Examples are color, line type, and shading-pattern definition. See also 
  19944.        segment attributes. 
  19945.  
  19946.      graphics field  - The clipping boundary that defines the visible part of 
  19947.        the presentation-page contents. 
  19948.  
  19949.      graphics mode  - One of several states of a display. The mode determines 
  19950.        the resolution and color content of the screen. 
  19951.  
  19952.      graphics model space  - The conceptual coordinate space in which a picture 
  19953.        is constructed after any model transforms have been applied. Also known 
  19954.        as model space. 
  19955.  
  19956.      Graphics programming interface  - The formally defined programming 
  19957.        language that is between an IBM graphics program and the user of the 
  19958.        program. 
  19959.  
  19960.      graphics segment  - A sequence of related graphic primitives and graphics 
  19961.        attributes. See also graphic primitive. 
  19962.  
  19963.      graying  - The indication that a choice on a pull-down is unavailable. 
  19964.  
  19965.      group  - A collection of logically connected controls. For example, the 
  19966.        buttons controlling paper size for a printer could be called a group. 
  19967.        See also program group. 
  19968.  
  19969.  
  19970. ΓòÉΓòÉΓòÉ <hidden> Glossary - H ΓòÉΓòÉΓòÉ
  19971.  
  19972.      handle  - (1) An identifier that represents an object, such as a device or 
  19973.        window, to the Presentation Interface. (2) (D of C) In the Advanced DOS 
  19974.        and OS/2 operating systems, a binary value created by the system that 
  19975.        identifies a drive, directory, and file so that the file can be found 
  19976.        and opened. 
  19977.  
  19978.      hard error  - An error condition on a network that requires either that 
  19979.        the system be reconfigured or that the source of the error be removed 
  19980.        before the system can resume reliable operation. 
  19981.  
  19982.      header  - (1) System-defined control information that precedes user data. 
  19983.        (2) The portion of a message that contains control information for the 
  19984.        message, such as one or more destination fields, name of the originating 
  19985.        station, input sequence number, character string indicating the type of 
  19986.        message, and priority level for the message. 
  19987.  
  19988.      heading tags  - A document element that enables information to be 
  19989.        displayed in windows, and that controls entries in the contents window 
  19990.        controls placement of push buttons in a window, and defines the shape 
  19991.        and size of windows. 
  19992.  
  19993.      heap  - An area of free storage available for dynamic allocation by an 
  19994.        application. Its size varies according to the storage requirements of 
  19995.        the application. 
  19996.  
  19997.      help function  - (1) A function that provides information about a specific 
  19998.        field, an application panel, or information about the help facility. (2) 
  19999.        (D of C) One or more display images that describe how to use application 
  20000.        software or how to do a system operation. 
  20001.  
  20002.      Help index  - In SAA Common User Access architecture, a help action that 
  20003.        provides an index of the help information available for an application. 
  20004.  
  20005.      help panel  - A panel with information to assist users that is displayed 
  20006.        in response to a help request from the user. 
  20007.  
  20008.      help window  - A Common-User-Access-defined secondary window that displays 
  20009.        information when the user requests help. 
  20010.  
  20011.      hidden file  - An operating system file that is not displayed by a 
  20012.        directory listing. 
  20013.  
  20014.      hide button  - In the OS/2 operating system, a small, square button 
  20015.        located in the right-hand corner of the title bar of a window that, when 
  20016.        selected, removes from the screen all the windows associated with that 
  20017.        window. Contrast with maximize button. See also restore button. 
  20018.  
  20019.      hierarchical inheritance  - The relationship between parent and child 
  20020.        classes. An object that is lower in the inheritance hierarchy than 
  20021.        another object, inherits all the characteristics and behaviors of the 
  20022.        objects above it in the hierarchy. 
  20023.  
  20024.      hierarchy  - A tree of segments beginning with the root segment and 
  20025.        proceeding downward to dependent segment types. 
  20026.  
  20027.      high-performance file system (HPFS)  - In the OS/2 operating system, an 
  20028.        installable file system that uses high-speed buffer storage, known as a 
  20029.        cache, to provide fast access to large disk volumes. The file system 
  20030.        also supports the coexistence of multiple, active file systems on a 
  20031.        single personal computer, with the capability of multiple and different 
  20032.        storage devices. File names used with the HPFS can have as many as 254 
  20033.        characters. 
  20034.  
  20035.      hit testing  - The means of identifying which window is associated with 
  20036.        which input device event. 
  20037.  
  20038.      hook  - A point in a system-defined function where an application can 
  20039.        supply additional code that the system processes as though it were part 
  20040.        of the function. 
  20041.  
  20042.      hook chain  - A sequence of hook procedures that are "chained" together so 
  20043.        that each event is passed, in turn, to each procedure in the chain. 
  20044.  
  20045.      hot spot  - The part of the pointer that must touch an object before it 
  20046.        can be selected. This is usually the tip of the pointer. Contrast with 
  20047.        action point. 
  20048.  
  20049.      HPFS  - high-performance file system. 
  20050.  
  20051.      hypergraphic link  - A connection between one piece of information and 
  20052.        another through the use of graphics. 
  20053.  
  20054.      hypertext  - A way of presenting information online with connections 
  20055.        between one piece of information and another, called hypertext links. 
  20056.        See also hypertext link. 
  20057.  
  20058.      hypertext link  - A connection between one piece of information and 
  20059.        another. 
  20060.  
  20061.  
  20062. ΓòÉΓòÉΓòÉ <hidden> Glossary - I ΓòÉΓòÉΓòÉ
  20063.  
  20064.      I/O operation  - An input operation to, or output operation from a device 
  20065.        attached to a computer. 
  20066.  
  20067.      I-beam pointer  - A pointer that indicates an area, such as an entry field 
  20068.        in which text can be edited. 
  20069.  
  20070.      icon  - In SAA Advanced Common User Access architecture, a graphical 
  20071.        representation of an object, consisting of an image, image background, 
  20072.        and a label. Icons can represent items (such as a document file) that 
  20073.        the user wants to work on, and actions that the user wants to perform. 
  20074.        In the Presentation Manager, icons are used for data objects, system 
  20075.        actions, and minimized programs. 
  20076.  
  20077.      icon area  - In the Presentation Manager, the area at the bottom of the 
  20078.        screen that is normally used to display the icons for minimized 
  20079.        programs. 
  20080.  
  20081.      Icon Editor  - The Presentation Manager-provided tool for creating icons. 
  20082.  
  20083.      IDL  - Interface Definition Language. 
  20084.  
  20085.      image font  - A set of symbols, each of which is described in a 
  20086.        rectangular array of pels. Some of the pels in the array are set to 
  20087.        produce the image of one of the symbols. Contrast with outline font. 
  20088.  
  20089.      implied metaclass  - Subclassing the metaclass of a parent class without a 
  20090.        separate CSC for the resultant metaclass. 
  20091.  
  20092.      indirect manipulation  - Interaction with an object through choices and 
  20093.        controls. 
  20094.  
  20095.      information device context  - A logical description of a data destination 
  20096.        other than the screen (for example, a printer or plotter), but where no 
  20097.        output will occur. Its purpose is to satisfy queries. See also device 
  20098.        context. 
  20099.  
  20100.      information panel  - A defined panel type characterized by a body 
  20101.        containing only protected information. 
  20102.  
  20103.      Information Presentation Facility (IPF)  - A facility provided by the OS/2 
  20104.        operating system, by which application developers can produce online 
  20105.        documentation and context-sensitive online help panels for their 
  20106.        applications. 
  20107.  
  20108.      inheritance  - The derivation of new (child) classes from existing 
  20109.        (parent) classes. The new class inherits all the data and methods of the 
  20110.        parent class without having to redefine them. 
  20111.  
  20112.      input focus  - (1) The area of a window where user interaction is possible 
  20113.        using an input device, such as a mouse or the keyboard. (2) The position 
  20114.        in the active window where a user's normal interaction with the keyboard 
  20115.        will appear. 
  20116.  
  20117.      input router  - An internal OS/2 process that removes messages from the 
  20118.        system queue. 
  20119.  
  20120.      input/output control  - A device-specific command that requests a function 
  20121.        of a device driver. 
  20122.  
  20123.      installable file system (IFS)  - A file system in which software is 
  20124.        installed when the operating system is started. 
  20125.  
  20126.      instance  - A single occurrence of an object class that has a particular 
  20127.        behavior. 
  20128.  
  20129.      instruction pointer  - In system/38, a pointer that provides 
  20130.        addressability for a machine interface instruction in a program. 
  20131.  
  20132.      integer atom  - An atom that represents a predefined system constant and 
  20133.        carries no storage overhead. For example, names of window classes 
  20134.        provided by Presentation Manager are expressed as integer atoms. 
  20135.  
  20136.      interactive graphics  - Graphics that can be moved or manipulated by a 
  20137.        user at a terminal. 
  20138.  
  20139.      interactive program  - (1) A program that is running (active) and is ready 
  20140.        to receive (or is receiving) input from a user. (2) A running program 
  20141.        that can receive input from the keyboard or another input device. 
  20142.        Compare with active program and contrast with noninteractive program. 
  20143.  
  20144.        Also known as a foreground program. 
  20145.  
  20146.      interchange file  - A file containing data that can be sent from one 
  20147.        Presentation Manager interface application to another. 
  20148.  
  20149.      Interface Definition Language (IDL)  - Language-neutral interface 
  20150.        specification for a SOM class. 
  20151.  
  20152.      interpreter  - A program that translates and executes each instruction of 
  20153.        a high-level programming language before it translates and executes. 
  20154.  
  20155.      interprocess communication (IPC)  - In the OS/2 operating system, the 
  20156.        exchange of information between processes or threads through semaphores, 
  20157.        pipes, queues, and shared memory. 
  20158.  
  20159.      interval timer  - (1) A timer that provides program interruptions on a 
  20160.        program-controlled basis. (2) An electronic counter that counts 
  20161.        intervals of time under program control. 
  20162.  
  20163.      IOCtl  - Input/output control. 
  20164.  
  20165.      IOPL  - Input/output privilege level. 
  20166.  
  20167.      IOPL code segment  - An IOPL executable section of programming code that 
  20168.        enables an application to directly manipulate hardware interrupts and 
  20169.        ports without replacing the device driver. See also privilege level. 
  20170.  
  20171.      IPC  - Interprocess communication. 
  20172.  
  20173.      IPF  - Information Presentation Facility. 
  20174.  
  20175.      IPF compiler  - A text compiler that interpret tags in a source file and 
  20176.        converts the information into the specified format. 
  20177.  
  20178.      IPF tag language  - A markup language that provides the instructions for 
  20179.        displaying online information. 
  20180.  
  20181.      item  - A data object that can be passed in a DDE transaction. 
  20182.  
  20183.  
  20184. ΓòÉΓòÉΓòÉ <hidden> Glossary - J ΓòÉΓòÉΓòÉ
  20185.  
  20186.      journal  - A special-purpose file that is used to record changes made in 
  20187.        the system. 
  20188.  
  20189.  
  20190. ΓòÉΓòÉΓòÉ <hidden> Glossary - K ΓòÉΓòÉΓòÉ
  20191.  
  20192.      Kanji  - A graphic character set used in Japanese ideographic alphabets. 
  20193.  
  20194.      KBD$  - Character-device name reserved for the keyboard. 
  20195.  
  20196.      kernel  - The part of an operating system that performs basic functions, 
  20197.        such as allocating hardware resources. 
  20198.  
  20199.      kerning  - The design of graphics characters so that their character boxes 
  20200.        overlap. Used to space text proportionally. 
  20201.  
  20202.      keyboard accelerator  - A keystroke that generates a command message for 
  20203.        an application. 
  20204.  
  20205.      keyboard augmentation  - A function that enables a user to press a 
  20206.        keyboard key while pressing a mouse button. 
  20207.  
  20208.      keyboard focus  - A temporary attribute of a window. The window that has a 
  20209.        keyboard focus receives all keyboard input until the focus changes to a 
  20210.        different window. 
  20211.  
  20212.      Keys help  - In SAA Common User Access architecture, a help action that 
  20213.        provides a listing of the application keys and their assigned functions. 
  20214.  
  20215.  
  20216. ΓòÉΓòÉΓòÉ <hidden> Glossary - L ΓòÉΓòÉΓòÉ
  20217.  
  20218.      label  - In a graphics segment, an identifier of one or more elements that 
  20219.        is used when editing the segment. 
  20220.  
  20221.      LAN  - local area network. 
  20222.  
  20223.      language support procedure  - A function provided by the Presentation 
  20224.        Manager Interface for applications that do not, or cannot (as in the 
  20225.        case of COBOL and FORTRAN programs), provide their own dialog or window 
  20226.        procedures. 
  20227.  
  20228.      lazy drag  - See pickup and drop. 
  20229.  
  20230.      lazy drag set  - See pickup set. 
  20231.  
  20232.      LDT  - In the OS/2 operating system, Local Descriptor Table. 
  20233.  
  20234.      LIFO stack  - A stack from which data is retrieved in last-in, first-out 
  20235.        order. 
  20236.  
  20237.      linear address  - A unique value that identifies the memory object. 
  20238.  
  20239.      linked list  - Synonym for chained list. 
  20240.  
  20241.      list box  - In SAA Advanced Common User Access architecture, a control 
  20242.        that contains scrollable choices from which a user can select one 
  20243.        choice. 
  20244.  
  20245.        Note:  In CUA architecture, this is a programmer term. The end user term 
  20246.        is selection list. 
  20247.  
  20248.      list button  - A button labeled with an underlined down-arrow that 
  20249.        presents a list of valid objects or choices that can be selected for 
  20250.        that field. 
  20251.  
  20252.      list panel  - A defined panel type that displays a list of items from 
  20253.        which users can select one or more choices and then specify one or more 
  20254.        actions to work on those choices. 
  20255.  
  20256.      load time  - The point in time at which a program module is loaded into 
  20257.        main storage for execution. 
  20258.  
  20259.      load-on-call  - A function of a linkage editor that allows selected 
  20260.        segments of the module to be disk resident while other segments are 
  20261.        executing. Disk resident segments are loaded for execution and given 
  20262.        control when any entry point that they contain is called. 
  20263.  
  20264.      local area network (LAN)  - (1) A computer network located on a user's 
  20265.        premises within a limited geographical area. Communication within a 
  20266.        local area network is not subject to external regulations;  however, 
  20267.        communication across the LAN boundary may be subject to some form of 
  20268.        regulation. (T)
  20269.  
  20270.        Note:  A LAN does not use store and forward techniques. (2) A network 
  20271.        inwhich a set of devices are connected to one another for communication 
  20272.        and that can be connected to a larger network. 
  20273.  
  20274.      Local Descriptor Table (LDT)  - Defines code and data segments specific to 
  20275.        a single task. 
  20276.  
  20277.      lock  - A serialization mechanism by means of which a resource is 
  20278.        restricted for use by the holder of the lock. 
  20279.  
  20280.      logical storage device  - A device that the user can map to a physical 
  20281.        (actual) device. 
  20282.  
  20283.      LPT1, LPT2, LPT3  - Character-device names reserved for parallel printers 
  20284.        1 through 3. 
  20285.  
  20286.  
  20287. ΓòÉΓòÉΓòÉ <hidden> Glossary - M ΓòÉΓòÉΓòÉ
  20288.  
  20289.      main window  - The window that is positioned relative to the desktop 
  20290.        window. 
  20291.  
  20292.      manipulation button  - The button on a pointing device a user presses to 
  20293.        directly manipulate an object. 
  20294.  
  20295.      map  - (1) A set of values having a defined correspondence with the 
  20296.        quantities or values of another set. (I)  (A)  (2) To establish a set of 
  20297.        values having a defined correspondence with the quantities or values of 
  20298.        another set. (I)
  20299.  
  20300.      marker box  - In computer graphics, the boundary that defines, in world 
  20301.        coordinates, the horizontal and vertical space occupied by a single 
  20302.        marker from a marker set. 
  20303.  
  20304.      marker symbol  - A symbol centered on a point. Graphs and charts can use 
  20305.        marker symbols to indicate the plotted points. 
  20306.  
  20307.      marquee box  - The rectangle that appears during a selection technique in 
  20308.        which a user selects objects by drawing a box around them with a 
  20309.        pointing device. 
  20310.  
  20311.      Master Help Index  - In the OS/2 operating system, an alphabetic list of 
  20312.        help topics related to using the operating system. 
  20313.  
  20314.      maximize  - To enlarge a window to its largest possible size. 
  20315.  
  20316.      media window  - The part of the physical device (display, printer, or 
  20317.        plotter) on which a picture is presented. 
  20318.  
  20319.      memory block  - Part memory within a heap. 
  20320.  
  20321.      memory device context  - A logical description of a data destination that 
  20322.        is a memory bit map. See also device context. 
  20323.  
  20324.      memory management  - A feature of the operating system for allocating, 
  20325.        sharing, and freeing main storage. 
  20326.  
  20327.      memory object  - Logical unit of memory requested by an application, which 
  20328.        forms the granular unit of memory manipulation from the application 
  20329.        viewpoint. 
  20330.  
  20331.      menu  - In SAA Advanced Common User Access architecture, an extension of 
  20332.        the menu bar that displays a list of choices available for a selected 
  20333.        choice in the menu bar. After a user selects a choice in menu bar, the 
  20334.        corresponding menu appears. Additional pop-up windows can appear from 
  20335.        menu choices. 
  20336.  
  20337.      menu bar  - In SAA Advanced Common User Access architecture, the area near 
  20338.        the top of a window, below the title bar and above the rest of the 
  20339.        window, that contains choices that provide access to other menus. 
  20340.  
  20341.      menu button  - The button on a pointing device that a user presses to view 
  20342.        a pop-up menu associated with an object. 
  20343.  
  20344.      message  - (1) In the Presentation Manager, a packet of data used for 
  20345.        communication between the Presentation Manager interface and 
  20346.        Presentation Manager applications (2) In a user interface, information 
  20347.        not requested by users but presented to users by the computer in 
  20348.        response to a user action or internal process. 
  20349.  
  20350.      message box  - (1) A dialog window predefined by the system and used as a 
  20351.        simple interface for applications, without the necessity of creating 
  20352.        dialog-template resources or dialog procedures. (2) (D of C) In SAA 
  20353.        Advanced Common User Access architecture, a type of window that shows 
  20354.        messages to users. See also dialog box, primary window, secondary 
  20355.        window. 
  20356.  
  20357.      message filter  - The means of selecting which messages from a specific 
  20358.        window will be handled by the application. 
  20359.  
  20360.      message queue  - A sequenced collection of messages to be read by the 
  20361.        application. 
  20362.  
  20363.      message stream mode  - A method of operation in which data is treated as a 
  20364.        stream of messages.  Contrast with  byte stream. 
  20365.  
  20366.      metacharacter  - See global file-name character. 
  20367.  
  20368.      metaclass  - The conjunction of an object and its class information; that 
  20369.        is, the information pertaining to the class as a whole, rather than to a 
  20370.        single instance of the class. Each class is itself an object, which is 
  20371.        an instance of the metaclass. 
  20372.  
  20373.      metafile  - A file containing a series of attributes that set color, shape 
  20374.        and size, usually of a picture or a drawing. Using a program that can 
  20375.        interpret these attributes, a user can view the assembled image. 
  20376.  
  20377.      metafile device context  - A logical description of a data destination 
  20378.        that is a metafile, which is used for graphics interchange. See also 
  20379.        device context. 
  20380.  
  20381.      metalanguage  - A language used to specify another language. For example, 
  20382.        data types can be described using a metalanguage so as to make the 
  20383.        descriptions independent of any one computer language. 
  20384.  
  20385.      method  - A function that defines a behavior for a class or object. 
  20386.  
  20387.      method override  - The replacement, by a child class, of the 
  20388.        implementation of a method inherited from a parent and an ancestor 
  20389.        class. 
  20390.  
  20391.      mickey  - A unit of measurement for physical mouse motion whose value 
  20392.        depends on the mouse device driver currently loaded. 
  20393.  
  20394.      micro presentation space  - A graphics presentation space in which a 
  20395.        restricted set of the GPI function calls is available. 
  20396.  
  20397.      minimize  - To remove from the screen all windows associated with an 
  20398.        application and replace them with an icon that represents the 
  20399.        application. 
  20400.  
  20401.      mix  - An attribute that determines how the foreground of a graphic 
  20402.        primitive is combined with the existing color of graphics output. Also 
  20403.        known as foreground mix. Contrast with background mix. 
  20404.  
  20405.      mixed character string  - A string containing a mixture of one-byte and 
  20406.        Kanji or Hangeul (two-byte) characters. 
  20407.  
  20408.      mnemonic  - (1) A method of selecting an item on a pull-down by means of 
  20409.        typing the highlighted letter in the menu item. (2) (D of C) In SAA 
  20410.        Advanced Common User Access architecture, usually a single character, 
  20411.        within the text of a choice, identified by an underscore beneath the 
  20412.        character. If all characters in a choice already serve as mnemonics for 
  20413.        other choices, another character, placed in parentheses immediately 
  20414.        following the choice, can be used. When a user types the mnemonic for a 
  20415.        choice, the choice is either selected or the cursor is moved to that 
  20416.        choice. 
  20417.  
  20418.      modal dialog box  - In SAA Advanced Common User Access architecture, a 
  20419.        type of movable window, fixed in size, that requires a user to enter 
  20420.        information before continuing to work in the application window from 
  20421.        which it was displayed. Contrast with modeless dialog box. Also known as 
  20422.        a serial dialog box. Contrast with parallel dialog box. 
  20423.  
  20424.        Note:  In CUA architecture, this is a programmer term. The end user term 
  20425.        is pop-up window. 
  20426.  
  20427.      model space  - See graphics model space. 
  20428.  
  20429.      modeless dialog box  - In SAA Advanced Common User Access architecture, a 
  20430.        type of movable window, fixed in size, that allows users to continue 
  20431.        their dialog with the application without entering information in the 
  20432.        dialog box. Also known as a parallel dialog box. Contrast with modal 
  20433.        dialog box. 
  20434.  
  20435.        Note:  In CUA architecture, this is a programmer term. The end user term 
  20436.        is pop-up window. 
  20437.  
  20438.      module definition file  - A file that describes the code segments within a 
  20439.        load module. For example, it indicates whether a code segment is 
  20440.        loadable before module execution begins (preload), or loadable only when 
  20441.        referred to at run time (load-on-call). 
  20442.  
  20443.      mouse  - In SAA usage, a device that a user moves on a flat surface to 
  20444.        position a pointer on the screen. It allows a user to select a choice o 
  20445.        function to be performed or to perform operations on the screen, such as 
  20446.        dragging or drawing lines from one position to another. 
  20447.  
  20448.      MOUSE$  - Character-device name reserved for a mouse. 
  20449.  
  20450.      multiple-choice selection  - In SAA Basic Common User Access architecture, 
  20451.        a type of field from which a user can select one or more choices or 
  20452.        select none. See also check box. Contrast with extended-choice 
  20453.        selection. 
  20454.  
  20455.      multiple-line entry field  - In SAA Advanced Common User Access 
  20456.        architecture, a control into which a user types more than one line of 
  20457.        information. See also single-line entry field. 
  20458.  
  20459.      multitasking  - The concurrent processing of applications or parts of 
  20460.        applications. A running application and its data are protected from 
  20461.        other concurrently running applications. 
  20462.  
  20463.      mutex semaphore  - (Mutual exclusion semaphore). A semaphore that enables 
  20464.        threads to serialize their access to resources. Only the thread that 
  20465.        currently owns the mutex semaphore can gain access to the resource, thus 
  20466.        preventing one thread from interrupting operations being performed by 
  20467.        another. 
  20468.  
  20469.      muxwait semaphore  - (Multiple wait semaphore). A semaphore that enables a 
  20470.        thread to wait either for multiple event semaphores to be posted or for 
  20471.        multiple mutex semaphores to be released. Alternatively, a muxwait 
  20472.        semaphore can be set to enable a thread to wait for any ONE of the event 
  20473.        or mutex semaphores in the muxwait semaphore's list to be posted or 
  20474.        released. 
  20475.  
  20476.  
  20477. ΓòÉΓòÉΓòÉ <hidden> Glossary - N ΓòÉΓòÉΓòÉ
  20478.  
  20479.      named pipe  - A named buffer that provides client-to-server, 
  20480.        server-to-client, or full duplex communication between unrelated 
  20481.        processes. Contrast with unnamed pipe. 
  20482.  
  20483.      national language support (NLS)  - The modification or conversion of a 
  20484.        United States English product to conform to the requirements of another 
  20485.        language or country. This can include the enabling or retrofitting of a 
  20486.        product and the translation of nomenclature, MRI, or documentation of a 
  20487.        product. 
  20488.  
  20489.      nested list  - A list that is contained within another list. 
  20490.  
  20491.      NLS  - national language support. 
  20492.  
  20493.      non-8.3 file-name format  - A file-naming convention in which file names 
  20494.        can consist of up to 255 characters. See also 8.3 file-name format. 
  20495.  
  20496.      noncritical extended attribute  - An extended attribute that is not 
  20497.        necessary for the function of an application. 
  20498.  
  20499.      nondestructive read  - Reading that does not erase the data in the source 
  20500.        location. (T)
  20501.  
  20502.      noninteractive program  - A running program that cannot receive input from 
  20503.        the keyboard or other input device. Compare with active program, and 
  20504.        contrast with interactive program. 
  20505.  
  20506.      nonretained graphics  - Graphic primitives that are not remembered by the 
  20507.        Presentation Manager interface when they have been drawn. Contrast with 
  20508.        retained graphics. 
  20509.  
  20510.      null character (NUL)  - (1) Character-device name reserved for a 
  20511.        nonexistent (dummy) device. (2) (D of C) A control character that is 
  20512.        used to accomplish media-fill or time-fill and that may be inserted into 
  20513.        or removed from a sequence of characters without affecting the meaning 
  20514.        of the sequence;  however, the control of equipment or the format may be 
  20515.        affected by this character. (I)  (A)
  20516.  
  20517.      null-terminated string  - A string of (n+1) characters where the (n+1)th 
  20518.        character is the `null' character (0x00) Also known as `zero-terminated' 
  20519.        string and 'ASCIIZ' string. 
  20520.  
  20521.  
  20522. ΓòÉΓòÉΓòÉ <hidden> Glossary - O ΓòÉΓòÉΓòÉ
  20523.  
  20524.      object  - A set of data and actions that can be performed on that data. 
  20525.  
  20526.      Object Interface Definition Language (OIDL)  - Specification language used 
  20527.        in SOM Version 1 for defining classes. Replaced by Interface Definition 
  20528.        Language (IDL). 
  20529.  
  20530.      object window  - A window that does not have a parent but which might have 
  20531.        child windows. An object window cannot be presented on a device. 
  20532.  
  20533.      OIDL  - Object Interface Definition Language. 
  20534.  
  20535.      open  - To start working with a file, directory, or other object. 
  20536.  
  20537.      ordered list  - Vertical arrangements of items, with each item in the list 
  20538.        preceded by a number or letter. 
  20539.  
  20540.      outline font  - A set of symbols, each of which is created as a series of 
  20541.        lines and curves.  Synonymous with vector font. Contrast with image 
  20542.        font. 
  20543.  
  20544.      output area  - An area of storage reserved for output. (A)
  20545.  
  20546.      owner window  - A window into which specific events that occur in another 
  20547.        (owned) window are reported. 
  20548.  
  20549.      ownership  - The determination of how windows communicate using messages. 
  20550.  
  20551.      owning process  - The process that owns the resources that might be shared 
  20552.        with other processes. 
  20553.  
  20554.  
  20555. ΓòÉΓòÉΓòÉ <hidden> Glossary - P ΓòÉΓòÉΓòÉ
  20556.  
  20557.      page  - (1) A 4KB segment of contiguous physical memory. (2) (D of C) A 
  20558.        defined unit of space on a storage medium. 
  20559.  
  20560.      page viewport  - A boundary in device coordinates that defines the area of 
  20561.        the output device in which graphics are to be displayed. The 
  20562.        presentation-page contents are transformed automatically to the page 
  20563.        viewport in device space. 
  20564.  
  20565.      paint  - (1) The action of drawing or redrawing the contents of a window. 
  20566.        (2) In computer graphics, to shade an area of a display image;  for 
  20567.        example, with crosshatching or color. 
  20568.  
  20569.      panel  - In SAA Basic Common User Access architecture, a particular 
  20570.        arrangement of information that is presented in a window or pop-up. If 
  20571.        some of the information is not visible, a user can scroll through the 
  20572.        information. 
  20573.  
  20574.      panel area  - An area within a panel that contains related information. 
  20575.        The three major Common User Access-defined panel areas are the action 
  20576.        bar, the function key area, and the panel body. 
  20577.  
  20578.      panel area separator  - In SAA Basic Common User Access architecture, a 
  20579.        solid, dashed, or blank line that provides a visual distinction between 
  20580.        two adjacent areas of a panel. 
  20581.  
  20582.      panel body  - The portion of a panel not occupied by the action bar, 
  20583.        function key area, title or scroll bars. The panel body can contain 
  20584.        protected information, selection fields, and entry fields. The layout 
  20585.        and content of the panel body determine the panel type. 
  20586.  
  20587.      panel body area  - See client area. 
  20588.  
  20589.      panel definition  - A description of the contents and characteristics of a 
  20590.        panel. A panel definition is the application developer's mechanism for 
  20591.        predefining the format to be presented to users in a window. 
  20592.  
  20593.      panel ID  - In SAA Basic Common User Access architecture, a panel 
  20594.        identifier, located in the upper-left corner of a panel.  A user can 
  20595.        choose whether to display the panel ID. 
  20596.  
  20597.      panel title  - In SAA Basic Common User Access architecture, a particular 
  20598.        arrangement of information that is presented in a window or pop-up. If 
  20599.        some of the information is not visible, a user can scroll through the 
  20600.        information. 
  20601.  
  20602.      paper size  - The size of paper, defined in either standard U.S. or 
  20603.        European names (for example, A, B, A4), and measured in inches or 
  20604.        millimeters respectively. 
  20605.  
  20606.      parallel dialog box  - See modeless dialog box. 
  20607.  
  20608.      parameter list  - A list of values that provides a means of associating 
  20609.        addressability of data defined in a called program with data in the 
  20610.        calling program. It contains parameter names and the order in which they 
  20611.        are to be associated in the calling and called program. 
  20612.  
  20613.      parent process  - In the OS/2 operating system, a process that creates 
  20614.        other processes. Contrast with child process. 
  20615.  
  20616.      parent window  - In the OS/2 operating system, a window that creates a 
  20617.        child window. The child window is drawn within the parent window. If the 
  20618.        parent window is moved, resized, or destroyed, the child window also 
  20619.        will be moved, resized, or destroyed. However, the child window can be 
  20620.        moved and resized independently from the parent window, within the 
  20621.        boundaries of the parent window. Contrast with child window. 
  20622.  
  20623.      partition  - (1) A fixed-size division of storage. (2) On an IBM personal 
  20624.        computer fixed disk, one of four possible storage areas of variable 
  20625.        size; one may be accessed by DOS, and each of the others may be assigned 
  20626.        to another operating system. 
  20627.  
  20628.      Paste  - A choice in the Edit pull-down that a user selects to move the 
  20629.        contents of the clipboard into a preselected location. See also Copy and 
  20630.        Cut. 
  20631.  
  20632.      path  - The route used to locate files; the storage location of a file. A 
  20633.        fully qualified path lists the drive identifier, directory name, 
  20634.        subdirectory name (if any), and file name with the associated extension. 
  20635.  
  20636.      PDD  - Physical device driver. 
  20637.  
  20638.      peeking  - An action taken by any thread in the process that owns the 
  20639.        queue to examine queue elements without removing them. 
  20640.  
  20641.      pel  - (1) The smallest area of a display screen capable of being 
  20642.        addressed and switched between visible and invisible states. Synonym for 
  20643.        display point, pixel, and picture element. (2) (D of C) Picture element. 
  20644.  
  20645.      persistent object  - An object whose instance data and state are preserved 
  20646.        between system shutdown and system startup. 
  20647.  
  20648.      physical device driver (PDD)  - A system interface that handles hardware 
  20649.        interrupts and supports a set of input and output functions. 
  20650.  
  20651.      pick  - To select part of a displayed object using the pointer. 
  20652.  
  20653.      pickup  - To add an object or set of objects to the pickup set. 
  20654.  
  20655.      pickup and drop  - A drag operation that does not require the direct 
  20656.        manipulation button to be pressed for the duration of the drag. 
  20657.  
  20658.      pickup set  - The set of objects that have been picked up as part of a 
  20659.        pickup and drop operation. 
  20660.  
  20661.      picture chain  - See segment chain. 
  20662.  
  20663.      picture element  - (1) Synonym for pel. (2) (D of C) In computer graphics, 
  20664.        the smallest element of a display surface that can be independently 
  20665.        assigned color and intensity. (T)  . (3) The area of the finest detail 
  20666.        that can be reproduced effectively on the recording medium. 
  20667.  
  20668.      PID  - Process identification. 
  20669.  
  20670.      pipe  - (1) A named or unnamed buffer used to pass data between processes. 
  20671.        A process reads from or writes to a pipe as if the pipe were a 
  20672.        standard-input or standard-output file. See also named pipe and unnamed 
  20673.        pipe. (2) (D of C) To direct data so that the output from one process 
  20674.        becomes the input to another process. The standard output of one command 
  20675.        can be connected to the standard input of another with the pipe operator 
  20676.        (|). 
  20677.  
  20678.      pixel  - (1) Synonym for pel. (2) (D of C) Picture element. 
  20679.  
  20680.      plotter  - An output unit that directly produces a hardcopy record of data 
  20681.        on a removable medium, in the form of a two-dimensional graphic representation. (T)
  20682.  
  20683.      PM  - Presentation Manager. 
  20684.  
  20685.      pointer  - (1) The symbol displayed on the screen that is moved by a 
  20686.        pointing device, such as a mouse. The pointer is used to point at items 
  20687.        that users can select. Contrast with cursor. (2) A data element that 
  20688.        indicates the location of another data element. (T)
  20689.  
  20690.      POINTER$  - Character-device name reserved for a pointer device (mouse 
  20691.        screen support). 
  20692.  
  20693.      pointing device  - In SAA Advanced Common User Access architecture, an 
  20694.        instrument, such as a mouse, trackball, or joystick, used to move a 
  20695.        pointer on the screen. 
  20696.  
  20697.      pointings  - Pairs of x-y coordinates produced by an operator defining 
  20698.        positions on a screen with a pointing device, such as a mouse. 
  20699.  
  20700.      polyfillet  - A curve based on a sequence of lines. The curve is 
  20701.        tangential to the end points of the first and last lines, and tangential 
  20702.        also to the midpoints of all other lines. See also fillet. 
  20703.  
  20704.      polygon  - One or more closed figures that can be drawn filled, outlined, 
  20705.        or filled and outlined. 
  20706.  
  20707.      polyline  - A sequence of adjoining lines. 
  20708.  
  20709.      polymorphism  - The ability to have different implementations of the same 
  20710.        method for two or more classes of objects. 
  20711.  
  20712.      pop  - To retrieve an item from a last-in-first-out stack of items. 
  20713.        Contrast with push. 
  20714.  
  20715.      pop-up menu  - A menu that lists the actions that a user can perform on an 
  20716.        object. The contents of the pop-up menu can vary depending on the 
  20717.        context, or state, of the object. 
  20718.  
  20719.      pop-up window  - (1) A window that appears on top of another window in a 
  20720.        dialog. Each pop-up window must be completed before returning to the 
  20721.        underlying window. (2) (D of C) In SAA Advanced Common User Access 
  20722.        architecture, a movable window, fixed in size, in which a user provides 
  20723.        information required by an application so that it can continue to 
  20724.        process a user request. 
  20725.  
  20726.      presentation drivers  - Special purpose I/O routines that handle field 
  20727.        device-independent I/O requests from the PM and its applications. 
  20728.  
  20729.      Presentation Manager (PM)  - The interface of the OS/2 operating system 
  20730.        that presents, in windows a graphics-based interface to applications and 
  20731.        files installed and running under the OS/2 operating system. 
  20732.  
  20733.      presentation page  - The coordinate space in which a picture is assembled 
  20734.        for display. 
  20735.  
  20736.      presentation space (PS)  - (1) Contains the device-independent definition 
  20737.        of a picture. (2) (D of C) The display space on a display device. 
  20738.  
  20739.      primary window  - In SAA Common User Access architecture, the window in 
  20740.        which the main interaction between the user and the application takes 
  20741.        place. In a multiprogramming environment, each application starts in its 
  20742.        own primary window. The primary window remains for the duration of the 
  20743.        application, although the panel displayed will change as the user's 
  20744.        dialog moves forward. See also secondary window. 
  20745.  
  20746.      primitive  - In computer graphics, one of several simple functions for 
  20747.        drawing on the screen, including, for example, the rectangle, line, 
  20748.        ellipse, polygon, and so on. 
  20749.  
  20750.      primitive attribute  - A specifiable characteristic of a graphic 
  20751.        primitive. See graphics attributes. 
  20752.  
  20753.      print job  - The result of sending a document or picture to be printed. 
  20754.  
  20755.      Print Manager  - In the Presentation Manager, the part of the spooler that 
  20756.        manages the spooling process. It also allows users to view print queues 
  20757.        and to manipulate print jobs. 
  20758.  
  20759.      privilege level  - A protection level imposed by the hardware architecture 
  20760.        of the IBM personal computer.  There are four privilege levels (number 0 
  20761.        through 3).  Only certain types of programs are allowed to execute at 
  20762.        each privilege level.  See also IOPL code segment. 
  20763.  
  20764.      procedure call  - In programming languages, a language construct for 
  20765.        invoking execution of a procedure. 
  20766.  
  20767.      process  - An instance of an executing application and the resources it is 
  20768.        using. 
  20769.  
  20770.      program  - A sequence of instructions that a computer can interpret and 
  20771.        execute. 
  20772.  
  20773.      program details  - Information about a program that is specified in the 
  20774.        Program Manager window and is used when the program is started. 
  20775.  
  20776.      program group  - In the Presentation Manager, several programs that can be 
  20777.        acted upon as a single entity. 
  20778.  
  20779.      program name  - The full file specification of a program. Contrast with 
  20780.        program title. 
  20781.  
  20782.      program title  - The name of a program as it is listed in the Program 
  20783.        Manager window. Contrast with program name. 
  20784.  
  20785.      prompt  - A displayed symbol or message that requests input from the user 
  20786.        or gives operational information; for example, on the display screen of 
  20787.        an IBM personal computer, the DOS A> prompt. The user must respond to 
  20788.        the prompt in order to proceed. 
  20789.  
  20790.      protect mode  - A method of program operation that limits or prevents 
  20791.        access to certain instructions or areas of storage. Contrast with real 
  20792.        mode. 
  20793.  
  20794.      protocol  - A set of semantic and syntactic rules that determines the 
  20795.        behavior of functional units in achieving communication. (I)
  20796.  
  20797.      pseudocode  - An artificial language used to describe computer program 
  20798.        algorithms without using the syntax of any particular programming language. (A)
  20799.  
  20800.      pull-down  - (1) An action bar extension that displays a list of choices 
  20801.        available for a selected action bar choice. After users select an action 
  20802.        bar choice, the pull-down appears with the list of choices. Additional 
  20803.        pop-up windows may appear from pull-down choices to further extend the 
  20804.        actions available to users. (2) (D of C) In SAA Common User Access 
  20805.        architecture, pertaining to a choice in an action bar pull-down. 
  20806.  
  20807.      push  - To add an item to a last-in-first-out stack of items. Contrast 
  20808.        with pop. 
  20809.  
  20810.      push button  - In SAA Advanced Common User Access architecture, a 
  20811.        rectangle with text inside. Push buttons are used in windows for actions 
  20812.        that occur immediately when the push button is selected. 
  20813.  
  20814.      putback  - To remove an object or set of objects from the lazy drag set. 
  20815.        This has the effect of undoing the pickup operation for those objects 
  20816.  
  20817.      putdown  - To drop the objects in the lazy drag set on the target object. 
  20818.  
  20819.  
  20820. ΓòÉΓòÉΓòÉ <hidden> Glossary - Q ΓòÉΓòÉΓòÉ
  20821.  
  20822.      queue  - (1) A linked list of elements waiting to be processed in FIFO 
  20823.        order. For example, a queue may be a list of print jobs waiting to be 
  20824.        printed. (2) (D of C) A line or list of items waiting to be processed; 
  20825.        for example, work to be performed or messages to be displayed. 
  20826.  
  20827.      queued device context  - A logical description of a data destination (for 
  20828.        example, a printer or plotter) where the output is to go through the 
  20829.        spooler. See also device context. 
  20830.  
  20831.  
  20832. ΓòÉΓòÉΓòÉ <hidden> Glossary - R ΓòÉΓòÉΓòÉ
  20833.  
  20834.      radio button  - (1) A control window, shaped like a round button on the 
  20835.        screen, that can be in a checked or unchecked state. It is used to 
  20836.        select a single item from a list. Contrast with check box. (2) In SAA 
  20837.        Advanced Common User Access architecture, a circle with text beside it. 
  20838.        Radio buttons are combined to show a user a fixed set of choices from 
  20839.        which only one can be selected. The circle is partially filled when a 
  20840.        choice is selected. 
  20841.  
  20842.      RAS  - Reliability, availability, and serviceability. 
  20843.  
  20844.      raster  - (1) In computer graphics, a predetermined pattern of lines that 
  20845.        provides uniform coverage of a display space. (T)  (2) The coordinate 
  20846.        grid that divides the display area of a display device.  (A)
  20847.  
  20848.      read-only file  - A file that can be read from but not written to. 
  20849.  
  20850.      real mode  - A method of program operation that does not limit or prevent 
  20851.        access to any instructions or areas of storage.  The operating system 
  20852.        loads the entire program into storage and gives the program access to 
  20853.        all system resources. Contrast with protect mode. 
  20854.  
  20855.      realize  - To cause the system to ensure, wherever possible, that the 
  20856.        physical color table of a device is set to the closest possible match in 
  20857.        the logical color table. 
  20858.  
  20859.      recursive routine  - A routine that can call itself, or be called by 
  20860.        another routine that was called by the recursive routine. 
  20861.  
  20862.      reentrant  - The attribute of a program or routine that allows the same 
  20863.        copy of the program or routine to be used concurrently by two or more 
  20864.        tasks. 
  20865.  
  20866.      reference phrase  - (1) A word or phrase that is emphasized in a 
  20867.        device-dependent manner to inform the user that additional information 
  20868.        for the word or phrase is available. (2) (D of C) In hypertext, text 
  20869.        that is highlighted and preceded by a single-character input field used 
  20870.        to signify the existence of a hypertext link. 
  20871.  
  20872.      reference phrase help  - In SAA Common User Access architecture, 
  20873.        highlighted words or phrases within help information that a user selects 
  20874.        to get additional information. 
  20875.  
  20876.      refresh  - To update a window, with changed information, to its current 
  20877.        status. 
  20878.  
  20879.      region  - A clipping boundary in device space. 
  20880.  
  20881.      register  - A part of internal storage having a specified storage capacity 
  20882.        and usually intended for a specific purpose. (T)
  20883.  
  20884.      remote file system  - A file-system driver that gains access to a remote 
  20885.        system without a block device driver. 
  20886.  
  20887.      resource  - The means of providing extra information used in the 
  20888.        definition of a window. A resource can contain definitions of fonts, 
  20889.        templates, accelerators, and mnemonics; the definitions are held in a 
  20890.        resource file. 
  20891.  
  20892.      resource file  - A file containing information used in the definition of a 
  20893.        window. Definitions can be of fonts, templates, accelerators, and 
  20894.        mnemonics. 
  20895.  
  20896.      restore  - To return a window to its original size or position following a 
  20897.        sizing or moving action. 
  20898.  
  20899.      retained graphics  - Graphic primitives that are remembered by the 
  20900.        Presentation Manager interface after they have been drawn. Contrast with 
  20901.        nonretained graphics. 
  20902.  
  20903.      return code  - (1) A value returned to a program to indicate the results 
  20904.        of an operation requested by that program. (2) A code used to influence 
  20905.        the execution of succeeding instructions.(A) 
  20906.  
  20907.      reverse video  - (1) A form of highlighting a character, field, or cursor 
  20908.        by reversing the color of the character, field, or cursor with its 
  20909.        background; for example, changing a red character on a black background 
  20910.        to a black character on a red background. (2) In SAA Basic Common User 
  20911.        Access architecture, a screen emphasis feature that interchanges the 
  20912.        foreground and background colors of an item. 
  20913.  
  20914.      REXX Language  - Restructured Extended Executor. A procedural language 
  20915.        that provides batch language functions along with structured programming 
  20916.        constructs such as loops; conditional testing and subroutines. 
  20917.  
  20918.      RGB  - (1) Color coding in which the brightness of the additive primary 
  20919.        colors of light, red, green, and blue, are specified as three distinct 
  20920.        values of white light. (2) Pertaining to a color display that accepts 
  20921.        signals representing red, green, and blue. 
  20922.  
  20923.      roman  - Relating to a type style with upright characters. 
  20924.  
  20925.      root segment  - In a hierarchical database, the highest segment in the 
  20926.        tree structure. 
  20927.  
  20928.      round-robin scheduling  - A process that allows each thread to run for a 
  20929.        specified amount of time. 
  20930.  
  20931.      run time  - (1) Any instant at which the execution of a particular 
  20932.        computer program takes place. (T)  (2) The amount of time needed for the 
  20933.        execution of a particular computer program. (T)  (3) The time during 
  20934.        which an instruction in an instruction register is decoded and 
  20935.        performed. Synonym for execution time. 
  20936.  
  20937.  
  20938. ΓòÉΓòÉΓòÉ <hidden> Glossary - S ΓòÉΓòÉΓòÉ
  20939.  
  20940.      SAA  - Systems Application Architecture. 
  20941.  
  20942.      SBCS  - Single-byte character set. 
  20943.  
  20944.      scheduler  - A computer program designed to perform functions such as 
  20945.        scheduling, initiation, and termination of jobs. 
  20946.  
  20947.      screen  - In SAA Basic Common User Access architecture, the physical 
  20948.        surface of a display device upon which information is shown to a user. 
  20949.  
  20950.      screen device context  - A logical description of a data destination that 
  20951.        is a particular window on the screen. See also device context. 
  20952.  
  20953.      SCREEN$  - Character-device name reserved for the display screen. 
  20954.  
  20955.      scroll bar  - In SAA Advanced Common User Access architecture, a part of a 
  20956.        window, associated with a scrollable area, that a user interacts with to 
  20957.        see information that is not currently allows visible. 
  20958.  
  20959.      scrollable entry field  - An entry field larger than the visible field. 
  20960.  
  20961.      scrollable selection field  - A selection field that contains more choices 
  20962.        than are visible. 
  20963.  
  20964.      scrolling  - Moving a display image vertically or horizontally in a manner 
  20965.        such that new data appears at one edge, as existing data disappears at 
  20966.        the opposite edge. 
  20967.  
  20968.      secondary window  - A window that contains information that is dependent 
  20969.        on information in a primary window and is used to supplement the 
  20970.        interaction in the primary window. 
  20971.  
  20972.      sector  - On disk or diskette storage, an addressable subdivision of a 
  20973.        track used to record one block of a program or data. 
  20974.  
  20975.      segment  - See graphics segment. 
  20976.  
  20977.      segment attributes  - Attributes that apply to the segment as an entity, 
  20978.        as opposed to the individual primitives within the segment. For example, 
  20979.        the visibility or detectability of a segment. 
  20980.  
  20981.      segment chain  - All segments in a graphics presentation space that are 
  20982.        defined with the `chained' attribute. Synonym for picture chain. 
  20983.  
  20984.      segment priority  - The order in which segments are drawn. 
  20985.  
  20986.      segment store  - An area in a normal graphics presentation space where 
  20987.        retained graphics segments are stored. 
  20988.  
  20989.      select  - To mark or choose an item. Note that select means to mark or 
  20990.        type in a choice on the screen; enter means to send all selected choices 
  20991.        to the computer for processing. 
  20992.  
  20993.      select button  - The button on a pointing device, such as a mouse, that is 
  20994.        pressed to select a menu choice.  Also known as button 1. 
  20995.  
  20996.      selection cursor  - In SAA Advanced Common User Access architecture, a 
  20997.        visual indication that a user has selected a choice. It is represented 
  20998.        by outlining the choice with a dotted box. See also text cursor. 
  20999.  
  21000.      selection field  - (1) In SAA Advanced Common User Access architecture, a 
  21001.        set of related choices. See also entry field. (2) In SAA Basic Common 
  21002.        User Access architecture, an area of a panel that cannot be scrolled and 
  21003.        contains a fixed number of choices. 
  21004.  
  21005.      semantics  - The relationships between symbols and their meanings. 
  21006.  
  21007.      semaphore  - An object used by applications for signalling purposes and 
  21008.        for controlling access to serially reusable resources. 
  21009.  
  21010.      separator  - In SAA Advanced Common User Access architecture, a line or 
  21011.        color boundary that provides a visual distinction between two adjacent 
  21012.        areas. 
  21013.  
  21014.      serial dialog box  - See modal dialog box. 
  21015.  
  21016.      serialization  - The consecutive ordering of items. 
  21017.  
  21018.      serialize  - To ensure that one or more events occur in a specified 
  21019.        sequence. 
  21020.  
  21021.      serially reusable resource (SRR)  - A logical resource or object that can 
  21022.        be accessed by only one task at a time. 
  21023.  
  21024.      session  - (1) A routing mechanism for user interaction via the console; a 
  21025.        complete environment that determines how an application runs and how 
  21026.        users interact with the application. OS/2 can manage more than one 
  21027.        session at a time, and more than one process can run in a session. Each 
  21028.        session has its own set of environment variables that determine where 
  21029.        OS/2 looks for dynamic-link libraries and other important files. (2) (D 
  21030.        of C) In the OS/2 operating system, one instance of a started program or 
  21031.        command prompt. Each session is separate from all other sessions that 
  21032.        might be running on the computer. The operating system is responsible 
  21033.        for coordinating the resources that each session uses, such as computer 
  21034.        memory, allocation of processor time, and windows on the screen. 
  21035.  
  21036.      Settings Notebook  - A control window that is used to display the settings 
  21037.        for an object and to enable the user to change them. 
  21038.  
  21039.      shadow  - An object that refers to another object. A shadow is not a copy 
  21040.        of another object, but is another representation of the object. 
  21041.  
  21042.      shadow box  - The area on the screen that follows mouse movements and 
  21043.        shows what shape the window will take if the mouse button is released. 
  21044.  
  21045.      shared data  - Data that is used by two or more programs. 
  21046.  
  21047.      shared memory  - In the OS/2 operating system, a segment that can be used 
  21048.        by more than one program. 
  21049.  
  21050.      shear  - In computer graphics, the forward or backward slant of a graphics 
  21051.        symbol or string of such symbols relative to a line perpendicular to the 
  21052.        baseline of the symbol. 
  21053.  
  21054.      shell  - (1) A software interface between a user and the operating system 
  21055.        of a computer. Shell programs interpret commands and user interactions 
  21056.        on devices such as keyboards, pointing devices, and touch-sensitive 
  21057.        screens, and communicate them to the operating system. (2) Software that 
  21058.        allows a kernel program to run under different operating-system 
  21059.        environments. 
  21060.  
  21061.      shutdown  - The process of ending operation of a system or a subsystem, 
  21062.        following a defined procedure. 
  21063.  
  21064.      sibling processes  - Child processes that have the same parent process. 
  21065.  
  21066.      sibling windows  - Child windows that have the same parent window. 
  21067.  
  21068.      simple list  - A list of like values; for example, a list of user names. 
  21069.        Contrast with mixed list. 
  21070.  
  21071.      single-byte character set (SBCS)  - A character set in which each 
  21072.        character is represented by a one-byte code.  Contrast with double-byte 
  21073.        character set. 
  21074.  
  21075.      slider box  - In SAA Advanced Common User Access architecture: a part of 
  21076.        the scroll bar that shows the position and size of the visible 
  21077.        information in a window relative to the total amount of information 
  21078.        available. Also known as thumb mark. 
  21079.  
  21080.      SOM  - System Object Model. 
  21081.  
  21082.      source file  - A file that contains source statements for items such as 
  21083.        high-level language programs and data description specifications. 
  21084.  
  21085.      source statement  - A statement written in a programming language. 
  21086.  
  21087.      specific dynamic-link module  - A dynamic-link module created for the 
  21088.        exclusive use of an application. 
  21089.  
  21090.      spin button  - In SAA Advanced Common User Access architecture, a type of 
  21091.        entry field that shows a scrollable ring of choices from which a user 
  21092.        can select a choice. After the last choice is displayed, the first 
  21093.        choice is displayed again.  A user can also type a choice from the 
  21094.        scrollable ring into the entry field without interacting with the spin 
  21095.        button. 
  21096.  
  21097.      spline  - A sequence of one or more B╨Æzier curves. 
  21098.  
  21099.      spooler  - A program that intercepts the data going to printer devices and 
  21100.        writes it to disk. The data is printed or plotted when it is complete 
  21101.        and the required device is available.  The spooler prevents output from 
  21102.        different sources from being intermixed. 
  21103.  
  21104.      stack  - A list constructed and maintained so that the next data element 
  21105.        to be retrieved is the most recently stored. This method is 
  21106.        characterized as last-in-first-out (LIFO). 
  21107.  
  21108.      standard window  - A collection of window elements that form a panel. The 
  21109.        standard window can include one or more of the following window 
  21110.        elements: sizing borders, system menu icon, title bar, 
  21111.        maximize/minimize/restore icons, action bar and pull-downs, scroll bars, 
  21112.        and client area. 
  21113.  
  21114.      static control  - The means by which the application presents descriptive 
  21115.        information (for example, headings and descriptors) to the user. The 
  21116.        user cannot change this information. 
  21117.  
  21118.      static storage  - (1) A read/write storage unit in which data is retained 
  21119.        in the absence of control signals. (A)  Static storage may use dynamic 
  21120.        addressing or sensing circuits. (2) Storage other than dynamic storage. (A)
  21121.  
  21122.      style  - See window style. 
  21123.  
  21124.      subclass  - A class that is a child of another class. See also 
  21125.        Inheritance. 
  21126.  
  21127.      subdirectory  - In an IBM personal computer, a file referred to in a root 
  21128.        directory that contains the names of other files stored on the diskette 
  21129.        or fixed disk. 
  21130.  
  21131.      swapping  - (1) A process that interchanges the contents of an area of 
  21132.        real storage with the contents of an area in auxiliary storage. 
  21133.        (I)  (A)  (2) In a system with virtual storage, a paging technique that 
  21134.        writes the active pages of a job to auxiliary storage and reads pages of 
  21135.        another job from auxiliary storage into real storage. (3) The process of 
  21136.        temporarily removing an active job from main storage, saving it on disk, 
  21137.        and processing another job in the area of main storage formerly occupied 
  21138.        by the first job. 
  21139.  
  21140.      switch  - (1) In SAA usage, to move the cursor from one point of interest 
  21141.        to another;  for example, to move from one screen or window to another 
  21142.        or from a place within a displayed image to another place on the same 
  21143.        displayed image. (2) In a computer program, a conditional instruction 
  21144.        and an indicator to be interrogated by that instruction. (3) A device or 
  21145.        programming technique for making a selection, for example, a toggle, a 
  21146.        conditional jump. 
  21147.  
  21148.      switch list  - See Task List. 
  21149.  
  21150.      symbolic identifier  - A text string that equates to an integer value in 
  21151.        an include file, which is used to identify a programming object. 
  21152.  
  21153.      symbols  - In Information Presentation Facility, a document element used 
  21154.        to produce characters that cannot be entered from the keyboard. 
  21155.  
  21156.      synchronous  - Pertaining to two or more processes that depend upon the 
  21157.        occurrence of specific events such as common timing signals. (T)  See 
  21158.        also asynchronous. 
  21159.  
  21160.      System Menu  - In the Presentation Manager, the pull-down in the top left 
  21161.        corner of a window that allows it to be moved and sized with the 
  21162.        keyboard. 
  21163.  
  21164.      System Object Model (SOM)  - A mechanism for language-neutral, 
  21165.        object-oriented programming in the OS/2 environment. 
  21166.  
  21167.      system queue  - The master queue for all pointer device or keyboard 
  21168.        events. 
  21169.  
  21170.      system-defined messages  - Messages that control the operations of 
  21171.        applications and provides input an other information for applications to 
  21172.        process. 
  21173.  
  21174.      Systems Application Architecture (SAA)  - A set of IBM software 
  21175.        interfaces, conventions, and protocols that provide a framework for 
  21176.        designing and developing applications that are consistent across 
  21177.        systems. 
  21178.  
  21179.  
  21180. ΓòÉΓòÉΓòÉ <hidden> Glossary - T ΓòÉΓòÉΓòÉ
  21181.  
  21182.      table tags  - In Information Presentation Facility, a document element 
  21183.        that formats text in an arrangement of rows and columns. 
  21184.  
  21185.      tag  - (1) One or more characters attached to a set of data that contain 
  21186.        information about the set, including its identification. (I)  (A)  (2) 
  21187.        In Generalized Markup Language markup, a name for a type of document or 
  21188.        document element that is entered in the source document to identify it. 
  21189.  
  21190.      target object  - An object to which the user is transferring information. 
  21191.  
  21192.      Task List  - In the Presentation Manager, the list of programs that are 
  21193.        active. The list can be used to switch to a program and to stop 
  21194.        programs. 
  21195.  
  21196.      terminate-and-stay-resident (TSR)  - Pertaining to an application that 
  21197.        modifies an operating system interrupt vector to point to its own 
  21198.        location (known as hooking an interrupt). 
  21199.  
  21200.      text  - Characters or symbols. 
  21201.  
  21202.      text cursor  - A symbol displayed in an entry field that indicates where 
  21203.        typed input will appear. 
  21204.  
  21205.      text window  - Also known as the VIO window. 
  21206.  
  21207.      text-windowed application  - The environment in which the operating system 
  21208.        performs advanced-video input and output operations. 
  21209.  
  21210.      thread  - A unit of execution within a process. It uses the resources of 
  21211.        the process. 
  21212.  
  21213.      thumb mark  - The portion of the scroll bar that describes the range and 
  21214.        properties of the data that is currently visible in a window. Also known 
  21215.        as a slider box. 
  21216.  
  21217.      thunk  - Term used to describe the process of address conversion, stack 
  21218.        and structure realignment, etc., necessary when passing control between 
  21219.        16-bit and 32-bit modules. 
  21220.  
  21221.      tilde  - A mark used to denote the character that is to be used as a 
  21222.        mnemonic when selecting text items within a menu. 
  21223.  
  21224.      time slice  - (1) An interval of time on the processing unit allocated for 
  21225.        use in performing a task. After the interval has expired, 
  21226.        processing-unit time is allocated to another task, so a task cannot 
  21227.        monopolize processing-unit time beyond a fixed limit. (2) In systems 
  21228.        with time sharing, a segment of time allocated to a terminal job. 
  21229.  
  21230.      time-critical process  - A process that must be performed within a 
  21231.        specified time after an event has occurred. 
  21232.  
  21233.      timer  - A facility provided under the Presentation Manager, whereby 
  21234.        Presentation Manager will dispatch a message of class WM_TIMER to a 
  21235.        particular window at specified intervals. This capability may be used by 
  21236.        an application to perform a specific processing task at predetermined 
  21237.        intervals, without the necessity for the application to explicitly keep 
  21238.        track of the passage of time. 
  21239.  
  21240.      timer tick  - See clock tick. 
  21241.  
  21242.      title bar  - In SAA Advanced Common User Access architecture, the area at 
  21243.        the top of each window that contains the window title and system menu 
  21244.        icon. When appropriate, it also contains the minimize, maximize, and 
  21245.        restore icons. Contrast with panel title. 
  21246.  
  21247.      TLB  - Translation lookaside buffer. 
  21248.  
  21249.      transaction  - An exchange between a workstation and another device that 
  21250.        accomplishes a particular action or result. 
  21251.  
  21252.      transform  - (1) The action of modifying a picture by scaling, shearing, 
  21253.        reflecting, rotating, or translating. (2) The object that performs or 
  21254.        defines such a modification; also referred to as a transformation. 
  21255.  
  21256.      Translation lookaside buffer (TLB)  - A hardware-based address caching 
  21257.        mechanism for paging information. 
  21258.  
  21259.      Tree  - In the Presentation Manager, the window in the File Manager that 
  21260.        shows the organization of drives and directories. 
  21261.  
  21262.      truncate  - (1) To terminate a computational process in accordance with 
  21263.        some rule (A)  (2) To remove the beginning or ending elements of a 
  21264.        string. (3) To drop data that cannot be printed or displayed in the line 
  21265.        width specified or available. (4) To shorten a field or statement to a 
  21266.        specified length. 
  21267.  
  21268.      TSR  - Terminate-and-stay-resident. 
  21269.  
  21270.      unnamed pipe  - A circular buffer, created in memory, used by related 
  21271.        processes to communicate with one another. Contrast with named pipe. 
  21272.  
  21273.      unordered list  - In Information Presentation Facility, a vertical 
  21274.        arrangement of items in a list, with each item in the list preceded by a 
  21275.        special character or bullet. 
  21276.  
  21277.      update region  - A system-provided area of dynamic storage containing one 
  21278.        or more (not necessarily contiguous) rectangular areas of a window that 
  21279.        are visually invalid or incorrect, and therefore are in need of 
  21280.        repainting. 
  21281.  
  21282.      user interface  - Hardware, software, or both that allows a user to 
  21283.        interact with and perform operations on a system, program, or device. 
  21284.  
  21285.      User Shell  - A component of OS/2 that uses a graphics-based, windowed 
  21286.        interface to allow the user to manage applications and files installed 
  21287.        and running under OS/2. 
  21288.  
  21289.      utility program  - (1) A computer program in general support of computer 
  21290.        processes; for example, a diagnostic program, a trace program, a sort 
  21291.        program. (T)  (2) A program designed to perform an everyday task such as 
  21292.        copying data from one storage device to another. (A)
  21293.  
  21294.  
  21295. ΓòÉΓòÉΓòÉ <hidden> Glossary - U ΓòÉΓòÉΓòÉ
  21296.  
  21297. There are no glossary terms for this starting letter. 
  21298.  
  21299.  
  21300. ΓòÉΓòÉΓòÉ <hidden> Glossary - V ΓòÉΓòÉΓòÉ
  21301.  
  21302.      value set control  - A visual component that enables a user to select one 
  21303.        choice from a group of mutually exclusive choices. 
  21304.  
  21305.      vector font  - A set of symbols, each of which is created as a series of 
  21306.        lines and curves. Synonymous with outline font. Contrast with image 
  21307.        font. 
  21308.  
  21309.      VGA  - Video graphics array. 
  21310.  
  21311.      view  - A way of looking at an object's information. 
  21312.  
  21313.      viewing pipeline  - The series of transformations applied to a graphic 
  21314.        object to map the object to the device on which it is to be presented. 
  21315.  
  21316.      viewing window  - A clipping boundary that defines the visible part of 
  21317.        model space. 
  21318.  
  21319.      VIO  - Video Input/Output. 
  21320.  
  21321.      virtual memory (VM)  - Synonymous with virtual storage. 
  21322.  
  21323.      virtual storage  - (1) The storage space that may be regarded as 
  21324.        addressable main storage by the user of a computer system in which 
  21325.        virtual addresses are mapped into real addresses. The size of virtual 
  21326.        storage is limited by the addressing scheme of the computer system and 
  21327.        by the amount of auxiliary storage available, not by the actual number 
  21328.        of main storage locations. (I)  (A)  (2) Addressable space that is 
  21329.        apparent to the user as the processor storage space, from which the 
  21330.        instructions and the data are mapped into the processor storage 
  21331.        locations. (3) Synonymous with virtual memory. 
  21332.  
  21333.      visible region  - A window's presentation space, clipped to the boundary 
  21334.        of the window and the boundaries of any overlying window. 
  21335.  
  21336.      volume  - (1) A file-system driver that uses a block device driver for 
  21337.        input and output operations to a local or remote device. (I)  (2) A 
  21338.        portion of data, together with its data carrier, that can be handled 
  21339.        conveniently as a unit. 
  21340.  
  21341.  
  21342. ΓòÉΓòÉΓòÉ <hidden> Glossary - W ΓòÉΓòÉΓòÉ
  21343.  
  21344.      wildcard character  - Synonymous with global file-name character. 
  21345.  
  21346.      window  - (1) A portion of a display surface in which display images 
  21347.        pertaining to a particular application can be presented. Different 
  21348.        applications can be displayed simultaneously in different 
  21349.        windows. (A)  (2) An area of the screen with visible boundaries within 
  21350.        which information is displayed. A window can be smaller than or the same 
  21351.        size as the screen. Windows can appear to overlap on the screen. 
  21352.  
  21353.      window class  - The grouping of windows whose processing needs conform to 
  21354.        the services provided by one window procedure. 
  21355.  
  21356.      window coordinates  - A set of coordinates by which a window position or 
  21357.        size is defined; measured in device units, or pels. 
  21358.  
  21359.      window handle  - Unique identifier of a window, generated by Presentation 
  21360.        Manager when the window is created, and used by applications to direct 
  21361.        messages to the window. 
  21362.  
  21363.      window procedure  - Code that is activated in response to a message. The 
  21364.        procedure controls the appearance and behavior of its associated 
  21365.        windows. 
  21366.  
  21367.      window rectangle  - The means by which the size and position of a window 
  21368.        is described in relation to the desktop window. 
  21369.  
  21370.      window resource  - A read-only data segment stored in the .EXE file of an 
  21371.        application o the .DLL file of a dynamic link library. 
  21372.  
  21373.      window style  - The set of properties that influence how events related to 
  21374.        a particular window will be processed. 
  21375.  
  21376.      window title  - In SAA Advanced Common User Access architecture, the area 
  21377.        in the title bar that contains the name of the application and the OS/2 
  21378.        operating system file name, if applicable. 
  21379.  
  21380.      Workplace Shell  - The OS/2 object-oriented, graphical user interface. 
  21381.  
  21382.      workstation  - (1) A display screen together with attachments such as a 
  21383.        keyboard, a local copy device, or a tablet. (2) (D of C) One or more 
  21384.        programmable or nonprogrammable devices that allow a user to do work. 
  21385.  
  21386.      world coordinates  - A device-independent Cartesian coordinate system used 
  21387.        by the application program for specifying graphical input and output. (I)  (A)
  21388.  
  21389.      world-coordinate space  - Coordinate space in which graphics are defined 
  21390.        before transformations are applied. 
  21391.  
  21392.      WYSIWYG  - What-You-See-Is-What-You-Get. A capability of a text editor to 
  21393.        continually display pages exactly as they will be printed. 
  21394.  
  21395.  
  21396. ΓòÉΓòÉΓòÉ <hidden> Glossary - X ΓòÉΓòÉΓòÉ
  21397.  
  21398. There are no glossary terms for this starting letter. 
  21399.  
  21400.  
  21401. ΓòÉΓòÉΓòÉ <hidden> Glossary - Y ΓòÉΓòÉΓòÉ
  21402.  
  21403. There are no glossary terms for this starting letter. 
  21404.  
  21405.  
  21406. ΓòÉΓòÉΓòÉ <hidden> Glossary - Z ΓòÉΓòÉΓòÉ
  21407.  
  21408.      z-order  - The order in which sibling windows are presented. The topmost 
  21409.        sibling window obscures any portion of the siblings that it overlaps; 
  21410.        the same effect occurs down through the order of lower sibling windows. 
  21411.  
  21412.      zooming  - The progressive scaling of an entire display image in order to 
  21413.        give the visual impression of movement of all or part of a display group 
  21414.        toward or away from an observer. (I)  (A)
  21415.  
  21416.      8.3 file-name format  - A file-naming convention in which file names are 
  21417.        limited to eight characters before and three characters after a single 
  21418.        dot. Usually pronounced "eight-dot-three." See also non-8.3 file-name 
  21419.        format. 
  21420.