home *** CD-ROM | disk | FTP | other *** search
/ DP Tool Club 14 / CD_ASCQ_14_0694.iso / news / 4547 / pgx122 / ptg_ref.doc < prev    next >
Text File  |  1994-02-16  |  46KB  |  1,771 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7.  
  8.  
  9.  
  10.  
  11.  
  12.  
  13.  
  14.             ▀▀▀▀▀   ▀    ▀▀▀▀▀
  15.            ▀▀   ▀▀  ▀▄  ▀▀        ▀▀   ▀  ▀
  16.            ▀▀▀▀▀▀  ▄▀  ▀▀▀  ▀▀▀▀ ▀▄▄▀ ▀ ▀ ▀
  17.            ▀▀       ▀   ▀▀   ▀▀  ▀    ▀  ▀▀   1.20
  18.            ▀▀        ▀▀   ▀▀▀▀▀    ▀▀  ▀   ▀
  19.  
  20.  
  21.            (c) Copyright 1991, 1993 by Nederware, a dutch software company
  22.  
  23.  
  24.            Reference Guide
  25.  
  26.  
  27.            written by Berend de Boer
  28.  
  29.  
  30.  
  31.  
  32.  
  33.  
  34.  
  35.  
  36.  
  37.  
  38.  
  39.  
  40.  
  41.  
  42.  
  43.  
  44.  
  45.  
  46.  
  47.  
  48.  
  49.  
  50.  
  51.  
  52.  
  53.  
  54.  
  55.  
  56.  
  57.  
  58.  
  59.  
  60.                            PtGen reference manual - page 1
  61.  
  62.  
  63.  
  64.  
  65.  
  66.                                   TABLE OF CONTENTS
  67.  
  68.  
  69.  
  70.           OBJECT APPLICATION  . . . . . . . . . . . . . . . . . . . . .   1
  71.                Creating a new application . . . . . . . . . . . . . . .   1
  72.                Loading an application . . . . . . . . . . . . . . . . .   1
  73.                Application configuration  . . . . . . . . . . . . . . .   1
  74.                Editing an application . . . . . . . . . . . . . . . . .   1
  75.                Saving an application  . . . . . . . . . . . . . . . . .   2
  76.  
  77.           OBJECT MENUBAR  . . . . . . . . . . . . . . . . . . . . . . .   3
  78.                Creating a Line  . . . . . . . . . . . . . . . . . . . .   3
  79.                Creating a Submenu . . . . . . . . . . . . . . . . . . .   3
  80.                Creating a Menu entry  . . . . . . . . . . . . . . . . .   3
  81.                Editing menuitems  . . . . . . . . . . . . . . . . . . .   3
  82.                Deleting menuitems . . . . . . . . . . . . . . . . . . .   3
  83.                Creating Links . . . . . . . . . . . . . . . . . . . . .   4
  84.                Deleting Links . . . . . . . . . . . . . . . . . . . . .   4
  85.  
  86.           OBJECT STATUSLINE . . . . . . . . . . . . . . . . . . . . . .   5
  87.  
  88.           OBJECT DESKTOP  . . . . . . . . . . . . . . . . . . . . . . .   6
  89.                Desktop Local Menu . . . . . . . . . . . . . . . . . . .   6
  90.  
  91.           COMMANDS  . . . . . . . . . . . . . . . . . . . . . . . . . .   7
  92.  
  93.           HELPTEXTS . . . . . . . . . . . . . . . . . . . . . . . . . .   8
  94.                Helpconstants  . . . . . . . . . . . . . . . . . . . . .   8
  95.                Statusline helptext  . . . . . . . . . . . . . . . . . .   8
  96.                HelpWindow text  . . . . . . . . . . . . . . . . . . . .   8
  97.                Help dialog box  . . . . . . . . . . . . . . . . . . . .   9
  98.  
  99.           OBJECTS DIALOG BOX  . . . . . . . . . . . . . . . . . . . . .  10
  100.                Creating objects . . . . . . . . . . . . . . . . . . . .  10
  101.                Editing objects  . . . . . . . . . . . . . . . . . . . .  10
  102.                Deleting objects . . . . . . . . . . . . . . . . . . . .  10
  103.                Cloning objects  . . . . . . . . . . . . . . . . . . . .  10
  104.  
  105.           OBJECT DIALOG BOX . . . . . . . . . . . . . . . . . . . . . .  11
  106.                The Dialog Local Menu  . . . . . . . . . . . . . . . . .  11
  107.                Dialog settings  . . . . . . . . . . . . . . . . . . . .  11
  108.                The Dialog subviews  . . . . . . . . . . . . . . . . . .  11
  109.                     Button  . . . . . . . . . . . . . . . . . . . . . .  12
  110.                     Static text . . . . . . . . . . . . . . . . . . . .  12
  111.                     Label . . . . . . . . . . . . . . . . . . . . . . .  12
  112.                     Inputline . . . . . . . . . . . . . . . . . . . . .  12
  113.                     Memo  . . . . . . . . . . . . . . . . . . . . . . .  13
  114.                     Checkboxes  . . . . . . . . . . . . . . . . . . . .  13
  115.                     Radiobuttons  . . . . . . . . . . . . . . . . . . .  13
  116.                     Spinbuttons . . . . . . . . . . . . . . . . . . . .  13
  117.                     ListViewer  . . . . . . . . . . . . . . . . . . . .  13
  118.  
  119.                            PtGen reference manual - page i
  120.  
  121.  
  122.  
  123.  
  124.  
  125.                Moving and Resizing subviews . . . . . . . . . . . . . .  14
  126.                Changing the Tab-order of the subviews . . . . . . . . .  14
  127.                Creating a record  . . . . . . . . . . . . . . . . . . .  14
  128.                Code button  . . . . . . . . . . . . . . . . . . . . . .  15
  129.  
  130.           OBJECT POPUP  . . . . . . . . . . . . . . . . . . . . . . . .  16
  131.  
  132.           UNIT BBDLG  . . . . . . . . . . . . . . . . . . . . . . . . .  17
  133.  
  134.           UNIT BBERROR  . . . . . . . . . . . . . . . . . . . . . . . .  18
  135.  
  136.           UNIT BBFILE . . . . . . . . . . . . . . . . . . . . . . . . .  19
  137.  
  138.           UNIT BBSTRRES . . . . . . . . . . . . . . . . . . . . . . . .  21
  139.  
  140.           UNIT BBUTIL . . . . . . . . . . . . . . . . . . . . . . . . .  22
  141.  
  142.           UNIT BBVALIDATE . . . . . . . . . . . . . . . . . . . . . . .  24
  143.  
  144.           PTGEN TECHNICAL INFORMATION . . . . . . . . . . . . . . . . .  25
  145.  
  146.           ERROR CODES . . . . . . . . . . . . . . . . . . . . . . . . .  26
  147.  
  148.           INDEX . . . . . . . . . . . . . . . . . . . . . . . . . . . .  27
  149.  
  150.  
  151.  
  152.  
  153.  
  154.  
  155.  
  156.  
  157.  
  158.  
  159.  
  160.  
  161.  
  162.  
  163.  
  164.  
  165.  
  166.  
  167.  
  168.  
  169.  
  170.  
  171.  
  172.  
  173.  
  174.  
  175.  
  176.  
  177.  
  178.                            PtGen reference manual - page ii
  179.  
  180.  
  181.  
  182.  
  183.  
  184.                                   OBJECT APPLICATION
  185.  
  186.  
  187.           PtGen is application oriented, that it: it assumes that you
  188.           develop complete applications with PtGen. Although it is possible
  189.           just to use the dialog box editing features alone, you won't take
  190.           full advantage of PtGen. This chapter discusses the application
  191.           object you create.
  192.  
  193.  
  194.           Creating a new application
  195.  
  196.           If you want to create a new application, select File|New from the
  197.           menubar. The application configuration dialog box pops up. See
  198.           the section about Application configuration for further details.
  199.           Next you can edit your application.
  200.  
  201.  
  202.           Loading an application
  203.  
  204.           Select File|Open to load a previous saved application. From the
  205.           File dialog box choose the file with the application you want to
  206.           load.
  207.  
  208.  
  209.           Application configuration
  210.  
  211.           For every application you have to specify:
  212.           1.   its name. PtGen will automatically prefix the name (and any
  213.                name) with a 'T'
  214.           2.   the language to use: English or Dutch.
  215.           3.   If it uses a helpfile and if yes, the name of the ascii
  216.                version of that helpfile. Do not specify the TVHC compiled
  217.                file, with extension .HLP, but the text file, usually .TXT.
  218.           4.   If it uses the editor. If yes, than the commands from
  219.                EDITORS.PAS are added to the standard available commands
  220.                which can be used when creating menus. Added are:
  221.                     cmNew
  222.                     cmOpen
  223.                     cmSave
  224.                     cmSaveAs
  225.                     cmPrint
  226.           5.   If it uses the background printing unit.
  227.  
  228.  
  229.           Editing an application
  230.  
  231.           Press Edit (Ctrl-F8) or select Edit from the menubar to edit your
  232.           application. You can now edit the menubar (see chapter Object
  233.           MenuBar) and statusline (see chapter Object Statusline) and
  234.           create various objects (see chapter Creating Objects).
  235.           After you have edited an application, pressing Alt-X brings you
  236.  
  237.                            PtGen reference manual - page 1
  238.  
  239.  
  240.  
  241.  
  242.  
  243.           back in PtGen. You can now save your application, see chapter
  244.           Saving an application.
  245.  
  246.  
  247.           Saving an application
  248.  
  249.           Select File|Save or File|Save as to save your application. If you
  250.           don't specify an extension, .PAS will be added.
  251.  
  252.  
  253.  
  254.  
  255.  
  256.  
  257.  
  258.  
  259.  
  260.  
  261.  
  262.  
  263.  
  264.  
  265.  
  266.  
  267.  
  268.  
  269.  
  270.  
  271.  
  272.  
  273.  
  274.  
  275.  
  276.  
  277.  
  278.  
  279.  
  280.  
  281.  
  282.  
  283.  
  284.  
  285.  
  286.  
  287.  
  288.  
  289.  
  290.  
  291.  
  292.  
  293.  
  294.  
  295.  
  296.                            PtGen reference manual - page 2
  297.  
  298.  
  299.  
  300.  
  301.  
  302.                                     OBJECT MENUBAR
  303.  
  304.  
  305.           PtGen allows you to quickly define menuitems. The parameters you
  306.           can give to a menuitem are the same as the TMenuItem type, which
  307.           is described in the Turbo Vision manual plus some more. The
  308.           following sections describe the various menuitems you can create.
  309.           See the section Creating Links to read about linking an object to
  310.           a certain menuitem.
  311.  
  312.  
  313.           Creating a Line
  314.  
  315.           Select the menubar and press Ins. Leave the popped up dialog box
  316.           blank and press Enter. A selectable line appears, indicating the
  317.           line your users will see.
  318.           The reason that you do not get the normal line as you would
  319.           expect is that such lines are not selectable so you won't be able
  320.           to delete such lines. When saving your application as source
  321.           code, PtGen puts this right.
  322.  
  323.  
  324.           Creating a Submenu
  325.  
  326.           Select the menubar and press Ins. You create a submenu by only
  327.           specifying a Name and leave the Command and Param fields empty.
  328.           Helptexts can be defined. See chapter Helptexts for a full
  329.           explanation.
  330.  
  331.  
  332.           Creating a Menu entry
  333.  
  334.           Select the menubar and press Ins. You must specify a Name and a
  335.           Command. The other fields can be empty. To a normal menuitem code
  336.           can be linked. This code will be executed when you select this
  337.           menuitem. This code is linked to the Command you specify. PtGen
  338.           will assign a unique value to every command you will create. This
  339.           is different from handcoding Turbo Vision applications. You don't
  340.           have to assign/remember values for your names nor be aware of
  341.           them. Just specify a name. You can specify helptexts if you want.
  342.           See chapter Helptexts for a full explanation.
  343.  
  344.  
  345.           Editing menuitems
  346.  
  347.           All menu entries can be edited by selecting them and pressing
  348.           Edit (Ctrl-F8).
  349.  
  350.  
  351.           Deleting menuitems
  352.  
  353.           All menu entries can be deleted by selecting them and pressing
  354.  
  355.                            PtGen reference manual - page 3
  356.  
  357.  
  358.  
  359.  
  360.  
  361.           Del.
  362.  
  363.  
  364.           Creating Links
  365.  
  366.           If you press Link (Ctrl-F9) the Objects Menu popups up. Select
  367.           the kind of object you want to link to this menuitem. This object
  368.           will be executed when this menuitem is selected. See the chapter
  369.           Objects Dialog box, section creating objects, for all the objects
  370.           you can link to a menuitem.
  371.           If you specified a new object (for example a Dialog box) you can
  372.           edit that object before returning to your menuitem.
  373.  
  374.  
  375.           Deleting Links
  376.  
  377.           Pressing Link (Ctrl-F9) again will delete the link, but the
  378.           associated object is *not* deleted. To delete an object: see
  379.           chapter Object DeskTop, section DeskTop Local Menu.
  380.  
  381.  
  382.  
  383.  
  384.  
  385.  
  386.  
  387.  
  388.  
  389.  
  390.  
  391.  
  392.  
  393.  
  394.  
  395.  
  396.  
  397.  
  398.  
  399.  
  400.  
  401.  
  402.  
  403.  
  404.  
  405.  
  406.  
  407.  
  408.  
  409.  
  410.  
  411.  
  412.  
  413.  
  414.                            PtGen reference manual - page 4
  415.  
  416.  
  417.  
  418.  
  419.  
  420.                                   OBJECT STATUSLINE
  421.  
  422.  
  423.           Change the global statusline by pressing the DeskTop Local Menu
  424.           (Alt-F10) or just clicking on the background with the left mouse
  425.           button. Then select Statusline.
  426.  
  427.           Mouse users:
  428.           Use the New, Edit and Delete buttons to insert, edit and delete
  429.           statusline items.
  430.  
  431.           Keyboard users:
  432.           You can insert items by pressing Ins, delete items by pressing
  433.           Del and edit items by pressing Ctrl-F8.
  434.  
  435.  
  436.  
  437.  
  438.  
  439.  
  440.  
  441.  
  442.  
  443.  
  444.  
  445.  
  446.  
  447.  
  448.  
  449.  
  450.  
  451.  
  452.  
  453.  
  454.  
  455.  
  456.  
  457.  
  458.  
  459.  
  460.  
  461.  
  462.  
  463.  
  464.  
  465.  
  466.  
  467.  
  468.  
  469.  
  470.  
  471.  
  472.  
  473.                            PtGen reference manual - page 5
  474.  
  475.  
  476.  
  477.  
  478.  
  479.                                     OBJECT DESKTOP
  480.  
  481.  
  482.  
  483.  
  484.           Desktop Local Menu
  485.  
  486.           Pressing the mouse button when the mouse cursor is on the desktop
  487.           will popup the Desktop Local Menu. From this popup you can gain
  488.           acces to the statusline edit dialog box, the Objects Dialog box,
  489.           the helptexts menu and the Units Dialog box.
  490.  
  491.  
  492.  
  493.  
  494.  
  495.  
  496.  
  497.  
  498.  
  499.  
  500.  
  501.  
  502.  
  503.  
  504.  
  505.  
  506.  
  507.  
  508.  
  509.  
  510.  
  511.  
  512.  
  513.  
  514.  
  515.  
  516.  
  517.  
  518.  
  519.  
  520.  
  521.  
  522.  
  523.  
  524.  
  525.  
  526.  
  527.  
  528.  
  529.  
  530.  
  531.  
  532.                            PtGen reference manual - page 6
  533.  
  534.  
  535.  
  536.  
  537.  
  538.                                        COMMANDS
  539.  
  540.  
  541.           PtGen assigns numbers to the commands you specify when creating
  542.           or editing menuitems, statusbaritems and dialogbuttons. They
  543.           range from 2000..2999. Their number is not important and can
  544.           change. So refer not to the number but to the command itself as
  545.           usual in Turbo Vision programming.
  546.  
  547.  
  548.  
  549.  
  550.  
  551.  
  552.  
  553.  
  554.  
  555.  
  556.  
  557.  
  558.  
  559.  
  560.  
  561.  
  562.  
  563.  
  564.  
  565.  
  566.  
  567.  
  568.  
  569.  
  570.  
  571.  
  572.  
  573.  
  574.  
  575.  
  576.  
  577.  
  578.  
  579.  
  580.  
  581.  
  582.  
  583.  
  584.  
  585.  
  586.  
  587.  
  588.  
  589.  
  590.  
  591.                            PtGen reference manual - page 7
  592.  
  593.  
  594.  
  595.  
  596.  
  597.                                       HELPTEXTS
  598.  
  599.  
  600.           Theere are three things of interest when discussing helptext
  601.           within PtGen:
  602.           1.   hcConstant, the identifier name of a certain helptext
  603.           2.   Statusline helptext, the text which will appear on the
  604.                statusline when this context is selected
  605.           3.   HelpWindow text, the help text that will appear when you
  606.                press F1.
  607.           All three types of information are discussed below.
  608.  
  609.  
  610.           Helpconstants
  611.  
  612.           PtGen assigns numbers to the helptexts you create. Numbers range
  613.           from 2000..2999. They are not static but change whenever needed.
  614.           If you have to refer to a helpconstant specify a name in the
  615.           hcConstant field. When PtGen writes the text file to be compiled
  616.           with TVHC, a proceeding 'hc' if any will be stripped, because
  617.           TVHC will output a .PAS file with the names you specify prefixed
  618.           with `hc'.
  619.           For menuitems the default hcConstant is equal to the specified
  620.           command except that the preceeding `cm' is replaced by 'hc'. So
  621.           if the command in your menuitem was cmFile the hcConstant will be
  622.           hcFile.
  623.           All hcConstants are listed in the interface section of the unit
  624.           PtGen creates.
  625.  
  626.  
  627.           Statusline helptext
  628.  
  629.           All the helptext which you've specified are saved in the string
  630.           resource file STRINGS.TVR. The Hint method of the PtGen created
  631.           statusline object uses the current HelpCtx to search and displays
  632.           the text in STRINGS.TVR.
  633.  
  634.  
  635.           HelpWindow text
  636.  
  637.           If you want to use HelpWindows you have enable the option in the
  638.           Options section of the Application settings dialog box. You can
  639.           change the settings of your application by selecting App from the
  640.           menubar. You also have to specify a helpfile which will be used
  641.           to save the HelpWindow text in.
  642.           This helpfile is a plain ascii text file, formatted in topics,
  643.           that you can edit yourself.  You can even add text by hand to
  644.           this file although you might find the Help dialog box more
  645.           convenient to do this. 
  646.           To convert the helptexts in this file to a .HLP file you need
  647.           TVHC, the helpfile compiler that came with your package.
  648.  
  649.  
  650.                            PtGen reference manual - page 8
  651.  
  652.  
  653.  
  654.  
  655.  
  656.           Help dialog box
  657.  
  658.           The Help dialog box can be accessed by popping up the Desktop
  659.           Local Menu and selecting Helptext. The Helptext dialog box comes
  660.           up. You can now add, edit or delete helptexts. You can even
  661.           change the values PtGen has assigned although this is not
  662.           recommended. If you change a value to an already existing one,
  663.           your input is ignored.
  664.           If you delete a helptext that is used by PtGen (numbers
  665.           2000..2999) and that helptext is still used by a certain view be
  666.           aware that PtGen will complain about this when you for example
  667.           acces that view or write it to disk. Doing this is therefore not
  668.           recommended too.
  669.  
  670.  
  671.  
  672.  
  673.  
  674.  
  675.  
  676.  
  677.  
  678.  
  679.  
  680.  
  681.  
  682.  
  683.  
  684.  
  685.  
  686.  
  687.  
  688.  
  689.  
  690.  
  691.  
  692.  
  693.  
  694.  
  695.  
  696.  
  697.  
  698.  
  699.  
  700.  
  701.  
  702.  
  703.  
  704.  
  705.  
  706.  
  707.  
  708.  
  709.                            PtGen reference manual - page 9
  710.  
  711.  
  712.  
  713.  
  714.  
  715.                                   OBJECTS DIALOG BOX
  716.  
  717.  
  718.           The Objects Dialog Box appears when you select Objects from the
  719.           Desktop Local Menu. See chapter Object Desktop, section Local
  720.           Menu for how to popup the Desktop Local Menu.
  721.           From this dialog box you can create, edit, delete or clone
  722.           objects. All created objects will be shown in this dialog box.
  723.  
  724.  
  725.           Creating objects
  726.  
  727.           You always create objects by selecting an object type from the
  728.           Available Objects Popup. This popup can appear in two ways: when
  729.           you press Link (Ctrl-F9) to link an object to a menuitem or
  730.           button, or when you press the New button from the Objects Dialog
  731.           Box. Anyway, all objects you create will appear in the Objects
  732.           Dialog Box where they are available for editing and deleting.
  733.           When the Available Objects Popup has appeared you can select
  734.           between predefined and user defined objects.
  735.           The predefined objects are: calculator, change directory dialog
  736.           box and editor. (REMARK: not all predefined objects may currently
  737.           be implemented or included).
  738.           The user defined objects are: dialog box and popup menu. See the
  739.           chapters Dialog box and Popup for details.
  740.  
  741.  
  742.           Editing objects
  743.  
  744.           Select an object and press the Edit button to edit it. You an
  745.           also press the right mouse button on a visible object to edit it.
  746.           Keyboard users may press Edit (Ctrl-F8) to edit the currently
  747.           selected object.
  748.  
  749.  
  750.           Deleting objects
  751.  
  752.           Select an object and press the Del button to delete it. You're
  753.           asked for confirmation, just to be sure.
  754.  
  755.  
  756.           Cloning objects
  757.  
  758.           Select the object to be cloned and press Clone. Currently only
  759.           dialog boxes can be cloned. Every attribute of the subviews in
  760.           the dialog box is cloned, except helptexts.
  761.  
  762.  
  763.  
  764.  
  765.  
  766.  
  767.  
  768.                            PtGen reference manual - page 10
  769.  
  770.  
  771.  
  772.  
  773.  
  774.                                   OBJECT DIALOG BOX
  775.  
  776.  
  777.           Dialog box objects can be created when creating an application.
  778.           It is possible to create a standalone dialog box too.
  779.           To create a standalone dialog box object choose Dialog|New from
  780.           PtGen's main menu. Choose Dialog|Open to read a previously saved
  781.           standalone dialog box. After the standalone dialog box is
  782.           created, you are prompted to specify a filename to save the code
  783.           for this dialog box to.
  784.           Dialog box objects for use within a complete application are
  785.           created when you select Define|Dialog box from the Available
  786.           Objects Popup.
  787.  
  788.           This chapter describes how a dialog box object can be
  789.           constructed.
  790.  
  791.  
  792.           The Dialog Local Menu
  793.  
  794.           You can place objects on the dialog box by pressing Local Menu
  795.           (Alt-F10 and selecting an object. Or, for mouse users, click with
  796.           the left mouse button on the background in the location where you
  797.           want your object to appear. The local menu will popup at that
  798.           location.
  799.           From this local menu you can either place an object into the
  800.           dialog box or acces the settings for this dialog box. See the
  801.           next sections for details.
  802.           If you popped up the local menu with the mouse, after selecting
  803.           an object, that object will be put at the position your mouse was
  804.           before the dialog box local menu popped up.
  805.  
  806.  
  807.           Dialog settings
  808.  
  809.           Select settings from the Dialog Local Menu to edit the dialog
  810.           box. The same dialog box pops up as when first creating a dialog
  811.           box. You can change the name of the dialog box, its title and set
  812.           the helptexts for this dialog box.
  813.  
  814.  
  815.           The Dialog subviews
  816.  
  817.           The next sections comment on the objects you can place on a
  818.           dialog box. Select the appropriate subview from the Dialog Local
  819.           Menu to place that subview on the dialog box. See the section
  820.           titled Moving and Resing subviews on how to change the position
  821.           of a subview.
  822.  
  823.  
  824.  
  825.  
  826.  
  827.                            PtGen reference manual - page 11
  828.  
  829.  
  830.  
  831.  
  832.  
  833.           Button
  834.  
  835.           Some buttons you use so often that they are predefined. Select
  836.           predefined from the Local Menu and select the button you want.
  837.           For other buttons select Button from the Local Menu. You can
  838.           specify its Title and the Command it generates when it is
  839.           selected. You can also specify various button flags. The default
  840.           is bfNormal (no options selected) but you can make a certain
  841.           button the Default one if you click on the default option. All
  842.           bfXXXX constants are supported.
  843.           You can create a helpconstant (see the chapter Helptexts, section
  844.           helpconstants, you don't have to specify this one), a helptext
  845.           which should be displayed on the statusline when this object is
  846.           selected, and a window help text which is displayed when a user
  847.           presses Help (F1). The last three items don't have to be
  848.           specified.
  849.  
  850.           Static text
  851.  
  852.           Select Static Text from the Local Menu and enter the text.
  853.           Specify the control characters ^M (new line) and ^C (center text)
  854.           by entering first a '^' and then a 'M' or 'C'. PtGen replaces
  855.           them with the appropriate control characters.
  856.           If you leave the text empty and press OK the text view will be
  857.           deleted.
  858.  
  859.           Label
  860.  
  861.           You can place a label only if there is some object/view which can
  862.           be labeled. So you insert the view to be labeled first, then the
  863.           Label.
  864.           To create a label Select label from the Dialog Local Menu, enter
  865.           some text and next select an object to link to this label by
  866.           either using the arrow keys and/or Tab/Shift-Tab or by clicking
  867.           on the to-be-labeled view/object with your mouse.
  868.           If you leave the label text empty and press OK the label view
  869.           will be deleted.
  870.           When you label a view, the record identifier (see the subsection
  871.           Creating a record below) will change to the label you specified.
  872.           Note that once a label is attached to a view, it can't be
  873.           attached to another view. If you want a label to reference
  874.           another view, first delete it, then insert a new label with the
  875.           same name.
  876.  
  877.           Inputline
  878.  
  879.           The Inputline menu option shows many InputLines. Each of these
  880.           has different characteristics. The online help will tell you
  881.           more. In this section only the standard InputLine is covered.
  882.           After you've selected Inputline, you're prompted to specify the
  883.           maximum length of the inputline, if this inputline is selectable
  884.           or not (not selectable inputlines can be used to display
  885.  
  886.                            PtGen reference manual - page 12
  887.  
  888.  
  889.  
  890.  
  891.  
  892.           information a user may not change) and if you want to validate
  893.           the contents of the inputline before the inputline looses its
  894.           focus.
  895.  
  896.           If you want to use a validator for this inputline select the
  897.           validator you want from the SpinButtons. Press Edit (Ctrl-F8) to
  898.           edit the validator if the Validator spinbuttons are selected. You
  899.           can specify the parameters for the validator and (optionally) the
  900.           string resource identifer which this identifier should use when
  901.           Error is called. If you don't specify an identifier the default
  902.           sFilterError, sRangeError, sRealError and sPictureError are used
  903.           for TFilterValidator, TRangeValidator, TRealValidator and
  904.           TPXPictureValidator respectively.
  905.  
  906.           You can also specify the usual helpconstant (see the section
  907.           helpconstants in the chapter about helptexts, you don't have to
  908.           specify one), the helptext which should be displayed on the
  909.           statusline when this object is selected and the help window text
  910.           which should be displayed when a user presses Help (F1). The last
  911.           three items don't have to be specified.
  912.  
  913.           Memo
  914.  
  915.           The Memo view is the TMemo object as found in the EDITORS.PAS
  916.           unit. You can specify the same parameters as with InputLine
  917.           except that you can specify a Horizontal or Vertical ScrollBar
  918.           too.
  919.  
  920.           Checkboxes
  921.  
  922.           After selecting checkboxes you have to specify a list of strings.
  923.           In the dialog box you will see, press Ins to insert an item, Del
  924.           to delete one and Ctrl-F8 to edit an item.
  925.           For every text you can specify a different statusline helptext.
  926.  
  927.           Radiobuttons
  928.  
  929.           See Checkboxes.
  930.  
  931.           Spinbuttons
  932.  
  933.           Spinbuttons are one line radiobuttons. Press left or right to
  934.           change to display a different text in a spinbutton. See
  935.           Checkboxes for how to enter a list of strings for Spinbuttons.
  936.  
  937.           ListViewer
  938.  
  939.           A dummy ListViewer object is placed on the dialog box. This
  940.           object is only for layout. Press the code button to specify the
  941.           descendent of ListViewer which you want to insert in the dialog
  942.           box.
  943.  
  944.  
  945.                            PtGen reference manual - page 13
  946.  
  947.  
  948.  
  949.  
  950.  
  951.           Moving and Resizing subviews
  952.  
  953.           The subviews in a dialog box can be moved and resized. Keyboard
  954.           users should press Local resize (Shift-F5) to move and resize the
  955.           currently selected subview.
  956.           If you want to center the subview horizontally or vertically
  957.           press Alt-F5 to popup the Keyboard positioning menu and choose X-
  958.           Center of Y-Center respectivily.
  959.  
  960.           Mouse users should press the Right mouse button on the to be
  961.           resized subview and hold that button down. The Mouse Local Popup
  962.           pops up. Choose Move or Resize to move or resize the subview.
  963.           If you want to center the subview horizontally or vertically
  964.           choose X-Center of Y-Center respectivily from the Mouse Local
  965.           Popup.
  966.  
  967.  
  968.           Changing the Tab-order of the subviews
  969.  
  970.           The Tab-order or Z-order of the subviews can be changed. Keyboard
  971.           users should press Alt-F5 to popup the Keyboard Position menu.
  972.           Choose First to make this subview the first view in the dialog
  973.           box. Choose Next when you want to specify the next subview from
  974.           this subview. After choosing Next you should select the subview
  975.           that should be the next one by tabbing to that subview and
  976.           pressing Enter.
  977.  
  978.           Mouse users should press the Right mouse button on the to be
  979.           repositioned subview and hold that button down. The Mouse Local
  980.           Popup pops up. Choose now First to make this subview the first
  981.           view in the Tab-order sequence. Choose Next to specify the next
  982.           subview after this one. If you choose Next you can now select the
  983.           subvew that should be the next one by clicking on it with either
  984.           mouse button.
  985.  
  986.           REMARK 1: Esc cancels the operation of choosing the next subview
  987.           for both mouse and keyboard users.
  988.           REMARK 2: Labels can't be repositioned. They insert themselves
  989.           always after their link, so you don't have to worry about them.
  990.  
  991.  
  992.           Creating a record
  993.  
  994.           For each dialog box a record can be created. Enable the Record
  995.           option in the dialog settings dialog box (popup the Dialog Local
  996.           Menu and select settings). The created record will have the name
  997.           of the dialog box prefixed by 'T' and suffixed by 'Rec'.
  998.           Each subview (except of course subviews like TStaticText) has its
  999.           own entry in the record for the dialog box. Each subview defaults
  1000.           to some suitable variable name and type.
  1001.           The variable will be equal to the label of that subview. If the
  1002.           subview has no label you have to manually specify the variable
  1003.  
  1004.                            PtGen reference manual - page 14
  1005.  
  1006.  
  1007.  
  1008.  
  1009.  
  1010.           name.
  1011.           To change the record entry of a subview, see the section Code
  1012.           button below.
  1013.  
  1014.  
  1015.           Code button
  1016.  
  1017.           Most subview dialog boxes have a Code button. PtGen lets you
  1018.           change the generated code. The Code Dialog box shows you the
  1019.           variable the allocated subview is assigned to (usually P), which
  1020.           subview to allocate (PInputLine for example), the parameters for
  1021.           this subview (except R, the first parameter which can't be
  1022.           changed), and the entry in the record for this dialog box.
  1023.           You can change the variable name and the type of the variable.
  1024.  
  1025.  
  1026.  
  1027.  
  1028.  
  1029.  
  1030.  
  1031.  
  1032.  
  1033.  
  1034.  
  1035.  
  1036.  
  1037.  
  1038.  
  1039.  
  1040.  
  1041.  
  1042.  
  1043.  
  1044.  
  1045.  
  1046.  
  1047.  
  1048.  
  1049.  
  1050.  
  1051.  
  1052.  
  1053.  
  1054.  
  1055.  
  1056.  
  1057.  
  1058.  
  1059.  
  1060.  
  1061.  
  1062.  
  1063.                            PtGen reference manual - page 15
  1064.  
  1065.  
  1066.  
  1067.  
  1068.  
  1069.                                      OBJECT POPUP
  1070.  
  1071.  
  1072.           The popup object can be edited in the same way as the menubar
  1073.           object. See chapter Menubar for all the details on editing.
  1074.  
  1075.           Press Resize (Ctrl-F5) to move the popup to a different location.
  1076.           Press Local Menu (Alt-F10) to change the name of this popup.
  1077.  
  1078.  
  1079.  
  1080.  
  1081.  
  1082.  
  1083.  
  1084.  
  1085.  
  1086.  
  1087.  
  1088.  
  1089.  
  1090.  
  1091.  
  1092.  
  1093.  
  1094.  
  1095.  
  1096.  
  1097.  
  1098.  
  1099.  
  1100.  
  1101.  
  1102.  
  1103.  
  1104.  
  1105.  
  1106.  
  1107.  
  1108.  
  1109.  
  1110.  
  1111.  
  1112.  
  1113.  
  1114.  
  1115.  
  1116.  
  1117.  
  1118.  
  1119.  
  1120.  
  1121.  
  1122.                            PtGen reference manual - page 16
  1123.  
  1124.  
  1125.  
  1126.  
  1127.  
  1128.                                       UNIT BBDLG
  1129.  
  1130.  
  1131.           Unit BBDlg contains dialog boxes for displaying or getting
  1132.           information. Most of them have a parameter which sets the HelpCtx
  1133.           of the displayed dialog box.
  1134.           Most of the procedures/functions can be used with or without
  1135.           Turbo Vision. If Turbo Vision is not active (Application = nil)
  1136.           text is written to the standard output file.
  1137.           See also PTGEN.TPH, the online manual for references to all
  1138.           functions, variables and types declard in the BBDlg unit.
  1139.  
  1140.           This is an overview of the most important functions/procedures:
  1141.  
  1142.           procedure PrintError(s : string; lm : Languages);
  1143.             Prints an errorbox on the screen with text s. Writes s to the
  1144.             errorlog file if you had installed the exithandler.
  1145.  
  1146.           function  PromptUser(s : string; lm : Languages) : AnswerType;
  1147.             Asks a question like "Do you want to delete this file?" and
  1148.             returns Yes, No or Cancel.
  1149.  
  1150.           function  UserAnswer(s : string; lm : Languages) : AnswerType;
  1151.             Gives the user some information. He has to select the OK button
  1152.             before proceeding. Returned is Yes or Cancel if the users
  1153.             wishes to cancel to process.
  1154.  
  1155.           function  InputString(Header : string; var s : string;
  1156.             len : word; AllowedChars : string; lm : Languages) : word;
  1157.             Prompts user for input and returns OK if user selected the OK
  1158.             button or Cancel if the user canceled the process. Header is
  1159.             the Title which appears on the dialog. Len are the numbers of
  1160.             characters allowed and AllowedChars the chars that can be used
  1161.             like numbers or uppercase characters.
  1162.  
  1163.           function ExecDialog(P: PDialog; Data: Pointer): Word;
  1164.             Executes a dialog. Same as found in sample code for Turbo
  1165.             Vision.
  1166.  
  1167.           function PassWord(s : string; lm : Languages) : Boolean;
  1168.             Prompts the user to enter a password and returns TRUE if the
  1169.             password equals s.
  1170.  
  1171.  
  1172.  
  1173.  
  1174.  
  1175.  
  1176.  
  1177.  
  1178.  
  1179.  
  1180.  
  1181.                            PtGen reference manual - page 17
  1182.  
  1183.  
  1184.  
  1185.  
  1186.  
  1187.                                      UNIT BBERROR
  1188.  
  1189.  
  1190.           The unit BBERROR contains the error handling for your programs.
  1191.           Exit handling is installed with a call to InstallExitHandler. To
  1192.           include error handling in your programs, include a statement like
  1193.           the following in the beginning of your program:
  1194.  
  1195.                InstallExitHandler('MYERR.LOG', MyApp);
  1196.  
  1197.  
  1198.           The definition of this procedure is:
  1199.  
  1200.           procedure InstallExitHandler(AFileName : PathStr);
  1201.  
  1202.           AFileName is the name of the log file where you want error
  1203.           information be written to. Error information is written to this
  1204.           file when your program crashes. Procedure PrintError from unit
  1205.           BBDLG writes errors to this file too as may lots of other units.
  1206.           The error file is exported as ferr. Your units may write to the
  1207.           error file too by including ExitHandler in your uses clause and
  1208.           simply write to it. Example:
  1209.  
  1210.                writeln(ferr, 'Write to error file');
  1211.  
  1212.  
  1213.  
  1214.  
  1215.  
  1216.  
  1217.  
  1218.  
  1219.  
  1220.  
  1221.  
  1222.  
  1223.  
  1224.  
  1225.  
  1226.  
  1227.  
  1228.  
  1229.  
  1230.  
  1231.  
  1232.  
  1233.  
  1234.  
  1235.  
  1236.  
  1237.  
  1238.  
  1239.  
  1240.                            PtGen reference manual - page 18
  1241.  
  1242.  
  1243.  
  1244.  
  1245.  
  1246.                                      UNIT BBFILE
  1247.  
  1248.  
  1249.           This unit contains file oriented primitives. The following
  1250.           procedures/methods are supplied:
  1251.  
  1252.  
  1253.           procedure DosDel (Path : PathStr);
  1254.           Delete a file. Full wildcard support.
  1255.           Example:
  1256.                DosDel('*.BAK');
  1257.  
  1258.  
  1259.           procedure DosCopy(Source, Destination : PathStr; HelpCtx : word);
  1260.           Copies one or more files to destination. Full wildcard support.
  1261.           Example:
  1262.                DosCopy('A:\*.TXT', 'C:\TMP', hcNocontext);
  1263.  
  1264.  
  1265.           procedure DosMove(Source, Destination : PathStr; HelpCtx : word);
  1266.           Moves dos files to their destionation. Already existing
  1267.           destination files they are removed before the move of the source
  1268.           file takes place.
  1269.  
  1270.  
  1271.           procedure DosWipe(Path : PathStr);
  1272.  
  1273.           Deletes files according to Department of Defense standard DOD
  1274.           5220.22-M. Even the CIA won't be able to read such a file after
  1275.           it has been deleted!
  1276.           Example:
  1277.                DosWipe('SECRETS.TXT');
  1278.  
  1279.  
  1280.           procedure DosTouch(Path : PathStr);
  1281.  
  1282.           Set the date and time of the files (full wildcard support) to the
  1283.           current day and time.
  1284.           Example:
  1285.                Touch('F:\DB4\*.DBF');
  1286.  
  1287.  
  1288.           function  FileExist(FileName : PathStr) : Boolean;
  1289.  
  1290.           Returns true if the specified file exists.
  1291.           Example:
  1292.                if FileExist('MYFILE') then ..
  1293.  
  1294.  
  1295.           function  CreateBAK(FileName : PathStr) : PathStr;
  1296.  
  1297.           Renames FileName to same name and extension .BAK. Returns the
  1298.  
  1299.                            PtGen reference manual - page 19
  1300.  
  1301.  
  1302.  
  1303.  
  1304.  
  1305.           expanded filename of the created .BAK file. Previous .BAK file is
  1306.           deleted.
  1307.           Example:
  1308.                CreateBAK('USER.TXT');
  1309.  
  1310.  
  1311.           function  FileOpen(var f) : Boolean;
  1312.  
  1313.           Returns true if the specified filename is open for Input/Output,
  1314.           Output or Input. Only valid after a filename has been assigned to
  1315.           f.
  1316.           Example:
  1317.                Assign(f, 'TEST.$$$');
  1318.                if FileOpen(f) then ..
  1319.  
  1320.  
  1321.           function FForceExtension(FileName : PathStr; Ext : ExtStr) :
  1322.           string;
  1323.  
  1324.           Returns a filename with the supplied extension A '.' has to be
  1325.           part of Ext.
  1326.           Example:
  1327.                OpenSquish(FForceExtension('\ECHO\COMPMISC', '.SQD'));
  1328.  
  1329.  
  1330.           function FDefaultExtension(FileName : PathStr; Ext : ExtStr) :
  1331.           string;
  1332.  
  1333.           Returns a filename with the supplied extension is the filename
  1334.           didn't have one. A '.' has to be part of Ext.
  1335.           Example:
  1336.                ShowPascalSourceFile(FDefaultExtensions('MYFILE', '.PAS'));
  1337.  
  1338.  
  1339.  
  1340.  
  1341.  
  1342.  
  1343.  
  1344.  
  1345.  
  1346.  
  1347.  
  1348.  
  1349.  
  1350.  
  1351.  
  1352.  
  1353.  
  1354.  
  1355.  
  1356.  
  1357.  
  1358.                            PtGen reference manual - page 20
  1359.  
  1360.  
  1361.  
  1362.  
  1363.  
  1364.                                     UNIT BBSTRRES
  1365.  
  1366.  
  1367.           See the online help.
  1368.  
  1369.  
  1370.  
  1371.  
  1372.  
  1373.  
  1374.  
  1375.  
  1376.  
  1377.  
  1378.  
  1379.  
  1380.  
  1381.  
  1382.  
  1383.  
  1384.  
  1385.  
  1386.  
  1387.  
  1388.  
  1389.  
  1390.  
  1391.  
  1392.  
  1393.  
  1394.  
  1395.  
  1396.  
  1397.  
  1398.  
  1399.  
  1400.  
  1401.  
  1402.  
  1403.  
  1404.  
  1405.  
  1406.  
  1407.  
  1408.  
  1409.  
  1410.  
  1411.  
  1412.  
  1413.  
  1414.  
  1415.  
  1416.  
  1417.                            PtGen reference manual - page 21
  1418.  
  1419.  
  1420.  
  1421.  
  1422.  
  1423.                                      UNIT BBUTIL
  1424.  
  1425.  
  1426.           Unit BBUTIL contains various constants, types, procedures,
  1427.           functions and variables I found handy during several years. This
  1428.           unit is likely to change over the years. Most of the functions
  1429.           and procedures are string handling routines. The most important
  1430.           are described.
  1431.  
  1432.           There are various string handling units. The Str? are function
  1433.           equivalents of the procedure
  1434.             Str(n, s);
  1435.           useful for one-liners.
  1436.  
  1437.           function StrI(n : integer) : string;
  1438.           function StrW (n : word) : string;
  1439.           function StrL(n : longint) : string;
  1440.           function StrR(n : real; width, decimals : word) : string;
  1441.           function LeadingZero(value : word) : string;
  1442.           function HexStr(w : word) : string;
  1443.  
  1444.           StrI converts integers, StrW words, StrL longint, StrR reals for
  1445.           a given width and decimals. LeadingZero returns value as string
  1446.           with a leading zero if value consists of only one digits. Mainly
  1447.           used for formatting time or day units. HexStr returns a word in
  1448.           base 16.
  1449.  
  1450.  
  1451.           The Val? functions are equivalent to the procedure Val.
  1452.  
  1453.           function ValB(s : string) : byte;
  1454.           function ValI(s : string) : integer;
  1455.           function ValW(s : string) : word;
  1456.           function ValL(s : string) : longint;
  1457.  
  1458.  
  1459.           Uppercase and lowercase a string.
  1460.  
  1461.           function UpStr(s : string) : string;
  1462.           function LowStr(s : string) : string;
  1463.  
  1464.  
  1465.           Various string routines
  1466.  
  1467.           function Spc (number : integer) : string;
  1468.           Returns a given amount of spaces. If number <= 0 Spc returns an
  1469.           empty string.
  1470.  
  1471.           function RepChar(c : char; len : word) : string;
  1472.           Returns a string of char c repeated len times.
  1473.  
  1474.           function StripSpc(s : string) : string;
  1475.  
  1476.                            PtGen reference manual - page 22
  1477.  
  1478.  
  1479.  
  1480.  
  1481.  
  1482.           Strips spaces before and after a string. Nice for getting
  1483.           information from .DBF files.
  1484.  
  1485.           function LeftJustify(s : string; f_len : word) : string;
  1486.           Leftjustifies a string.
  1487.  
  1488.           function CPos(c : char; s : string) : byte;
  1489.           Same as Pos except substr is a char so search procedure could be
  1490.           optimized for speed.
  1491.  
  1492.           function Empty(s : string) : Boolean;
  1493.           Returns TRUE if a string is Empty or consists only of spaces.
  1494.  
  1495.           function GetDateStr : string;
  1496.           Returns the current date in format yyyy-mm-dd
  1497.  
  1498.           function GetTimeStr : string;
  1499.           Returns the current time in format hh:mm:ss
  1500.  
  1501.  
  1502.           Routines dealing with dynamic strings
  1503.  
  1504.           function GetStr(p : PString) : string;
  1505.           Returns an empty string if P = nil or else P^
  1506.  
  1507.           procedure FreeStr(p : PString);
  1508.           If P = NIL nothing happens else a call is made to DisposeStr(p).
  1509.  
  1510.           procedure ReplaceStr(var p : PString; s : string);
  1511.           Kind of assignment for dynamic strings. First p is disposed by
  1512.           calling FreeStr then s is assigned to p by a call to NewStr
  1513.  
  1514.  
  1515.           Various
  1516.  
  1517.           procedure Beep;
  1518.           Produces a short beep.
  1519.  
  1520.           function  Rnd(r : real) : real;
  1521.           The Round function of Turbo Pascal contains serious errors. This
  1522.           is especially bad for money arithmetic. This function returns a
  1523.           flawless 2 digit rounded number.
  1524.  
  1525.           procedure DisposeSItem(PS : PSItem);
  1526.           Disposes a PSItem variable.
  1527.  
  1528.  
  1529.  
  1530.  
  1531.  
  1532.  
  1533.  
  1534.  
  1535.                            PtGen reference manual - page 23
  1536.  
  1537.  
  1538.  
  1539.  
  1540.  
  1541.                                    UNIT BBVALIDATE
  1542.  
  1543.  
  1544.           See BBVALIDATE.PAS for more details.
  1545.  
  1546.  
  1547.  
  1548.  
  1549.  
  1550.  
  1551.  
  1552.  
  1553.  
  1554.  
  1555.  
  1556.  
  1557.  
  1558.  
  1559.  
  1560.  
  1561.  
  1562.  
  1563.  
  1564.  
  1565.  
  1566.  
  1567.  
  1568.  
  1569.  
  1570.  
  1571.  
  1572.  
  1573.  
  1574.  
  1575.  
  1576.  
  1577.  
  1578.  
  1579.  
  1580.  
  1581.  
  1582.  
  1583.  
  1584.  
  1585.  
  1586.  
  1587.  
  1588.  
  1589.  
  1590.  
  1591.  
  1592.  
  1593.  
  1594.                            PtGen reference manual - page 24
  1595.  
  1596.  
  1597.  
  1598.  
  1599.  
  1600.                              PTGEN TECHNICAL INFORMATION
  1601.  
  1602.  
  1603.           This section contains information about PtGen internals,
  1604.           especially about the source file it outputs.
  1605.  
  1606.           When you view the source file PtGen creates, you will frequently
  1607.           see the {@#..#@} structure. The information inside this comment
  1608.           is used by PtGen to speed up file reading and to distinguish
  1609.           between certain parts of the created application.
  1610.  
  1611.           You can edit the source file PtGen creates, but you should
  1612.           conform to the format PtGen outputs and expects when reading such
  1613.           a file. If you want to change code parts, copy them to a unit or
  1614.           program of your own and change them their. Leave the PtGen
  1615.           created code intact.
  1616.  
  1617.  
  1618.  
  1619.  
  1620.  
  1621.  
  1622.  
  1623.  
  1624.  
  1625.  
  1626.  
  1627.  
  1628.  
  1629.  
  1630.  
  1631.  
  1632.  
  1633.  
  1634.  
  1635.  
  1636.  
  1637.  
  1638.  
  1639.  
  1640.  
  1641.  
  1642.  
  1643.  
  1644.  
  1645.  
  1646.  
  1647.  
  1648.  
  1649.  
  1650.  
  1651.  
  1652.  
  1653.                            PtGen reference manual - page 25
  1654.  
  1655.  
  1656.  
  1657.  
  1658.  
  1659.                                      ERROR CODES
  1660.  
  1661.  
  1662.           PtGen will sometimes give strange error messages. Usually the to
  1663.           be readed file is corrupt or an internal error in PtGen occured.
  1664.           PtGen does a lot of checking mainly for speeding up development
  1665.           by catching errors early. They are generally not meaningfull for
  1666.           ordinary users. Send your log file (PTGERR.LOG) to the author if
  1667.           you think an internal error occured.
  1668.  
  1669.  
  1670.  
  1671.  
  1672.  
  1673.  
  1674.  
  1675.  
  1676.  
  1677.  
  1678.  
  1679.  
  1680.  
  1681.  
  1682.  
  1683.  
  1684.  
  1685.  
  1686.  
  1687.  
  1688.  
  1689.  
  1690.  
  1691.  
  1692.  
  1693.  
  1694.  
  1695.  
  1696.  
  1697.  
  1698.  
  1699.  
  1700.  
  1701.  
  1702.  
  1703.  
  1704.  
  1705.  
  1706.  
  1707.  
  1708.  
  1709.  
  1710.  
  1711.  
  1712.                            PtGen reference manual - page 26
  1713.  
  1714.  
  1715.  
  1716.  
  1717.  
  1718.                                         INDEX
  1719.  
  1720.  
  1721.           Application
  1722.                configuration  . . . . . . . . . . . . . . . . . . . . . . 1
  1723.                creating . . . . . . . . . . . . . . . . . . . . . . . . . 1
  1724.                editing  . . . . . . . . . . . . . . . . . . . . . . . . . 1
  1725.                loading  . . . . . . . . . . . . . . . . . . . . . . . . . 1
  1726.                saving . . . . . . . . . . . . . . . . . . . . . . . . . . 2
  1727.                saving as  . . . . . . . . . . . . . . . . . . . . . . . . 2
  1728.           Available Objects Popup . . . . . . . . . . . . . . . . . . .  10
  1729.           Button  . . . . . . . . . . . . . . . . . . . . . . . . . . .  12
  1730.           Center subviews . . . . . . . . . . . . . . . . . . . . . . .  14
  1731.           Changing the Tab-order  . . . . . . . . . . . . . . . . . . .  14
  1732.           Checkboxes  . . . . . . . . . . . . . . . . . . . . . . . . .  13
  1733.           Creating a record
  1734.                dialog settings dialog box . . . . . . . . . . . . . . .  14
  1735.                Labeling a view  . . . . . . . . . . . . . . . . . . . .  12
  1736.                Record option  . . . . . . . . . . . . . . . . . . . . .  14
  1737.           Desktop Local Menu  . . . . . . . . . . . . . . . . . . . . . . 6
  1738.           Dialog box  . . . . . . . . . . . . . . . . . . . . . . . . .  11
  1739.           Dialog box Local Menu . . . . . . . . . . . . . . . . . . . .  11
  1740.           Inputline . . . . . . . . . . . . . . . . . . . . . . . . . .  12
  1741.           Label . . . . . . . . . . . . . . . . . . . . . . . . . . . .  12
  1742.           Links
  1743.                creating . . . . . . . . . . . . . . . . . . . . . . . . . 4
  1744.                deleting . . . . . . . . . . . . . . . . . . . . . . . . . 4
  1745.           ListViewer  . . . . . . . . . . . . . . . . . . . . . . . . .  13
  1746.           Memo  . . . . . . . . . . . . . . . . . . . . . . . . . . . .  13
  1747.           Menubar
  1748.                creating a line  . . . . . . . . . . . . . . . . . . . . . 3
  1749.                creating a submenu . . . . . . . . . . . . . . . . . . . . 3
  1750.                creating new entries . . . . . . . . . . . . . . . . . . . 3
  1751.                deleting entries . . . . . . . . . . . . . . . . . . . . . 3
  1752.                editing entries  . . . . . . . . . . . . . . . . . . . . . 3
  1753.           Moving subviews . . . . . . . . . . . . . . . . . . . . . . .  14
  1754.           Objects Dialog box  . . . . . . . . . . . . . . . . . . . . 6, 10
  1755.                cloning objects  . . . . . . . . . . . . . . . . . . . .  10
  1756.                creating objects . . . . . . . . . . . . . . . . . . . .  10
  1757.                deleting objects . . . . . . . . . . . . . . . . . . . .  10
  1758.                editing objects  . . . . . . . . . . . . . . . . . . . .  10
  1759.           Radiobuttons  . . . . . . . . . . . . . . . . . . . . . . . .  13
  1760.           Resizing subviews . . . . . . . . . . . . . . . . . . . . . .  14
  1761.           Spinbuttons . . . . . . . . . . . . . . . . . . . . . . . . .  13
  1762.           Static text . . . . . . . . . . . . . . . . . . . . . . . . .  12
  1763.           Tab-order changing
  1764.                subviews . . . . . . . . . . . . . . . . . . . . . . . .  14
  1765.           Units Dialog box  . . . . . . . . . . . . . . . . . . . . . . . 6
  1766.           Validators  . . . . . . . . . . . . . . . . . . . . . . . . .  13
  1767.  
  1768.  
  1769.  
  1770.  
  1771.                            PtGen reference manual - page 27