



    ________________________________________________________________________
                                                  Table of contents   i
    ________________________________________________________________________


    TABLE OF CONTENTS OVERVIEW

    Preface   1

    Chapter One: What's Really Happening?   5

    Chapter Two: PADtalk Scripts  13

    Chapter Three: The Object Hierarchy     29

    Chapter Four: Containers 41

    Chapter Five: The Current Object   47

    Chapter Six: Control Structures    51

    Chapter Seven: Chunk Expressions   59

    Chapter Eight: Numeric Operators   63

    Chapter Nine: Colors     69

    Chapter Ten: Messages    73

    Chapter Eleven: Commands 99

    Chapter Twelve: Properties    145

    Chapter Thirteen: Functions   219


    Appendix 1: PADtalk Error Messages 277

    Appendix 2: Key Codes    291

    Appendix 3: Writing Extensions     297

    Appendix 4: Support for Show Partner F/X     347

    Appendix 5: HyperPAD Utilities     349

    Appendix 6: Running HyperPAD on a Novell Network  353

    Appendix 7: Edge Types   357

    Appendix 8: ASCII Table  359

    Appendix 9: Working with Floppy Disks   361



    ________________________________________________________________________
                                                  Table of contents   ii
    ________________________________________________________________________



    ________________________________________________________________________
                                                  Table of contents   iii
    ________________________________________________________________________
    Preface   1
       About the PADtalk Reference Guide    1
       Chapter Summaries     1
       Notation Conventions  3
    Chapter One:  What's Really Happening?  5
       What is PADtalk? 6
       What do you use it for?    7
       Objects     7
       Pad    7
       Background  8
       Page   8
       Field  8
       Button 8
       Other HyperPAD Objects     8
       How to refer to objects    8
       Qualifying Objects    8
       Object Names     9
       Object Numbers   10
       Object ID Numbers     11
       Ready to script  11
    Chapter Two: PADtalk Scripts  13
       Constructing Scripts  13
       The Script Editor     14
       Exiting the Script Editor: 14
       Let's Start Scripting:     14
       Writing statements in PADtalk   17
       Using the Keyboard    18
       Editing a Script 19
       Search and Replace    20
       Printing Scripts 21
       Compiling Scripts     21
       Compiling with the Debugging Switch  21
       The Components of a Script 22
       Handlers    22
       Defining your own Functions     23
       Other Definitions     24
       Commands    24



    ________________________________________________________________________
                                                  Table of contents   iv
    ________________________________________________________________________
       Constants   24
       Miscellaneous Constants    25
       Character Constants   25
       Property Constants    26
       Numeric Constants     26
       Literals    27
       Functions   28
       Properties  28
       Containers  28
    Chapter Three:  The Object Hierarchy    29
       Sending Messages 30
       Where do messages go? 30
       Types of Messages     32
       System Messages  32
       Messages From Scripts 33
       Message Box Messages  33
       Messages that look like commands     34
       Receiving and Sending Messages  34
       The Exit Command 35
       The Pass Command 36
       Altering the Message Path  37
       Where to put your Handlers 39
    Chapter Four:  Containers     41
       Fields 41
       Variables   42
       Local Variables  43
       Global Variables 44
       Parameter Variables   44
       The Message Box  45
       The selectedText 45
    Chapter Five: The Current Object   47
       The Current Object    47
       The Target  48
       The Current Executing Object    49
       Referencing Current Objects with "this"   49



    ________________________________________________________________________
                                                  Table of contents   v
    ________________________________________________________________________
    Chapter Six: Control Structures    51
       If Statement     51
       Case Statement   52
       While...Do Statement  54
       Repeat...Until Statement   55
       For Statement    56
    Chapter Seven: Chunk Expressions   59
       Simple Chunk Expressions   59
       Character Chunks 60
       Word Chunks 60
       Item Chunks 61
       Line Chunks 61
       Specifying Chunks of Chunks     61
       Chunking Destinations 62
    Chapter Eight:  Numeric Operators  63
       ( ) (parentheses)     63
       - (unary minus)  63
       not (logical NOT)     63
       ^ (exponentiation)    63
       / (divide)  64
       * (multiplication)    64
       mod (module)     64
       div (divide and truncate)  64
       + (addition)     64
       - (subtract)     64
       & (concatenation)     64
       && (concatenation with space)   65
       > (greater than) 65
       < (less than)    65
       >= (greater than or equal to)   65
       <= (less than or equal to) 65
       is in  65
       is not in   66
       contains    66
       = (equal)   66
       <> (not equal)   66
       is     66
       is not 66
       and (logical AND)     66
       or (logical OR)  66
       Operator Precedence   67



    ________________________________________________________________________
                                                  Table of contents   vi
    ________________________________________________________________________
    Chapter Nine:  Colors    69
       Specifying Colors     69
       Color Numbers    70
    Chapter Ten: Messages    73
       About Messages   73
       Message Sent from Commands 74
       Messages sent to a button  74
       closeButton 75
       deleteButton     75
       keyPress    76
       mouseDown   76
       mouseEnter  76
       mouseLeave  76
       mouseStillDown   77
       mouseUp     77
       mouseWithin 77
       newButton   77
       openButton  78
       select 78
       Messages Sent to Fields    79
       closeField  80
       deleteField 80
       keyPress    80
       mark   81
       mouseDown   81
       mouseEnter  81
       mouseLeave  82
       mouseStillDown   82
       mouseUp     82
       mouseWithin 82
       newField    82
       openField   83
       select      83
       unMark 84
       Messages sent to a page    85
       break  85
       cancel 86
       closePad    86
       closePage   87
       deleteBackground 87
       deletePad   88



    ________________________________________________________________________
                                                  Table of contents   vii
    ________________________________________________________________________
       deletePage  88
       doMenu 89
       help   90
       idle   90
       keyPress    91
       mouseDown   92
       mouseStillDown   92
       mouseUp     92
       newBackground    92
       newPad 93
       newPage     93
       openPad     93
       openPage    94
       quit   94
       resume 94
       startUp     95
       suspend     95
       Common Message Groupings   96
    Chapter Eleven: Commands 99
       add    100
       answer 101
       ask    102
       close  103
       convert     104
       delete 107
       dial   108
       divide 111
       do     111
       edit Script 112
       find   112
       flushCache  114
       fxshow 115
       get    116
       global 116
       go     117
       hide   120
       hHilite     120
       multiply    121
       noSound     122
       play   122
       playBack    124
       pop Page    124
       print  125
       push   127



    ________________________________________________________________________
                                                  Table of contents   viii
    ________________________________________________________________________
       put    129
       query  130
       read   131
       record 133
       run    134
       send   136
       set    137
       setDefaultPopupColor  138
       setPopupColors   138
       show   139
       sort   139
       sound  141
       subtract    142
       visual 142
       wait   143
       write  144
    Chapter Twelve:  Properties   145
       Introduction     145
       What are Properties   145
       Property Listings     146
       Global Properties     146
       Pad Properties   146
       Page Properties  147
       Background Properties 147
       Button Properties     147
       Field Properties 148
       Message Box Properties     148
       Tool Box Properties   148
       Menu Bar Properties   148
       Status Bar Properties 148
       Global Properties     149
       asciiChar   149
       autoSave    149
       baud   151
       currentDirectory 151
       cursor 152
       cursorLoc   152
       dataBits    153
       fileSortMethod   153
       focus  154
       lockMessages     154
       lockRecent  156
       lockScreen  156
       markerAttr  157



    ________________________________________________________________________
                                                  Table of contents   ix
    ________________________________________________________________________
       markerChar  158
       maxDirtyPages    159
       modem  159
       mouse  160
       mouseAttr   160
       mouseChar   162
       numberFormat     162
       paintAttr   164
       parity 165
       printDevice 165
       printer     166
       printerTranslation    166
       selectedText     167
       stopBits    168
       tabbing     168
       userLevel   169
       Pad Properties   171
       cantDelete  171
       cantModify  171
       longName    172
       name   173
       passwordOnly     173
       script 174
       Field Properties 175
       acceleratorColor 175
       acceleratorKey   175
       align  176
       autoHilite  176
       borderColor 176
       color  177
       currentLine 177
       edgeType    178
       fillColor   179
       hilite 179
       hiliteColor 180
       hiliteIfFocus    180
       ID     180
       insertPoint 181
       layer  182
       location    182
       lockText    183
       longID 183
       longName    184
       markedLines 184
       name   186
       nameColor   186



    ________________________________________________________________________
                                                  Table of contents   x
    ________________________________________________________________________
       namePosition     187
       rectangle   187
       script 188
       scrollable  189
       showName    190
       startLine   190
       style  191
       value  192
       visible     192
       withEdge    193
       Button Properties     194
       acceleratorColor 194
       acceleratorKey   195
       align  195
       autoHilite  196
       borderColor 196
       check  197
       color  198
       edgeType    199
       fillColor   199
       hilite 200
       hiliteColor 200
       hiliteIfFocus    201
       ID     201
       layer  201
       location    202
       lockText    202
       longID 203
       name   204
       rectangle   204
       script 206
       shadow 206
       showName    207
       style  207
       visible     208
       withEdge    208
       Page Properties  209
       cantDelete  209
       ID     209
       longID 209
       longName    210
       name   210
       script 211



    ________________________________________________________________________
                                                  Table of contents   xi
    ________________________________________________________________________
       Background Properties 212
       cantDelete  212
       ID     212
       longID 212
       longName    213
       name   213
       script 214
       Message Box Properties     215
       location    215
       visible     215
       width  216
       Tool Box Properties   217
       location    217
       visible     217
       Menu Bar and Status Bar Properties   218
       visible     218
    Chapter Thirteen:  Functions  219
       Introduction     219
       Calling a Function    219
       Functions that Send Messages    219
       Function Listing by Topic  220
       Computer Functions    220
       Conversion Functions  220
       Date and Time Functions    220
       DOS Functions    221
       Financial Functions   221
       Keyboard Functions    221
       Mathematical Functions     222
       Pad Information Functions  222
       Text Handling Functions    222
       Miscellaneous Functions    223
       abs    223
       acos   223
       altKey 224
       annuity     224
       append 225
       asin   225
       atan   226
       average     226
       charToNum   226
       choose 227
       clean  227
       commandLine 228
       compound    228



    ________________________________________________________________________
                                                  Table of contents   xii
    ________________________________________________________________________
       coprocessor 229
       cos    229
       cpu    229
       create 230
       ctrlKey     230
       currentBackground     231
       currentObject    231
       currentPad  232
       currentPage 232
       cursorLoc   233
       cursorX     234
       cursorY     234
       date   234
       directory   235
       dirs   236
       diskSpace   236
       dosVersion  237
       drive  237
       drives 238
       environment 238
       exp    239
       exp1   239
       exp2   240
       fact   240
       fileExists  240
       fileOpen    241
       files  242
       fileSize    242
       findFile    243
       freeMem     243
       freeSize    244
       fullName    244
       graphicsCard     245
       isSound     246
       key    246
       leftString  247
       length 248
       ln     248
       ln1    249
       longDate    249
       longFiles   250
       longTime    250
       lower  251
       max    251
       min    252
       mouseButton 252



    ________________________________________________________________________
                                                  Table of contents   xiii
    ________________________________________________________________________
       mouseClick  253
       mouseExists 253
       mouseLoc    254
       mouseX 254
       mouseY 254
       number of   255
       numToChar   256
       offSet 257
       open   258
       padSize     259
       param  259
       paramCount  260
       params 261
       popup  262
       product     265
       proper 265
       random 266
       repeatChars 267
       result 267
       rightString 268
       round  269
       screenHeight     269
       screenWidth 270
       seconds     270
       shiftKey    271
       sin    272
       sqrt   272
       stdev  272
       substitute  273
       sum    273
       tan    273
       target 274
       time   274
       trim   275
       trunc  275
       upper  276
       variance    276
       version     276



    ________________________________________________________________________
                                                  Table of contents   xiv
    ________________________________________________________________________
    Appendix 1: PADtalk Error Messages 277
       Compiler Error Messages    277
       Runtime Error Messages     285
    Appendix 2: Key Codes    291
    Appendix 3 Writing Extensions 297
       Introduction     297
       How to Create an Extension 298
       Limitations 299
       Extension Components  299
       Function Pool    299
       WhenLoaded() and WhenUnLoaded() 299
       WhenLoaded()     299
       WhenUnLoaded()   299
       A Sample C Extension  300
       A Sample Assembly Language Extension 301
       Passing Data Between HyperPAD and your Extension    302
       Passing Parameters    302
       Returning Values 303
       Handling Memory  304
       Pointers    304
       Handles     305
       Dereferencing Handles 306
       HyperPAD Callbacks    306
       Memory Functions 307
       Conversion Functions  307
       Container Get/Set Functions     308
       Message Passing Functions  308
       Screen Handling Functions  308
       Event Handling Functions   309
       Miscellaneous Functions    309
       Callback Reference    310
       btoh   310
       Do     310
       FreeHandle  311
       FreePtr     311
       ftoh   312
       GetEvent    312
       GetFieldID  312
       GetFieldName     313
       GetFieldNum 314
       GetGlobal   314



    ________________________________________________________________________
                                                  Table of contents   xv
    ________________________________________________________________________
       GetSharedArea    315
       GetTime     315
       HandleSize  316
       HideMouse   316
       HighLine    316
       htob   318
       htof   318
       htoi   318
       htol   318
       htos   319
       itoh   319
       LockHandle  320
       ltoh   320
       MakeWin     321
       NewHandle   322
       NewPtr 322
       PeekEvent   322
       PtrSize     323
       PutAttr     323
       PutCh  324
       PutStr 324
       ReAllocHandle    325
       Refresh     325
       ReleaseHPAD 326
       RemWin 326
       RestoreHPAD 326
       ReturnValue 327
       SendHPMsg   328
       SendPageMsg 329
       SetFieldID  330
       SetFieldName     330
       SetFieldNum 331
       SetGlobal   332
       ShowMouse   332
       stoh   333
       UnGetEvent  333
       UnLockHandle     334
       C routines defined in HyperPAD  335
       Using Floating Point Math  335
       Data Structures used by Extensions   336
       Function Pool    337
       Video Packet     338
       Message     339
       The Event Queue  340
       Sared Data Area  342



    ________________________________________________________________________
                                                  Table of contents   xvi
    ________________________________________________________________________
    Appendix 4: Support for Show Partner F/X     347
       Introduction     347
       Show Partner File Types    347
       Using the fxshow Command   348
    Appendix 5: HyperPAD Utilities     349
       Extension Mover  349
       Pad Info    350
       Strip  350
       Compact     351
    Appendix 6: Running HyperPAD on a Novell Network  353
       Introduction     353
       Installation     353
       Sharing Pads     354
       Where HyperPAD Looks for Files  355
    Appendix 7: Edge Types   357
    Appendix  8: ASCII Table 359
    Appendix 9: Working with Floppy Disks   361