home *** CD-ROM | disk | FTP | other *** search
/ Black Box 4 / BlackBox.cdr / genapps / hp22dc.arj / USRGUIDE / BTNSFLDS.TXT < prev    next >
Text File  |  1991-05-16  |  59KB  |  1,587 lines

  1.  
  2.  
  3.  
  4.  
  5.     ________________________________________________________________________
  6.                                      Chapter 14: Buttons and Fields   241
  7.     ________________________________________________________________________
  8.  
  9.  
  10.  
  11.     CHAPTER 14:  BUTTONS AND FIELDS
  12.  
  13.     INTRODUCTION
  14.  
  15.     Suppose you have designed your own pad and have mastered using
  16.     HyperPAD's painting tools. You probably created some pages and
  17.     backgrounds with attractive screen layouts. However, now you want your
  18.     pad to be more functional than just a collection of interesting screens.
  19.  
  20.     Your first step is to add buttons and fields to your pad. Buttons and
  21.     fields are the focal point of all activity in a pad. Placed on pages and
  22.     backgrounds, buttons can be selected to perform actions that you define,
  23.     such as changing pages or running other DOS programs. Placing fields on
  24.     your pages and backgrounds lets you define where the user will be able
  25.     to type information. In short, buttons and fields make your pad come to
  26.     life.
  27.  
  28.  
  29.  
  30.     ________________________________________________________________________
  31.                                      Chapter 14: Buttons and Fields   242
  32.     ________________________________________________________________________
  33.  
  34.  
  35.     BUTTONS
  36.  
  37.     A button is an object located on the page or background that the user
  38.     can select to carry out an action. You can create buttons that allow the
  39.     user to:
  40.  
  41.         0  Go to another page
  42.  
  43.         0  Go to another pad
  44.  
  45.         0  Perform calculations
  46.  
  47.         0  Run other DOS programs
  48.  
  49.  
  50.     FIELDS
  51.  
  52.     Fields are rectangular editing areas located on the page or background
  53.     into which textual information can be typed. Fields can contain:
  54.  
  55.         0  Numbers
  56.  
  57.         0  Names and addresses
  58.  
  59.         0  Traveling expenses
  60.  
  61.         0  A list of files on your hard disk
  62.  
  63.         0  Information retrieved for further processing
  64.  
  65.     A field can contain up to 30,000 characters. Every field can hold more
  66.     text than will fit within its borders.
  67.  
  68.  
  69.     BUTTON AND FIELD PROPERTIES
  70.  
  71.     Buttons and fields can be placed anywhere on a page or background. Each
  72.     has defining characteristics, or properties, used to control its
  73.     appearance and behavior. Some examples of button and field properties
  74.     are:
  75.  
  76.         0  Location
  77.  
  78.         0  Color
  79.  
  80.         0  Name
  81.  
  82.         0  Accelerator key
  83.  
  84.     By adjusting an object's properties, you can design attractive objects
  85.     that behave appropriately for your pad.
  86.  
  87.  
  88.  
  89.     ________________________________________________________________________
  90.                                      Chapter 14: Buttons and Fields   243
  91.     ________________________________________________________________________
  92.  
  93.  
  94.     WHY USE BUTTONS AND FIELDS?
  95.  
  96.     Buttons and fields can be added to a pad to increase its functionality.
  97.     Most of the interaction between the user and the pad occurs through the
  98.     use of buttons and fields. As a pad author, you will use buttons and
  99.     fields to:
  100.  
  101.         0  Create links between pages and pads
  102.  
  103.         0  Hold information that the user can manipulate
  104.  
  105.         0  Automate repetitive tasks
  106.  
  107.         0  Display information for instructional purposes
  108.  
  109.     For example, you can create a database by adding fields to the
  110.     background of a new pad. By adding pages and information to this pad,
  111.     you are essentially adding records to the database.
  112.  
  113.     Once your database includes many pages, you may want to automate
  114.     navigation, making it easier to move between pages. Simply add buttons
  115.     on the background and link them to other pages in the database.
  116.  
  117.     Suppose that you then wanted to take some notes and attach them to a
  118.     specific page in the pad. Simply add a field to that page.
  119.  
  120.     The procedures described in this chapter give you all the information
  121.     necessary to perform tasks like those mentioned above.
  122.  
  123.  
  124.     DESIGNING WITH BUTTONS AND FIELDS
  125.  
  126.     Using the Selector tool, objects can be positioned, cut, copied, pasted,
  127.     edited, and duplicated. Combined with the painting tools, objects on the
  128.     page and background make your pad functional, something that users can
  129.     browse by clicking on buttons and typing into fields. This chapter will
  130.     also explain how to use the Selector tool to create and modify objects.
  131.  
  132.  
  133.  
  134.     ________________________________________________________________________
  135.                                      Chapter 14: Buttons and Fields   244
  136.     ________________________________________________________________________
  137.  
  138.  
  139.     HOW BUTTONS AND FIELDS ARE ORGANIZED
  140.  
  141.  
  142.     OBJECT LAYERING
  143.  
  144.     Buttons and fields are created on either the page or the background.
  145.     Regardless of whether they are located on the page or background,
  146.     objects are layered according to the order in which they were created.
  147.     For example, the first object you create will be on layer 1, the next on
  148.     layer 2, and so on.
  149.  
  150.     Objects on higher-numbered layers overlap those on lower-numbered
  151.     layers. Objects on the lower-numbered layers are closest to the page,
  152.     while objects on the higher-numbered layers are farther away.
  153.  
  154.  ┌───────────────────────────────────────────────────────────────────────┐
  155.  │                                                                       │
  156.  │ **** The Printed Documentation has a picture or screen shot here **** │
  157.  │                                                                       │
  158.  └───────────────────────────────────────────────────────────────────────┘
  159.     
  160.  
  161.  
  162.     BACKGROUND OBJECTS
  163.  
  164.     Background buttons appear on every page that use that background. They
  165.     provide access to those functions you want available on every page that
  166.     uses that background. One example is a navigation button, such as a Home
  167.     button, that, when selected, takes a user to the Home pad, or paging
  168.     buttons which let the user move to the next or previous page.
  169.  
  170.     Background fields are templates for holding text information. They
  171.     define the area and position in which text can be placed on the page.
  172.     Each page maintains its own private contents for the background fields.
  173.  
  174.  
  175.  
  176.     ________________________________________________________________________
  177.                                      Chapter 14: Buttons and Fields   245
  178.     ________________________________________________________________________
  179.  
  180.  
  181.     The following diagram shows how the background fields act as templates
  182.     for text stored on the page:
  183.  
  184.  ┌───────────────────────────────────────────────────────────────────────┐
  185.  │                                                                       │
  186.  │ **** The Printed Documentation has a picture or screen shot here **** │
  187.  │                                                                       │
  188.  └───────────────────────────────────────────────────────────────────────┘
  189.     
  190.  
  191.     Background fields are particularly useful for creating databases. The
  192.     background containing the fields acts as the database structure or
  193.     definition, and each page stores one record in the database.
  194.  
  195.  
  196.     EDITING OBJECTS USING THE SELECTOR TOOL
  197.  
  198.     The Selector tool allows you to work with buttons and fields. Using the
  199.     Selector tool, you can resize, move, cut, copy, paste, delete, and edit
  200.     objects.
  201.  
  202.     To use the Selector tool, the user level must be set to either authoring
  203.     or scripting. At the authoring level, you can create, move, resize, and
  204.     edit the properties of objects. The scripting level gives you all the
  205.     capabilities of the authoring level, plus the ability to edit an
  206.     object's script.
  207.  
  208.  
  209.  
  210.     ________________________________________________________________________
  211.                                      Chapter 14: Buttons and Fields   246
  212.     ________________________________________________________________________
  213.  
  214.  
  215.     To change the user level to scripting:
  216.  
  217.     1.  Select the Protect command from the File menu (ALT+F, T).
  218.  
  219.     2.  Select the scripting option (ALT+I), then press ENTER.
  220.  
  221.     Now that the user level is set to scripting, you can use the Selector
  222.     tool.
  223.  
  224.  
  225.     SELECTING A BUTTON OR FIELD
  226.  
  227.  
  228.     To select a button or field with the keyboard:
  229.  
  230.     1.  Choose the Selector command from the Tools menu (ALT+T, S). The
  231.     shortcut for this command is CTRL+S.
  232.  
  233.     Selected buttons and fields are indicated with anchors on each corner:
  234.  
  235.  ┌───────────────────────────────────────────────────────────────────────┐
  236.  │                                                                       │
  237.  │ **** The Printed Documentation has a picture or screen shot here **** │
  238.  │                                                                       │
  239.  └───────────────────────────────────────────────────────────────────────┘
  240.     
  241.  
  242.     If there are no objects to edit, the cursor will not move until you
  243.     create an object or move to a page with objects.
  244.  
  245.     2.  If the object you want to select is located on the background,
  246.     select Background from the Edit menu (ALT+E, B).
  247.  
  248.     You can tell that you are editing the background if:
  249.  
  250.     "BKGND" appears on the status bar.
  251.  
  252.     The Background command is checked on the Edit menu.
  253.  
  254.     3.  Press TAB or SHIFT+TAB to place the anchors on the next or previous
  255.     object until the one you want is selected.
  256.  
  257.     If you defined an accelerator key for the object, you can press ALT and
  258.     the accelerator key to quickly select the object.
  259.  
  260.  
  261.     To select a button or field with the mouse:
  262.  
  263.     1.  Choose the Selector tool from the Tools menu.
  264.  
  265.     2.  Point to the object and click the left mouse button.
  266.  
  267.  
  268.  
  269.     ________________________________________________________________________
  270.                                      Chapter 14: Buttons and Fields   247
  271.     ________________________________________________________________________
  272.  
  273.  
  274.     CREATING OBJECTS
  275.  
  276.     You can create buttons or fields by selecting the New Button or New
  277.     Field command from the Objects menu. The shortcuts for these commands
  278.     are:
  279.  
  280.     To:                     Press:
  281.     ----------------------------------
  282.     Create a new field      CTRL+F3
  283.  
  284.     Create a new button     ALT+F3
  285.  
  286.  
  287.     After an object is created, it's placed in the center of the screen
  288.     ready to be positioned and resized.
  289.  
  290.  
  291.     ADDING FIELDS TO THE BACKGROUND
  292.  
  293.     Fields, like buttons, can be added to either the page or the background.
  294.     Each field acts as a storage area for information. When added to the
  295.     page, both the field and its text are unique to that page--they have no
  296.     effect on any other page in the pad.
  297.  
  298.     Background fields, however, can be shared by many pages. Each page that
  299.     uses a specific background maintains its own contents for the fields on
  300.     that background.
  301.  
  302.     Creating fields on the background is no different from creating fields
  303.     on the page. However, if you create or delete any fields on a
  304.     background, when you finish editing the background, HyperPAD will
  305.     display the following message:
  306.  
  307.  ┌───────────────────────────────────────────────────────────────────────┐
  308.  │                                                                       │
  309.  │ **** The Printed Documentation has a picture or screen shot here **** │
  310.  │                                                                       │
  311.  └───────────────────────────────────────────────────────────────────────┘
  312.     
  313.  
  314.  
  315.  
  316.     ________________________________________________________________________
  317.                                      Chapter 14: Buttons and Fields   248
  318.     ________________________________________________________________________
  319.  
  320.  
  321.     Rebuilding the pad involves updating every page that uses a particular
  322.     background with new field information. This operation happens
  323.     automatically when you access a page. However, to speed access to these
  324.     pages, you may want to rebuild the pad all at once.
  325.  
  326.     If you respond <<Ok>> to this dialog box, the pad will be rebuilt.
  327.     If you select <Cancel>, the pages that use the background will not be
  328.     updated until the next time those pages are accessed.
  329.  
  330.  
  331.     MOVING OBJECTS
  332.  
  333.     When you create a button or field, it is placed in the center of the
  334.     screen. Your next step is to reposition the object in the appropriate
  335.     location on the page or background.
  336.  
  337.  
  338.     To move a selected object with the keyboard:
  339.  
  340.     To:                                    Press:
  341.     --------------------------------------------------------
  342.     Move the object by one line            Arrow keys
  343.  
  344.     Move the object by larger amounts      CTRL+Arrow keys
  345.  
  346.     Move the object to the left edge       HOME
  347.  
  348.     Move the object to the right edge      END
  349.  
  350.  
  351.     To move an object with the mouse:
  352.  
  353.     1.  Point to the object.
  354.  
  355.     2.  Press the left mouse button and drag the object to the desired
  356.     location.
  357.  
  358.  
  359.     RESIZING OBJECTS
  360.  
  361.     After positioning an object, you can alter its size. An object can be as
  362.     small as one row by one column, or as large as the screen.
  363.  
  364.  
  365.     To resize an object with the keyboard:
  366.  
  367.     1.  Press ALT+TAB repeatedly until the cursor reaches the corner you
  368.     want to stretch.
  369.  
  370.     2.  Press SHIFT+arrow keys to stretch the corner in the direction of the
  371.     arrow key.
  372.  
  373.  
  374.  
  375.     ________________________________________________________________________
  376.                                      Chapter 14: Buttons and Fields   249
  377.     ________________________________________________________________________
  378.  
  379.  
  380.     The following keys can also be used to resize objects:
  381.  
  382.     To:                                           Press:
  383.     --------------------------------------------------------------------
  384.     Stretch a corner faster with the arrow keys   CTRL+SHIFT+Arrow keys
  385.  
  386.     Stretch a corner to the left edge             SHIFT+HOME
  387.  
  388.     Stretch a corner to the right edge            SHIFT+END
  389.  
  390.  
  391.     To resize an object with the mouse:
  392.  
  393.     1.  Point to the corner that you want to stretch (place the mouse
  394.     pointer on top of one of the four anchors).
  395.  
  396.     2.  Press the left mouse button and drag the corner to its new location.
  397.  
  398.     Note:  Dragging the mouse away from the center makes the object larger,
  399.     while dragging the mouse toward the center makes it smaller.
  400.  
  401.  
  402.     COPYING AND PASTING OBJECTS
  403.  
  404.     HyperPAD allows you to copy buttons and fields from one pad to another
  405.     using the Cut, Copy, and Paste commands. Once an object has been copied,
  406.     it can be placed anywhere--on another page or background in the same
  407.     pad, or even on a page or background in another pad.
  408.  
  409.     When you copy an object, it is placed into the clipboard for later use.
  410.     Since only one item at a time can occupy the clipboard, the previous
  411.     contents of the clipboard are lost. When you paste the object from the
  412.     clipboard, an exact copy will be placed onto the page or background in
  413.     the same location as the original.
  414.  
  415.     Note:  The clipboard is a temporary storage area. When you leave
  416.     HyperPAD or run another program from HyperPAD, the clipboard will be
  417.     emptied.
  418.  
  419.  
  420.  
  421.     ________________________________________________________________________
  422.                                      Chapter 14: Buttons and Fields   250
  423.     ________________________________________________________________________
  424.  
  425.  
  426.     CUSTOMIZING WITH COPY AND PASTE
  427.  
  428.     The Copy and Paste commands provide powerful shortcuts for customizing
  429.     your pads. You can save time by making use of buttons and fields that
  430.     already exist in another pad. You don't have to understand how a button
  431.     or field works; simply copy an object that already does what you want,
  432.     then paste it into the pad you're working with.
  433.  
  434.     For example, the Phone pad doesn't have a button that takes you directly
  435.     to your Daily Planner. You can create a button to do this by copying the
  436.     Daily Planner button from the Pads screen to the background of your
  437.     Phone pad. Then, when you want to go directly to the Daily Planner, you
  438.     can just select this button.
  439.  
  440.     To use a different example, suppose you want to add a mechanism to the
  441.     Home pad that will enable you to take a quick note. You can easily
  442.     accomplish this task by copying a field from the Ideas pad and pasting
  443.     it onto your Home pad.
  444.  
  445.  
  446.     To copy an object with the keyboard:
  447.  
  448.     1.  Select the object to be copied.
  449.  
  450.     2.  Select Copy from the Edit menu (ALT+E, C). (The shortcuts for this
  451.     command are CTRL+C or CTRL+INSERT.)
  452.  
  453.  
  454.     To copy an object with the mouse:
  455.  
  456.     Hold down CTRL, point to the object, then press the left mouse button
  457.     and drag the object to its new location.
  458.  
  459.     Note:  The exact name of the Copy command on the Edit menu depends on
  460.     the selected object. If a button is selected, the displayed command is
  461.     "Copy Button"; otherwise, the displayed command is "Copy Field."
  462.  
  463.  
  464.     COPYING ONLY PROPERTIES
  465.  
  466.     A special copying feature available to mouse users allows you to copy an
  467.     object's properties and apply them to another object of the same type
  468.     without copying the location property or the script.
  469.  
  470.     For example, suppose that you just created a field in the Phone pad and
  471.     want it to look exactly like all the other fields on the same page.
  472.     Instead of duplicating the field (by copying and pasting it), you can
  473.     just copy the properties.
  474.  
  475.     Note:  You can only copy properties to another object of the same type
  476.     (i.e., between two buttons or between two fields).
  477.  
  478.  
  479.  
  480.     ________________________________________________________________________
  481.                                      Chapter 14: Buttons and Fields   251
  482.     ________________________________________________________________________
  483.  
  484.  
  485.     To copy an object's properties:
  486.  
  487.     1.  Select the object whose properties you want to copy.
  488.  
  489.     2.  Point to the object to which the properties to be copied (don't
  490.     click on it yet).
  491.  
  492.     3.  While holding down the CTRL and SHIFT keys, click the left mouse
  493.     button (CTRL+SHIFT+click).
  494.  
  495.  
  496.     CUTTING OBJECTS
  497.  
  498.     The Cut command  allows you to remove a button or field from the current
  499.     page or background and store it in the clipboard for reuse.
  500.  
  501.     To cut an object:
  502.  
  503.     1.  Select the object to be cut.
  504.  
  505.     2.  Select Cut from the Edit menu (ALT+E, X). The shortcuts for this
  506.     command are CTRL+X and SHIFT+DEL.
  507.  
  508.     The selected object will be copied into the clipboard and removed from
  509.     the screen. The object can then be recalled with the Paste command.
  510.  
  511.  
  512.     PASTING OBJECTS
  513.  
  514.     Once you have stored a copy of an object in the clipboard using either
  515.     the Copy or Cut command, you can retrieve it with the Paste command.
  516.     HyperPAD allows you to paste an object from the clipboard to the same
  517.     page or background from which it was copied, to another page or
  518.     background in the same pad, or to a different pad. You can paste as many
  519.     copies of a stored object as you want.
  520.  
  521.     Note:  Pasted objects have all the same properties, including screen
  522.     location and script, as the original object.
  523.  
  524.  
  525.     To paste an object:
  526.  
  527.     1.  Navigate to the page on which you want to paste the object (this
  528.     could be on the same page, a different page, a background, or a
  529.     different pad).
  530.  
  531.     2.  Select the Paste command from the Edit menu (ALT+E, P). The
  532.     shortcuts for this command are CTRL+V or SHIFT+INSERT.
  533.  
  534.     Note:  The name of the Paste command changes according to what is being
  535.     pasted. If you're pasting a field, the displayed command is "Paste
  536.     Field;" otherwise, the displayed command is "Paste Button."
  537.  
  538.  
  539.  
  540.     ________________________________________________________________________
  541.                                      Chapter 14: Buttons and Fields   252
  542.     ________________________________________________________________________
  543.  
  544.  
  545.     DELETING OBJECTS
  546.  
  547.     Use the Delete command to remove an object from the page or background
  548.     without saving a copy in the clipboard.
  549.  
  550.  
  551.     To delete an object:
  552.  
  553.     1.  Select the object to be deleted.
  554.  
  555.     2.  Select the Delete command from the Edit menu (ALT+E, D). The
  556.     shortcut for this command is DEL.
  557.  
  558.     The selected object is removed from the page or background, without a
  559.     copy being placed in the clipboard.
  560.  
  561.     Note:  A deleted object can never be recovered. Therefore, you may want
  562.     to make a backup copy of your pad before deleting many objects, in case
  563.     you need to recall them (use the Save a Copy command (ALT+F,S) on the
  564.     File menu).
  565.  
  566.  
  567.     CLONING OBJECTS
  568.  
  569.     The Clone command allows you to quickly place a copy of an object on the
  570.     same page as the original, without copying it to the clipboard. Cloned
  571.     objects overlap the object from which they were cloned, offset slightly
  572.     down and to the right.
  573.  
  574.     This command avoids the two-step process of copying the object into the
  575.     clipboard and then pasting it. In addition, the clipboard's contents are
  576.     preserved.
  577.  
  578.     To clone an object:
  579.  
  580.     1.  Select the object to be cloned.
  581.  
  582.     2.  Select Clone from the Objects menu (ALT+O, C). The shortcut for this
  583.     command is CTRL+D.
  584.  
  585.     A clone of the original object appears on-screen.  Note:  The new object
  586.     is selected, so that you can modify it immediately.
  587.  
  588.  
  589.     LAYERING OBJECTS
  590.  
  591.     Each object created on a page or background is contained on an invisible
  592.     layer. All of these layers are stacked on top of one another. If one
  593.     object is on a higher layer than another, it will cover that object
  594.     wherever they overlap.
  595.  
  596.  
  597.  
  598.     ________________________________________________________________________
  599.                                      Chapter 14: Buttons and Fields   253
  600.     ________________________________________________________________________
  601.  
  602.  
  603.     All buttons and fields are layered on top of one another. In addition,
  604.     each object is numbered by its position relative to the other layered
  605.     objects of the same type.
  606.  
  607.  ┌───────────────────────────────────────────────────────────────────────┐
  608.  │                                                                       │
  609.  │ **** The Printed Documentation has a picture or screen shot here **** │
  610.  │                                                                       │
  611.  └───────────────────────────────────────────────────────────────────────┘
  612.     
  613.  
  614.     When you create a new button or field, a new layer to hold that object
  615.     is placed on top of all existing object layers. You can determine the
  616.     layer of a given button or field by examining the Object Info dialog box
  617.     for that object. This is discussed later in this chapter.
  618.  
  619.     The layer of a button or field can be changed using the Bring Closer and
  620.     Send Farther commands on the Objects menu. These commands move the
  621.     selected button or field up or down one layer.
  622.  
  623.  
  624.     To move an object up one layer:
  625.  
  626.     1.  Select the object that you want moved to a higher layer.
  627.  
  628.     2.  Select the Bring Closer command from the Objects menu (ALT+O, R).
  629.     The shortcut for this command is PLUS on the numeric keypad.
  630.  
  631.     The selected object is moved one layer farther from the page or
  632.     background.
  633.  
  634.  
  635.  
  636.     ________________________________________________________________________
  637.                                      Chapter 14: Buttons and Fields   254
  638.     ________________________________________________________________________
  639.  
  640.  
  641.     To move an object down one layer:
  642.  
  643.     1.  Select the object you want moved to a lower layer.
  644.  
  645.     2.  Select the Send Farther command from the Objects menu (ALT+O, S).
  646.     The shortcut for this command is MINUS on the numeric keypad.
  647.  
  648.     The selected object is moved one layer closer to the page or background.
  649.  
  650.  
  651.     COVERING OBJECTS
  652.  
  653.     A common use for layering is to cover other objects. Objects completely
  654.     covered by other objects are not selectable by the pad user.
  655.  
  656.  
  657.     To cover an object:
  658.  
  659.     1.  Select the New Button (ALT+O,B) or New Field (ALT+O, F) command from
  660.     the Objects menu to create a new button or field.
  661.  
  662.     The new object will be placed in the center of the screen.
  663.  
  664.     2.  Move the new object over the object to be covered.
  665.  
  666.     3.  Resize the object, if necessary, to completely cover the desired
  667.     object.
  668.  
  669.  
  670.  
  671.     ________________________________________________________________________
  672.                                      Chapter 14: Buttons and Fields   255
  673.     ________________________________________________________________________
  674.  
  675.  
  676.     The following picture illustrates a pad with two background buttons that
  677.     take you to the previous and next pages. On the first page of your pad,
  678.     however, having the Prev button doesn't make sense because there is no
  679.     previous page. Thus, you may want to cover this button up with an opaque
  680.     button on page 1.
  681.  
  682.  ┌───────────────────────────────────────────────────────────────────────┐
  683.  │                                                                       │
  684.  │ **** The Printed Documentation has a picture or screen shot here **** │
  685.  │                                                                       │
  686.  └───────────────────────────────────────────────────────────────────────┘
  687.     
  688.  
  689.  
  690.  
  691.     ________________________________________________________________________
  692.                                      Chapter 14: Buttons and Fields   256
  693.     ________________________________________________________________________
  694.  
  695.  
  696.     PROPERTIES OF OBJECTS
  697.  
  698.     Until now we have focused on altering objects in relation to each other
  699.     on the screen. This manipulation of objects is important when designing
  700.     screen layouts. You can further customize your buttons and fields by
  701.     altering their properties.
  702.  
  703.     Properties determine not only how an object looks--i.e., its color or
  704.     edge type--but also how it responds to actions the user performs.
  705.     HyperPAD allows you to modify an object's properties using the Button
  706.     and Field Info dialog boxes.
  707.  
  708.     The following sections describe how to customize your buttons and fields
  709.     by modifying the properties listed in these dialog boxes.
  710.  
  711.  
  712.     THE FIELD INFO DIALOG BOX
  713.  
  714.     All of a field's properties are accessible through the Field Info dialog
  715.     box. From this dialog box, you can adjust the properties that control a
  716.     field's color, edge type, and default behavior.
  717.  
  718.  
  719.     GETTING THE FIELD INFO DIALOG BOX
  720.  
  721.  
  722.     With the keyboard:
  723.  
  724.     1.  Select the desired field.
  725.  
  726.     2.  Select the Field Info command from the Objects menu (ALT+O, I). A
  727.     shortcut for this command is to press ENTER or SPACE.
  728.  
  729.     The Field Info dialog box appears on the screen.
  730.  
  731.     With the mouse:
  732.  
  733.     To access the Field Info dialog box with the mouse, select the field,
  734.     then double-click the left mouse button.
  735.  
  736.  
  737.  
  738.     ________________________________________________________________________
  739.                                      Chapter 14: Buttons and Fields   257
  740.     ________________________________________________________________________
  741.  
  742.  
  743.     The Field Info dialog box is shown below.
  744.  
  745.  ┌───────────────────────────────────────────────────────────────────────┐
  746.  │                                                                       │
  747.  │ **** The Printed Documentation has a picture or screen shot here **** │
  748.  │                                                                       │
  749.  └───────────────────────────────────────────────────────────────────────┘
  750.     
  751.  
  752.     The following diagram shows a field with some of its field properties.
  753.  
  754.  ┌───────────────────────────────────────────────────────────────────────┐
  755.  │                                                                       │
  756.  │ **** The Printed Documentation has a picture or screen shot here **** │
  757.  │                                                                       │
  758.  └───────────────────────────────────────────────────────────────────────┘
  759.     
  760.  
  761.     The descriptions that follow explain how each of the available field
  762.     properties modifies the appearance and behavior of the field.
  763.  
  764.  
  765.  
  766.     ________________________________________________________________________
  767.                                      Chapter 14: Buttons and Fields   258
  768.     ________________________________________________________________________
  769.  
  770.  
  771.     FIELD NAME
  772.  
  773.     This text box displays the name of the field. If the Show name property
  774.     is on, then the field name will appear either on top or to the left of
  775.     the field (depending on the value of the Name position property). The
  776.     field name text box is empty for a new field.
  777.  
  778.     Note:  The field name can be used to refer to a field from within a
  779.     script, so choose a meaningful name that you can remember.
  780.  
  781.  
  782.     FIELD NUMBER
  783.  
  784.     This number indicates the field's layer in relation to the other fields
  785.     on the page or background.
  786.  
  787.     Note:  The field number can be used to refer to a field from within a
  788.     script.
  789.  
  790.  
  791.     FIELD ID
  792.  
  793.     The ID is a unique number assigned to a field when it is created. This
  794.     number will never change.
  795.  
  796.     Note:  The ID is the only way to uniquely identify a field from within a
  797.     script. Unique IDs are assigned to each field on a page, but fields on
  798.     different pages may have the same ID.
  799.  
  800.  
  801.  
  802.     ________________________________________________________________________
  803.                                      Chapter 14: Buttons and Fields   259
  804.     ________________________________________________________________________
  805.  
  806.  
  807.     ALIGN
  808.  
  809.     The Align option controls the justification of text within a field.
  810.  
  811.  ┌───────────────────────────────────────────────────────────────────────┐
  812.  │                                                                       │
  813.  │ **** The Printed Documentation has a picture or screen shot here **** │
  814.  │                                                                       │
  815.  └───────────────────────────────────────────────────────────────────────┘
  816.     
  817.  
  818.     LEFT:  Aligns each line of text flush with the left edge of the field.
  819.     This is the default.
  820.  
  821.     RIGHT:  Aligns each line of text flush with the right edge of the field.
  822.  
  823.     CENTER:  Centers each line between the left and right edges of the
  824.     field.
  825.  
  826.  
  827.     NAME POS
  828.  
  829.     The Name pos (name position) property determines the positioning of the
  830.     field name that appears if the Show name property is on. The name can be
  831.     placed either on top or to the left of the field. By default, the name
  832.     is placed to the left.
  833.  
  834.  ┌───────────────────────────────────────────────────────────────────────┐
  835.  │                                                                       │
  836.  │ **** The Printed Documentation has a picture or screen shot here **** │
  837.  │                                                                       │
  838.  └───────────────────────────────────────────────────────────────────────┘
  839.     
  840.  
  841.  
  842.  
  843.     ________________________________________________________________________
  844.                                      Chapter 14: Buttons and Fields   260
  845.     ________________________________________________________________________
  846.  
  847.  
  848.     SHOW NAME
  849.  
  850.     When this option is on, the field's name is displayed in the position
  851.     designated by the Name pos property.
  852.  
  853.  
  854.     WITH EDGE
  855.  
  856.     This property determines whether the field is drawn with a border. The
  857.     edge displayed around the field is determined by the value of the Edge
  858.     type property. The color of the border matches the Border Color setting
  859.     (if the field is not transparent).
  860.  
  861.  ┌───────────────────────────────────────────────────────────────────────┐
  862.  │                                                                       │
  863.  │ **** The Printed Documentation has a picture or screen shot here **** │
  864.  │                                                                       │
  865.  └───────────────────────────────────────────────────────────────────────┘
  866.     
  867.  
  868.     If the With edge property is on, scrolling and list box fields are
  869.     displayed with a scroll bar on their right edge. If you turn off the
  870.     With edge property, the scroll bar will not be visible.
  871.  
  872.  
  873.     HILITE IF FOCUS
  874.  
  875.     This property determines whether the field is highlighted when it has
  876.     the focus. When Hilite if focus is on, the field will be highlighted
  877.     using the color specified by Hilite Color.
  878.  
  879.     If this property is not on, editing can begin as soon as the field
  880.     receives the focus. Otherwise, the user must press F2 to remove the
  881.     highlight and begin editing.
  882.  
  883.  
  884.     SCROLLABLE
  885.  
  886.     This setting determines whether the field can hold more information than
  887.     can be contained within the physical confines of the field's rectangle.
  888.     When Scrollable is on, the text within the field can be scrolled to
  889.     display text located below the visible area of the field.
  890.  
  891.  
  892.  
  893.     ________________________________________________________________________
  894.                                      Chapter 14: Buttons and Fields   261
  895.     ________________________________________________________________________
  896.  
  897.  
  898.     LOCK TEXT
  899.  
  900.     When this property is on, a read-only field is created. If you don't
  901.     want your field to be edited or scrolled through, activate this
  902.     property. Locked text fields do not receive the focus.
  903.  
  904.  
  905.     STYLE
  906.  
  907.     The Style options control the type of field. The style can be set to
  908.     Transparent, Scrolling, Opaque, and List box. The default style is
  909.     Opaque.
  910.  
  911.     OPAQUE:  This option creates a nontransparent field. The color of Opaque
  912.     fields is determined by the Fill and Border Color settings.
  913.  
  914.  ┌───────────────────────────────────────────────────────────────────────┐
  915.  │                                                                       │
  916.  │ **** The Printed Documentation has a picture or screen shot here **** │
  917.  │                                                                       │
  918.  └───────────────────────────────────────────────────────────────────────┘
  919.     
  920.  
  921.     TRANSPARENT:  This option creates a transparent field. All characters,
  922.     paint, and objects behind the field will be visible.
  923.  
  924.     SCROLLING:  Scrolling fields are opaque, with a scroll bar on the right
  925.     edge. A mouse is required to use the scroll bar.
  926.  
  927.  ┌───────────────────────────────────────────────────────────────────────┐
  928.  │                                                                       │
  929.  │ **** The Printed Documentation has a picture or screen shot here **** │
  930.  │                                                                       │
  931.  └───────────────────────────────────────────────────────────────────────┘
  932.     
  933.  
  934.  
  935.  
  936.     ________________________________________________________________________
  937.                                      Chapter 14: Buttons and Fields   262
  938.     ________________________________________________________________________
  939.  
  940.  
  941.     LIST BOX:  List box fields contain a list of items that can be marked
  942.     and unmarked using SPACE. Text within a list box field is not word
  943.     wrapped.
  944.  
  945.  ┌───────────────────────────────────────────────────────────────────────┐
  946.  │                                                                       │
  947.  │ **** The Printed Documentation has a picture or screen shot here **** │
  948.  │                                                                       │
  949.  └───────────────────────────────────────────────────────────────────────┘
  950.     
  951.  
  952.  
  953.     In order to get information into a list box:
  954.  
  955.     1.  Set the style of the field to Opaque.
  956.  
  957.     2.  Type text into the field, pressing ENTER at the end of each line.
  958.  
  959.     3.  Set the style of the field back to List box.
  960.  
  961.  
  962.     BORDER COLOR
  963.  
  964.     This property controls the attribute used to display the field's border
  965.     (if the field is not transparent and the With edge property is on). The
  966.     default is light grey on black.
  967.  
  968.  
  969.     FILL COLOR
  970.  
  971.     This property controls the color used to display the field's interior
  972.     (if the field is not transparent). The default is light grey on black.
  973.  
  974.  
  975.     HILITE COLOR
  976.  
  977.     This property controls the color used to display the field when the
  978.     field receives the focus (if the Hilite if focus property is on). The
  979.     default is black on light grey.
  980.  
  981.  
  982.  
  983.     ________________________________________________________________________
  984.                                      Chapter 14: Buttons and Fields   263
  985.     ________________________________________________________________________
  986.  
  987.  
  988.     EDGE TYPE
  989.  
  990.     This property controls which edge type is displayed as a field's border
  991.     (if the field's With edge property is on). Choose among 15 edge types.
  992.     The default edge type is 1 (single line).
  993.  
  994.  ┌───────────────────────────────────────────────────────────────────────┐
  995.  │                                                                       │
  996.  │ **** The Printed Documentation has a picture or screen shot here **** │
  997.  │                                                                       │
  998.  └───────────────────────────────────────────────────────────────────────┘
  999.     
  1000.  
  1001.  
  1002.     NAME COLOR
  1003.  
  1004.     The Name Color option controls the color used to display the field's
  1005.     name (if the Show name property is on). The default is black on light
  1006.     grey.
  1007.  
  1008.  
  1009.     SCRIPT
  1010.  
  1011.     This option opens the field's script in the Script Editor window.
  1012.  
  1013.  
  1014.     THE BUTTON INFO DIALOG BOX
  1015.  
  1016.     All button properties are accessible through the Button Info dialog box.
  1017.     From this dialog box, you can adjust properties that control the
  1018.     button's color, edge type, and default behavior.
  1019.  
  1020.  
  1021.     USING THE BUTTON INFO DIALOG BOX
  1022.  
  1023.  
  1024.     To access the Button Info dialog box with the keyboard:
  1025.  
  1026.     1.  Select the desired button.
  1027.  
  1028.     2.  Select the Button Info command from the Objects menu (ALT+O,U). A
  1029.     shortcut for this command is to press ENTER or SPACE.
  1030.  
  1031.     The Button Info dialog box appears on the screen.
  1032.  
  1033.  
  1034.  
  1035.     ________________________________________________________________________
  1036.                                      Chapter 14: Buttons and Fields   264
  1037.     ________________________________________________________________________
  1038.  
  1039.  
  1040.     To access the Button's Info dialog box with the mouse:
  1041.  
  1042.     Point to the button and double-click the left mouse button.
  1043.  
  1044.  
  1045.     BUTTON INFO...
  1046.  
  1047.     The Button Info dialog box is shown below.
  1048.  
  1049.  ┌───────────────────────────────────────────────────────────────────────┐
  1050.  │                                                                       │
  1051.  │ **** The Printed Documentation has a picture or screen shot here **** │
  1052.  │                                                                       │
  1053.  └───────────────────────────────────────────────────────────────────────┘
  1054.     
  1055.  
  1056.     The following subsections describe the button properties available in
  1057.     the dialog box and how they modify the appearance and behavior of a
  1058.     button.
  1059.  
  1060.  
  1061.     BUTTON NAME
  1062.  
  1063.     The button name is displayed in the button rectangle. It is centered by
  1064.     default.
  1065.  
  1066.     Note:  The button name can be used within a script to refer to a button.
  1067.  
  1068.  
  1069.     ACCELERATOR KEY
  1070.  
  1071.     The Accelerator property determines the ALT key combination used to
  1072.     quickly select this button. Any letter or number can be used as a button
  1073.     accelerator.
  1074.  
  1075.  
  1076.     ACCELERATOR COLOR
  1077.  
  1078.     This property controls the color of the button accelerators displayed
  1079.     when the user holds down the ALT key.
  1080.  
  1081.  
  1082.  
  1083.     ________________________________________________________________________
  1084.                                      Chapter 14: Buttons and Fields   265
  1085.     ________________________________________________________________________
  1086.  
  1087.  
  1088.     BUTTON NUMBER
  1089.  
  1090.     This number indicates the button's layer in relation to the other
  1091.     buttons on the page or background.
  1092.  
  1093.     Note:  The button number can be used in a script to refer to a button.
  1094.  
  1095.  
  1096.     BUTTON ID
  1097.  
  1098.     Every object on a page or background is assigned an ID number when it is
  1099.     created. This number is unique to each button on the page. (However,
  1100.     there may be two buttons with the same ID number on different pages.)
  1101.  
  1102.     Note:  The ID is the only way to uniquely identify a button from within
  1103.     a script.
  1104.  
  1105.  
  1106.     SHOW NAME
  1107.  
  1108.     Set this option on to display the button name. It is on by default.
  1109.  
  1110.  ┌───────────────────────────────────────────────────────────────────────┐
  1111.  │                                                                       │
  1112.  │ **** The Printed Documentation has a picture or screen shot here **** │
  1113.  │                                                                       │
  1114.  └───────────────────────────────────────────────────────────────────────┘
  1115.     
  1116.  
  1117.  
  1118.     WITH EDGE
  1119.  
  1120.     When With edge is on, the button is displayed with a border.
  1121.  
  1122.  ┌───────────────────────────────────────────────────────────────────────┐
  1123.  │                                                                       │
  1124.  │ **** The Printed Documentation has a picture or screen shot here **** │
  1125.  │                                                                       │
  1126.  └───────────────────────────────────────────────────────────────────────┘
  1127.     
  1128.  
  1129.  
  1130.  
  1131.     ________________________________________________________________________
  1132.                                      Chapter 14: Buttons and Fields   266
  1133.     ________________________________________________________________________
  1134.  
  1135.  
  1136.     HILITE IF FOCUS
  1137.  
  1138.     This property determines whether a button is highlighted when it has the
  1139.     focus (the default is off). If so, the button is displayed using the
  1140.     hilite color. (The Hilite if focus property will have no effect if Auto
  1141.     hilite is not on.)
  1142.  
  1143.  
  1144.     AUTO HILITE
  1145.  
  1146.     This property determines whether  a button is capable of being
  1147.     highlighted (the default is on). If Auto hilite is on, the button will
  1148.     be highlighted when the user places the mouse pointer within its
  1149.     rectangle and presses the left mouse button. If the Hilite if focus
  1150.     property is also on, the button will be highlighted whenever it receives
  1151.     the focus.
  1152.  
  1153.     If Auto hilite is not on, the button will never be highlighted.
  1154.  
  1155.  
  1156.     SHADOW
  1157.  
  1158.     This property causes a button to be displayed with a shadow  below and
  1159.     to the right of it. The default is off (no shadow).
  1160.  
  1161.  ┌───────────────────────────────────────────────────────────────────────┐
  1162.  │                                                                       │
  1163.  │ **** The Printed Documentation has a picture or screen shot here **** │
  1164.  │                                                                       │
  1165.  └───────────────────────────────────────────────────────────────────────┘
  1166.     
  1167.  
  1168.  
  1169.     STYLE
  1170.  
  1171.     Opaque:  This option, when on, makes a button nontransparent. The button
  1172.     completely hides any characters or objects under it. This option is on
  1173.     by default.
  1174.  
  1175.     Transparent:  When this option is on, any empty spaces in the button
  1176.     become transparent. Any characters or objects under the button are
  1177.     visible through the empty spaces.
  1178.  
  1179.  
  1180.  
  1181.     ________________________________________________________________________
  1182.                                      Chapter 14: Buttons and Fields   267
  1183.     ________________________________________________________________________
  1184.  
  1185.  
  1186.     CHECK BOX:  This option creates check box buttons. Check box buttons are
  1187.     displayed with brackets to the left of the name. Selecting a check box
  1188.     button toggles the check mark [X] between the brackets.
  1189.     Check box buttons are transparent and cannot be shadowed.
  1190.  
  1191.  ┌───────────────────────────────────────────────────────────────────────┐
  1192.  │                                                                       │
  1193.  │ **** The Printed Documentation has a picture or screen shot here **** │
  1194.  │                                                                       │
  1195.  └───────────────────────────────────────────────────────────────────────┘
  1196.     
  1197.  
  1198.  
  1199.     BORDER COLOR
  1200.  
  1201.     This property controls the color used to display a button's edge. The
  1202.     default is light grey on black. The Border Color has no effect if the
  1203.     button is transparent.
  1204.  
  1205.  
  1206.     FILL COLOR
  1207.  
  1208.     This property determines the color used to display the interior of a
  1209.     nontransparent button.
  1210.  
  1211.  
  1212.     HILITE COLOR
  1213.  
  1214.     This property controls the color of a button when it is highlighted.
  1215.     Only buttons with the Auto Hilite property on will be highlighted. The
  1216.     default is black on light grey.
  1217.  
  1218.  
  1219.     EDGE TYPE
  1220.  
  1221.     This property determines the displayed border pattern of a button. If
  1222.     the button is not transparent, the edge will be displayed with the
  1223.     Border Color.
  1224.  
  1225.  
  1226.     SCRIPT
  1227.  
  1228.     This option opens the button's script in the Script Editor window.
  1229.  
  1230.  
  1231.  
  1232.     ________________________________________________________________________
  1233.                                      Chapter 14: Buttons and Fields   268
  1234.     ________________________________________________________________________
  1235.  
  1236.  
  1237.     BUTTON AND FIELD IDEAS
  1238.  
  1239.     The following section describes some special uses of buttons and fields.
  1240.  
  1241.  
  1242.     INVISIBLE BUTTONS
  1243.  
  1244.     You can create completely invisible buttons by:
  1245.  
  1246.         0  Setting the Style property to Transparent
  1247.  
  1248.         0  Setting the With edge property to off
  1249.  
  1250.         0  Setting the Show name property to off
  1251.  
  1252.     Buttons with these characteristics are, for all practical purposes,
  1253.     invisible to the user. There is no border, name, or edge to give away
  1254.     the button's position. Some practical uses for these buttons are
  1255.     discussed below.
  1256.  
  1257.  
  1258.     SELECTING OBJECTS OF A LOWER LAYER
  1259.  
  1260.     By placing an invisible button on top of another button, you can create
  1261.     the illusion of clicking on the visible button, when, in fact, the
  1262.     invisible button is being selected.
  1263.  
  1264.     In a help system, the background may contain paging buttons that go to
  1265.     the previous and next pages. On the index page, however, you want these
  1266.     buttons to be disabled (because there isn't a logical next or previous
  1267.     page). You can accomplish this by placing an invisible page button which
  1268.     executes the special case actions on top of the paging buttons.
  1269.  
  1270.  
  1271.     SELECTING PAINT
  1272.  
  1273.     Invisible buttons can be used on top of the paint layer to create the
  1274.     illusion that the user is clicking on an icon, such as the phone or
  1275.     house icon found in the Ideas pad.
  1276.  
  1277.     Suppose you've been asked to develop an Executive Information System
  1278.     (EIS) for top management. Further, your boss wants to be able to click
  1279.     on icons to quickly see various reports about the company's status.
  1280.     Here's how to develop this type of linked icon:
  1281.  
  1282.  
  1283.     To create a linked icon:
  1284.  
  1285.     1.  Paint the icon on the picture layer.
  1286.  
  1287.     Copy an image from the Ideas pad if you want to save time.
  1288.  
  1289.  
  1290.  
  1291.     ________________________________________________________________________
  1292.                                      Chapter 14: Buttons and Fields   269
  1293.     ________________________________________________________________________
  1294.  
  1295.  
  1296.     2.  Create an invisible button, as described above, and place it on top
  1297.     of the icon.
  1298.  
  1299.     3.  Link the button to where you want the boss to go when the icon is
  1300.     selected. (See invisible button section below about linking.)
  1301.  
  1302.  
  1303.     INVISIBLE FIELDS
  1304.  
  1305.     Invisible fields have the following properties:
  1306.  
  1307.         0  The Style property is set to transparent.
  1308.  
  1309.         0  The With Edge property is set to off.
  1310.  
  1311.         0  The Show Name property is set to off.
  1312.  
  1313.     Invisible fields are useful for creating graphic typing areas. You
  1314.     should specify a transparent field when the underlying graphics contain
  1315.     a visual clue that a field is there. The following example overlays a
  1316.     transparent field onto some painted lines to create the illusion of
  1317.     ruled paper:
  1318.  
  1319.  ┌───────────────────────────────────────────────────────────────────────┐
  1320.  │                                                                       │
  1321.  │ **** The Printed Documentation has a picture or screen shot here **** │
  1322.  │                                                                       │
  1323.  └───────────────────────────────────────────────────────────────────────┘
  1324.     
  1325.  
  1326.  
  1327.  
  1328.     ________________________________________________________________________
  1329.                                      Chapter 14: Buttons and Fields   270
  1330.     ________________________________________________________________________
  1331.  
  1332.  
  1333.     DATABASE FIELDS
  1334.  
  1335.     By modifying a field's properties, you can create traditional database
  1336.     entry fields. Database fields have the following properties:
  1337.  
  1338.         0  The With edge property is set to off.
  1339.  
  1340.         0  The Show name property is set to on.
  1341.  
  1342.         0  The Name position property is set to left.
  1343.  
  1344.         0  The Style property is set to Opaque.
  1345.  
  1346.     These fields are familiar to many users who work with database programs,
  1347.     which often display information on forms with these kinds of fields.
  1348.  
  1349.  ┌───────────────────────────────────────────────────────────────────────┐
  1350.  │                                                                       │
  1351.  │ **** The Printed Documentation has a picture or screen shot here **** │
  1352.  │                                                                       │
  1353.  └───────────────────────────────────────────────────────────────────────┘
  1354.     
  1355.  
  1356.  
  1357.     LINKING BUTTONS
  1358.  
  1359.     A link is a connection established between a page and another page or
  1360.     pad. Links are established using buttons, so that when you select a
  1361.     button on a page, you access the linked page or pad.
  1362.  
  1363.     When you create information applications, like help systems, links are
  1364.     especially useful. With HyperPAD, you can link a series of information
  1365.     pages together. When browsing, a user can then move easily between
  1366.     pieces of related information simply by selecting buttons.
  1367.  
  1368.     All buttons contain link information hidden in their scripts, which is
  1369.     accessible through the Button Info dialog box. HyperPAD automates the
  1370.     process of creating a link, freeing you from the task of having to type
  1371.     the actions into the button's script.
  1372.  
  1373.  
  1374.  
  1375.     ________________________________________________________________________
  1376.                                      Chapter 14: Buttons and Fields   271
  1377.     ________________________________________________________________________
  1378.  
  1379.  
  1380.     To link a button:
  1381.  
  1382.     1.  Select the button to be linked.
  1383.  
  1384.     2.  Press ENTER to open the Button Info dialog box.
  1385.  
  1386.     3.  Select the Link To button from the bottom of the dialog box.
  1387.  
  1388.     The following popup dialog box appears:
  1389.  
  1390.  ┌───────────────────────────────────────────────────────────────────────┐
  1391.  │                                                                       │
  1392.  │ **** The Printed Documentation has a picture or screen shot here **** │
  1393.  │                                                                       │
  1394.  └───────────────────────────────────────────────────────────────────────┘
  1395.     
  1396.  
  1397.     If you have a mouse, you can move this dialog box to the side, getting
  1398.     it out of the way so that you can view the page underneath.
  1399.  
  1400.     4.  Navigate to the destination page. This may involve using PGDN or
  1401.     PGUP to change pages, or using Open from the File menu (ALT+F,O) to go
  1402.     to another pad, or using one of the Go menu commands.
  1403.  
  1404.     5.  Select one of the following options from the dialog box:
  1405.  
  1406.     This Page:  This choice links the button to a specified page, even if it
  1407.     is on a different pad than the button being linked. The shortcut for
  1408.     this command is ALT+P.
  1409.  
  1410.     This Pad:  This choice links the button to this pad.
  1411.  
  1412.     When you select the button, it will take you to the page that was
  1413.     accessed when the pad was last opened. The shortcut for this command is
  1414.     ALT+D.
  1415.  
  1416.     Cancel:  This choice cancels the linking process. The shortcut for this
  1417.     command is ALT+C.
  1418.  
  1419.     After selecting one of these buttons, you'll be returned to the page
  1420.     that was open when you began the procedure.
  1421.  
  1422.  
  1423.  
  1424.     ________________________________________________________________________
  1425.                                      Chapter 14: Buttons and Fields   272
  1426.     ________________________________________________________________________
  1427.  
  1428.  
  1429.     WHAT REALLY HAPPENS
  1430.  
  1431.     When you link buttons using the Link To command in the Button Info
  1432.     dialog box, HyperPAD actually creates statements within the button's
  1433.     script that perform the link. These statements essentially say, "When
  1434.     this button is selected, change to this other page".
  1435.  
  1436.     You can examine these statements by selecting the Script button from the
  1437.     Button Info dialog box. Scripts are introduced in the next section.
  1438.  
  1439.  
  1440.     SCRIPTING
  1441.  
  1442.     Each button in HyperPAD has an attached script that can define what
  1443.     happens when the button is selected (although each button has a script,
  1444.     some scripts are blank). When you select a button, HyperPAD tells that
  1445.     button that it has been selected. The button, in response, can execute a
  1446.     group of commands that you have created.
  1447.  
  1448.     The commands in a script are written in an Englishlike language called
  1449.     PADtalk. Using PADtalk, you can instruct your buttons to perform diverse
  1450.     tasks, such as changing to another page, running another program, or
  1451.     preparing a report and sending it to the printer.
  1452.  
  1453.     The following section introduces PADtalk and gives some practical
  1454.     examples to use in your own scripts. PADtalk is examined in depth in the
  1455.     PADtalk Reference Guide.
  1456.  
  1457.  
  1458.     ACCESSING A BUTTON'S SCRIPT
  1459.  
  1460.  
  1461.     To access a button's script:
  1462.  
  1463.     1.  Use the Selector tool to select a button.
  1464.  
  1465.     2.  Press ENTER to open the Button Info dialog box.
  1466.  
  1467.     3.  Select the Script button.
  1468.  
  1469.     A shortcut to get to the script is to press SHIFT+ENTER when the button
  1470.     is selected.
  1471.  
  1472.  
  1473.     FRAMEWORK FOR SCRIPTS
  1474.  
  1475.     PADtalk is different from most computer languages. Many languages suffer
  1476.     from a strict set of rules that must be followed. PADtalk, on the other
  1477.     hand, allows you to write commands in a more intuitive, Englishlike
  1478.     style that is easy to read.
  1479.  
  1480.  
  1481.  
  1482.     ________________________________________________________________________
  1483.                                      Chapter 14: Buttons and Fields   273
  1484.     ________________________________________________________________________
  1485.  
  1486.  
  1487.     Even so, HyperPAD's commands and language syntax still follow loose
  1488.     rules that you must keep in mind. Don't worry, though. HyperPAD provides
  1489.     you with instant error information when you make a mistake.
  1490.  
  1491.  
  1492.     HANDLERS
  1493.  
  1494.     Scripts are composed of groups of commands; each group is called a
  1495.     handler. The word handler marks the beginning of a group of statements
  1496.     that is executed when something happens to the button. Generally,
  1497.     commands are executed when buttons are selected (when you highlight the
  1498.     button and press ENTER or click on the button with the mouse).
  1499.  
  1500.     The following shows a sample handler that instructs HyperPAD to change
  1501.     to the next page when the button is selected.
  1502.  
  1503.     handler select;
  1504.     begin
  1505.       go to the next page;
  1506.     end;
  1507.  
  1508.     Simply, the above handler says: "When the button is selected, change to
  1509.     the next page".
  1510.  
  1511.     The group of commands that is executed is contained between the words
  1512.     begin and end. You can specify as many commands as necessary between
  1513.     these words, separating each command with a semicolon.
  1514.  
  1515.     Don't worry about upper- or lowercase words. PADtalk pays no attention
  1516.     to capitalization.
  1517.  
  1518.  
  1519.  
  1520.     ________________________________________________________________________
  1521.                                      Chapter 14: Buttons and Fields   274
  1522.     ________________________________________________________________________
  1523.  
  1524.  
  1525.     SOME USEFUL PADTALK COMMANDS
  1526.  
  1527.     There are many types of statements and commands that you can type into
  1528.     PADtalk. This section introduces some useful statements that you can
  1529.     include in your scripts immediately, without knowing any more about
  1530.     PADtalk.
  1531.  
  1532.  
  1533.     THE GO COMMAND
  1534.  
  1535.     The go command lets you change to another page or even another pad. The
  1536.     following are examples of the go command:
  1537.  
  1538.     go to page 10;
  1539.  
  1540.     go to page "Preferences";
  1541.  
  1542.     go to the next page;
  1543.  
  1544.     go to the previous page;
  1545.  
  1546.  
  1547.     THE RUN COMMAND
  1548.  
  1549.     The run command lets you run other DOS programs from within HyperPAD.
  1550.     When doing so, HyperPAD shrinks down to 3K of memory, providing your
  1551.     programs with plenty of memory in which to run. Some examples of the run
  1552.     command are:
  1553.  
  1554.     run "C:\LOTUS\123.EXE";
  1555.  
  1556.     run "COMMAND.COM";
  1557.  
  1558.  
  1559.     THE FIND COMMAND
  1560.  
  1561.     The find command allows you to locate a particular piece of text
  1562.     anywhere in your pad. Some examples of the find command are:
  1563.  
  1564.     find "hello";
  1565.  
  1566.     find "lawyer" in field 1;
  1567.  
  1568.     find "james" in field 2;
  1569.  
  1570.  
  1571.  
  1572.     ________________________________________________________________________
  1573.                                      Chapter 14: Buttons and Fields   275
  1574.     ________________________________________________________________________
  1575.  
  1576.  
  1577.     CONCLUSION
  1578.  
  1579.     In this chapter you learned about buttons and fields, including how they
  1580.     are created, moved, resized, and deleted. You learned how to customize
  1581.     your pads by copying and pasting objects between pages and even between
  1582.     different pads. We also told you about properties, which give you the
  1583.     ability to create attractive buttons and fields that behave in a manner
  1584.     appropriate for your pad. In the last section, you learned how to make a
  1585.     button respond in different ways when it is selected by placing commands
  1586.     into the button's script.
  1587.