Display Builder User's Guide
This document is a guide to the use of Display Builder 5.7.0, the display
development tool for e-terrabrowser 3.6.0.
Software Version: Display Builder 5.7.0
NOTE: On June 7, 2010, the acquisition of AREVA T&D by Alstom and Schneider
Electric was closed, following the approval of anti-trust authorities and information
consultation with Works Councils around the world. This copyright will be updated
following the transition period.
Copyright and Proprietary Information
Copyright © 2010 AREVA T&D Inc. All Rights Reserved.
NOTE: CONTAINS AREVA T&D INC. PROPRIETARY INFORMATION. DO NOT COPY,
STORE IN A RETRIEVAL SYSTEM, TRANSMIT OR DISCLOSE TO ANY THIRD
PARTY WITHOUT PRIOR WRITTEN PERMISSION FROM AREVA T&D INC.
__________________________________________________________________
Trademarks
“ESCA” and “HABITAT” are registered trademarks of AREVA T&D Inc. “eterra” is a
registered trademark and/or service mark of E-Terra, LLC, licensed for use by
AREVA T&D Inc. in connection with its e-terra family of products and services.
Other product and company names in these materials may be trademarks or registered
trademarks of other companies, and are the property of their respective owners. They
are used only for explanation and to the respective owners’ benefit, without intent to
infringe.
Contents
About This Document ........................................................................... xviii
Purpose of This Document ........................................................................................ xviii
Who Should Use This Document .............................................................................. xviii
Structure of This Document ...................................................................................... xviii
For More Information................................................................................................... xix
Conventions ................................................................................................................. xx
Change Summary ....................................................................................................... xxi
1. Overview ................................................................................................. 1
1.1 Display Concepts .................................................................................................... 1
1.1.1 Common Display Features and Capabilities ...................................................... 1
1.1.2 Common Definable Display Attributes................................................................ 2
1.1.3 Display Elements ............................................................................................... 3
1.1.3.1 Drawn and Typed Graphical Elements ......................................................... 3
1.1.3.2 Graphic Attributes of Primitives and Text ...................................................... 3
1.1.3.3 Symbols ........................................................................................................ 4
1.1.3.4 Scale Factors ................................................................................................ 4
1.1.3.5 Shift Factors .................................................................................................. 4
1.1.3.6 Pictures ......................................................................................................... 4
1.1.3.7 Nested Pictures............................................................................................. 6
1.1.3.8 Menus ........................................................................................................... 6
1.1.3.9 Keysets ......................................................................................................... 7
1.1.3.10 Conditional Attribute Modifiers (CAMS) ...................................................... 7
1.1.3.11 GEometry Modifiers (GEMs) ....................................................................... 8
1.1.3.12 Conditional Text (CT) .................................................................................. 9
1.1.3.13 Pop-Ups ...................................................................................................... 9
1.1.3.14 Picgroups .................................................................................................. 10
1.1.3.15 Placeable and Attachable Elements ......................................................... 11
1.1.3.16 WPF Controls............................................................................................ 12
1.1.4 Display Layers ................................................................................................. 12
1.1.4.1 Simple Layers ............................................................................................. 12
1.1.4.2 Database Linkages ..................................................................................... 13
1.1.4.3 Tabular Layers ............................................................................................ 13
1.1.4.4 Features of Tabular Layers ......................................................................... 14
1.1.4.5 Driving Data Structures ............................................................................... 16
1.1.4.6 Picgroup Spatial Relationships ................................................................... 17
1.1.4.7 Data Linkage to Linked List Structures ....................................................... 18
1.1.5 Overall Attachments ......................................................................................... 18
1.1.6 Permission Area Tests ..................................................................................... 19
1.2 Display Builder Concepts ...................................................................................... 19
1.2.1 Definition Manager ........................................................................................... 19
Proprietary – See Copyright Page iii
1.2.1.1 Element Set Windows ................................................................................. 20
1.2.2 Display Set Window ......................................................................................... 21
1.2.2.1 Editor Windows ........................................................................................... 22
1.2.2.2 Browser Window ......................................................................................... 22
1.2.3 Definition Manager Menus and Title Bar .......................................................... 24
1.2.4 Definition Manager Toolbars ............................................................................ 25
1.2.5 Display Builder Cursors.................................................................................... 26
1.2.6 Display Builder Sets ......................................................................................... 28
1.2.6.1 Element Sets .............................................................................................. 28
1.2.6.2 Display Sets ................................................................................................ 28
1.2.6.3 How Element and Display Sets Relate ....................................................... 28
1.2.6.4 Display Builder Set Storage ........................................................................ 28
1.2.6.5 Display Definition Language (DDL) ............................................................. 29
1.2.6.6 Display Builder Set Access ......................................................................... 29
1.2.7 Display Builder Editors ..................................................................................... 29
1.2.7.1 Scratch Pad Editor Components ................................................................. 29
1.2.7.2 Dialog Editor Components .......................................................................... 30
1.2.8 Display Builder Tools ....................................................................................... 33
1.2.8.1 Primitives .................................................................................................... 35
1.2.8.2 Static Text ................................................................................................... 35
1.2.8.3 Formatted Fields ......................................................................................... 35
1.2.8.4 Placeholders ............................................................................................... 36
1.2.8.5 Drag-and-Drop Utility .................................................................................. 36
1.3 Multiple Data Sources on a Single Display............................................................ 36
1.3.1 Concepts and Terminology .............................................................................. 37
1.3.1.1 Schemas ..................................................................................................... 37
1.3.1.2 Schema Types ............................................................................................ 38
1.3.1.3 Primary Keys .............................................................................................. 38
1.3.1.4 Foreign Keys ............................................................................................... 38
2. Display Builder Basics ........................................................................ 40
2.1 Starting Display Builder ......................................................................................... 40
2.2 Customizing the Building Environment .................................................................. 40
2.2.1 Customizing All Scratch Pads .......................................................................... 40
2.2.2 Customizing Individual Scratch Pads ............................................................... 40
2.3 Selecting the Compatibility Version ....................................................................... 41
2.4 Opening Display Builder Sets................................................................................ 42
2.5 Creating New Sets ................................................................................................ 42
2.6 Starting Scratch Pad and Dialog Editors ............................................................... 43
2.6.1 Starting Scratch Pad Editors ............................................................................ 43
2.6.1.1 Creating New Symbols and Pictures........................................................... 43
2.6.1.2 Creating New Picgroups and Displays ........................................................ 43
2.6.2 Starting Dialog Editors ..................................................................................... 44
2.6.3 Opening Existing Components ......................................................................... 44
2.6.3.1 Using Component Lists ............................................................................... 44
Proprietary – See Copyright Page iv
2.6.3.2 Using the Browser Window ......................................................................... 45
2.7 Renaming a Display Component........................................................................... 45
2.8 Resolving Name Conflicts ..................................................................................... 46
2.9 Changing Display Set References ........................................................................ 47
2.10 Saving Sets and Editor Definitions ...................................................................... 48
2.10.1 Saving the Active Set ..................................................................................... 48
2.10.2 Saving All Open Sets and Editor Definitions .................................................. 48
2.10.3 Saving the Current Editor ............................................................................... 48
2.10.4 Using Auto Save ............................................................................................ 49
2.11 Recovering Changes from Temporary Files ........................................................ 49
2.12 Copying Component Definitions .......................................................................... 49
2.13 Printing the Contents of a Scratch Pad ............................................................... 50
2.14 Transferring Sets for Compilation........................................................................ 50
2.15 Closing Editors .................................................................................................... 51
2.15.1 Closing the Current Editor .............................................................................. 51
2.15.2 Closing All Editors .......................................................................................... 52
2.16 Closing Sets ........................................................................................................ 52
2.17 Closing Display Builder ....................................................................................... 52
3. Using the Scratch Pad Editors ............................................................ 53
3.1 Drawing Primitives ................................................................................................ 53
3.1.1 Selecting a Drawing Tool ................................................................................. 53
3.1.2 Defining a Line ................................................................................................. 54
3.1.3 Defining a Polyline ........................................................................................... 54
3.1.4 Defining a Polygon ........................................................................................... 55
3.1.5 Defining a Rectangle ........................................................................................ 56
3.1.6 Defining a Circle ............................................................................................... 56
3.1.7 Defining an Ellipse ........................................................................................... 57
3.1.8 Defining an Arc ................................................................................................ 57
3.1.9 Resizing a Primitive.......................................................................................... 59
3.1.9.1 Resizing Directly ......................................................................................... 59
3.1.9.2 Resizing Using the Properties Form ........................................................... 61
3.1.10 Defining Static Text ........................................................................................ 61
3.1.10.1 Editing Static Text ..................................................................................... 62
3.2 Defining Symbols .................................................................................................. 62
3.3 Defining Pictures ................................................................................................... 63
3.3.1 Picture Definition Window – Picture Tab .......................................................... 64
3.3.2 The Attachment and Permission Test Tabs ..................................................... 65
3.3.3 Primitives in Pictures ........................................................................................ 65
3.3.4 Placing Elements in Pictures ............................................................................ 65
3.3.5 Defining Formatted Fields ................................................................................ 65
3.3.6 Formatted Field Properties Definition Tab........................................................ 66
3.3.7 Specifying the Graphic Attributes of a Formatted Field .................................... 70
3.3.8 The Attachment and Declutter Tabs ................................................................ 70
3.3.9 Specifying a Scale Factor on a Picture Object (Primitive or Symbol) ............... 71
Proprietary – See Copyright Page v
3.3.10 Specifying a Shift Factor on a Picture Object ................................................. 71
3.3.11 Defining Placement Declutter ......................................................................... 71
3.3.12 Attaching Elements in Pictures ...................................................................... 71
3.3.13 Defining Pop-Ups ........................................................................................... 71
3.3.14 Pop-Up Picture Properties ............................................................................. 73
3.3.15 Specifying Picture Attachments and Permission Tests .................................. 73
3.4 Defining Nested Pictures ....................................................................................... 74
3.4.1 About Nested Pictures ..................................................................................... 74
3.4.2 Nested Pictures, Pictures within a Picture........................................................ 75
3.4.3 Limitations of Nested Pictures .......................................................................... 77
3.5 Defining Picgroups ................................................................................................ 78
3.5.1 Picgroup Tab .................................................................................................... 79
3.5.2 Attachments Tab .............................................................................................. 80
3.5.3 Adding Primitives to Picgroups ........................................................................ 80
3.5.4 Placing Elements in Picgroups ......................................................................... 80
3.5.5 Attaching Elements in Picgroups ..................................................................... 80
3.5.6 Specifying a Secondary Picture Driving Field .................................................. 81
3.5.7 Locking Picgroup Objects ................................................................................ 82
3.6 Defining Displays .................................................................................................. 82
3.6.1.1 Display Tab ................................................................................................. 83
3.6.1.2 Applications Tab ......................................................................................... 84
3.6.1.3 Viewport Tab ............................................................................................... 86
3.6.1.4 Menus Tab .................................................................................................. 87
3.6.1.5 Specifying Permission Tests ....................................................................... 88
3.6.1.6 Background Image Tab ............................................................................... 88
3.7 Defining Layers ..................................................................................................... 90
3.7.1 Simple Layer Construction Tasks .................................................................... 90
3.7.2 Defining Simple Layers .................................................................................... 91
3.7.2.1 Simple Layer Tab ........................................................................................ 92
3.7.2.2 Attaching Elements on Simple Layers ........................................................ 93
3.7.2.3 Attachments and Permission Test Tabs ..................................................... 93
3.7.2.4 Primitives on a Simple Layer ...................................................................... 94
3.7.2.5 Placing Elements on Simple Layers............................................................ 94
3.7.2.6 Moving Selected Objects Between Simple Layers ...................................... 94
3.7.2.7 Defining a Placeholder ................................................................................ 95
3.7.2.8 Replace Dialog Box .................................................................................... 95
3.7.2.9 Placement Forms for Simple Layer Objects ................................................ 96
3.7.2.10 Defining Simple Layer Database Linkages ............................................... 96
3.7.3 Tabular Layer Construction Tasks ................................................................... 96
3.7.4 Defining Tabular Layers ................................................................................... 97
3.7.4.1 Tabular Definition Tab ................................................................................. 97
3.7.4.2 Repeat Tab ............................................................................................... 100
3.7.4.3 Hierarchical Tab ........................................................................................ 102
3.7.4.4 Link List Tab ............................................................................................. 104
3.7.4.5 Multi-Dimensional Tab .............................................................................. 107
3.7.4.6 Indexed Tab .............................................................................................. 109
Proprietary – See Copyright Page vi
3.7.5 Add Picgroup Dialog Box ............................................................................... 112
3.7.5.1 Placing Constant Picgroups ...................................................................... 113
3.7.5.2 Placing Data-Oriented Picgroups .............................................................. 113
3.7.5.3 Specifying Picgroup Layout ...................................................................... 114
3.7.5.4 Simulating Tabular Layer Database Linkages........................................... 115
3.7.6 Tabular Simulation Form ................................................................................ 116
3.7.6.1 Specifying Layer Attachments and Permission Tests ............................... 117
3.7.7 Tabular Layout Form ...................................................................................... 118
3.7.8 Layers Tab ..................................................................................................... 120
3.7.9 Specifying the Active Layer ............................................................................ 121
4. Scratch Pad Operations .................................................................... 122
4.1.1 Showing or Hiding the Grid ............................................................................ 122
4.1.2 Turning Snap to Grid On or Off ...................................................................... 122
4.1.3 Turning Scale to Fit On or Off ........................................................................ 123
4.1.4 Setting Scratch Pad Zoom ............................................................................. 123
4.1.5 Zooming the Scratch Pad Incrementally ........................................................ 123
4.1.6 Zooming the Scratch Pad to a Prescribed Level ............................................ 124
4.1.7 Setting the Default Shared GAB Element Set ................................................ 124
4.1.8 Setting the Default Shared GAB .................................................................... 124
4.1.9 Placing an Element ........................................................................................ 125
4.1.9.1 Using Drag-and-Drop ................................................................................ 125
4.1.9.2 Using the Add Placement Dialog Box ....................................................... 125
4.1.10 Making Attachments to Placed Objects........................................................ 126
4.1.10.1 Using Drag-and-Drop .............................................................................. 126
4.1.10.2 Using the Add Attachment Dialog Box .................................................... 126
4.1.10.3 Attaching to WPF Controls ...................................................................... 127
4.1.11 Removing Attachments from Objects ........................................................... 129
4.1.12 Making Overall Attachments ........................................................................ 130
4.1.12.1 Making Attachments to Pictures.............................................................. 130
4.1.12.2 Making Attachments to Layers ................................................................ 130
4.1.13 Removing Overall Attachments .................................................................... 131
4.1.13.1 Using the Placement Properties Dialog Box ........................................... 131
4.1.14 Browsing Object Definitions in Scratch Pads ............................................... 131
4.1.15 Selecting Objects in a Scratch Pad .............................................................. 132
4.1.15.1 Selecting Single Objects ......................................................................... 132
4.1.15.2 Selecting Multiple Objects ....................................................................... 132
4.1.15.3 Selecting Objects Using the Rubber-Band Method ................................. 132
4.1.15.4 Using the Select All Option ..................................................................... 133
4.1.16 De-Selecting Objects in a Scratch Pad ........................................................ 133
4.1.16.1 De-Selecting All Selected Objects .......................................................... 133
4.1.16.2 De-Selecting Individual Objects .............................................................. 134
4.1.16.3 De-Selecting Multiple Objects ................................................................. 134
4.1.17 Decluttering the Scratch Pad ....................................................................... 135
4.1.18 Hiding or Showing Bounding Boxes for Static Text ...................................... 135
Proprietary – See Copyright Page vii
4.1.19 Hiding or Showing Bounding Boxes for Pictures .......................................... 135
4.1.20 Hiding or Showing Bounding Boxes for Picgroups ....................................... 135
4.1.21 Hiding or Showing Pop-Ups ......................................................................... 136
4.1.22 Grouping and Ungrouping Objects in a Scratch Pad ................................... 136
4.1.22.1 Grouping Objects .................................................................................... 136
4.1.22.2 Ungrouping Objects ................................................................................ 136
4.1.23 Moving an Object ......................................................................................... 136
4.1.23.1 Moving Directly ....................................................................................... 137
4.1.23.2 Moving an Object Incrementally .............................................................. 137
4.1.23.3 Moving Using a Properties Form............................................................. 137
4.1.24 Moving to the Front or Back ......................................................................... 137
4.1.24.1 Moving to the Front ................................................................................. 138
4.1.24.2 Moving to the Back ................................................................................. 138
4.1.24.3 Moving an Object One Level ................................................................... 138
4.1.25 Removing an Object from a Scratch Pad ..................................................... 138
4.1.26 Aligning an Object to the Grid ...................................................................... 139
4.1.27 Aligning Objects on Edges and Centers....................................................... 139
4.1.27.1 Aligning Objects Horizontally .................................................................. 139
4.1.27.2 Aligning Objects Vertically ...................................................................... 139
4.1.27.3 Centering Objects ................................................................................... 140
4.1.28 Changing the Graphic Attributes of a Primitive ............................................ 140
4.1.29 Undoing Edit Actions .................................................................................... 141
4.1.30 Redoing Edit Actions .................................................................................... 141
4.2 Defining Permission Area Tests .......................................................................... 141
4.2.1 Defining a Picture Permission Area Test........................................................ 141
4.2.2 Defining a Layer Permission Area Test .......................................................... 142
4.2.3 Defining a Display Permission Area Test ....................................................... 142
5. Using the Dialog Editors ................................................................... 144
5.1 Creating a New Element ..................................................................................... 144
5.2 Defining GABs..................................................................................................... 144
5.3 Defining CAMs .................................................................................................... 145
5.3.1 Completing the CAM Dialog Box .................................................................... 145
5.3.2 Defining CAMs with Permission Checks ........................................................ 147
5.3.3 Defining CAMs Using Third-Party Scripting ................................................... 147
5.4 Defining GEMs .................................................................................................... 149
5.4.1 Completing the GEM Dialog ........................................................................... 150
5.5 Defining Conditional Text (CT) ............................................................................ 151
5.5.1 Completing the CT Dialog Box ....................................................................... 152
5.5.2 Tool Tips in Conditional Text Specifications ................................................... 153
5.5.3 Defining CTs Using Third-Party Scripting....................................................... 154
5.6 Defining Conditional Tests for CAMs and CTs .................................................... 156
5.7 Statement Modifiers ............................................................................................ 161
5.8 Defining Attribute Sets ........................................................................................ 161
5.9 Defining Menus ................................................................................................... 163
Proprietary – See Copyright Page viii
5.9.1 Edit Menu Tab ................................................................................................ 164
5.9.2 Menu Editor Definition Tab............................................................................. 165
5.10 Defining Keysets ............................................................................................... 166
5.10.1 Edit Keyset Tab ............................................................................................ 167
5.10.2 Keyset Editor Definition Tab ......................................................................... 168
5.10.3 Defining Keysets Using Third-Party Scripting .............................................. 168
6. Other Forms, Dialog Boxes, and Tabs ............................................. 171
6.1.1 Change References Dialog Box ..................................................................... 171
6.2 Placement Properties Forms ............................................................................... 171
6.2.1 Symbol and Conditional Text Placement Properties ...................................... 172
6.2.2 Static Text Placement Properties ................................................................... 172
6.2.3 Placeholder Placement Properties ................................................................. 172
6.2.4 Picture Placement Properties ......................................................................... 172
6.2.5 Primitive Placement Properties ...................................................................... 173
6.2.5.1 Placed Lines, Polylines, and Polygons ..................................................... 173
6.2.5.2 Placed Rectangles and Ellipses ................................................................ 173
6.2.5.3 Placed Circles ........................................................................................... 174
6.2.5.4 Placed Arcs ............................................................................................... 174
6.3 Shared Forms and Dialog Boxes ........................................................................ 174
6.3.1 Toolbars Form ................................................................................................ 174
6.3.2 File Transfer Form ......................................................................................... 175
6.3.3 Add Placement Dialog Box ............................................................................ 177
6.3.4 Add Attachment Dialog Box ........................................................................... 178
6.3.5 Options Form ................................................................................................. 179
6.3.5.1 Options Tab .............................................................................................. 179
6.3.5.2 Customize Colors Tab .............................................................................. 182
6.3.5.3 Font Mapping Tab ..................................................................................... 183
6.3.6 Scratch Pad Options Dialog Box .................................................................... 184
6.4 Shared Tabs........................................................................................................ 186
6.4.1 Attachments Tab ............................................................................................ 186
6.4.2 Permission Test Tab ...................................................................................... 186
6.4.3 Placements Tab ............................................................................................. 188
6.4.4 Define Link Tab .............................................................................................. 189
6.4.5 Lock Tab ........................................................................................................ 190
6.4.6 Scale Tab ....................................................................................................... 191
6.4.7 Declutter Tab ................................................................................................. 193
6.4.8 Colors Tab ..................................................................................................... 194
6.4.9 Lines and Fills Tab ......................................................................................... 195
6.4.10 Fonts Tab ..................................................................................................... 196
6.4.11 TrueType Fonts Tab..................................................................................... 197
7. Multi-Dimensional Displays .............................................................. 199
7.1 Creating Multi-Dimensional Pictures ................................................................... 199
Proprietary – See Copyright Page ix
7.2 Modifying Default Driving Data ............................................................................ 200
7.3 Specifying the Layout of Multi-D Displays ........................................................... 202
8. WPF Controls ..................................................................................... 203
8.1 The Controls Library ............................................................................................ 203
8.1.1 Showing the Controls Library Window ........................................................... 203
8.1.2 Content of the Controls Library ...................................................................... 204
8.1.3 Third-Party Control Directory ......................................................................... 205
8.1.3.1 Configuration............................................................................................. 205
8.1.3.2 Organization of the Third-Party Control Directory ..................................... 206
8.1.4 Loading the Content of the Third-Party Control Directory .............................. 206
8.1.5 Showing Icons for Third-Party Controls.......................................................... 207
8.1.6 Use a Network Share as the Third-Party Control Directory ............................ 208
8.1.7 Placing WPF Controls on the Editor ............................................................... 208
8.2 Embedding WPF Controls in e-terrabrowser Displays ........................................ 208
8.2.1 Order of Loading .NET Assemblies for WPF Controls ................................... 208
8.2.2 Instantiation and Display of a WPF Control.................................................... 210
8.3 Modifying a WPF Control Using the Property Setter ........................................... 210
8.3.1 Calling Up the Property Setter ....................................................................... 210
8.3.2 Using the Property Setter to Modify the WPF Control .................................... 211
8.3.2.1 Properties Tab .......................................................................................... 212
8.3.2.1.1 List Modes ........................................................................................... 212
8.3.2.1.2 Advanced Check Box........................................................................... 213
8.3.2.1.3 Assigning a Name to a WPF Control ................................................... 213
8.3.2.1.4 Modifying Property Values of a WPF Control....................................... 214
8.3.2.1.5 Property Name..................................................................................... 214
8.3.2.1.6 Property Value Editors ......................................................................... 214
8.3.2.1.7 Brush Editor ......................................................................................... 214
8.3.2.1.8 Bitmap Effects Editor ........................................................................... 219
8.3.2.1.9 Collection Editor ................................................................................... 221
8.3.2.1.10 Reset Button ...................................................................................... 222
8.3.2.1.11 Data Binding Button ........................................................................... 222
8.3.2.1.12 Configuring Data Binding for a Property ............................................ 222
8.3.2.1.13 Bind to Database Field....................................................................... 223
8.3.2.1.14 Bind to Query ..................................................................................... 224
8.3.2.1.15 Bind to Object .................................................................................... 225
8.3.2.2 Events Tab ................................................................................................ 227
8.3.2.2.1 List Modes ........................................................................................... 227
8.3.2.2.2 Setting Up an Event Handler for an Event ........................................... 228
8.3.2.3 Other Settings Tab .................................................................................... 232
8.3.2.3.1 Location ............................................................................................... 232
8.3.2.3.2 Record Context .................................................................................... 232
8.3.2.3.3 Attachments ......................................................................................... 233
8.3.2.3.4 Attaching to a WPF Control ................................................................. 233
8.3.2.3.5 Defining a .NET Script-Enabled CAM .................................................. 235
Proprietary – See Copyright Page x
8.3.2.4 Custom Property Editor Tab ..................................................................... 237
8.4 Third-Party Charting Controls.............................................................................. 238
8.4.1 PesgoChart .................................................................................................... 238
8.4.1.1 Creating a PesgoChart ............................................................................. 238
8.4.1.2 PesgoChart Settings ................................................................................. 239
8.4.1.2.1 Chart Properties................................................................................... 240
8.4.1.2.2 Query Tab ............................................................................................ 241
8.4.1.2.3 Subset Tab .......................................................................................... 241
8.4.1.2.4 IronPython Script Tab .......................................................................... 242
8.4.2 AreaStatusChart ............................................................................................ 242
8.4.2.1 Creating an AreaStatusChart .................................................................... 242
8.4.2.2 AreaStatusChart Settings ......................................................................... 243
8.4.2.2.1 Conditions ............................................................................................ 244
8.4.2.2.2 Settings Tab......................................................................................... 244
8.4.2.2.3 Query Tab ............................................................................................ 244
8.4.2.2.4 Subset Definition Tab .......................................................................... 244
8.4.2.2.5 IronPython Script Tab .......................................................................... 244
8.5 The ICustomPropertyEditor Interface .................................................................. 244
8.5.1 IsDirtyChanged Event .................................................................................... 245
8.5.2 SetSelectedControl Function ......................................................................... 245
8.5.3 ApplyChanges Function ................................................................................. 245
8.5.4 CancelChanges Function ............................................................................... 245
8.5.5 Dispose Function ........................................................................................... 245
8.6 The ControlPropEditorMapping.config File.......................................................... 246
8.6.1 Schema .......................................................................................................... 246
8.6.2 Sample Configuration..................................................................................... 247
8.7 Styling a WPF Control ......................................................................................... 248
8.8 .NET Scripting Support ....................................................................................... 249
8.8.1 Supported Languages .................................................................................... 249
8.8.2 Usage............................................................................................................. 249
8.8.2.1 Value Converter ........................................................................................ 249
8.8.2.2 Event Handlers ......................................................................................... 250
8.8.3 APIs Exposed to the Script Definition Body ................................................... 250
DownloadFile ............................................................................................................ 251
ExecuteFgCommand ................................................................................................ 252
ExecuteScript ............................................................................................................ 253
GetConnection .......................................................................................................... 254
GetWpfControl .......................................................................................................... 255
GetWpfControl (overload) ......................................................................................... 256
ResolveProxy ............................................................................................................ 257
9. Preparing Displays for Online Viewing ............................................ 258
9.1 Display Compilation Overview............................................................................. 258
9.2 Prerequisites for Onlining Displays ..................................................................... 258
9.3 Compiling e-terrabrowser Displays ..................................................................... 259
Proprietary – See Copyright Page xi
9.4 Comparing DDL Files .......................................................................................... 261
9.5 WebFGUtils ......................................................................................................... 263
9.5.1 Offline Display Validation ............................................................................... 263
9.5.2 Extract Permission Areas from FGDisplay Files ............................................ 265
9.6 Localizing Display Builder ................................................................................... 266
9.6.1 Creating and Upgrading a Language-Specific DLL Using Visual Localize
Software .................................................................................................................. 266
9.6.2 Creating a Visual Localize Project ................................................................. 266
9.6.3 Translating the Project ................................................................................... 268
9.6.4 Creating a DLL File ........................................................................................ 268
9.6.5 Upgrading a Resource DLL to a Newer Version ............................................ 269
10. Field Display Formats ...................................................................... 271
10.1 Introduction to Display Formats......................................................................... 271
10.1.1 Defining the Format Type............................................................................. 273
10.1.2 Defining the Format Size and Position ......................................................... 273
10.2 Character Fields ................................................................................................ 274
10.3 Integer and Real Fields ..................................................................................... 275
10.4 Boolean and Logical Fields ............................................................................... 277
10.5 Date and Time Fields ........................................................................................ 278
10.6 Format Factor.................................................................................................... 280
11. Helpful Hints ..................................................................................... 281
11.1 Bounding Rectangles ........................................................................................ 281
11.2 Text ................................................................................................................... 283
11.2.1 Positioning Text Objects .............................................................................. 283
11.2.2 Text Case..................................................................................................... 284
11.2.3 Text Font Family .......................................................................................... 285
11.3 Conditional Data Entry ...................................................................................... 285
11.4 Conditional Keysets .......................................................................................... 285
11.5 Using Menus in Development ........................................................................... 286
11.6 Toggling L*4 Fields ........................................................................................... 286
11.7 CAM Precedence .............................................................................................. 286
11.7.1 Last Attached Rule Example ........................................................................ 286
11.8 Conditional Test Processing.............................................................................. 287
11.8.1 Clause and Phrase Processing Order .......................................................... 287
11.8.2 L*4 Field Testing .......................................................................................... 287
11.9 Showing Data from Different Databases ........................................................... 287
11.10 Building Pokepoints ......................................................................................... 288
11.10.1 Multiple-Part Pokepoints ............................................................................ 288
11.10.2 Pokepoints on Fields with Proxy Strings .................................................... 288
11.11 Using the %FV% Proxy String......................................................................... 289
11.12 Constant Picgroups ......................................................................................... 290
11.12.1 Placing Constant Picgroups ....................................................................... 290
Proprietary – See Copyright Page xii
11.12.2 CAMs in Constant Picgroups ..................................................................... 290
11.12.3 Constant Layer Placements ....................................................................... 291
12. Optimization Guidelines .................................................................. 292
12.1 Display Performance ......................................................................................... 292
12.2 Performance Guidelines .................................................................................... 292
12.2.1 Simple Layer Complexity ............................................................................. 292
12.2.2 Declutter Levels ........................................................................................... 292
12.2.3 Tabular Layer Pages .................................................................................... 293
12.2.4 Layers and Display Call-Up .......................................................................... 294
12.2.5 Placements and Complexity ......................................................................... 294
12.2.5.1 Number of Placements vs. Placement Density ....................................... 295
12.2.5.2 Using Pop-Ups ........................................................................................ 295
12.2.5.3 Display Background Primitives................................................................ 295
12.2.5.4 Effect of Drawing Order .......................................................................... 296
12.2.6 Conditional Elements and Processing Time ................................................. 296
12.2.7 Database Linkage Considerations ............................................................... 297
12.2.7.1 Display Refresh Rates ............................................................................ 297
12.2.7.2 Resolving Database Links....................................................................... 298
Appendix A. Display Feature Cross-Reference ................................... 299
A.1 Comprehensive Display Feature List .................................................................. 299
A.1.1 Mixed Simple and Tabular Layers ................................................................. 299
A.1.2 Specify Picture/Picgroup Size ........................................................................ 299
A.1.3 Text Origin Saved in DDL .............................................................................. 300
A.1.4 New Multi-Dimensional Picture Group Layout ............................................... 300
A.1.5 Special Characters Allowed ........................................................................... 300
A.1.6 Localize Strings ............................................................................................. 300
A.1.7 Menu Bar Item Application............................................................................. 301
A.1.8 Uppercase Formatted Fields ......................................................................... 301
A.1.9 Format Factor ................................................................................................ 301
A.1.10 Third-Party Scripts ....................................................................................... 301
A.1.11 GEM Support ............................................................................................... 302
A.1.12 Clip to Regions ............................................................................................ 302
A.1.13 Dynamic Simple Layers ............................................................................... 303
A.1.14 Indexed Placement ...................................................................................... 303
A.1.15 Placement Rotation ..................................................................................... 304
A.1.16 Secondary Application on Simple Layers .................................................... 304
A.1.17 Background Image....................................................................................... 304
A.1.18 Halo Style .................................................................................................... 304
A.1.19 Hidden Data Entry ....................................................................................... 304
A.1.20 Conditional Permission Checks ................................................................... 305
A.1.21 Scale to Fit Style .......................................................................................... 305
A.1.22 Tool Tips ...................................................................................................... 305
Proprietary – See Copyright Page xiii
A.1.23 Enhanced Support of ActiveX Controls........................................................ 305
A.1.24 Enhanced Support for Raster Images.......................................................... 306
A.1.25 CAM Enhancements .................................................................................... 306
A.1.26 Placement Identifiers ................................................................................... 306
A.1.27 Multi-Layer CAMs ........................................................................................ 306
A.1.28 Windows TrueType Fonts ............................................................................ 306
A.1.29 Multiple Data Sources.................................................................................. 307
A.1.30 Signed Pair Arrow Size ................................................................................ 307
A.1.31 Limits for Inner Dimensions for Multi-Dimensional Data .............................. 307
A.1.32 Layer Refresh Rate...................................................................................... 307
Appendix B. Compatibility Version Features ...................................... 308
B.1 Compatibility Version FG 2.6.1 ........................................................................... 309
B.2 Compatibility Version FG 3.0 .............................................................................. 310
B.3 Compatibility Version FG 3.0.2 ........................................................................... 311
B.4 Compatibility Version FG 5.0 .............................................................................. 312
B.5 Compatibility Version FG 5.1 .............................................................................. 313
B.6 Compatibility Version FG 5.2 .............................................................................. 314
B.7 Compatibility Version FG 5.2.1 ........................................................................... 315
B.8 Compatibility Version e-terrabrowser 2.1 ............................................................ 316
B.9 Compatibility Version e-terrabrowser 3.0 ............................................................ 317
B.10 Compatibility Version e-terrabrowser 3.1.2 ....................................................... 318
B.11 Compatibility Version e-terrabrowser 3.2.1 ....................................................... 319
B.12 Compatibility Version e-terrabrowser 3.3.0 ....................................................... 320
B.13 Compatibility Version e-terrabrowser 3.4.0 ....................................................... 321
B.14 Compatibility Version e-terrabrowser 3.5.0 ....................................................... 322
B.15 Compatibility Version e-terrabrowser 3.6.0 ....................................................... 323
Proprietary – See Copyright Page xiv
Figures
Figure 1: Display Builder Definition Manager ................................................................ 20
Figure 2: Definition Manager with Element Set Window Open ...................................... 21
Figure 3: Definition Manager with Display Set Window Open ....................................... 22
Figure 4: Definition Manager with Browser Window Open ............................................ 23
Figure 5: Definition Manager with Sample Scratch Pad ................................................ 30
Figure 6: Name Conflict Error Message ........................................................................ 46
Figure 7: Name Conflict Dialog Box .............................................................................. 47
Figure 8: Scratch Pad with Arc Selected and Handles Visible ...................................... 58
Figure 9: Picture Tab ..................................................................................................... 64
Figure 10: Formatted Field Definition Tab ..................................................................... 66
Figure 11: Pop-Up Picture Properties Form .................................................................. 73
Figure 12: Example of Many Individual Pictures to Represent Devices ........................ 74
Figure 13: Example of Nested Pictures ......................................................................... 74
Figure 14: Example of Nested Picture Placements ....................................................... 75
Figure 15: Picgroup Tab ................................................................................................ 79
Figure 16: Display Tab .................................................................................................. 83
Figure 17: Applications Tab ........................................................................................... 84
Figure 18: Display Definition Dialog Box with Color Selection List ................................ 85
Figure 19: Viewport Tab ................................................................................................ 86
Figure 20: Menus Tab ................................................................................................... 87
Figure 21: Background Image Tab ................................................................................ 88
Figure 22: Simple Layer Tab ......................................................................................... 92
Figure 23: Move to Layer Dialog Box ............................................................................ 94
Figure 24: Replace Dialog Box ...................................................................................... 95
Figure 25: Tabular Definition Tab .................................................................................. 98
Figure 26: Repeat Tab ................................................................................................ 100
Figure 27: Hierarchical Tab ......................................................................................... 102
Figure 28: Link List Tab ............................................................................................... 104
Figure 29: Multi-Dimensional Tab................................................................................ 107
Figure 30: Indexed Tab ............................................................................................... 110
Figure 31: Add Picgroup Dialog Box ........................................................................... 112
Figure 32: Tabular Simulation Form ............................................................................ 116
Figure 33: Tabular Layout Form .................................................................................. 118
Figure 34: Layers Tab ................................................................................................. 120
Figure 35: CAM Editor Dialog Box............................................................................... 145
Figure 36: GEM Editor................................................................................................. 150
Figure 37: Conditional Text Editor ............................................................................... 152
Figure 38: New Conditional Text Window ................................................................... 154
Figure 39: Specifying a Script Language and Arguments ........................................... 155
Figure 40: Edit Menu Tab ............................................................................................ 163
Figure 41: Definition Tab ............................................................................................. 165
Figure 42: Edit Keyset Tab .......................................................................................... 166
Figure 43: Definition Tab ............................................................................................. 168
Figure 44: Keyset Definition Tab Enabled for Third-Party Scripting Configuration ...... 169
Figure 45: Change References Dialog Box ................................................................. 171
Proprietary – See Copyright Page xv
Figure 46: File Transfer Form ...................................................................................... 175
Figure 47: Add Placement Dialog Box......................................................................... 177
Figure 48: Add Attachment Dialog Box ....................................................................... 178
Figure 49: Options Tab................................................................................................ 179
Figure 50: Customize Colors Tab ................................................................................ 182
Figure 51: Font Mapping Tab ...................................................................................... 183
Figure 52: Scratch Pad Options Dialog Box ................................................................ 184
Figure 53: Attachments Tab ........................................................................................ 186
Figure 54: Permission Test Tab .................................................................................. 187
Figure 55: Placements Tab ......................................................................................... 188
Figure 56: Define Link Tab .......................................................................................... 189
Figure 57: Lock Tab .................................................................................................... 190
Figure 58: Scale Tab ................................................................................................... 191
Figure 59: Declutter Tab.............................................................................................. 193
Figure 60: Colors Tab.................................................................................................. 194
Figure 61: Lines and Fills Tab ..................................................................................... 195
Figure 62: Fonts Tab ................................................................................................... 196
Figure 63: TrueType Fonts Tab ................................................................................... 197
Figure 64: Standard Windows Font Dialog Box ........................................................... 198
Figure 65: Multi-Dimensional Tab................................................................................ 200
Figure 66: Controls Library .......................................................................................... 203
Figure 67: The Database Field Binding Dialog Box ..................................................... 223
Figure 68: The Query Binding Dialog Box ................................................................... 225
Figure 69: The Object Binding Dialog Box .................................................................. 226
Figure 70: The Event Handler Dialog Box ................................................................... 228
Figure 71: Trace Properties ......................................................................................... 240
Figure 72: Online ......................................................................................................... 258
Figure 73: Offline Bind Validation ................................................................................ 264
Figure 74: Definition Tab on the Formatted Field Properties Form ............................. 272
Figure 75: How Bounding Rectangles Are Defined ..................................................... 281
Figure 76: Overlap of Bounding Rectangles on a Display ........................................... 282
Figure 77: Position and Expansion of Text .................................................................. 284
Tables
Table 1: Editing and Resizing Rules for Primitives ........................................................ 60
Table 2: Standard Display Formats ............................................................................. 273
Table 3: Character Field Display Examples ................................................................ 275
Table 4: Integer and Real Data Type Display Formats................................................ 275
Table 5: Integer Field Display Examples (I*2) ............................................................. 276
Table 6: Real Field Display Examples (R*4) ............................................................... 276
Table 7: Integer and Real Fields with Text Pairs ......................................................... 276
Table 8: Boolean and Logical Field Text Pair Definitions ............................................ 277
Table 9: Allowed Date and Time Field Display Formats .............................................. 278
Table 10: Time and Date Field Display Examples ....................................................... 280
Table 11: Clipping and Locked Regions ...................................................................... 303
Proprietary – See Copyright Page xvi
Table 12: Version FG 2.6.1 Features .......................................................................... 309
Table 13: Version FG 3.0 Features ............................................................................. 310
Table 14: Version FG 3.0.2 Features .......................................................................... 311
Table 15: Version FG 5.0 Features ............................................................................. 312
Table 16: Version FG 5.1 Features ............................................................................. 313
Table 17: Version FG 5.2 Features ............................................................................. 314
Table 18: Version FG 5.2.1 Features .......................................................................... 315
Table 19: Version e-terrabrowser 2.1 .......................................................................... 316
Table 20: Version e-terrabrowser 3.0 Features ........................................................... 317
Table 21: Version e-terrabrowser 3.1.2 Features ........................................................ 318
Table 22: Version e-terrabrowser 3.2.1 Features ........................................................ 319
Table 23: Version e-terrabrowser 3.3.0 Features ........................................................ 320
Table 24: Version e-terrabrowser 3.4.0 Features ........................................................ 321
Table 25: Version e-terrabrowser 3.5.0 Features ........................................................ 322
Table 26: Version e-terrabrowser 3.6.0 Features ........................................................ 323
Proprietary – See Copyright Page xvii
About This Document
This document is supplied as a part of Alstom Grid’s Display Builder
product.
Purpose of This Document
This guide has three main purposes:
• To introduce you to the concepts, features, and components of the
Display Builder software
• To provide instructions for how to use the Display Builder software to
build displays
• To provide instructions for how to define display components for
viewing in e-terrabrowser
Who Should Use This Document
This guide is intended for use by anyone who builds displays for viewing in
e-terrabrowser.
This guide assumes some knowledge of e-terrahabitat concepts, and it
also assumes that you have full knowledge of the use of the Microsoft
Windows environment.
Structure of This Document
This guide is organized by general and specific information as follows:
• Chapter 1 provides an overview of Display Builder’s features and
components, along with a brief discussion of display concepts.
• Chapter 2 provides an introduction to the basic operations of Display
Builder.
• Chapters 3 through 6 describe the interactive tools of Display Builder:
scratch pads and dialogs.
• Chapter 7 describes the concepts behind multi-dimensional displays,
and procedures for defining them.
• Chapter 8 discusses embedding WPF controls into displays.
• Chapters 9 through 12 provide supplementary information about and
hints for building displays and their components.
Proprietary – See Copyright Page xviii
For More Information
For more information about e-terraplatform, refer to the following:
• e-terraplatform System Overview – An overall view of e-terraplatform,
its components, their functions and use, and how they are related
functionally and structurally.
For more information about e-terrahabitat, refer to the following:
• e-terrahabitat Software Installation and Maintenance Guide – Basic
information about and instructions for the installation and maintenance
of e-terrahabitat.
• Hdb User’s Guide – Basic information about and instructions for
developing databases in e-terrahabitat.
• Introduction to e-terrahabitat Programming – Basic information about
and instructions for developing applications in e-terrahabitat.
For more information about e-terrabrowser, refer to the following:
• e-terrabrowser User’s Guide – An introduction to the concepts and
features of e-terrabrowser, and instructions for accessing and using
e-terrabrowser displays.
• e-terrabrowser Reference Manual – Supporting information about
e-terrabrowser commands, utilities, proxy strings, and terms.
Proprietary – See Copyright Page xix
Conventions
The following conventions are used throughout this document. Commands
that are particular to an operating system are shown with the
corresponding prompt symbol.
Command Prompts
Operating Prompt Description
System
Linux % All commands preceded by a percent sign prompt
(%) are issued from a Linux terminal window.
Note that all Linux commands are case-sensitive.
Windows > All commands preceded by a greater than sign
prompt (>) are issued from the Windows
command-line window.
All Operating The absence of any prompt character before a
Systems command indicates that the command is valid on
all operating systems.
Command Strings
Operating Delimiter Description
System
Linux Italics Text in italics indicates information you must
supply. (*)
Linux [] Text enclosed in square brackets “[ ]” indicates
optional qualifiers, arguments, or data. (*)
All Operating Select When used in command strings, the term “Select”
Systems means placing the pointer over the specified item
and pressing the left (default) mouse button.
(*) Note: All Linux commands are case-sensitive and must be typed exactly as
shown.
Proprietary – See Copyright Page xx
Change Summary
The following changes were made to this document for this release:
• Added information about support for indirect links for scale factors.
• Added information about the TrueType Fonts tab.
• Added the chapter WPF Controls.
• Updated the section Defining Pop-Ups for pop-up pictures at a display
level.
• Added the section Defining Conditional Tests for CAMs and CTs.
• Added the section Compiling e-terrabrowser Displays from the
e-terrabrowser Software Installation and Maintenance Guide.
• Added a description of the “Join records across data sources” check
box on the Tabular Layer Properties Hierarchical tab.
• In the sections Background Image Tab and Options Tab, added a note
about using the “<images>” section in webfg_config.xml.
• In the section Placing Data-Oriented Picgroups, added a note that it
does not work to put two picgroups that refer to the same record in the
same hierarchical layer.
• Moved the section Display Feature Cross-Reference to an appendix.
• Moved the compatibility version tables to an appendix.
• Updated the screenshots.
• Minor editorial and formatting changes.
Proprietary – See Copyright Page xxi
1. Overview
This chapter provides an overview of the concepts associated with display
building, and the concepts and graphical features of Display Builder.
1.1 Display Concepts
“Displays” are user-created graphical interfaces to application databases.
They provide the means to access, display, and interact with application
data. Displays have a common set of features and capabilities, and a
common set of definable attributes, as described below.
1.1.1 Common Display Features and Capabilities
The following features and capabilities are common to any displays:
• Ability to create an interactive view of application data from one or
more application databases
• Viewed in e-terrabrowser windows called “viewports”
• Ability to set the attributes of the viewport into which it is called
• Ability to incorporate graphical devices such as viewport scroll bars
and menus
• Accessed using display commands
• Ability to access e-terrabrowser user interaction functions such as
panning, positioning to specific record occurrences, calling up data into
pop-up picture windows, and viewing a display by layers (separately or
as a composite)
• Using the zoom feature, displays can be reduced or enlarged by user-
specified zoom factors. Zoom factors are real-number multipliers
between 0.1 and 10. Zoom factors can change the display size relative
to either of the following:
− The normalized display size. This is the size of a display when the
zoom factor is 1 (100% of its defined size).
− The current display size or the current zoom factor of the display.
The zoom factor of the display can be specified by using commands,
using options of a viewport menu bar menu, or using the “rubber-band
zoom” feature. The rubber-band zoom feature allows you to draw a
rectangle around the area to be enlarged and have this area zoomed
to fit the current viewport size (holding down the Shift key while using
the mouse’s scrolling wheel does the rubber-band zoom).
Proprietary – See Copyright Page 1 Overview
Display Builder User’s Guide
An entire display can be set to appear at a given zoom factor by
defining a default zoom factor.
• The declutter feature allows objects to be removed from (decluttered)
or added to the display at specified zoom factors. An object is defined
to declutter by providing a low and a high declutter zoom factor. The
object appears when the zoom factor of the display is greater than or
equal to the low declutter zoom factor and less than or equal to the
high declutter zoom factor.
1.1.2 Common Definable Display Attributes
Displays also have the following common set of definable attributes.
These attributes can affect display call-up, call-down, performance, use,
and the viewport into which the display is called.
• Display name – The display name is used to reference a display for
editing and call-up.
• Display title – The display title appears in the title bar of the viewport
into which it is called. This can be any text string up to 80 characters in
length, and it can include proxy strings. (Including proxy strings in the
title allows the title bar to reflect current context attributes such as the
display application, family, or page number. For more information
about proxy strings, see the e-terrabrowser Reference Manual.)
• Call-up/call-down commands – Each display can be defined with one
or more commands that execute when a display is called up in or
called down from a viewport. These commands can position the
display or execute tasks, for example. For more information about the
available commands, see the e-terrabrowser Reference Manual.
• User applications – Each display can be defined to be “owned” for
one or more applications. This does not, however, limit this display to
use only in these applications.
• Refresh rate – The refresh rate is that amount of time between
successive checks of database values to determine if field values
referenced in a display have changed. These changes may then cause
changes to the appearance of the display.
The following attributes, which affect the characteristics of the viewport
into which the display is called, can be defined for each display. Default
settings are shown in parentheses.
• Whether the viewport can be always on top (viewport is not always
on top) – This controls whether or not other viewports are allowed in
front of the viewport associated with the display.
Proprietary – See Copyright Page 2 Overview
Display Builder User’s Guide
• Whether the default menu bar menus are used (use the default
menu bar menus) – This sets whether the default menu bar menus
appear in the main menu bar.
• Whether other menus are added to the standard menu bar menus
(no additional menus) – This allows other menus to be added to or
replace the standard menu bar menus.
• Which screen of a multi-headed console the viewport is to be
created on when the client is already running (viewports are
created on the screen with input focus) – The Screen Option menu,
from which you select the desired screen, appears in the Station
Viewport Control dialog box only when the client is running on a multi-
headed console.
When a display is called up, its defined settings always override those
defined for the viewport.
1.1.3 Display Elements
Display Builder assembles many display elements to create a display.
These elements are the building blocks that make up the finished display
definition.
The display elements used to create a display are described in the
following sections.
1.1.3.1 Drawn and Typed Graphical Elements
Display Builder “scratch pads” are context-sensitive, grid-based work
areas in which display components are built, placed, and aligned.
Graphical elements that are drawn or typed in scratch pads are called
“primitives”. They provide Display Builder with a means of creating easily
recognizable patterns that assist the display’s user in interpreting display
information and performing operations. Primitives are applied directly to a
scratch pad, such as the Symbol Editor scratch pad.
1.1.3.2 Graphic Attributes of Primitives and Text
The graphic attributes of primitives, formatted fields, and text are
established by the default Graphic Attribute Bundle (GAB) when these
objects are created, and they can be changed by attaching shared GABs.
Note: You should specify the final graphic attributes of all primitives by
attaching shared GABs. Failing to apply a shared GAB to a primitive
creates a private GAB by default. Private GABs should be used only to
temporarily set attributes in the scratch pad.
“Shared GABs” are graphical devices that contain settings of frequently
used graphic attributes. Shared GABs are used to uniformly apply a set of
Proprietary – See Copyright Page 3 Overview
Display Builder User’s Guide
graphic attributes to primitives and elements. They provide a means of
ensuring that similar objects always appear the same. Once defined, a
shared GAB can be applied to any drawn primitive using drag-and-drop
techniques. A specified shared GAB is also part of a conditional text
definition.
For details about defining graphic attribute blocks/bundles, see Defining
GABs.
For details about how a shared GAB can be attached to an element, see
Attachments Tab.
1.1.3.3 Symbols
“Symbols” are collections of primitives, excluding text, that are used to
represent common objects on displays. By defining a symbol once, it can
be placed as often as needed on other elements, displays, or picgroups.
For instructions on how to define symbols in the Symbol Editor, see
Defining Symbols.
1.1.3.4 Scale Factors
“Scale factors” are graphical objects that can be attached to primitives and
symbols, to make them grow or shrink in relation to a value in a database
field called the “scaling field”.
For details about how to define scale factors, see the section Scale Tab.
1.1.3.5 Shift Factors
A “shift factor” is a non-named attachment. It modifies the location of the
object to which it is attached based on the values in the database (see the
section Defining GEMs).
Shift factors are defined using the GEometry Modifier (GEM) dialog editor.
1.1.3.6 Pictures
“Pictures” are the primary elements of display building. A picture is
associated with a database record. They carry the graphical objects that
make operating information, or “database values”, accessible to the
display’s user. If Display Builder has assigned interactive attributes to
objects in a picture, the person viewing the display can interact with the
database.
Display Builder can assign the following elements to a picture:
• Formatted fields – Represent record data with formatting. Formatted
fields are placed in pictures to link to and display database field values.
The fields specified within a formatted field attribute must reside on, or
be pointed to by, the picture’s record. By attaching a “select and enter”
Proprietary – See Copyright Page 4 Overview
Display Builder User’s Guide
keyset to a formatted field, the data in the field can be edited in real
time. By attaching Conditional Attribute Modifiers (CAMs) to a
formatted field, additional visual information can be transmitted to the
user. The graphic attributes of formatted fields are established by the
default GAB when these objects are created.
• Symbols – Provide easily recognizable objects that help make
displays more usable and informative. Symbols can carry interactive
mechanisms for toggling and editing database values. A symbol can
be assigned a scale factor so that the symbol grows or shrinks in
relation to a scaling field value. The scaling field must reside on the
picture’s record.
• Conditional text – Indicates status by displaying text strings as an
outcome of a test on one or more database values. Conditional text
can be placed in a picture to provide a human-readable indication of
state changes that are occurring in a system database.
Conditional text and symbols are defined in their own editors and are then
placed in the picture. Formatted fields and scale factors are defined in the
Picture Editor.
Conditional Attribute Modifiers (CAMs) can be attached to objects in
pictures, or to the picture overall, to indicate database changes. They do
this by modifying an object’s graphic attributes based on a test of
database values.
When pictures are defined, they are associated with a record type in an
application database. When pictures are placed on a simple layer, they
are linked to specific occurrences of their record type via a composite key.
This allows specific field values of a record to be displayed.
To display repeating data, Display Builder must place the picture in a
picgroup and place the picgroup in a tabular layer. This allows the field
values from multiple occurrences of the picture’s record type to be
displayed automatically in a repeating list.
The picture, objects placed in the picture, and formatted fields can be
defined to declutter (to appear or disappear at specified zoom factors) by
specifying a low and a high declutter zoom factor. The range of allowable
zoom factors is between a low of .10 (10%) and a high of 10 (1000%).
In addition to the implicit application permission test, pictures can also be
defined with a permission area test. This test defines whether the picture
appears, or whether users can edit fields on the picture or execute
commands from the picture, depending on tests of permission areas.
Pictures can also be defined to display information from multi-dimensional
records (see Multi-Dimensional Displays).
Proprietary – See Copyright Page 5 Overview
Display Builder User’s Guide
Pictures can be assigned to other pictures so they have pop-up
characteristics (see Pop-Ups). For instructions on how to define pictures in
the Picture Editor, see Defining Pictures.
1.1.3.7 Nested Pictures
Nested pictures allow display designers to group pictures within pictures
when building one-line displays.
If used, this feature can make display design and maintenance easier by
reducing the number of picture placements required to be placed, linked,
and point-to-point tested on a given display.
For instructions on how to define nested pictures in the Picture Editor, see
the section Defining Nested Pictures.
1.1.3.8 Menus
Menus provide one means of issuing commands without having to type
them. A “menu” is a list of one or more descriptive labels. Each label is
associated with a command that is executed when the label is selected.
A menu label is selected by positioning the cursor on the label and
pressing a mouse button or key.
Menus can be defined with submenus and base commands. “Submenus”
are secondary menus that are activated by selecting a label of the parent
menu. A “base command” is a command (or commands, or part of a
command) that becomes part of all commands defined for the individual
labels in the menu, including all submenu label commands. A base
command can be defined to precede or follow all label commands.
Defining a base command provides consistency and reduces the amount
of typing needed to define a menu.
There are three ways to use menus:
• Pull-down menus: These are attached to a display definition, and
they appear in the main menu bar of viewports in the online display.
These menus operate exactly like those found in any Windows-based
application.
• Pop-up menus: These are menus that have been attached locally or
as overall attachments. They appear, or “pop up”, when activated.
Menus are activated by positioning the cursor on the object that has
the menu attached, and issuing the MENU command. The most
common means of issuing the MENU command is through a virtual key
definition in a key map (for details about associating keys and mouse
buttons with e-terrabrowser commands through the key map, see the
e-terrabrowser User’s Guide).
Proprietary – See Copyright Page 6 Overview
Display Builder User’s Guide
When activated, pop-up menus always appear at the current cursor
location.
• Submenus: Submenus are secondary menus that are activated by
selecting a label of the parent menu.
Top level pull-down menus are governed by a file (e.g., webfg_menus.txt)
as well as hard-coded into e-terrabrowser. See Defining Menus.
1.1.3.9 Keysets
A “keyset” is a collection of assignments of a command or series of
commands to a keystroke or series of keystrokes. A keyset allows you to
define a display so that specific keystrokes execute specific commands
whenever the cursor is positioned on the object with the keyset attached.
When attached to a visible element on a display, the combination of the
element and the keyset defines a pokepoint. A “pokepoint” is an area on
the screen sensitized to a given command for a given keystroke or series
of keystrokes.
Commands are not directly assigned to specific keys or keystrokes in the
keyset; rather, the keyset assigns a command to a virtual key name. A
“virtual key name” is an arbitrary name given to a set of physical
keystrokes, and it is defined in e-terrabrowser using the key map.
For more information about defining virtual key names in the key map, see
the e-terrabrowser User’s Guide.
A keyset can be defined so that the object it is attached to flashes when
selected. The object the keyset is attached to turns magenta in color for a
brief period while the command is executed.
Keysets can be defined to allow text on the command line to be appended
to the command defined in the keyset. This allows you to add parameters
or qualifiers to the commands.
For details about defining keysets, see Defining Keysets.
1.1.3.10 Conditional Attribute Modifiers (CAMS)
CAMs provide the means for specifying how the visual attributes of
primitives, elements, and picgroups change based on the outcome of a
test of database values. In a conditional attribute definition, you specify the
specific visual attributes and test(s) that cause the attribute to appear. A
common attribute controlled by CAMs is visibility.
Multiple CAMs can affect the attributes of a single element or primitive.
The precedence of which CAM “overrides” the others follows the last
attached rule. The “last attached rule” states that the CAM that was
attached last in the display definition process overrides all other CAMs.
Proprietary – See Copyright Page 7 Overview
Display Builder User’s Guide
Each CAM is associated with a specific record type and application
database. When used in a display definition, the CAM is linked to a
specific occurrence of this record type. The CAM is defined to test the field
values in this specific occurrence, in a global field, or in another record
type specified by one or more pointer fields (for more information about
pointers in e-terrahabitat, see the Hdb User’s Guide).
For details about defining CAMs, see the section Defining CAMs.
1.1.3.11 GEometry Modifiers (GEMs)
A “GEM” is a named attachment, like a CAM or a shared GAB. It allows
you to shift (reposition) elements to which the GEM is attached.
Each GEM is made up of a shift factor, along with e-terrahabitat context
information (app, db, record(s)). A GEM can be attached to picture
elements (this includes primitives, symbols, text, fields, and CTs) and/or to
pictures as an overall attachment. That is, a GEM can be attached within a
picture or to the picture via the Picture Properties form.
In the hierarchical structure of a display, GEMs can be attached at two
different levels, so the precedence of the attachment is very important.
The following rules define how multiple GEMs and/or non-named
geometry modifier attachments are processed:
• Transformations are performed one after the other, from highest
precedence to lowest. The precedence order is based on the
attachment point. The precedence of attachment points is as follows
(highest first):
− GEM attached to a picture definition
− GEM attached to a picture part
− Non-named shift factor attached to a picture part
• At most, one GEM can be attached on the picture definition level.
• Either one GEM or one non-named geometry modifier can be attached
to a picture part.
• Relative mode shift transformations are cumulative. This means that a
transformation applied at a lower level of precedence acts “on top of”
any transformations previously applied at a higher level.
For more information about defining GEMs, see the section Defining
GEMs.
Proprietary – See Copyright Page 8 Overview
Display Builder User’s Guide
1.1.3.12 Conditional Text (CT)
“Conditional text” provides a means of defining and displaying text strings,
with any combination of visual attributes, based on the outcome of a test
of database values. In a conditional text definition, you specify the text
string, the specific visual attributes, and the test(s) that causes the text to
appear.
Conditional text can be defined to display a default text string if no
conditional test passes. This text string performs an additional function as
a “position holder” for the conditional text in the Picture Editor scratch pad.
Without default output text defined, the conditional text is not visible in the
Picture Editor scratch pad unless it is selected.
Each instance of conditional text is defined with a default shared GAB that
sets the default attributes of any displayed text. The conditional tests can
be defined to override any of these default attributes.
The Picture Editor scratch pad is the only scratch pad in which conditional
text can be placed. Each item of conditional text placed in a picture must
test a field or fields in, or pointed to from, the same record type as the
picture in which it is placed. For more information about pointers in
e-terrahabitat databases, see the Hdb User’s Guide.
For instructions on how to define conditional text, see Defining Conditional
Text (CT).
1.1.3.13 Pop-Ups
“Pop-ups” are simply pictures that are attached to other pictures. Pop-ups
are automatically defined to open — that is, “pop up” — when the picture
to which they are attached is clicked.
When activated on a display, pop-ups appear in a temporary viewport
(window). Pop-ups act like other pictures, with these special features:
• Pop-ups can be defined to be either fixed (to pop up at a specific
location in the parent display) or floating (to pop up at the current
cursor location).
• Pop-ups can be defined so that the temporary viewport is modeless or
modal.
Modeless pop-ups perform like all other viewports or windows. They
can be moved, stacked, minimized, maximized, etc.
Modal pop-ups have these features:
− They cannot be moved.
− They cannot be obstructed by other viewports or windows.
Proprietary – See Copyright Page 9 Overview
Display Builder User’s Guide
Modal and system modal pop-ups differ in that modal pop-ups allow
you to interact with applications other than e-terrabrowser. System
modal pop-ups lock you out of all applications on the screen, allowing
interaction only with the pop-up.
• When activated, pop-ups always grab input focus.
• A pop-up’s temporary viewport cannot be resized.
• A pop-up is dismissed if the parent display is called down or if the
parent viewport is dismissed.
See Defining Pop-Ups.
1.1.3.14 Picgroups
“Picgroups” are groupings of pictures, elements, and primitives that are
defined for the purpose of displaying repeating instances of a specific
record in a tabular display. Picgroups are the only components of tabular
displays. Picgroups are definitions that provide e-terrabrowser with
instructions for how each instance of the specified records should be
displayed.
Picgroups are associated with a specific record in the database — the
primary record. By selecting one picture in the picgroup as the primary
picture, the record of the selected picture becomes the primary record.
Note: For each instance of the driving record, only one picgroup is
displayed.
For secondary pictures — those pictures that are not the primary
picture — e-terrabrowser needs to know which occurrence of these
secondary records to display for each occurrence of the primary picture’s
record. This information is supplied in a field in either the primary picture’s
record or the driving record. The name of this field must be specified in the
picgroup definition for each secondary picture. If a field name is not
supplied, e-terrabrowser paints the occurrence of the secondary record
whose record number matches the primary record type.
Record occurrences can be deleted, inserted, copied, and edited (the
DICE actions) from a tabular display. Because each instance of a picgroup
on a tabular display represents one occurrence of the primary record,
these DICE attributes of the primary record are definable in the picgroup
properties.
Objects placed or drawn in the picgroup can be defined to remain in the
viewport as you scroll down or to the right. These objects are referred to
as being “Locked in Y” or “Locked in X”, respectively. Those objects
Locked in Y must be placed or drawn at the top of the picgroup. Those
Proprietary – See Copyright Page 10 Overview
Display Builder User’s Guide
objects Locked in X must be drawn or placed along the left side of the
picgroup.
1.1.3.15 Placeable and Attachable Elements
“Elements” are display components that can be combined together to form
other elements, picgroups, or displays. There are many types of elements.
Each type is defined in its own editor.
Elements can be categorized into two groups: (1) those that can be placed
in and (2) those that can be attached to other elements, picgroups, or
displays.
Placeable elements are so named because, once they have been created,
they can be placed on a scratch pad. Display Builder activates the Add
Placement and Draw-Add Placement commands for you, depending on
the context of the editing window.
Conditional text, symbols, pictures, and picgroups are examples of
placeable elements.
Attachable elements are so named because, once they have been
created, they can be attached to objects in a display definition, thus
becoming one of the object’s properties.
Attaching a pop-up menu to a button symbol in a picture is an example of
an attachable element.
Shared GABs, CAMs, keysets, pictures, and menus are examples of
elements that can be attached in scratch pad editors.
Attachable elements can be attached at two levels of influence: to objects
placed on a scratch pad (local attachment), and to display component
definitions such as picture definitions, picgroup definitions, and display and
layer definitions (overall attachment).
Local attachments influence objects only in the setting where the objects
are placed. Display Builder does not permanently change the properties of
the elements that make up the object or the object itself.
Overall attachments affect the element permanently. Because overall
attachments are added to an element’s definition, the element carries the
attachment with it as a permanent property.
Placing an element means to select a defined element and position it in a
scratch pad. As an example, a picture can be created in its own editor,
selected from a list, and placed on a simple layer scratch pad. For details
about how elements are placed on scratch pads, see Placing Elements in
Pictures.
Proprietary – See Copyright Page 11 Overview
Display Builder User’s Guide
1.1.3.16 WPF Controls
A WPF control is a re-usable software component that can be placed on a
simple layer or picture. You can write IronRuby or IronPython to handle its
events and update its properties.
WPF controls are rendered using DirectX, which provides hardware
acceleration and enables modern UI features such as transparency,
gradients, and transforms. These controls enable display authors to create
displays that have capabilities well beyond those provided by built-in
e-terrabrowser features.
For more information, refer to the chapter WPF Controls.
Note: Currently, WPF controls are only supported on simple layers and
pictures.
For CAM attachments, use the Add button to link the control instance to a
script-enabled CAM that uses a .NET Scripting language to drive the
control.
1.1.4 Display Layers
There are two types of layers, simple layers and tabular layers, and there
must always be at least one layer, the default layer. Displays also exhibit
the unique features, capabilities, and definable attributes of their layers, as
described in the sections below.
1.1.4.1 Simple Layers
“Simple layers” are layers where elements are placed at fixed locations.
These elements appear at that coordinate location when the display is
called to the workstation. In simple layers, placed pictures and attached
CAMs are linked to specific occurrences of a record in the application
database.
In addition, objects placed in the layer are associated with a specific
occurrence of a record type in the application database. That element
represents or directly displays data from that occurrence only. Other
placements can represent other occurrences of that or other record types
in the database.
Simple layers are generally used to make a graphical representation of a
physical real-time system and to provide the means of accessing a single
instance of data. The typical display employing the simple layer is the
system one-line display used to represent component locations in a
physical system.
In addition, simple layers can be defined with some unique features:
Proprietary – See Copyright Page 12 Overview
Display Builder User’s Guide
• The entire layer can be set to appear at a given zoom factor by
defining a default zoom factor. When the display is called to a viewport,
the simple layer automatically appears at this zoom factor.
• “Placeholders” are named coordinate locations in the display that can
be used to position the online display. Instructions for defining
placeholders are found in Defining a Placeholder.
• Declutter levels – Pictures placed in the simple display that have
declutter levels defined on them cause the simple display to have a set
of defined declutter levels. This set consists of all the different high and
low declutter zoom factors defined for all pictures on the simple
display. A maximum of 32 declutter levels are allowed on the display.
• WPF controls – WPF controls can be placed on a simple layer, and
third-party scripts such as IronPython and IronRuby can be used to
handle the simple layer’s events and update its properties. These
controls enable customers to build displays that have capabilities well
beyond those provided by built-in e-terrabrowser features.
Information about details for specifying simple layers can be found in
Defining Simple Layers.
1.1.4.2 Database Linkages
Database linkages must be defined for the pictures and CAMs in the
simple layer. These linkages are specified as text strings (as opposed to
record subscripts) that identify the record type, and an identifier that is
found in the record type’s key field. A “key field” is a character field
suitable for storing a name.
A linkage guides the e-terrabrowser server to a record’s location in a
database based on the record’s key field. In this way, the linkage
associates the picture or CAM using it with a specific record occurrence.
Database linkages are often specified with composite record keys, which
guide the e-terrabrowser server through a sequence of key fields until the
destination key field and record are found. For more information about
composite record keys and key fields, see the e-terrahabitat
documentation set.
Database linkages are defined using the attached Element Definition form.
For details about linkage definitions, see the section Data Linkage to
Linked List .
1.1.4.3 Tabular Layers
“Tabular layers” can automatically display a list of any or all occurrences
of specified records in an application database, in any desired order. The
tabular layer definition provides the information needed by e-terrabrowser
Proprietary – See Copyright Page 13 Overview
Display Builder User’s Guide
to automatically link pictures to the desired record occurrences and then
display them in the proper order. This allows the actual list of displayed
occurrences to reflect the current values in the database. The linkage to
current database occurrences is done automatically at display call-up, as
e-terrabrowser processes the display’s driving record.
The driving record is processed to determine the order and occurrence of
the records to display. In most cases, the driving record is the record list of
the application database being displayed. However, a driving record can
be any record structure that can supply e-terrabrowser with the
information it needs. This information is called the “driving data” and it is
specified in the tabular display definition (there is driving data for each
layer).
Driving data includes:
• Which records from which database(s) should be displayed, and in
what order
• Which occurrences of these records should be displayed
• Which specific data in these records should be displayed or
represented, and how
• How the repeating instances of the data for each record should be
spaced, grouped (blocked), and oriented to one another and other
records
Tabular displays are defined by first defining the picgroups to be used on
the display, and then defining the display itself with a tabular layer.
Picgroups can be selected and placed to perform in two different ways:
• As a constant picgroup: This type of picgroup appears constantly in
the viewport of the online display. It is primarily used to display titles
and column and row headers. Only one constant picgroup can be
placed per tabular layer.
• As a repeating picgroup: This type of picgroup is painted repeatedly
on the online display. One occurrence of the picgroup is painted,
corresponding to one occurrence of the primary record, for each
occurrence of the driving record.
1.1.4.4 Features of Tabular Layers
Tabular layers are defined to automatically display a list of any or all
occurrences of specified record types, in any defined order. Linkage to all
current occurrences of the specified record types is done automatically at
display call-up, causing the actual display appearance to vary as the
database values vary.
Proprietary – See Copyright Page 14 Overview
Display Builder User’s Guide
To accomplish this, the display is constructed by assigning a specific
database to a tabular layer and assigning picgroups to that layer.
Picgroups consist of pictures associated with a specific record type in a
database. The picture database and tabular layer database must match
for linkage to occur.
A typical tabular layer consists of a hierarchical presentation of the
substations, devices, and their associated values for a Supervisory
Control and Data Acquisition (SCADA) system.
When a tabular layer is called up, e-terrabrowser automatically displays
record type occurrences based on the picgroups placed there. The
sequence and occurrence of the picgroups are determined by the
database hierarchy, the record list, and the layer definition.
Tabular layers have the following unique features and definable attributes:
• Constructed solely of picgroups
• Ability to automatically list all occurrences of a given record type in a
database
• Ability to automatically list all occurrences of all (or some subset of all)
record types in a given hierarchy of a database
• Ability to create a custom list of record occurrences, in any order, in
any grouping
• Ability to automatically display a multi-dimensional array
• Ability to divide the display into tabs, and to position within the display
page by page or by specifying the exact page number
• Ability to create column and row headers that appear on every page of
the display as the user scrolls up or down or right or left
• Ability to specify the distance between, the grouping of, and the
direction of repeat of the picgroups
Note: Tabular layers do not have the simple layer capabilities of declutter
and placeholders.
In addition, the following tabular layer attributes can be defined:
• The page size, which can be defined by specifying either of the
following:
− Picgroups as page headers or page enders. This indicates that a
display page is begun with the primary record of a page header
picgroup and is ended with the primary record of a page ender
picgroup.
Proprietary – See Copyright Page 15 Overview
Display Builder User’s Guide
− A number of picgroup primary records per page. Pages are a set
number of primary record types long, counting all picgroup primary
records that have been displayed.
For multi-dimensional picgroups, the primary record type is the record
that repeats with the picgroup, not within the picgroup.
Only one of these methods can be used per display or display layer.
• Which picgroups are locked in the viewport. Picgroups can be locked in
the viewport in either the X (horizontal) or Y (vertical) dimension.
These picgroups remain in the viewport as it is scrolled right (Locked
in X) or down (Locked in Y), and they appear on each page of the
display.
• Which layers are held constant. All repeating placements on a layer
can be made to appear on each page of the display, whenever that
layer is visible. However, these placements are not locked in X and Y,
so, as the user scrolls, the user sees other instances of the picgroups.
For example, you can use current database values to create row and
column headers. This is done by placing two repeating picgroups on a
layer, specifying one to repeat right (column header) and the other
down (row header), and then holding the layer constant. You then
define another layer to display the actual data in each row and column.
Note: For a given display, all objects locked in the viewport
(placements in picgroups and the picgroups themselves), combined
with all layers held constant, must adhere to the “inverted L” rule of
placement locking.
• Which picgroups display free records. Free records can be inserted
anywhere in an e-terrahabitat database. For example, text records are
often defined as free records so that they can accompany many other
records (for more information about free records, see the
e-terrahabitat documentation set).
• Any overall attachments to the display. Keysets are the only element
that can be attached as an overall attachment to displays.
1.1.4.5 Driving Data Structures
Tabular layers are built with a specific data structure in mind. Specify the
tabular display data structure so the e-terrabrowser server can find and
deliver the data and its associated display components to the client upon
request.
Tabular layers are classified by the type of data structure that drives them.
The structure options are as follows:
Proprietary – See Copyright Page 16 Overview
Display Builder User’s Guide
• Repeat Placement: Find every instance of a single record type. This
requires one picgroup.
• Hierarchical Placement: Find every instance of several record types
in a tree structure. This structure requires one picgroup for each record
type in the hierarchy.
• Linked List Placement: Find a linked list structure and follow the
pointers to the specified record instances (filtered data). This structure
requires a picgroup for the record type being filtered.
• Indexed Placement: Find every instance of several record types in an
index data structure maintained by the e-terrabrowser data server. The
structure requires one picgroup for each record type in the index.
Note: If the linked list filters more than one record type, the filtered
data can also be grouped by name (picgroup name). In this case, a
picgroup sequencing data structure may also be involved.
• Multi-Dimensional Placement: Find a two- or three-dimensional array
and detect the orientation of the data on the X, Y, and possibly Z axes.
This structure requires one picgroup for each record type in the array.
A tabular layer can be defined as circular, which causes e-terrabrowser to
process through all occurrences of the driving record, regardless of the
starting point. Circular displays can be processed in ascending or
descending order of the driving record subscript value.
1.1.4.6 Picgroup Spatial Relationships
You can define the spatial relationships between the repeating instances
of picgroups in the online display. With respect to the previous picgroup,
three aspects define how repeating picgroups appear in the online display.
These aspects (defaults in parentheses) are:
• The physical space, in X,Y coordinates, between the picgroups, called
“picgroup spacing” (all spacing is set at 0,0). There is no space
between individual picgroups, blocks of picgroups, or picgroups in a
block.
• How instances of the same picgroup are grouped together as they
repeat, called “blocking” (the block count is 1). Each copy of a picgroup
in the scratch pad represents a block that contains one (1) picgroup.
• The direction that a picgroup appears in relation to the previous
picgroup (either below, to the right of, or both), called the “picgroup
repeat direction” or “orientation”. The direction of repeat is down.
Repeating instances of different picgroups and blocks of picgroups
appear directly below the previous one. When block counts are
Proprietary – See Copyright Page 17 Overview
Display Builder User’s Guide
increased, the default repeat direction of the picgroups within a block is
also down.
The above three spatial relationships exist between or among:
• Instances of different picgroups
• Instances of different blocks of the same picgroup
• Instances of the same picgroup within a block of picgroups
1.1.4.7 Data Linkage to Linked List Structures
Special linked list driving record structures and linked list software allow
sequencing of display data on linked-list layers. Fields in linked list record
structures supply the needed processing information to the e-terrabrowser
server. The parameters supplied by these fields are as follows:
• Sequence: A sequence field specifies which picgroup to paint for each
occurrence of the linked list driving record. When the sequence field is
a character field, it must contain the name of the picgroup to paint. If
the sequence field is an integer field, an index or record slot number
can be supplied. For more information about defining driving
structures, see the e-terrahabitat documentation.
• Occurrence: An occurrence field specifies which occurrence of
primary record type to display for each occurrence of the linked list
driving record.
• Forward/Backward Link: A link field specifies the next occurrence of
the linked list driving record. In the case where only one picgroup is
displayed, the link field controls the sequence and occurrence of the
primary record.
• Picgroup List: If a picgroup sequence is specified, the name of the
record containing the picgroup names must be specified.
1.1.5 Overall Attachments
Only pictures, picgroups, displays, and display layers are subject to overall
definition property attachments. Pictures can be given an overall
attachment as one of their pre-placement properties. Pictures destined to
be pop-ups can be given an overall attachment as one of their pre-
attachment characteristics. Picgroups, displays, and display layers accept
their overall attachments as a definition property.
Proprietary – See Copyright Page 18 Overview
Display Builder User’s Guide
1.1.6 Permission Area Tests
Permission area tests can be defined for pictures, layers, and displays.
Permission area tests allow you to control whether a station can view a
picture, a layer, or a display, depending on how the permissions have
been defined for a given permission area.
By definition, a picture, layer, or display has an implicit application test
associated with it. That is, the station must have the appropriate
permissions to the application of the picture, layer, or display in order to
view, edit, or execute commands from it.
Permission area tests can be combined with the implicit application
permission tests using the conjunction (AND) and disjunction (OR) to form
the entire permission test. The possibilities are as follows:
• When only one permission area test is defined:
− Both the implicit application test AND the defined permission area
test must pass.
− Either the application test OR the defined permission area test can
pass.
• When more than one permission area test is defined:
− Both the implicit application test AND all of the defined permission
area tests must pass.
− Either the application test OR any of the defined permission area
tests can pass.
For more information about and instructions for extracting permissions and
permission areas, see the e-terrahabitat Software Installation and
Maintenance Guide.
1.2 Display Builder Concepts
This section provides information about the construction of the Display
Builder windows that appear on the desktop as you perform display
construction tasks.
1.2.1 Definition Manager
The Definition Manager is the main window of Display Builder. When
Display Builder is started, the Definition Manager appears with an empty
definition work area and is available throughout the display building
session. The Definition Manager “work area” is the area of the Definition
Manager window in which the Display Builder set windows and component
editors open.
Proprietary – See Copyright Page 19 Overview
Display Builder User’s Guide
The Definition Manager is used to manage all aspects of display building:
• Creating, accessing, saving, and managing sets of elements and
display definitions in element and display sets
• Creating, accessing, saving, and managing individual element and
display definitions
• Managing access to element and display editors
• Customizing the Display Builder environment
For an illustration of the Definition Manager with display and element sets
open, see Figure 1.
Figure 1: Display Builder Definition Manager
The Definition Manager can be moved, minimized, and resized. Details
about the components of the Definition Manager can be found in the
following sections.
1.2.1.1 Element Set Windows
Element sets appear in the Display Builder work area in their own
windows, displaying the opened element set names in their title bars.
Selecting a tab opens the list box for the selected element type: pictures,
symbols, shared GABs, CAMs, conditional text, keysets, menus, and
GEMs. The elements of the type selected appear with their graphical
Proprietary – See Copyright Page 20 Overview
Display Builder User’s Guide
identifier and assigned name. Double-clicking an element opens the
element’s editor.
An Element Set window (Figure 2) also contains a filter text box in which
you can enter a search string to locate an element or a subset of
elements.
Figure 2: Definition Manager with Element Set Window Open
Right-clicking on any element in the list activates the pop-up menu for that
element.
1.2.2 Display Set Window
Display sets appear on the Display Builder work area in their own
windows, with the opened display set names in their title bars.
Selecting a tab opens the list box for the selected display set component:
displays and picgroups. The objects of the type selected appear with their
graphical identifier and assigned name. Double-clicking an item in this list
box opens that object’s editor.
The display set window (Figure 3) also contains a filter text box in which
you can enter a search string to locate a display or picgroup or a subset of
these. The asterisk wildcard is allowed in search strings.
Proprietary – See Copyright Page 21 Overview
Display Builder User’s Guide
Figure 3: Definition Manager with Display Set Window Open
Right-clicking on any object in the list activates the pop-up menu for that
object.
1.2.2.1 Editor Windows
When an object is double-clicked in a display set list box, the selected
object’s editor starts and opens its window in the Display Builder work
area. The editor window title bar displays the set name and selected
object name.
Right-clicking over an editor window activates an editor-specific
Save Data/Close Editor and Options pop-up menu. Other options, such as
Properties and Placement, appear in the menu depending on the context
and content of the scratch pad.
1.2.2.2 Browser Window
By default, the browser window appears on the left side of the Definition
Manager window when Display Builder is opened. The window can be
closed and re-opened by selecting View > Browser Window or by pressing
Alt+1. The browser window can also be resized by positioning the cursor
over the right border until a double-headed arrow appears, then dragging
the border.
Proprietary – See Copyright Page 22 Overview
Display Builder User’s Guide
If the browser window is undocked and you want to redock it to the main
application window, hold down the Ctrl key while pressing the left mouse
button, and align the edges of the window so it touches the edges of the
display builder’s application frame.
The browser window presents a schematic view of the selected object
definition, complete with icons and names of the components of the
definition. You can unbundle and review the definition hierarchy by
opening the schematic using the ± level indicators of the browsing tool.
The browsing tool takes you to the lowest depth of the schema, which is
an attached element such as a shared GAB.
Note: Using the browser window, you can discover all aspects of a display
definition without having to “trace” for attachments or placements in
associated editors. This can greatly facilitate display maintenance and
troubleshooting.
Figure 4: Definition Manager with Browser Window Open
Proprietary – See Copyright Page 23 Overview
Display Builder User’s Guide
1.2.3 Definition Manager Menus and Title Bar
The menus and title bar change dynamically based on the Definition
Manager context. The name of the object selected for editing and the
menus provided to support the editing session appear as soon as the
editor is activated.
Three Definition Manager contexts can exist during display building:
• A work area is empty.
• A Display Builder set window is open and has input focus.
• A Display Builder editor window is open with input focus.
The Definition Manager menus that appear in the three display building
contexts are as follows:
• The File, View, and Help menus appear when the Definition Manager
appears, but the work area is empty. The usage is described below:
− The File menu is used to create new Display Builder sets, open
existing ones, compile all the dsets in a directory, start the File
Transfer Protocol (FTP) utility, and define Print options.
Note: The Definition Manager File menu has two forms of support
for e-terrabrowser users. When the Definition Manager is empty
(no sets are in the work area), a Batch Compile option appears in
the menu for binary compilation of displays using the Batch
Compile dialog box.
If you have a display set (dset) open in the work area and if the
dset has input focus, the File menu provides the Save As Binary
option for compiling only the displays in that set.
If you have a display open in the Display Editor, the Save As Binary
function provides an application selection window and supports the
compilation with a toolbar button labeled Save Binary.
− The View menu is used to assign toolbars, the status bar, and the
browser window, and to set global display building options.
− The Help menu provides information about the Display Builder
version and general help about windows.
• The Edit, New, and Window menus join the File, View, and Help
menus when one or more Display Builder sets have been opened.
Their usage is described below:
− The Edit menu provides standard Cut, Copy, and Paste editing and
Select All selection. If the set window with input focus contains a
Proprietary – See Copyright Page 24 Overview
Display Builder User’s Guide
display set, this menu allows you to re-set the element assignment
(to the display set) with the Change References command.
− The New menu is used to create new display components. The
option in this menu varies according to the Display Builder set that
has input focus. For example, the Display and Picgroup options are
the options available when a display set has focus.
− The Window menu provides standard options for window
management.
• The Draw and editor-specific menu join the File, View, Help, Edit, New,
and Window menus when an editor has been opened. Their usage is
described below:
− The Draw menu is an attribute of the scratch pad editors. It is used
to select drawing tools, and to add placements and attachments.
The Draw menu is also used to manipulate selected objects.
− The editor-specific menu is an attribute of a specific scratch pad
editor. For example, the Picture menu label appears here when the
Picture Editor is open. The editor-specific menu provides access to
the Element Definition form, the Browser utility, and the Scratch
Pad Options dialog box.
If a scratch pad editor has input focus, the Print option is activated on the
File menu. This option captures the image on the scratch pad and sends it
to the default printer.
1.2.4 Definition Manager Toolbars
The Definition Manager opens with the following toolbars activated: Edit
(the standard toolbar for editing selected objects), Draw, Arrange, Scratch
Pad, Default GAB, and Layers. The toolbars unique to Display Builder are
described below:
• Browser: The icon for browsing the current definition in a scratch pad
appears in this toolbar (for more information about browsing
definitions, see Browser Window).
• Draw: The icons for selection mode and primitive, text, and formatted
field creation appear here, followed by the placement, attachment,
placeholder, and properties icons.
• Arrange: The icons for front/back, group/ungroup, and align
vertical/horizontal appear here.
• Scratch Pad: The icon (scratch pad editor zoom) and the drop-down
list box for zoom-level selection appear here. The Grid and Snap to
Grid icons are located to the right of the zoom icon. The Grid button
Proprietary – See Copyright Page 25 Overview
Display Builder User’s Guide
shows/hides grid lines, and the Snap to Grid button “snaps” (relocates)
selected objects on grid lines.
The Scale to Fit toggle button is located on the right side. When it is
clicked, the display zooms to fit the current viewport size based on its
fit style. When it is clicked again, the display resets back to 100%
zoom level.
• Default GAB: The drop-down list boxes for selecting the default GAB
and its element set appear here.
• Layers: The active layer drop-down list box and the layer (properties),
tabular simulation data, and tabular layout icons appear here.
Note: The icons on a toolbar are activated and deactivated dynamically
according to the context of the activated editor. For example, the
Placeholder button is only active when the Display Editor is active and its
active layer is a simple layer.
The Definition Manager toolbars can be activated and deactivated by
selecting View from the main menu and choosing the desired toolbar, or
by using the appropriate shortcut key:
• View Alt+2
• Draw Alt+3
• Arrange Alt+4
• Scratch Pad Alt+5
• Default GAB Alt+6
• Layers Alt+7
Each toolbar can be relocated and docked within the Definition Manager
using drag-and-drop techniques.
1.2.5 Display Builder Cursors
Display Builder uses several cursors based on the current task.
Note: As the mouse cursor moves across a scratch pad, the Definition
Manager displays the cursor’s X,Y coordinates and the identity of any
objects crossed at the far right side of the status bar. This utility can help
Display Builder construct, modify, and identify objects.
The cursor styles presented are as follows:
• Work area cursor : The normal Windows select cursor.
Proprietary – See Copyright Page 26 Overview
Display Builder User’s Guide
• Insertion cursor : The Windows text select cursor. When this
cursor is positioned over editable text and the left mouse button is
clicked, the blinking text entry bar appears. This cursor is accompanied
by a blinking text entry bar.
• “Not-legal-move” cursor : When a drag-and-drop operation is not
supported, the work area cursor changes to a circle-and-diagonal
cursor.
• Drag-and-drop cursor : A shaded rectangle is added to the work
area cursor, indicating that an object is being carried to a drop location.
If the work area cursor is something other than the default, the cursor
changes to a large arrow. When the drag-and-drop operation is a copy
operation (CTRL-key assisted), a plus sign (+) accompanies the
cursor. When the cursor is used to attach elements, an equal sign (=)
accompanies the cursor.
• Diamond, 4-arrow cursor : The work area cursor changes to this
cursor of black arrows whenever it is positioned over an object in the
scratch pad. Clicking the located object with this cursor selects the
object. Double-clicking the object calls up its Placement Properties
form.
Note: If the Show DB Linkage Tips option is active on the Display
menu and the located object has a database linkage defined, the
linkage information pops up over the object.
• Square, four-arrow cursor : The work area cursor changes to this
cursor of black arrows whenever a primitive is selected and the end
point under the cursor is determined to be extensible. When this cursor
appears, you can drag the cursor in any direction to extend the line.
• Vertical/horizontal arrowhead cursors : The work area cursor
changes to one of these double-ended arrow cursors, to indicate that
the side of a quadrilateral can be moved up or down.
Proprietary – See Copyright Page 27 Overview
Display Builder User’s Guide
1.2.6 Display Builder Sets
Element and display definitions are grouped and stored in sets. Element
sets and display sets are referred to collectively as “Display Builder sets”.
Display Builder manages display definitions by creating and writing
collections of graphical and database linkage data in Display Definition
Language files (see the section Display Definition Language (DDL)).
These DDL files should be stored in a source control system.
1.2.6.1 Element Sets
Element sets can contain definitions of various placeable and attachable
elements. They also include shared GAB definitions. Element sets are
created and accessed using the Definition Manager File menu.
1.2.6.2 Display Sets
Display definitions are stored in display sets. The picgroup definitions for
any tabular displays in the set are also stored in the display set. Display
sets are created and accessed using the Definition Manager File menu.
1.2.6.3 How Element and Display Sets Relate
Elements can be re-used in many displays and picgroups. Displays can
contain elements from several element sets.
However, an element can only be composed of elements from the same
set in which it is defined. Correspondingly, a tabular layer can only be
composed of picgroups from the same set in which the display is defined.
When an element or picgroup is modified, all affected display definitions
are automatically updated to capture the change.
1.2.6.4 Display Builder Set Storage
Element and display sets are stored in Display Definition Language (DDL)
files. DDL files contain the ASCII definitions of the elements, displays, and
picgroups defined in each set.
Display Builder assigns file names to sets according to the following
convention:
setname_xset.ddl
where setname is the user-specified name given to the set in Display
Builder and x is either “e” for an element set or “d” for a display set.
The default location for these files is a DDL directory on the development
machine’s hard drive.
Proprietary – See Copyright Page 28 Overview
Display Builder User’s Guide
1.2.6.5 Display Definition Language (DDL)
Element and display definition files are composed of ASCII text strings
written in Display Definition Language (DDL).
Each element and display definition consists of one or more text strings
called “statements”. Each statement is defined according to a set of syntax
rules. Statements are composed of reserved keywords, other statements,
and delimiters (such as parentheses).
1.2.6.6 Display Builder Set Access
Display Builder set files can be accessed through Display Builder or by
using a basic text editor.
Sets are accessed in Display Builder through the File menu of the
Definition Manager.
When accessed through a text editor, you can create and modify elements
and displays by defining proper DDL statements. However, this method is
not recommended, since it can easily lead to parser errors and the
language may change in subsequent releases.
1.2.7 Display Builder Editors
Displays are created and edited using two types of editors: scratch pad
editors and dialog editors.
Symbols, pictures, picgroups, and display layers are created with scratch
pad editors. Shared GABs, conditional text, CAMs, menus, and keysets
are created with dialog editors.
1.2.7.1 Scratch Pad Editor Components
The main components of scratch pad editors are:
• A title bar: The name of the display or element set and the name of
the current object in the editor appear in the title bar.
• A context-sensitive Definition Manager menu bar: As you change
input focus from window to window, the composition and content of the
menu bar change to support your current task.
• Context-sensitive Definition Manager toolbars: The toolbars
assigned to each scratch pad editor contain all the buttons used to
control the actions taken in the scratch pad. The buttons they contain
are activated as you move from one scratch pad editor to another. The
toolbars are initially located at the top of the Display Builder window;
however, you can relocate them.
Proprietary – See Copyright Page 29 Overview
Display Builder User’s Guide
• A scratch pad: The coordinate space where primitives are drawn or
elements are placed and attached. The “scratch pad grid” is used to
align objects with consistent spacing (for an illustration of the Display
Editor scratch pad, see Figure 5).
Figure 5: Definition Manager with Sample Scratch Pad
• A status bar: The scratch pad editor uses the Definition Manager
status bar to indicate the object types, names, and locations on the
scratch pad.
1.2.7.2 Dialog Editor Components
Dialog editors are so called because the definitions created and modified
with them are done exclusively with dialogs. Details about dialog editor
components can be found in the following sections.
The main components of dialog editors are:
• Text boxes: Text boxes accept text entry. A text box usually has a title
or label to indicate the context and type of text to enter in the box.
Each text box has a blinking insertion cursor (I) when it has input
focus. Only one text box in a window can have input focus at a time.
When there is more than one text box in a dialog box or form, you can
move between the boxes and give input focus to each in succession by
doing one of the following:
− Clicking in the desired text box.
Proprietary – See Copyright Page 30 Overview
Display Builder User’s Guide
− Pressing Tab – The Tab key gives each successive text box input
focus, starting with the text box that currently has input focus, and
proceeding to the lower right and then returning to the upper left,
etc.
− Pressing Shift+Tab – Using this key combination gives each
successive text box input focus in reverse order of pressing the Tab
key.
• Push buttons: Push buttons are used to control dialog boxes and to
issue commands. To use a push button, simply click it; the action
indicated by the button then takes place.
Usually, only one command button on a dialog box is active, or
highlighted. The action associated with the highlighted button is the
action that occurs when the Return key is pressed. This allows you to
take this action directly from the keyboard during extensive text entry.
− OK button: Clicking OK causes the following to occur:
∗ The attributes specified in the box are applied to the definition.
∗ The dialog box is closed.
Clicking OK means “Apply and save this dialog box to the definition
and close the dialog box”.
− Apply button: Clicking Apply causes the following to occur:
∗ The attributes specified in the box are applied to the definition.
∗ The dialog box remains open. This allows you to preview the
results of the definition and make changes before closing the
dialog box.
Clicking Apply means “Apply and save this dialog box to the
definition, but do not close it”.
− Cancel button: Clicking Cancel causes the following to occur:
∗ The attributes defined or modified in the box since the last OK
or Apply are not applied to the definition.
∗ The dialog box is closed.
Clicking Cancel means “Do not apply or save the dialog box
definition, and close the dialog box”.
− Update button: Clicking Update causes items in definition list
boxes to be updated with information supplied by Display Builder.
An example of an update action is the revision of a menu label.
Proprietary – See Copyright Page 31 Overview
Display Builder User’s Guide
− Add and Delete buttons: Add and Delete are used to modify the
contents of list boxes by adding to or removing items from the list.
• Radio buttons: Radio buttons appear in an option group; only one
radio button in an option group can be selected at a time. Clicking a
radio button sets one of a group of attributes on while turning the
others off.
• Toggle buttons: Toggle buttons set an attribute on or off. The button
contains an “X” to indicate that it is selected and is empty to indicate
that it is off.
• Check boxes: Check boxes are used to turn an attribute on or off.
When selected, a check mark is displayed in the check box.
• Sliders: Sliders are used to set numerical values within a defined
scale.
Note: Most sliders in Display Builder have accompanying text boxes
for direct entry of the slider value.
• Drop-down list boxes: Drop-down list boxes provide a list of choices
to define an attribute. The current attribute setting is displayed in the
box. The attribute is modified by selecting an option from the list.
• Directory list boxes: Directory list boxes have the following common
features:
− A file filter text box used to filter the list of items.
A file filter parameter causes those items matching the text string to
be listed in the list box when Update is clicked. Any items not
matching the text string are excluded.
Example 1: Typing the character string SCADA in the filter text box
causes only the item named SCADA to appear in the list box.
Example 2: Typing the character string SCADA* in the file filter text
box causes only those items that begin with the letters S-C-A-D-A
to appear in the list.
Example 3: Typing the character string *SCADA* in the file filter
text box causes only the items with the letters S-C-A-D-A, in that
order, anywhere in their names to appear in the list.
− A window where the list of items is displayed. This window has a
vertical scroll bar for positioning in lists that are longer than the
window.
Proprietary – See Copyright Page 32 Overview
Display Builder User’s Guide
• Definition list boxes: Definition list boxes are filled in to specify the
content of an element such as a menu that requires labels. Another
example is the creation of a list of virtual key names and associated
commands in a keyset definition.
All definition list boxes in Display Builder have the following common
features:
− One or more text boxes used to define the item in the list.
− Add, Delete, and Update buttons used to add the item to the list,
delete it from the list, or modify the list item.
− A window where the list of items is displayed. This window has a
vertical scroll bar for lists with more items than can be displayed at
one time.
− Up and Down buttons, which are used to adjust the position of
items in the list.
− Option menus, radio buttons, toggle buttons, or check boxes for
defining the list items.
1.2.8 Display Builder Tools
Display Builder is used to construct and analyze interactive data displays.
The tools provided by Display Builder for display building are as follows:
• Display Builder: This is the universal working environment for display
building. All display building using graphical editors takes place here
(see Definition Manager).
• Scratch pads: Scratch pads are the grid- and coordinate-based work
areas for display development (see Scratch Pad Editor Components).
• Dialogs and forms: These are text- and toggle-based work areas
presented as dialog editors and tabbed forms (see Using the Dialog
Editors).
• Elements: These are the pictures, primitives, symbols, keysets,
menus, formatted fields, background text, conditional text, Graphic
Attribute Bundles (GABs), and Conditional Attribute Modifiers (CAMs)
that make up the building blocks for display development.
• Picgroups: Groupings of one or more pictures are called “picgroups”.
Picgroups are created to carry data of repeating database records in
tabular (row and column) format that reside on tabular layers. A
picgroup’s primary picture identifies the desired database entry point
for the e-terrabrowser server (see Picgroups).
Proprietary – See Copyright Page 33 Overview
Display Builder User’s Guide
• Data layers: Displays can be constructed so data is distributed to
different views called “layers”. These layers are of two types: simple
and tabular (see Defining Layers).
• Display definitions: Display definitions identify databases and data
structures, capture viewport attributes, and give the display a unique
identity (see Defining Displays).
• Permission test definitions: These serve to filter access to displayed
data by screening display and picture call-ups based on user-defined
database permission values (see Defining Permission Area Tests).
Display Builder features many of the interactive tools common to window-
based graphical applications, plus other graphical devices that are unique
to it. Some of these powerful tools are:
• Toolbars: Related editing operations are grouped as buttons into
toolbars (see Definition Manager Toolbars).
• Drag-and-drop: Graphical placements and attachable elements can
be selected and dropped onto scratch pads using the drag-and-drop
technique. In addition, selected objects can be transferred from one
scratch pad to another using drag-and-drop (see Drag-and-Drop
Utility).
• Browser window: This is an online display construction analyzer that
operates in its own window in the Definition Manager (see Browsing
Object Definitions in Scratch Pads).
• Context-sensitive pull-down menus: The contents of the Definition
Manager menu bars adjust to the editing context to provide you with
only applicable command menus.
• Context-sensitive pop-up menus: Based on the editing context,
right-clicking opens the editor’s pop-up menu of commonly used
commands, such as Save Data, Options, and Properties.
• Previewing panels: Graphical elements such as picgroups appear in
previewing panels so you can confirm their contents. Shared GAB
attributes are applied to objects in a previewing panel so you can
confirm attribute effects.
• Previewing pop-ups (on simple layers): When the cursor crosses a
picture or primitive on a simple layer, the object’s assigned composite
key pops into view. This feature is set using the Show DB Linkage Tips
option from the Display menu. These tips are active only at design
time.
Proprietary – See Copyright Page 34 Overview
Display Builder User’s Guide
• Data simulation work area: For data that is displayed in tabular
format, a picgroup distribution and sequencing simulation area is
provided.
1.2.8.1 Primitives
Display Builder provides tools for drawing the following primitives:
• Lines and polylines
• Polygons
• Rectangles
• Circles, ellipses, and arcs
• Graphical elements closely related in usage to primitives are static text
and placeholders. These elements are applied directly to a scratch
pad.
Primitives are defined by specifying a sequence of points. The extension
of the primitive in the scratch pad is controlled by the cursor and mouse
button actions:
• Clicking the left mouse button provides the scratch pad anchor point.
• Dragging the cursor in any direction from the anchor point sizes the
primitive (see Resizing a Primitive).
The shape of the primitive outline (sometimes called the “rubber-band
model”) matches the type of primitive being drawn.
• Releasing the left mouse button defines:
− The extent of circles, rectangles, and ellipses
− The bounding circle of an arc
− The end of the first line segment for polylines and polygons
1.2.8.2 Static Text
“Static text” is text that does not change. It is defined by typing in a text
box that opens on the scratch pad.
1.2.8.3 Formatted Fields
Formatted fields are placed in pictures to provide linkage to data in an
application database.
Proprietary – See Copyright Page 35 Overview
Display Builder User’s Guide
1.2.8.4 Placeholders
A “placeholder” is a graphic device that provides a target for navigation
within a simple layer. You provide access to the placeholder by supplying
its name as the object of a PLACEHOLDER qualifier in a DISPLAY
command. This command is captured as the outcome of a menu option in
a menu definition. Selecting the option causes the display to open over the
placeholder.
1.2.8.5 Drag-and-Drop Utility
You can place and attach elements in scratch pads using the drag-and-
drop functionality. Pictures and symbols can be placed in Picgroup and
Display scratch pads (simple layers), and object modifiers such as shared
GABs, CAMs, and keysets can be attached to target objects using drag-
and-drop techniques.
Following are the requirements for using drag-and-drop:
• The receiving scratch pad must be open, and the target object must be
visible.
• The element set window in which the desired object resides must have
input focus.
• The drag-and-drop cursor must appear over the target object. If the
“Not a Legal Move” cursor appears, the selected placeable/attachable
item does not drop when the left mouse button is released.
For more information about drag-and-drop, see Making Attachments to
Placed Objects and Copying Component Definitions.
1.3 Multiple Data Sources on a Single Display
e-terrabrowser can obtain data from multiple sources, to be used on a
single display.
There are three types of multi-data source displays:
• Type 1: Each layer uses a separate data source, and no attempt is
made to correlate data from the different sources. Each layer has its
own query, which executes against a single data source. This can be
useful for layers that are not always visible.
For example, you might want to toggle between e-terrahabitat and
e-terracontrol layers on the same display.
• Type 2: A “primary” data source is designated for each layer.
However, each layer can contain data from multiple sources. The
query is first executed against the primary data source, and the result
determines the list of record instances to be included on the layer.
Proprietary – See Copyright Page 36 Overview
Display Builder User’s Guide
Then each secondary data source is queried for the same record
instances, providing additional fields for the same record instances.
For example, you can have a picture with two formatted fields. The first
can show DIS_ANALOG from e-terrahabitat. The second can show
DIS_ANALOG (or any other field from the same record instance) from
e-terracontrol.
• Type 3: As with type 2, a primary data source is designated for each
layer. However, you can retrieve one set of record instances from the
primary data source, and related record instances from a different data
source. This is also referred to as a “cross data source join”.
For example, you can list all the analogs in a given substation in
SCADAMOM. Then, for each analog, you can show the last hour of
history from e-terraarchive. Or, you can show selected child records of
each analog from e-terracontrol.
1.3.1 Concepts and Terminology
1.3.1.1 Schemas
A schema is basically a collection of database, table, column, and key
definitions. (The terms “table” and “record” are used interchangeably, as
are the terms “field” and “column”.) For example, the collection of
e-terrahabitat database definitions in an EMS makes up a schema.
Each data source uses a single schema. The EMS has its collection of
e-terrahabitat databases. e-terracontrol has a similar, but slightly
different, schema. e-terraarchive has yet another schema. In many cases,
the various schemas represent the same underlying objects, or different
aspects of the same objects. For example, e-terracontrol and
SCADAMOM both contain information about ANALOG records. For a
given ANALOG, some information is in SCADAMOM only, some is in
e-terracontrol only, and some is in both.
To model this overlap among schemas, define a “standard schema”. A
standard schema is the union of the databases, tables, and columns in all
other schemas. Each schema can map its tables and columns to the
corresponding tables and columns in the standard schema. This is how
you represent the fact that two tables from two different schemas actually
model the same underlying object.
The tables and columns often have different names in different schemas.
XML schema mapping files are used to translate names from any given
schema to the standard schema and back.
Proprietary – See Copyright Page 37 Overview
Display Builder User’s Guide
1.3.1.2 Schema Types
e-terrahabitat supports some unique schema features that are not found
in standard relational data models. Define a mapping for each of these
features into a relational model, so that you can compare tables, columns,
and databases across schemas in a well-defined way.
• Applications: The application name is treated as a prefix to the
database name, using a configurable separator character. For
example, the full name of the SCADAMOM database in the
e-terrascada application is “SCADA.SCADAMOM”.
The SCADAMOM database in the RECON application is
“RECON.SCADAMOM”.
• Multi-dimensional fields: e-terrabrowser supports these fields by
using up to three names for each record. Concatenate these names
using a configurable separator character to make a single name. For
example, a picture designed to show multi-dimensional data from
PERMIT might be defined with RecordName1 = AREA and
RecordName2 = CON. The relational table name is “AREA_CON”.
• Indirect fields: Concatenate the parts of the indirect using a
configurable separator character. For example,
P__DEVTYP_DEVICE P__SUBSTN_DEVTYP ID_SUBSTN
becomes P__DEVTYP>P__SUBSTN>ID.
The standard schema is a relational schema type. When a name is
converted from an e-terrahabitat schema to a standard schema, it is first
converted to a relational schema type. Then the schema-mapping file is
searched. So, all names in schema mapping files are in relational form.
1.3.1.3 Primary Keys
A primary key is a collection of columns in a table that uniquely identifies
each row. For queries that retrieve data from multiple data sources,
e-terrabrowser automatically includes these columns for each table. They
are used to identify and correlate rows from different data sources that
represent the same underlying object.
1.3.1.4 Foreign Keys
A foreign key is a collection of columns in a table that identifies a row in
another table (or a different row in the same table). In the context of
e-terrabrowser displays with multiple data sources, they are used to
identify the parent row of a given row. For example, the foreign key
columns of a given row in the DEVICE table identify the parent DEVTYP.
e-terrabrowser uses foreign keys for two purposes:
Proprietary – See Copyright Page 38 Overview
Display Builder User’s Guide
• To identify related rows from different data sources. For example, the
foreign key of an ANALOG_HISTORY row in e-terraarchive identifies
the associated ANALOG from SCADAMOM.
• To generate the SQL used to get data from relational databases.
Proprietary – See Copyright Page 39 Overview
Display Builder User’s Guide
2. Display Builder Basics
This chapter provides instructions for basic Display Builder operations.
2.1 Starting Display Builder
Start Display Builder by double-clicking its icon in the Program Group to
which it was assigned during installation. The Definition Manager appears
with an empty work area (see Definition Manager).
2.2 Customizing the Building Environment
Display Builder scratch pads can be customized as a group using the
Definition Manager View menu to access the Options form, and
individually using a pop-up menu to access a Scratch Pad Options dialog
box.
Some of the aspects that can be customized are:
• The default GAB
• The scratch pad background and alignment grid colors
• The size of handles, or “hot spots”, the editing points of primitives
2.2.1 Customizing All Scratch Pads
To customize the options that apply to all scratch pads, use the following
procedure:
1. From the Definition Manager menu bar, select View > Options.
The Options form opens, with the Options tab selected.
2. Complete all sections on the form’s three tabs: Options, Colors, and
Font Mapping.
3. When all desired options have been set, click OK to save the changes
and close the form.
See Options Form.
2.2.2 Customizing Individual Scratch Pads
To customize only the current scratch pad, use the following procedure:
1. To open the Scratch Pad Options dialog box, right-click on the desired
scratch pad, and select Options from the pop-up menu.
2. Set the Grid Settings options as desired.
Proprietary – See Copyright Page 40 Display Builder Basics
Display Builder User’s Guide
3. Set the Selection Handles options.
4. Specify any desired work area margin in pixels.
5. Specify the zoom level of the work area (see Setting Scratch Pad
Zoom).
6. Click OK to save the changes and close the dialog box.
See Scratch Pad Options Dialog Box.
For details about specifying an editor’s default GAB, see Setting the
Default Shared GAB Element Set and Setting the Default Shared GAB.
2.3 Selecting the Compatibility Version
It is very important that the proper compatibility version be selected prior
to working with Display Builder. The compatibility version feature controls
the availability of new display features, as well as controlling the content of
DDL files when they are saved. In addition, the compatibility version is
used to control the format of compiled e-terrabrowser displays.
Note: If you do not know which compatibility version is compatible with
your organization’s system, consult your system administrator. If you
develop displays for customers outside your organization, make sure you
know for which compatibility version your display work is targeted.
This section provides information about the compatibility feature and its
purpose. The appendix Display Feature Cross-Reference provides a
comprehensive list of all features, as well as a detailed table for each
compatibility version supported by Display Builder.
If you want to explore the display features to find out which compatibility
version a given feature is supported in, see the appendix Display Feature
Cross-Reference.
When a new feature is added to e-terrabrowser, it may require a change
to the DDL syntax as well as changes to one or more of e-terrabrowser’s
subsystems. When such a change is made to the DDL syntax, previous
versions of the binder/compiler cannot read the file without generating
parser errors. Even if the binder/compiler can read the DDL file, the client
and server subsystems do not support the new features contained in the
display set file.
This is where the compatibility version comes into play. When a change is
made to the DDL syntax and/or the underlying data structures of the
subsystems, a new compatibility version is added to Display Builder. This
version is named according to the e-terrabrowser version that has been
modified for the new features. Therefore, it is important to understand that
Proprietary – See Copyright Page 41 Display Builder Basics
Display Builder User’s Guide
not all versions are listed in the compatibility version combo box — only
versions that require changes to the DDL syntax.
Note: The compatibility version “WebFG Development” is intended for
Alstom Grid internal use only. It is not a configuration that should ever be
used outside of Alstom Grid.
2.4 Opening Display Builder Sets
To open a Display Builder set in the Display Builder work area, double-
click a DDL file, or use the following procedure:
1. From the Display Builder menu bar, select File > Open.
The standard Windows Open dialog box appears, opened to the
Display Builder Set storage directory that was specified during Display
Builder setup.
2. Select a .DDL file from the directory, and click OK.
The selected set opens in a window bearing its name.
Note: As a convenience, display sets open with their required element
sets.
Alternatively, Display Builder can choose a set from the numbered list of
previously opened sets that appears at the bottom of the File menu.
2.5 Creating New Sets
To initiate work on a new Display Builder set, use the following procedure:
1. From the Definition Manager menu bar, select File > New.
The New (display set) dialog box opens.
2. To open the New Name dialog box, select “eset” or “dset” from the list,
and click OK.
3. Specify the display set name, and click OK.
In the Definition Manager work area, the window for the new Display
Builder set opens.
Note: Once a Display Builder set is open in the Definition Manager work
area and has input focus, the options available in the New menu change
to mirror the editing context of the set. For example, if a display set
(“dset”) window has input focus, only the Display and Picgroup options are
available.
Proprietary – See Copyright Page 42 Display Builder Basics
Display Builder User’s Guide
2.6 Starting Scratch Pad and Dialog Editors
Display Builder gives you several ways to open display component editors.
The sections below tell how the display and element set windows can be
used to open editors.
2.6.1 Starting Scratch Pad Editors
Display Builder’s scratch pad editors can be started by creating a new
element or display, or by opening an existing element or display.
2.6.1.1 Creating New Symbols and Pictures
To open the Symbol and Picture scratch pad editors by creating a new
element, use the following procedure:
1. Give input focus to the desired element set window.
2. To open the New Name dialog box, choose the editor by name from
the Display Builder’s New menu.
3. Specify the element name, and click OK.
A blank scratch pad opens in the Definition Manager work area with
symbol- or picture-specific features enabled on the toolbar.
2.6.1.2 Creating New Picgroups and Displays
The Picgroup and Display Editors can be started using the following
procedure:
1. Give input focus to the desired display set window.
2. To open the New Name dialog box, choose the editor by name from
the Definition Manager’s New menu.
Note: The New Name dialog box for displays (below) differs from that
for picgroups.
Proprietary – See Copyright Page 43 Display Builder Basics
Display Builder User’s Guide
3. Specify the picgroup or display name.
For new displays, you are required to select whether the display
includes either a simple (default) or a tabular layer.
4. Click OK.
A blank scratch pad opens in the Definition Manager work area, with
picgroup- or display-specific features enabled on the toolbar.
2.6.2 Starting Dialog Editors
Dialog editors can be started by creating a new element or by opening an
existing element.
To create a new dialog element, the Shared GAB, CAM, CT, Menu, and
Keyset dialog editors can be started using the following procedure:
1. Give input focus to the desired element set window.
2. To open the New Name dialog box, choose the editor by name from
the Definition Manager’s New menu.
3. In the New Name form that appears, specify the element name, and
click OK.
The desired editor opens in the Definition Manager work area.
2.6.3 Opening Existing Components
There are two procedures for opening display components (i.e., an
element or a picgroup), for editing in either scratch pad or dialog editors.
2.6.3.1 Using Component Lists
To open components for editing using the component lists found in display
and element set windows, use the following procedure:
1. Give input focus to the set that contains the display component.
2. Open the component list using the set’s component tabs.
Proprietary – See Copyright Page 44 Display Builder Basics
Display Builder User’s Guide
3. Double-click the desired component.
For example, double-clicking on a picture name in the Pictures tab
opens the Picture Editor.
For details about defining display components using the Display Builder
editors, see Using the Scratch Pad Editors and Using the Dialog Editors.
2.6.3.2 Using the Browser Window
To open components for editing, or to start an editor using the browser
window, use the following procedure:
1. To populate the browser window, select the Browse Current Object
icon from the Definition Manager toolbar, or select the Browse
option from the editor-specific menu.
Note: The browser window can only be populated if a display
component is already open in the Definition Manager work area.
Therefore, this method is used for opening a placed or attached object
for editing.
2. To display the first level of the definition schema, click the +/- icon at
the top of the object schema.
3. Continue to navigate the component hierarchy until the desired object
is visible.
4. To display the Scratch Pad Option pop-up menu, right-click on the
object, and select the Edit option.
The selected object opens in the Definition Manager work area.
2.7 Renaming a Display Component
To rename a display or display component, right-click on the element and
select Rename from the pop-up menu, or use the following procedure:
1. Give input focus to the display or element set window containing the
desired component.
2. Select the display or component to be renamed.
3. To open the New Name dialog box, select Edit > Rename from the
Definition Manager menu bar.
4. Enter the new name in the text box, and click OK to save the new
name.
Proprietary – See Copyright Page 45 Display Builder Basics
Display Builder User’s Guide
2.8 Resolving Name Conflicts
When creating new displays or display components, you may
inadvertently assign a name that is already in use. In this instance, the
New Name dialog box displays an error message.
Figure 6: Name Conflict Error Message
To resolve this conflict, enter a different name in the text box, and click
OK.
Note: It is okay to have different component types that have the same
name (e.g., a display and a picture, or a symbol and a picture).
When Display Builder detects an identical display component definition in
the Display Builder set that is the target of a drag-and-drop operation, the
Name Conflict form appears. This form commonly appears when a
definition is copied from one set to another.
Display Builder safeguards display component definitions by ensuring that
they are not accidentally overwritten (replaced). When Display Builder
detects a conflict, the Name Conflict dialog box opens.
Proprietary – See Copyright Page 46 Display Builder Basics
Display Builder User’s Guide
Figure 7: Name Conflict Dialog Box
To resolve a name conflict, use the following procedure:
1. To keep the existing definition, select Keep Existing Items.
2. To replace the existing definitions with new ones, select Keep New
Items.
3. To keep the existing definitions as well as capture the new definitions,
select Make Copies of New Items.
Display Builder creates a new display component name by adding a
number to the root name of the existing component.
4. Click OK to close the dialog box.
2.9 Changing Display Set References
To change the element set reference for a display set, use the following
procedure:
1. Give the input focus to the desired display set window.
2. To open the Change References dialog box, from the Definition
Manager menu bar, select Edit > Change References.
Proprietary – See Copyright Page 47 Display Builder Basics
Display Builder User’s Guide
3. In the text box, type the desired element set root name.
4. Click OK to change the references, or click Cancel to keep the current
references.
2.10 Saving Sets and Editor Definitions
After creating or editing Display Builder sets, they must be saved to their
respective .DDL file to make them available for future use. You can save
the active set or all currently open sets. The current set can also be saved
with a new name. Note that empty sets or displays cannot be saved.
2.10.1 Saving the Active Set
To save the current set, use the following procedure:
1. Give input focus to the desired set window.
2. From the Definition Manager menu bar, select File > Save.
Display Builder saves only the contents of the active set.
2.10.2 Saving All Open Sets and Editor Definitions
To save the contents of all open Display Builder set and editor windows,
do the following:
• To save all set contents and editor definitions, from the Definition
Manager menu bar, select File > Save All.
2.10.3 Saving the Current Editor
To save the contents of an individual editor window, use the following
procedure:
1. Give input focus to the desired editor window.
2. To open the operations pop-up menu, right-click in the editor window.
3. From the pop-up menu, select Save Data.
Display Builder saves the contents of the editor.
Proprietary – See Copyright Page 48 Display Builder Basics
Display Builder User’s Guide
2.10.4 Using Auto Save
Display Builder has an Auto Save feature, which is activated when Display
Builder starts. The Auto Save function periodically saves changes to
temporary files. These files are of the following format:
setname_BACKUP_xSET.ddl
where setname is the name given to each set open in Display Builder and
x is either E for an element set or D for a display set.
The status of the Auto Save feature, and the directory to which the
temporary files are saved, are specified using the Options form (see
Options Tab).
In the event that Display Builder exits without saving your work, unsaved
changes can be recovered by copying the contents of the backup file to its
corresponding set.
Note: The Auto Save feature does not save changes to the original .DDL
file. These changes must be copied manually (see Recovering Changes
from Temporary Files).
2.11 Recovering Changes from Temporary Files
To recover work from a backup file, use the following procedure:
1. Open the set into which the backed-up work was captured.
2. From the backup location, open the backup file for the open set.
This location appears on the Options tab on the Options form. The
set’s backup file contains all the changes made to objects/definitions in
the set during the previous session.
3. From the backup set, select the changed items, and drag them into the
destination set.
4. When the Name Conflict dialog box appears, select the Keep New
Items option.
5. Click OK to close the Name Conflict dialog box.
2.12 Copying Component Definitions
You can easily share and transfer picture and display definitions.
However, you may want to avoid making multiple copies of pictures and
display definitions unless it is necessary; if one of them has an error, all of
the copies need to be corrected. Instead, if you are creating ESET
components that are to be used in many different displays, it may be
helpful to put all of them into global ESETs.
Proprietary – See Copyright Page 49 Display Builder Basics
Display Builder User’s Guide
Component definitions can be copied to other Display Builder sets using
the following procedure:
1. Open the source and destination sets.
2. In the source set, right-click on the desired component, and select
Copy from the pop-up menu.
3. Right-click in the destination set window, and select Paste from the
pop-up menu.
Or:
Select the desired component definitions and drag them into the
destination set. This deletes the component from the originating set
and pastes it into the receiving set.
Note: If a component definition of the same name exists in the destination
set, Display Builder prompts you with the Name Conflict dialog box. You
must complete the Name Conflict dialog box to resolve the conflict.
2.13 Printing the Contents of a Scratch Pad
To print the contents of a scratch pad, use the following procedure:
1. Give input focus to the editor window in which the scratch pad to be
printed is open.
2. To open the standard Windows Print dialog box, from the Definition
Manager menu bar, select File > Print.
3. Select the desired options.
4. Click OK to print the contents of the scratch pad and close the dialog
box.
2.14 Transferring Sets for Compilation
Display Builder provides File Transfer Protocol (FTP) functionality to allow
you to transfer DDL files to other computers. To transfer one or more
Display Builder sets to a different computer, use the following procedure:
1. From the Definition Manager File menu, select the File Transfer option.
The Display Builder’s File Transfer form appears (see File Transfer
Form).
2. In the text boxes provided, specify the destination host name, user
account, and account password.
3. In the Host Directory text box, specify the destination directory.
Proprietary – See Copyright Page 50 Display Builder Basics
Display Builder User’s Guide
4. Using the Send to Host/Get from Host radio buttons, specify whether
the transfer is a send or retrieve operation.
5. Click the Files button.
The standard Windows Open dialog box appears, open to the .DDL file
directory.
Alternatively, type the file name(s) in the file list window.
6. Using the Open dialog box, select the names of the desired .DDL
file(s) and the disk where they reside.
When the dialog is OKed, the path name of the .DDL directory and the
selected file names appear in their text boxes on the File Transfer
form.
7. On the File Transfer form, click the Transfer Now button.
Display Builder saves the contents of the selected set(s) if they are
open, then transfers the files.
8. Determine whether file control is an issue. Click the Lock button to
create a Lock (.LCK) file in the destination directory.
You can repeat transfers using the Send to Host option from the Definition
Manager File menu or the Send to Host button. Send to Host transfers the
contents of the set window with input focus after saving changes in any
editors that are open for writing to the set.
2.15 Closing Editors
Closing an editor stops it and closes its window.
Note: If unsaved changes exist when you attempt to close an editor, you
are prompted to save your work.
2.15.1 Closing the Current Editor
To close an editor using the Definition Manager menu bar, use the
following procedure:
1. Give input focus to the editor window to be closed.
2. From the Definition Manager menu bar, select File > Close.
To close an editor using the editor’s operations pop-up menu, use the
following procedure:
1. Right-click over the work area of the editor to be closed.
2. From the pop-up menu, select Close Editor.
Proprietary – See Copyright Page 51 Display Builder Basics
Display Builder User’s Guide
The following is an alternate procedure utilizing a key combination:
1. Give input focus to the editor window to be closed.
2. Press Ctrl+W.
Note: If no editor windows are open, using this key combination closes
the set window with input focus.
2.15.2 Closing All Editors
To close all open editors, from the Window menu, click Close All.
2.16 Closing Sets
Closing a Display Builder set closes its window.
Note: If unsaved changes exist in an associated editor when you attempt
to close a set, Display Builder prompts you to save the work before it
closes the set.
To close a set using the Definition Manager menu bar, use the following
procedure:
1. Give input focus to the set window to be closed.
2. From the Definition Manager menu bar, select File > Close.
To close a set using the set window’s operations pop-up menu, use the
following procedure:
1. Right-click in the set window to give it input focus and display the
operations pop-up menu.
2. From the pop-up menu, select the Close option.
2.17 Closing Display Builder
Exit Display Builder either by clicking the “X” in the upper right hand corner
of the title bar, or by selecting the File > Exit option from the menu bar.
Proprietary – See Copyright Page 52 Display Builder Basics
Display Builder User’s Guide
3. Using the Scratch Pad Editors
This chapter contains the procedures for defining and editing display
components using the Display Builder scratch pad editors.
3.1 Drawing Primitives
Primitives are defined by specifying a sequence of points. The extension
of the primitive in the scratch pad is controlled by the cursor and mouse
button actions. Primitives can be drawn directly onto any scratch pad.
• Clicking at the desired location provides the scratch pad anchor point.
• Dragging the cursor in any direction from the anchor point sizes the
primitive. The shape of the primitive outline (sometimes called the
“rubber-band model”) matches the type of primitive being drawn.
• Releasing the left mouse button defines:
− The extent of circles, rectangles, and ellipses
− The bounding circle of an arc
− The end of the first line segment for polylines and polygons
• Primitives can be edited by directly manipulating them on the scratch
pad, or via their respective Properties forms. To access the Properties
dialog boxes, use the following procedure:
1. Double-click on or inside of the primitive.
Or:
Right-click on or inside the primitive.
2. From the pop-up menu, select the Properties option for the primitive
to be edited.
3.1.1 Selecting a Drawing Tool
Drawing tools are selected by clicking their respective icons in the Draw
toolbar. When selected, the icon appears to be recessed. The desired
primitive can then be defined in (drawn onto) the picture or symbol scratch
pad.
Proprietary – See Copyright Page 53 Using the Scratch Pad Editors
Display Builder User’s Guide
3.1.2 Defining a Line
To define a line, use the following procedure:
1. From the Draw toolbar, select the Line icon .
2. Position the cursor on the scratch pad where you want the line to
begin.
3. Click to establish the anchor point.
4. Position the cursor at the desired end point.
It is not necessary to hold down the left mouse button while moving the
cursor.
5. Click again to define the end point.
The line appears with the attributes of the default Graphic Attribute
Bundle (GAB).
Handles are provided at the anchor point and end point of the newly
defined line. When the handles are visible, the line is currently selected
and it can be resized or otherwise edited. The line can be modified by
manipulating the handles, or by double-clicking on the line to call up the
Polyline Properties form and modify the line definition. For more
information about the behavior of the handles, see Table 1.
3.1.3 Defining a Polyline
A “polyline” is a series of connected straight-line segments. Each segment
can be of any length, and there can be as many connecting segments as
desired.
The first line segment in the polyline is defined by the anchor point and an
end point. This end point is automatically the start point of the next line
segment. The end point of the last line segment drawn is the close point of
the polyline.
To define a polyline, use the following procedure:
1. From the Draw toolbar, select the Polyline icon .
2. Position the cursor on the scratch pad where you want the polyline to
begin.
3. Click to establish the anchor point.
4. Position the cursor at the desired end point for the first line segment.
It is not necessary to hold down the left mouse button while moving the
cursor.
Proprietary – See Copyright Page 54 Using the Scratch Pad Editors
Display Builder User’s Guide
5. Click again to define the first end point.
6. Repeat steps 4 and 5 to define as many line segments as desired.
7. Right-click to define the last end point as the close point.
The polyline appears with the attributes of the default GAB.
Handles are provided at the anchor point, end points, and close point of
the newly defined polyline. When the handles are visible, the line is
currently selected and it can be resized or otherwise edited. You can
modify the polyline by manipulating the handles, or by double-clicking on
the line to call up the Polyline Properties form and modify the line
definition. For more information about the behavior of the handles, see
Table 1.
3.1.4 Defining a Polygon
To define a polygon, use the following procedure:
1. From the Draw toolbar, select the Polygon icon .
2. Position the cursor on the scratch pad where you want the polygon to
begin.
3. Click to establish the anchor point.
4. Position the cursor at the desired end point of the first side.
It is not necessary to hold down the left mouse button while moving the
cursor.
5. Click to define the end point of the first side.
6. Repeat steps 4 and 5 to define as many sides as desired.
7. After defining the next-to-the-last side of the polygon, right-click to
close the polygon.
The polygon appears with the attributes of the default GAB.
Handles are provided at the anchor point, end points, and close point of
the newly defined polygon. When the handles are visible, the line is
currently selected and it can be resized or otherwise edited. You can edit
the polygon by manipulating the handles, or by double-clicking in or on the
polygon to open the Polygon Properties form and modify the polygon
definition.
Proprietary – See Copyright Page 55 Using the Scratch Pad Editors
Display Builder User’s Guide
3.1.5 Defining a Rectangle
To define a rectangle, use the following procedure:
1. From the Draw toolbar, select the Rectangle icon .
2. Position the cursor on the scratch pad at the desired location.
3. Click and hold down the left mouse button to establish the anchor
point.
Note: Clicking and releasing the left mouse button places a rectangle
of the minimum size on the scratch pad, which can then be resized. By
holding down the left mouse button, it is possible to draw the rectangle
to the desired size.
4. Click and hold down the left mouse button, and drag the mouse in any
direction to draw the rectangle to the desired size.
5. Release the mouse button to define the close point.
The rectangle appears with the attributes of the default GAB.
Handles are provided at each corner and at the midpoint of each side of
the newly defined rectangle. When the handles are visible, the rectangle is
currently selected and it can be resized or otherwise edited. You can
modify the rectangle by manipulating the handles, or by double-clicking on
or in the rectangle to call up the Rectangle Properties form and modify the
rectangle definition. For more information about the behavior of the
handles, see Table 1.
3.1.6 Defining a Circle
To define a circle, use the following procedure:
1. From the Draw toolbar, select the Circle icon .
2. Position the cursor on the scratch pad at the desired location.
3. Click and hold down the left mouse button to establish the anchor
point.
Note: Clicking and releasing the left mouse button places a circle of
the minimum size on the scratch pad, which can then be resized. By
holding down the left mouse button, it is possible to draw the circle to
the desired size.
4. Click and hold down the left mouse button, and drag the mouse in any
direction to draw the circle to the desired size.
5. Release the mouse button to define the close point.
Proprietary – See Copyright Page 56 Using the Scratch Pad Editors
Display Builder User’s Guide
The circle appears with the attributes of the default GAB.
Four handles are provided, evenly spaced around the circumference of
the newly defined circle. When the handles are visible, the circle is
currently selected and it can be resized or otherwise edited. You can
modify the circle by manipulating the handles, or by double-clicking on or
in the circle to call up the Circle Properties form and modify the circle
definition. For more information about the behavior of the handles, see
Table 1.
3.1.7 Defining an Ellipse
To define an ellipse, use the following procedure:
1. From the Draw toolbar, select the Ellipse icon .
2. Position the cursor on the scratch pad at the desired location.
3. Click and hold down the left mouse button to establish the anchor
point.
Note: Clicking and releasing the left mouse button places an ellipse of
the minimum size on the scratch pad, which can then be resized. By
holding down the left mouse button, it is possible to draw the ellipse to
the desired size.
4. Click and hold down the left mouse button, and drag the mouse in any
direction to define the size and shape of the ellipse.
5. Release the mouse button to define the close point.
The ellipse appears on the scratch pad with the attributes of the default
GAB.
When selected, the ellipse appears within a bounding rectangle. Handles
are provided at each corner of the bounding rectangle and at the midpoint
of each side of the newly defined ellipse. When the handles are visible,
the ellipse is currently selected and it can be resized or otherwise edited.
You can modify the ellipse by manipulating the handles, or by double-
clicking on or in the ellipse to call up the Ellipse Properties form and
modify the ellipse definition. For more information about the behavior of
the handles, see Table 1.
3.1.8 Defining an Arc
An “arc” is a segment of a circle. An arc is defined by three factors:
• The circumference of a bounding circle, defined like all other circles.
• The place on the circumference where the arc begins, called the “angle
anchor point” (A). From this point, the leading edge of the arc angle
Proprietary – See Copyright Page 57 Using the Scratch Pad Editors
Display Builder User’s Guide
sweeps around the circumference of the bounding circle in a counter-
clockwise direction.
• The angular attribute of the arc, called the “extent” (E).
To define an arc, use the following procedure:
1. From the Draw toolbar, click the Arc icon .
2. Position the cursor on the scratch pad where you want the anchor
point (A) of the bounding circle.
3. Click and hold down the left mouse button to establish the anchor
point.
4. Drag the cursor to the initial extent of the arc’s radius.
5. Release the mouse button.
The arc appears on the scratch pad with the attributes of the default
GAB.
When selected, the arc appears within a bounding circle. Four handles are
provided, evenly spaced around the circumference of the newly defined
arc’s bounding circle.
Figure 8: Scratch Pad with Arc Selected and Handles Visible
Two other handles are provided on the arc definition, for altering the arc
angle (sweep) and the vertical attitude of the arc relative to the bounding
circle’s center.
Proprietary – See Copyright Page 58 Using the Scratch Pad Editors
Display Builder User’s Guide
Positioning the cursor over one of the two remaining handles and allowing
it to hover for a few moments causes either an E (Extent) or an A
(Attitude) to appear, depending on the handle.
To modify the arc angle, use the following procedure:
1. Position the cursor over the extent handle marked “E”.
2. Click and hold down the left mouse button, and drag the handle to
indicate the extent of the arc angle.
3. Release the mouse button.
The extent of the arc angle is drawn on the scratch pad.
To modify the arc attitude, use the following procedure:
1. Position the cursor over the attitude handle marked “A”.
2. Click and hold down the left mouse button, and drag the A to pivot the
arc around its center.
3. Release the mouse button.
The arc appears on the scratch pad in the desired vertical or horizontal
attitude.
You can double-click within or on the arc, to call up the Arc Properties
form and modify the arc definition.
3.1.9 Resizing a Primitive
For rectangles and ellipses, it is a simple matter of expanding the
primitive’s bounding rectangle. Circles are resized by changing the radius.
For polylines and polygons, the length of each line segment or side can be
modified independently, and line segments and sides can be removed
from the primitive. For arcs, both the size of the bounding circle and the
extent (number of degrees of arc) can be modified.
All primitives can be resized by direct manipulation in the scratch pad.
This is accomplished by dragging the primitive’s handles.
Primitives can also be resized using their Properties forms (for information
about using the Properties forms to set the attributes of primitives, see
Placement Properties Forms).
3.1.9.1 Resizing Directly
To resize a primitive by direct manipulation in the scratch pad, use the
following procedure:
1. Select the primitive to reveal the handles.
Proprietary – See Copyright Page 59 Using the Scratch Pad Editors
Display Builder User’s Guide
2. Position the cursor on one of the primitive’s handles, depending on
how you want to resize the primitive (see Table 1).
3. Click and hold down the left mouse button, and drag the cursor in any
direction to resize the primitive, according to the rules in Table 1.
A “ghost” of the object moves with the cursor, while the object itself
remains at the original size or position.
4. When the primitive is the desired size, release the mouse button.
The primitive “snaps” to its new size.
Table 1: Editing and Resizing Rules for Primitives
Primitive Handle Result
Rectangle Side Moves that side only, and stretches or
contracts the rectangle in only one
dimension
Corner Moves the corner, and stretches or
contracts the rectangle in two
dimensions
Circle Any Stretches or contracts the
circumference of the circle
Ellipse Side Moves that side only, and stretches or
contracts the ellipse in only one
dimension
Corner Moves the corner, and stretches or
contracts the ellipse in two dimensions
Arc Radius Any Stretches or contracts only the radius
of the bounding circle
Arc Anchor Anchor Point A Rotates the arc around the center of
the bounding circle
Arc Extent Extension Point E Adjusts the arc angle
Polyline Either End Point Moves either the begin point of the first
line segment, or the end point of the
last line segment, respectively
Any Other Moves the end point and begin point,
respectively, of adjoining line segments
Polygon Any Moves the begin and end point,
respectively, of adjoining sides of the
polygon
Proprietary – See Copyright Page 60 Using the Scratch Pad Editors
Display Builder User’s Guide
3.1.9.2 Resizing Using the Properties Form
To resize a primitive using its Properties form, use the following
procedure:
1. Open the primitive’s Properties form by:
− Double-clicking the primitive
Or:
− Right-clicking the primitive, and selecting the object’s Properties
option from the pop-up menu
2. When the Properties form opens, the Definition tab is selected.
The resize attributes appear on the Definition tab. These attributes
differ depending on the type of primitive being modified (for information
about the usage of definition dialog boxes for primitives, see Primitive
Placement Properties).
3. Make the desired changes.
4. Click OK to save the changes and close the form.
The primitive snaps to its new size.
3.1.10 Defining Static Text
To define static text, use the following procedure:
1. From the Draw toolbar, click the Text icon . Or, from the Draw
menu, point to Tools, and select Text.
2. Position the cursor on the scratch pad at the desired location, and click
to activate Text Entry mode.
A blinking cursor (I) opens on the scratch pad.
3. Enter the desired text, including hard returns.
4. Exit Text Entry mode by clicking on the scratch pad outside the text
box.
The text appears with the attributes of the default GAB, and with a
bounding rectangle to show that it is currently selected in the scratch
pad.
Static text can be used to show the value of proxies. For example,
assuming the enabled data server is named “EMS1”, the static text string
“The Enabled Host is %%enabled%%” is displayed at run time as
“The Enabled Host is EMS1”.
Proprietary – See Copyright Page 61 Using the Scratch Pad Editors
Display Builder User’s Guide
Note that the proxy string is resolved when the display containing the
static text is initially called up. If the value of the proxy changes, the
display must be refreshed in order for the static text to reflect the updated
value of the embedded proxy.
3.1.10.1 Editing Static Text
To edit static text, use one of the following procedures:
Method 1
1. From the Draw toolbar, click the Text icon .
2. Click on the text to reactivate Text Entry mode.
3. Edit the text.
4. Exit Text Entry mode by clicking on the scratch pad outside the text
box.
Method 2
• Right-click on the text, and select Edit Static Text from the pop-up
menu.
You can also double-click on the text and modify the text using the Static
Text Properties form.
3.2 Defining Symbols
This section describes the tasks associated with defining a symbol using
the Symbol scratch pad editor. Symbols are created by defining and
configuring their component primitives, excluding text, in the Symbol
scratch pad.
To define a symbol, use the following procedure:
1. Select the element set window.
The menu bar is reconfigured for element editing.
2. To open the New Name dialog box, from the Definition Manager menu
bar, select New > Symbol.
3. In the text box, enter a name for the symbol.
4. Click OK to save the name and close the New Name dialog box.
The symbol is now named, and its name appears in the title bar of the
Symbol Editor.
5. Draw the symbol’s primitives in the scratch pad (see Drawing
Primitives).
Proprietary – See Copyright Page 62 Using the Scratch Pad Editors
Display Builder User’s Guide
6. Set the graphic attributes of the primitive(s) using the Attachments tab
on the Properties form (see Attachments Tab).
7. Right-click on the symbol, and select the Save Data option from the
pop-up menu.
3.3 Defining Pictures
This section describes the tasks associated with defining a picture using
the Picture Editor scratch pad.
To define a picture, use the following procedure:
1. Give the element set window input focus.
2. To open the New Name dialog box, from the Definition Manager menu
bar, select New > Picture.
3. In the text box, enter a name for the picture.
4. Click OK to save the name and close the New Name dialog box.
The Picture Editor scratch pad opens with the name of the new picture
in the title bar.
5. To open the Picture Definition form, from the Definition Manager menu
bar, select Picture > Picture Properties.
6. On each tab of the Picture Definition form, provide values for all
parameters as required.
7. Click OK to save your changes and close the form.
For more information about completing each tab, see the following
sections.
Proprietary – See Copyright Page 63 Using the Scratch Pad Editors
Display Builder User’s Guide
3.3.1 Picture Definition Window – Picture Tab
Pictures are defined using the Picture tab on the Picture Definition
window.
Figure 9: Picture Tab
The following fields are included on the Picture tab:
• Name: The name that was specified in the New Name dialog box when
the picture was created.
• Database: Enter a database name. If the picture is used to transmit
data, this must be the record’s database. Leave this field blank if the
picture does not reference data.
Note: If the picture contains no formatted fields linked to record data,
then only a database and picture name are required.
• Application: The application refers to a secondary application — not
to the main application for the layer this picture is part of. Enter an
application name only when the application context restricts data
display. Leave this field blank for unrestricted picture usage.
• Comment: Enter a description of the picture’s usage.
Proprietary – See Copyright Page 64 Using the Scratch Pad Editors
Display Builder User’s Guide
• Records: Enter the name(s) of the record(s) that defines the location
of the data. The extra record text boxes are used for multi-dimensional
(two- or three-dimensional) displays.
• Declutter (%): Check this box to allow entry of declutter values.
• Low: Specify the zoom level at which the picture must disappear. A
value of 10 represents 10 percent of normal.
• High: Specify the zoom level at which the picture must disappear as
the image shrinks.
• Set Picture Size: Specify whether the picture size is automatically set
by Display Builder or manually set.
• Automatic: Click this button for automatic sizing.
• Manual: Click this button to allow manual entry of picture dimensions:
− Width: Specify the width in pixels.
− Height: Specify the height in pixels.
3.3.2 The Attachment and Permission Test Tabs
The Attachments and Permission Test tabs are shared by the Display,
Layer, and Picture Property Definition forms (see Attachments Tab and
Permission Test Tab).
3.3.3 Primitives in Pictures
Primitives and text can be drawn in the Picture scratch pad (see Drawing
Primitives). Primitives can be drawn at any time while defining a picture.
3.3.4 Placing Elements in Pictures
Symbols and conditional text can be placed in a picture (see the section
Placing an Element).
3.3.5 Defining Formatted Fields
To define a formatted field, use the following procedure:
1. From the Draw toolbar, click the Formatted Field icon .
2. Click on the scratch pad at the desired location.
The Formatted Field Properties window appears.
3. Provide values for all parameters, as required on each tab of the
Formatted Field Properties form.
Proprietary – See Copyright Page 65 Using the Scratch Pad Editors
Display Builder User’s Guide
4. Click OK to save your changes and close the form.
The formatted field appears in the scratch pad, with the defined
number of placeholder characters, and with the graphic attributes of
the default shared GAB. The formatted field is bounded by a shaded
rectangle to show that it is currently selected in the scratch pad.
For more information about completing each tab, see the following
sections.
3.3.6 Formatted Field Properties Definition Tab
Formatted field definition begins on the Definition tab on the Formatted
Field form.
Figure 10: Formatted Field Definition Tab
Proprietary – See Copyright Page 66 Using the Scratch Pad Editors
Display Builder User’s Guide
The following are included on the Definition tab:
• Justify: Select a radio button to indicate the alignment of data on the
screen: left, centered, or right. Numeric values are right-justified by
default; all other values are left-justified.
• Field Name and Indirect Record Links: Specify the field name and
any indirect pointer field names.
Note: Whenever record linkages/indirect pointers are specified to
access data in records other than the picture record, these pointers
must be specified in a sequence that proceeds from the record
instance defined by the formatted field and “points” upward/outward
into the target database structure. This linkage sequence must match
the “upward” linkage of the records specified in the target database
hierarchy.
Note: By placing a “$” or “ _ _ ” (two underscores) in the Field Name
text box, e-terrabrowser displays the subscript value of the record
instance; however, dollar-sign and underscore usage cannot be mixed.
• Display Builder Character: Enter the alphanumeric character that is
used to represent the formatted field in the scratch pad. The font of the
chosen character determines the width of the data displayed and the
entry widget of an enterable field.
• Type: Select the data type to be output, such as character, integer, or
text pair. The Text Pair and Time/Date options require additional detail;
see their descriptions below.
• Factor: The format factor edit box becomes active only when the
Exponent, Integer, or Real format type is selected. The default value
is 1, but you can specify any real number with precision less than 7.
The following two operations are placed at run time:
− Database values are multiplied by a format factor before being
displayed.
− Entered data is divided by a format factor before being stored in the
database.
• Size: Specify the total number of alphanumeric characters that are
displayed.
• Position: Specify the position in the alphanumeric string from which
character painting starts. This attribute specifies digits to the right of
the decimal in a real field.
Proprietary – See Copyright Page 67 Using the Scratch Pad Editors
Display Builder User’s Guide
The display options for formatted fields are as follows:
• Enterable: Select this check box to indicate that the field is editable in
the online display. e-terrabrowser creates a text entry box when an
enterable formatted field is selected for editing.
Important: The background color of the text entry box is determined
by the value of the background field in the formatted field’s attached
GAB. Therefore, attach a GAB whose background color provides
adequate contrast.
• Uppercase Data Entry: Select this check box to specify that
e-terrabrowser converts text entry in this field to uppercase. (This
check box can be modified when the Enterable check box is selected.)
• Hidden Data Entry: Select this check box to specify that
e-terrabrowser does not display characters typed into this field. This
option is typically used for fields that contain passwords, where the
data entry is encrypted. (This check box can be modified when the
Enterable check box is selected.)
− Do Not Display Field: Select this check box to suppress data
output when the picture is displayed. This feature is used to create
“password-like” fields. (This check box can be modified when the
Enterable check box is selected.)
− Do Not Refresh Field: Select this check box to suppress data
refresh for this field.
• Refresh Indirect Chain: Select this check box to enable indirect
pointer chain refresh.
• Text Pair: These field types are used to indicate True/False conditions
by displaying text strings or bitmaps that show the sign value of a field,
the setting of a boolean field, or the setting of a MASK field. The Text
Pair format can accompany a numeric field format type, such as Real.
When a text pair accompanies another field type, the text pair always
appears to the left of the field value on the display.
When the data type is Time/Date, the following Time/Date formatting
options are available:
• None: Select this option if no text pair association exists for the type
selected.
• Sign: Select this option to create a text pair based on whether the field
value is positive or negative (zeroes are considered positive values).
The text pairs specified as text pair values are painted depending on
the value of the data (for details about specifying text pairs, see Text
Pair Values below).
Proprietary – See Copyright Page 68 Using the Scratch Pad Editors
Display Builder User’s Guide
• Boolean: Select this option to enable the usage of a boolean field
(1 or 0).
• Text Pair Values: You can specify a pair of True/False indicators to
override the default T/F indicators, as follows:
− Positive/True: Enter a “positive” status text string up to 16
characters in length. Alternatively, select the Bitmap flag, and then
select the bitmap arrow indicator to show direction or flow, based
on the sign of the field.
− Negative/False: Enter a “negative” status text string up to 16
characters in length. Alternatively, select the Bitmap flag, and then
select the bitmap arrow indicator to show direction or flow, based
on the sign of the field.
Time/Date formatting options are as follows:
• AM: AM or PM indicator.
• Date: Date in dd-mmm-yyyy format.
• Date, Time, and Zone: The date in dd-mmm-yyyy format, with time in
hc:mm:sc format and time zone format.
• Day: Three-character weekday identifier, such as MON for Monday.
• DD: Two-character numeric indicator of the day of the month.
• DST: Daylight Savings Time indicator, as specified by the DSTCHAR
global field in the TIMEDATE database.
• HC: Two-character indicator of the hour 00 to 24.
• HM: Two-character indicator of the hour 01 to 23.
• Holiday: Name of the current holiday defined in the TIMEDATE
database.
• HR: Two-character indicator of the hour 01 to 12.
• MLTM: 24-hour time designation with minutes, such as 2356.
• MM: Two-character indicator of the month.
• MN: Two-character indicator of the minute.
• MON: Three-character month identifier, such as AUG for August.
• Month: Month in full-character format, such as AUGUST.
• SC: Two-character numeric indicator of the second.
Proprietary – See Copyright Page 69 Using the Scratch Pad Editors
Display Builder User’s Guide
• Time and Date: The date in dd-mmm-yyyy format, with time in
hc:mm:sc format.
• TMZ: Time zone format; only the local time zone is displayed.
• VMS: DEC VMS time in hc:mm:sc format.
• Weekday: Day of the week in full-character format, such as
THURSDAY.
• YY: Decade format for the year, such as 96.
• YYYY: Millennium format for the year, such as 1996.
3.3.7 Specifying the Graphic Attributes of a Formatted Field
To specify the graphic attributes of a formatted field, use the following
procedure:
1. With the desired formatted field in view on the scratch pad, give input
focus to the element set window in which the shared GAB definitions
reside.
Make sure the formatted field is still visible.
2. To display the directory list of available GABs, select the Shared GAB
tab.
3. Drag the desired shared GAB selection over the formatted field.
4. Release the mouse button.
The new attribute is attached and the old attachment is deleted.
An alternate procedure is as follows:
1. Open the Formatted Field Properties form.
2. Select the Attachments tab, and attach the desired shared GAB (see
Attachments Tab).
3.3.8 The Attachment and Declutter Tabs
The Attachments tab is shared by the Display, Layer, and Picture Property
Definition forms. The Declutter tab is shared by the Formatted Field, Static
Text, Symbol Placement, and CT Placement Properties forms, as well as
the Primitive Properties forms (see Attachments Tab and Declutter Tab).
Proprietary – See Copyright Page 70 Using the Scratch Pad Editors
Display Builder User’s Guide
3.3.9 Specifying a Scale Factor on a Picture Object (Primitive or
Symbol)
To specify a scale factor, use the following procedure:
1. In the Picture scratch pad, double-click the primitive or symbol to be
scaled.
2. Use the Scale tab on the Properties form to specify the scaling
parameters (see Scale Tab).
3. Click OK to save the changes and close the Properties form.
The selected primitive or symbol is now defined to grow and shrink in
the direction(s) specified, depending on the values in the scaling field.
3.3.10 Specifying a Shift Factor on a Picture Object
Shift factors are applied to picture objects by attaching GEometry
Modifiers (GEMs) (see the sections Shift Factors and Defining GEMs).
3.3.11 Defining Placement Declutter
Placed elements, drawn primitives, and defined formatted fields can be
defined in the Picture Editor with individual declutter attributes. This
attribute is defined using the Declutter tab on the Properties form (see
Declutter Tab).
3.3.12 Attaching Elements in Pictures
The following elements can be attached as local or overall attachments in
the Picture Editor: keysets, CAMs, GEMs, menus, and pictures.
See Making Attachments to Placed Objects, Making Overall Attachments,
and Attachments Tab.
3.3.13 Defining Pop-Ups
Two special attributes of pop-ups can be defined. These properties define
the following:
• The mode of the viewport the pop-up opens in. This can be modal or
modeless. The default is modeless.
• The location of the pop-up. The pop-up can open at a fixed location on
the parent picture (a fixed pop-up) or at the current cursor location (a
floating pop-up). The default is a fixed pop-up.
To define pop-up attributes for pop-up pictures defined at the picture level,
use the following procedure:
Proprietary – See Copyright Page 71 Using the Scratch Pad Editors
Display Builder User’s Guide
1. With the parent picture in the active scratch pad, select
Picture > Show All Pop-Up Pictures.
Or:
Right-click on the Picture scratch pad, and select Show Pop-Up
Pictures from the menu for pop-up pictures defined at the picture level.
2. Double-click the desired pop-up in the Picture Editor scratch pad to
display the Pop-Up Picture Properties form.
Or:
Right-click on the scratch pad, and select Pop-Up Picture Properties
from the menu.
3. In the Pop-Up Type option group, specify the mode for the pop-up
viewport.
4. Click OK to save the changes and close the form.
To define pop-up attributes for pop-up pictures defined at the display level,
use the following procedure:
1. With the display containing the primitive with the pop-up picture
attachment in the active scratch pad, first select the primitive, then
right-click and select Show All Pop-Up Pictures.
2. Double-click the desired pop-up in the scratch pad, to display the
Pop-Up Picture Properties form.
3. In the Pop-Up Type option group, specify the mode for the pop-up
viewport.
4. Click OK to save the changes and close the form.
See Pop-Up Picture Properties.
Proprietary – See Copyright Page 72 Using the Scratch Pad Editors
Display Builder User’s Guide
3.3.14 Pop-Up Picture Properties
Pop-ups are defined from the Pop-Up Picture Properties form.
Figure 11: Pop-Up Picture Properties Form
The following are included on the Pop-Up Picture Properties form:
• Origin: Set the X and Y coordinates for the upper left corner of the
pop-up.
• Modeless: Select the modeless type for a movable pop-up.
• Modal: Select the modal type for a non-movable, non-occludable
pop-up. Modal pop-ups disallow interaction with any e-terrabrowser
features other than the pop-up itself.
See the section Placing an Element.
3.3.15 Specifying Picture Attachments and Permission Tests
The Permission Test tab on the Display Definition form is shared by the
Display, Layer, and Picture Property Definition forms (see Permission Test
Tab).
Proprietary – See Copyright Page 73 Using the Scratch Pad Editors
Display Builder User’s Guide
3.4 Defining Nested Pictures
Nested pictures allow display designers to group pictures within pictures
when building one-line displays.
If used, this feature can make display design and maintenance easier by
reducing the number of picture placements required to be placed, linked,
and point-to-point tested on a given display.
3.4.1 About Nested Pictures
Display Builder can create nested pictures, which represent a complete
logical device. This feature prevents you from having to place a number of
separate pictures and separately link each picture to data in order to
represent one logical device. The process of placing each individual
picture and linking it to data is time-consuming and error-prone.
The example below shows how a display designer has to place seven
separate picture placements and link each placement with a composite
key in order to bind these two logical devices to their data.
Figure 12: Example of Many Individual Pictures to Represent Devices
Using nested pictures, you can create pictures that represent complete
logical devices. A partial composite key is specified for each picture part in
the picture editor.
Nested pictures become reusable templates that can be placed on
displays any number of times, the same way pictures are placed.
Figure 13: Example of Nested Pictures
Proprietary – See Copyright Page 74 Using the Scratch Pad Editors
Display Builder User’s Guide
When nested pictures are placed on a display, only one composite key is
needed to bind the entire logical device to its data. The reduced number of
bindings results in fewer errors and shorter point-to-point testing time.
Figure 14: Example of Nested Picture Placements
3.4.2 Nested Pictures, Pictures within a Picture
Nested pictures are created in the regular picture editor.
To create a nested picture:
1. Create a new nested picture from the New > Nested Picture menu.
2. Define the picture’s Database and Record properties.
3. Drag and drop previously defined pictures onto the new nested picture
that represents a logical device.
In the example below, a nested picture is created to represent a
breaker with two switches.
To add a nested picture to a display:
1. Create a partial composite key for each of the picture placements
inside the nested picture.
The partial composite key is specified in the Picture Placement
Properties dialog box.
2. Select the Partial Composite Key check box to specify that this
composite key should be appended to a display-level composite key to
create the complete key.
Proprietary – See Copyright Page 75 Using the Scratch Pad Editors
Display Builder User’s Guide
3. Define the lowest-level composite key for the picture placement.
In this case, the picture represents a breaker and needs to be linked to
the POINT record with the key value BKR.
4. Repeat this for each picture placement within the nested picture.
Note that partial composite keys can be specified on primitives, such
as line segments, which need data binding for Cam evaluations, etc.
The nested picture created above can now be placed on a display by
dragging and dropping the picture onto a simple layer in the Display
Editor.
To distinguish nested pictures and regular pictures, a nested picture
icon appears next to the nested picture name on the Element Set’s
Pictures tab.
After a nested picture has been placed on the display, it must be linked
to data by completing its composite key.
5. Double-click the nested picture to bring up the Picture Placement
Properties dialog box.
Proprietary – See Copyright Page 76 Using the Scratch Pad Editors
Display Builder User’s Guide
6. Open the Define Link tab.
7. Select the Partial Composite Key check box to link the nested picture.
This indicates that the composite key should be combined with the
partial composite keys defined in the nested picture definition. The
figure below shows the partial composite key definition needed to
complete the binding of a picture representing a breaker with two
switches. Note that only the upper-level record keys have been
specified, down to the DEVICE record.
3.4.3 Limitations of Nested Pictures
Nested pictures can only contain one level of picture placements.
Therefore, you cannot place nested pictures within a nested picture.
The Display Editor prevents you from dragging a nested picture onto
another nested picture.
Proprietary – See Copyright Page 77 Using the Scratch Pad Editors
Display Builder User’s Guide
3.5 Defining Picgroups
The general steps for defining picgroups are as follows:
• A new picgroup is created and named.
• Pictures and symbols are placed.
Primitives can be drawn on the Picgroup Editor scratch pad if desired,
but placed pictures and symbols are easier to maintain.
• Attachments are made for interactive and graphic attribute control.
• Special picture linking and object locking are specified if required.
To define a new picgroup, use the following procedure:
1. To display the New Name dialog box, from the Definition Manager
menu bar, select New > Picgroup.
2. In the text box, enter a name for the new picgroup.
3. Click OK to save the name and close the New Name dialog box.
The picgroup is now named, and its name appears in the title bar of
the Picgroup Editor.
Note: Picgroups can also be created and named using the Picgroup
from Picture option that is available on the Tabular Definition tab on the
Tabular Layer Properties form.
4. To open the Picgroup Definition form, from the Definition Manager
menu bar, select Picgroup > Picgroup Properties.
5. Provide values for all parameters, as required on each tab of the
Formatted Field form.
6. Click OK to save your changes and close the form.
Proprietary – See Copyright Page 78 Using the Scratch Pad Editors
Display Builder User’s Guide
3.5.1 Picgroup Tab
Picgroups are defined on the Picgroup tab on the Picgroup Definition form.
Figure 15: Picgroup Tab
The following are included on the Picgroup tab:
• Name: The name that was specified in the New Name dialog box when
the picgroup was created.
• Primary Picture: If one or more pictures have been placed, select the
picture whose record drives the data display.
• Interactive Attributes: DICE operations are enabled using the
following check boxes:
− Deletable: Check this box to enable deletion of the data displayed
by the primary picture.
− Insertable: Check this box to make the data displayed by the
primary picture insertable.
− Copyable: Check this box to make the data displayed by the
primary picture copyable.
Proprietary – See Copyright Page 79 Using the Scratch Pad Editors
Display Builder User’s Guide
− Confirm Delete: Check this box to enable the confirm delete
prompt.
• Margins: The margins of the picgroup can be extended beyond the
maximum picture or symbol extent by using the margins fields:
− Bottom: Specify a value in excess of the Y extent.
− Right: Specify a value in excess of the X extent.
• Set Picgroup Size: Specify whether the picgroup size is automatically
set by Display Builder or manually set:
− Automatic: Click this button to make sizing automatic. Use this
method for best results.
− Manual: Click this button to enable manual entry of picgroup
dimensions:
∗ Width: Specify the width in pixels.
∗ Height: Specify the height in pixels.
3.5.2 Attachments Tab
The Attachments tab is used by the Display, Layer, Picture, and Picgroup
Property Definition forms (see Attachments Tab).
3.5.3 Adding Primitives to Picgroups
All types of primitives, including text, can be drawn in the Picgroup scratch
pad. Note the available buttons on the Picgroup Editor control panel. The
primitives can be drawn at any time during the process of defining a
picgroup.
3.5.4 Placing Elements in Picgroups
Defined symbols and pictures can be placed in a picgroup.
Note: If the picgroup contains a multi-dimensional picture (i.e., a picture
with a multi-dimensional record definition), that picture must be designated
the primary picture.
For details about placing elements in scratch pads, see the section
Placing an Element. Dragging and dropping elements from the ESET onto
the picgroup scratch pad is not supported.
3.5.5 Attaching Elements in Picgroups
The Picgroup Editor provides for both local and overall attachments (see
Making Attachments to Placed Objects).
Proprietary – See Copyright Page 80 Using the Scratch Pad Editors
Display Builder User’s Guide
3.5.6 Specifying a Secondary Picture Driving Field
When a picture with a secondary record co-exists with a primary picture
on the Picgroup Editor scratch pad, the secondary picture’s driving field
must be specified. This driving field is a subscript field in the primary
record or driving record. e-terrabrowser uses the driving field to find the
secondary record subscript. This means that there is a second picture in
the picgroup with a different record than the primary picture’s (for more
information, see the sections Picgroups and Showing Data from Different
Databases).
To specify the secondary picture’s driving field, use the following
procedure:
1. In the scratch pad, double-click the secondary picture to bring up the
Picture Placement Properties window.
2. In the Subscript Field text box, specify the secondary picture driving
field using the field_record convention.
3. Click OK to save the changes and close the form.
Proprietary – See Copyright Page 81 Using the Scratch Pad Editors
Display Builder User’s Guide
3.5.7 Locking Picgroup Objects
To lock picgroup objects so they do not move in the display viewport, use
the following procedure:
1. Double-click the object(s) to be locked.
2. Select the Lock tab.
3. Select the toggles for locking the object(s) in the X or Y direction, or
both.
4. Click OK to save the changes and close the Properties form.
3.6 Defining Displays
Displays are created using the following general steps:
• The supporting element and display sets are created if they do not
already exist.
• The components of the displays (elements or picgroups) are defined.
• An empty display is generated and named.
• Display attributes are defined.
• The display is constructed according to the layers required and the
data structure(s) to which the display is designed to be linked.
• The display is saved to its display set.
• The element set(s) and displays are compiled and linked to become
available for online access.
To define a display, use the following procedure:
1. With the input focus on the display set window, from the Definition
Manager menu bar, select New > Display to open the New Name
dialog box.
2. In the text box, enter a name for the display name, and select either
the Simple or the Tabular layer option.
3. Click OK to save the name and close the New Name dialog box.
The display name is now specified and the editor is opened to the
definition. Any or all attributes of the display can now be defined.
4. To open the Display Definition form, from the Definition Manager menu
bar, select Display > Display Properties.
Proprietary – See Copyright Page 82 Using the Scratch Pad Editors
Display Builder User’s Guide
5. Provide values for all parameters, as required on each tab of the
Display Definition form.
6. Click OK to save your changes and close the form.
For more information about completing each tab, see the following
sections.
3.6.1.1 Display Tab
Display definition begins on the Display tab on the Display Definition form.
Figure 16: Display Tab
The following are included on the Display tab:
• Name: The name that specifies when the display was created appears
for informational purposes.
• Title: The name that appears in the viewport title bar when the display
is called up. Proxies such as %DISAPP% for the displaying application
name can be inserted in this text string.
• Call-Up Command: If e-terrabrowser commands are required to be
issued when the display is accessed, specify one or more display call-
up commands. Separate commands with semicolons (;).
• Call-Down Command: If e-terrabrowser commands are required to
be issued when the display is closed, specify one or more display
call-down commands. Separate commands with semicolons (;).
Proprietary – See Copyright Page 83 Using the Scratch Pad Editors
Display Builder User’s Guide
• Scale to Fit: The Display Definition dialog box provides Scale to Fit
options, which are used in e-terrabrowser to better size displays when
the DISPLAY/FIT feature is enabled. The options are as follows:
− Fit in XY
− Fit in X Only
− Fit Either XY or X Based on Aspect Ratio
• Refresh Rate: Specify the interval between data updates in seconds.
This value is usually in the range of one to two seconds. The default
value is zero. If a value is not specified, the display does not
periodically refresh.
• Default Zoom Factor (%): Specify the zoomed aspect of the display.
100 is normal size, 200 is twice normal size.
3.6.1.2 Applications Tab
The Applications tab is used to specify and edit the application list for the
display.
In Display Builder 5.6, a new Background Color column has been added in
the List box on the Application tab of the Display Definition dialog box. You
can add multiple applications and corresponding background colors to the
list.
Figure 17: Applications Tab
Proprietary – See Copyright Page 84 Using the Scratch Pad Editors
Display Builder User’s Guide
A default color (the currently displayed background color) is set for each of
the newly added applications on the list.
The following are included on the Applications tab:
• Edit Name: Click Edit Name to enable editing for the highlighted
application.
• Edit Color: Click this button to show the color selection list for the
highlighted application.
• Add: Click Add to enable the Application list box for entry. Enter an
owning application name, and click anywhere on the form to exit Entry
mode, or click Add again to add another application.
• Delete: Click Delete to delete the highlighted application.
By clicking the Edit Color button, or by double-clicking on the
Background Color list item for the application, the Color Selection list
appears, as shown in Figure 18.
Figure 18: Display Definition Dialog Box with Color Selection List
Proprietary – See Copyright Page 85 Using the Scratch Pad Editors
Display Builder User’s Guide
3.6.1.3 Viewport Tab
Figure 19: Viewport Tab
The following available options are included on the Viewport tab:
• Always on Top: Select this option to specify whether other windows
are allowed in front of this display.
Proprietary – See Copyright Page 86 Using the Scratch Pad Editors
Display Builder User’s Guide
3.6.1.4 Menus Tab
The Menus tab is used to specify the user-defined menus that appear in
the menu bar when the display is called up in the viewport. Menus are
identified by menu bar label, the name of the menu as created, and the
element set to which the menu belongs.
Figure 20: Menus Tab
Note: The e-terrabrowser user can define other menus for the viewport
using a resource file.
The following are included on the Menus tab:
• No Default Menu Bar Menus: Select this check box to disable the
creation of the menu bar and toolbar.
• Application: If the menu is pertinent to only one application, enter the
application name in the text box. When the compiled version of the
display appears on the console, the menu only appears in the menu
bar of the specified application. If Application is left blank, the menu
can be shared among all the applications defined for the display.
• Edit Label: The menu label that appears on the menu bar. The menu
bar label is set when a menu is added, and it can be edited by clicking
Edit Label.
Proprietary – See Copyright Page 87 Using the Scratch Pad Editors
Display Builder User’s Guide
• Add: Click Add to open the Add Attachment dialog box. A list of
available menus is displayed (see Using the Add Attachment Dialog
Box).
• Sequencing Arrow Buttons: Use these buttons to modify the
sequence of the menus in the menu bar.
3.6.1.5 Specifying Permission Tests
The Permission Test tab on the Display Definition form is shared by the
Display, Layer, and Picture Property Definition forms (see Permission Test
Tab).
3.6.1.6 Background Image Tab
The Background Image tab is used to specify an image to appear as a
backdrop for the display in lieu of or in addition to a background color.
Figure 21: Background Image Tab
Note: Displays that reference external image files should not incur
noticeable performance degradation for display call-up, scrolling, or
zooming once these image files have been downloaded and cached.
Displays that contain compiled-in image files have a larger file size and
take longer to call up.
Proprietary – See Copyright Page 88 Using the Scratch Pad Editors
Display Builder User’s Guide
The following are included on the Background Image tab:
• Apply Background Image: Select this check box to enable the
remaining parameters.
• Image Scaling: Select the Image Scaling options:
− None: Places the image in the upper left of the display and does
not scale the image.
− Background: Stretches the image to fill the display size.
− View: Stretches the image to fill the display size, and keeps the
image in place when the display is panned up and down or side to
side.
− Tile: Places the image in the upper left of the display, and repeats
the image from left to right and top to bottom to fill the display.
− Center: Places the image in the center of the display without
scaling the image.
• Image Folder: The image directory set on the Options tab on the
Options form (View > Options) is displayed for informational purposes.
• Note: The image path is not saved as part of the display. Display
Builder uses the e-terrabrowser Image Directory setting in the Option
dialog box to locate the image files. At run time, e-terrabrowser
requires the image path to be specified in the "<images>" section of
the webfg_config.xml file in order to give the e-terrabrowser client
access to the image files that are used on a given display (see the
section Options Tab and the e-terrabrowser Software Installation and
Maintenance Guide). In the Options dialog box on the Options tab, you
have the option of embedding images when the displays are compiled.
• Image File: Use the Browse button to select the image file to use as
the display background. Thumbnails of the images available in the
specified image directory are displayed to ease the selection process.
Note: Only bitmap (.bmp), jpeg (.jpg), and icon (.ico) images are
supported at this time.
Proprietary – See Copyright Page 89 Using the Scratch Pad Editors
Display Builder User’s Guide
3.7 Defining Layers
Layers are defined using the Layer Properties form. The dialog box
includes the following tabs for simple layers:
• Layers
• Simple Layer
• Attachments
• Permission Test
The following tabs are included for tabular layers:
• Layers
• Tabular Definition
• Repeat, Hierarchical, Link List, Multi-Dimensional, or Indexed,
depending on the type of layer selected on the Tabular Definition tab
• Attachments
• Permission Test
The Layer Properties form is accessed using the following procedure:
1. Give input focus to the desired display.
2. From the Definition Manager menu bar, select Display > Layers and
Driving Data.
You can specify whether a layer is called up or not on initial display
call-up. A layer can also be set as not removable, meaning it cannot be
controlled with the DISPLAY command /LAYER qualifier or the LAYER
command.
3.7.1 Simple Layer Construction Tasks
Simple layers are distinguished from tabular layers by the placement of
individual — although not necessarily different — pictures in the scratch
pad and by the explicit linkage to database records by Display Builder.
Simple layer construction consists of some or all of the following tasks:
• Placing Elements: Physically locating previously defined pictures and
symbols, and defining placeholders on the layer.
• Attaching Elements: Making local or overall attachments of CAMs,
keysets, and menus, as appropriate.
Proprietary – See Copyright Page 90 Using the Scratch Pad Editors
Display Builder User’s Guide
• Drawing Primitives: Creating any and all types of primitives and
defining their graphic attributes.
• Defining Database Linkages: Establishing links among the placed
pictures and attached CAMs and specific occurrences of record types.
Each picture and CAM must be linked.
3.7.2 Defining Simple Layers
Simple layers are layers where elements are placed at fixed locations. In
simple layers, placed pictures and attached CAMs are linked to specific
occurrences of a record in the application database.
In addition, simple layers can be defined with some unique features:
• Placeholders: These are named coordinate locations in the display
that can be used to position the online display (see Defining a
Placeholder).
• Declutter Levels: Pictures placed in a simple layer that have declutter
levels defined for them cause the layer to have a set of defined
declutter levels. This set consists of all the different high and low
declutter zoom factors defined for all pictures on the layer. A maximum
of 32 declutter levels is allowed on the display.
To define a simple layer, use the following procedure:
1. Open the Layer Properties form, as described above.
The default layer appears in the layer list box.
2. To add a new layer, enter a name in the New Layer text box, and click
Add.
The new layer appears in the layer list box.
3. Provide values for all parameters, as required on each tab of the
Simple Layer Properties form.
4. Click OK to save your changes and close the form.
Note: The Layers tab is shared with the Tabular Layer Properties form
(see the section Layers Tab).
For more information about completing each tab, see the following
sections.
Proprietary – See Copyright Page 91 Using the Scratch Pad Editors
Display Builder User’s Guide
3.7.2.1 Simple Layer Tab
The Simple Layer tab becomes available when a simple layer is selected
from the Layers tab. The Simple Layer tab is used to define a database
linkage for a picture or a CAM placed on a simple layer.
Figure 22: Simple Layer Tab
The following are included on the Simple Layer tab:
• Layer: The name of the active layer, as specified on the Layers tab.
• Secondary Application: Specify an application other than the
application(s) that owns the display, as specified on the Applications
tab on the Display Properties form. This feature allows the display
compiler a better opportunity to check application context.
Note: It is strongly recommended that pictures displaying data from an
application different from the primary application be placed on layers
that have the given application name specified as a secondary
application. Currently, the display compiler issues a warning message
if the application context of a picture or CAM does not match that of the
Proprietary – See Copyright Page 92 Using the Scratch Pad Editors
Display Builder User’s Guide
layer. This can indicate that the display can display different data than
it was designed to do.
• Picture and CAM Linkages: Each picture placement and CAM
attachment is listed on the Simple Layer tab. Clicking an object name
in the list causes the object to flash in the scratch pad.
When the cursor crosses a picture or primitive on a simple layer, the
object’s assigned composite key pops into view in a tool tip if the DB
Linkage Tips feature is turned on. To enable this option, select the
Show DB Linkage Tips option from the Display menu. The Show DB
Linkage Tips option displays a check mark to indicate that it is active.
• Composite Key: The database linkages for pictures and CAMs are
specified as a sequence of key fields that uniquely identify the Picture
record or CAM target record. The fields are enterable in the format:
record_name = key_field_identifier
The record_name specifier tells the server which record type in the
sequence to locate next, and the key_field identifier specifies the value
in the key field (see Database Linkages).
Composite keys can be copied and pasted to other picture and CAM
entries and then edited.
Note: A global replace editing utility is provided for user convenience
(see Replace Dialog Box).
• Dynamic: Checking this box allows placements to be generated
programmatically by a special kind of OLE DB provider each time the
display is called up. This feature is intended to be used by the
Alstom Grid distribution automation OLE DB provider, and it should not
be used without consulting with an Alstom Grid engineer.
• Find/Replace: Click this button to display the Replace form (see
Replace Dialog Box).
3.7.2.2 Attaching Elements on Simple Layers
Both local and overall attachments are allowed on simple layers.
Instructions for attaching elements are provided in Making Attachments to
Placed Objects.
3.7.2.3 Attachments and Permission Test Tabs
The Attachments and Permission Test tabs on the Simple Layer
Properties form are shared by the Display, Layer, and Picture Property
Definition forms (see Attachments Tab and Permission Test Tab).
Proprietary – See Copyright Page 93 Using the Scratch Pad Editors
Display Builder User’s Guide
3.7.2.4 Primitives on a Simple Layer
All types of primitives, including text, can be drawn on a simple layer. For
more information about drawing the various types of primitives, see
Drawing Primitives.
3.7.2.5 Placing Elements on Simple Layers
Previously defined symbols and pictures can be placed in a simple layer
(see the section Placing an Element).
3.7.2.6 Moving Selected Objects Between Simple Layers
The Move to Layer dialog box is a property of the Display Editor when the
context is a simple layer construction.
Figure 23: Move to Layer Dialog Box
To move an object to a different layer on the display, use the following
procedure:
1. Select the desired object on the scratch pad.
2. From the Definition Manager menu bar, select Draw > Move to Layer.
The Move to Layer dialog box appears.
3. The text box lists all layers in the current display. Select the desired
layer, and click OK.
The desired object is transferred to the layer selected in the text box.
Proprietary – See Copyright Page 94 Using the Scratch Pad Editors
Display Builder User’s Guide
3.7.2.7 Defining a Placeholder
Placeholders can be defined and placed on a simple layer. When defined,
the placeholder is shown in the scratch pad with the words “Placeholder
xxxx”, where xxxx represents the name of the placeholder. This text string
does not appear in the online display.
To define a placeholder, use the following procedure:
1. In the Drawing Tools toolbar, click the Placeholder icon .
2. Click at the position on the layer where you want the placeholder to be
located.
The New Name dialog box opens on the scratch pad.
3. Type the placeholder name.
4. Click OK to close the dialog box.
The placeholder appears in red text, with a bounding rectangle to show
that it is currently selected in the scratch pad.
3.7.2.8 Replace Dialog Box
The Replace dialog box is used to modify composite key entries on the
Simple Layer tab on the Layer Properties form.
To access the Replace dialog box, in the Layer Properties dialog box on
the Layers tab, select a simple layer. Then, on the Simple Layer tab
(Figure 22), click the Find/Replace button. The Replace dialog box
appears, as shown in Figure 24.
Figure 24: Replace Dialog Box
Enter the string to modify and its replacement string, then click the
command buttons to complete the Find and Replace operation. For details
about composite key definitions, see Database Linkages.
Proprietary – See Copyright Page 95 Using the Scratch Pad Editors
Display Builder User’s Guide
3.7.2.9 Placement Forms for Simple Layer Objects
Details about the Placement forms and the tabs for the objects commonly
found on simple layers can be found in Placement Properties Forms (see
the section Placing an Element).
3.7.2.10 Defining Simple Layer Database Linkages
To define a database linkage for a picture or a CAM placed on a simple
layer, use the following procedure:
1. From the Display menu, select the Layers and Driving Data option.
The Layer Properties form appears.
2. From the Picture and CAMs Linkages list, select the placed element.
3. Enter the composite key in the Composite Key section of the entry.
Note: A global replace editing utility is provided for user convenience.
Click the Find/Replace button to activate this utility.
When the cursor crosses a picture or a primitive on a simple layer, the
object’s assigned composite key pops into view if the DB Linkage Tips
feature is turned on.
To activate the Linkage Preview pop-up for composite key definitions, do
the following:
• From the Display menu, select the Show DB Linkage Tips option.
The Show DB Linkage Tips option displays a check mark to indicate
that it is active.
3.7.3 Tabular Layer Construction Tasks
Tabular layers are designed to display repeating record data from
numerous driving data schemes. The record data specified in the picture
is carried by a picgroup.
Tabular layer construction consists of some or all of the following tasks:
• Selecting Picgroups: Selecting picgroups to determine when and how
the primary record types of the picgroups are to be displayed
• Defining Overall Picgroup Attributes: Establishing which picgroups
head or end display pages
• Defining Picgroup Alignment: Determining the physical or visual
relationships among picgroups
Proprietary – See Copyright Page 96 Using the Scratch Pad Editors
Display Builder User’s Guide
• Specifying Alternate Driving Data: Specifying alternate record
structures that drive the appearance of the tabular layer. By default,
the layer is driven by the database hierarchy and the record list. Other
database structures can be defined to modify the default appearance
and then specified in the tabular layer definition.
• Attaching Elements: Attaching keysets as overall attachments to the
layer. No local attachments can be made to the picgroups in a display
layer; however, picgroups and picgroup components can be defined
with local and overall attachments.
3.7.4 Defining Tabular Layers
To define a tabular layer, use the following procedure:
1. To display the Tabular Layer Properties form, from the Definition
Manager menu bar, select Display > Layers and Driving Data.
2. To add a new layer, enter a name in the New Layer text box, and click
Add.
The new layer appears in the layer list box.
3. Provide values for all parameters, as required on each tab of the
Simple Layer Properties form.
4. Click OK to save your changes and close the form.
Note: The Layers tab is shared with the Simple Layer Properties form
(see the section Layers Tab).
3.7.4.1 Tabular Definition Tab
The Tabular Definition tab becomes accessible when a tabular layer is
designated as active.
Display Builder must specify a target data structure for each tabular layer
that you create. Unlike the simple layer, where Display Builder specifies
explicit database linkages for chosen record instances, a tabular layer
requires a database linkage description. This description tells the
e-terrabrowser server where to find the data specified by the pictures
placed in the layer’s picgroups.
For more information about tabular layers and their data linkages, see the
sections Tabular Layers and Driving Data Structures.
Proprietary – See Copyright Page 97 Using the Scratch Pad Editors
Display Builder User’s Guide
Figure 25: Tabular Definition Tab
The following are included on the Tabular Definition tab:
• Layer: The name of the active layer, as specified on the Layers tab.
• Driving Database: The name of the e-terrahabitat database for which
this display layer binds to display data.
• Secondary Application: An application other than the application(s)
for which the display is compiled, as specified on the Applications tab
on the Display Properties form. Binding to the secondary application
clone occurs when the display is called up.
Note: In order to ensure data integrity, it is highly recommended that
this field be completed if the layer is bound to data from an application
other than that specified on the Display Properties form.
• Constant Picgroup: Select this check box to enable addition of a
constant picgroup to the layer. A constant picgroup is typically the
header for the data on this layer.
• Add: Click this button to add the Constant Picgroup. This button is
enabled when you select the Constant Picgroup check box.
Proprietary – See Copyright Page 98 Using the Scratch Pad Editors
Display Builder User’s Guide
• Layer Placements Are Constant: Check this box to ensure the
constant display of the picgroups on this layer.
• Page Breaks: The choices in this option group define the number of
records at a time that are delivered to the client:
− None: Data is delivered without page separations.
− Records/Page: Data is delivered one page at a time, with each
page containing the specified number of records.
• Tabular Type: The choices in this option group define the data
structure that the server must find and deliver to the client. The
selection made in this option group is reflected in the tabs available for
further layer configuration. The structure options are as follows:
− Repeat Placement: Find every instance of a single record type
(see Repeat Tab).
− Hierarchical Placements: Find every instance of several record
types in a tree structure (see Hierarchical Tab).
− Link List Placement: Find a linked list structure and follow the
pointers to the specified record instances. Find a structure of
required picgroup names if a sequencing requirement exists (see
Link List Tab).
− Multi-Dimensional Placement: Find a two- or three-dimensional
array and detect the orientation of the data on the X, Y, and
possibly Z axes (see Multi-Dimensional Tab).
− Indexed Placement: Execute the query using one of the
predefined indexes, sorting and filtering according to the criteria
specified in the index parameters (see Indexed Tab).
Proprietary – See Copyright Page 99 Using the Scratch Pad Editors
Display Builder User’s Guide
3.7.4.2 Repeat Tab
The Repeat tab is available when Repeat Placement has been specified
on the Tabular Definition tab, and it allows entry of parameters for finding
and delivering data (see the section Placing Data-Oriented Picgroups).
Figure 26: Repeat Tab
The following are included on the Repeat tab:
• Layer: The active layer, as specified on the Layers tab.
• Repeat Picgroup: The picgroup containing the record of interest.
• Add: Click this button to add or change the repeat picgroup. Only one
picgroup is allowed on a repeat layer.
• Delete: Click this button to delete the repeat picgroup.
• Circular: Check this box to specify that database traversal is circular
and directional. Selecting this option activates the Ascending and
Descending radio buttons:
Proprietary – See Copyright Page 100 Using the Scratch Pad Editors
Display Builder User’s Guide
− Ascending: Select this radio button to sort records in ascending
order.
− Descending: Select this radio button to sort records in descending
order.
• First Record Subscript and Last Record Subscript: The choices in
these option groups specify the bounds of the data retrieval sequence:
− First: Select this radio button to begin data retrieval at the first
picture record subscript.
− Last: Select this radio button to end data retrieval at the last picture
record subscript.
− Literal: Select this radio button to begin and end data retrieval at a
specified subscript. Selecting this option enables the Literal text box
in which to enter the desired value.
− Field: Select this radio button to begin and end data retrieval at the
subscript identified by a specified field. Selecting this option
enables the Field and Database text boxes in which to enter the
desired values.
− Global Field: Select this radio button to begin and end data
retrieval at the subscript identified by a specified global field.
Selecting this option enables the Global Field (ITEMS record) and
Database text boxes in which to enter the desired values.
− Composite Key: Select this radio button to begin and end data
retrieval at the subscript whose location in the database tree is
identified by one or more key fields. Selecting this option enables
the Composite Key text box in which to enter the desired values.
Display call-up is enhanced when composite keys are used to
bound data retrieval. Key proxies can also be used.
Note: Composite keys are specified as a series of one or more
equalities. The left side of the equation is the record type, and the
right side is a key field identifier.
For example, the composite key SUBSTN = BVILLE tells the server
to find the record instance of the SUBSTN record with an ID field
equal to “BVILLE”, and to proceed from there to find the first
instance of the primary record.
− Field with Composite Key: Select this radio button to begin and
end data retrieval at the subscript specified by this field, which
resides on the key deepest in the tree structure. Selecting this
option enables the Field, Database, and Composite Key text boxes
in which to enter the desired values.
Proprietary – See Copyright Page 101 Using the Scratch Pad Editors
Display Builder User’s Guide
− Resolve by ID: Select this option to resolve the Composite Key
field by ID. This is the default option, and it works as composite key
definitions worked in earlier versions.
− Resolve by Subscript: Select this option to specify a subscript
with a composite key. If this option is selected, record values must
be numeric and you cannot specify more than one composite key;
otherwise, a compilation error will be raised.
3.7.4.3 Hierarchical Tab
The Hierarchical tab becomes accessible if Hierarchical Placements has
been specified on the Tabular Definition tab, to allow entry of parameters
for finding and delivering data (see the section Placing Data-Oriented
Picgroups).
Figure 27: Hierarchical Tab
The following are included on the Hierarchical tab:
• Layer: The active layer, as specified on the Layers tab.
Proprietary – See Copyright Page 102 Using the Scratch Pad Editors
Display Builder User’s Guide
• Picgroups: This option group allows you to add or delete picgroups
and to indicate hierarchical relationships in the data:
− Add: Click this button to display the Add Picgroup form.
− Delete: Click this button to delete the highlighted picgroup.
− Schema Portrayal: By using the arrow buttons to indicate where
the primary record resides in relation to others, you can
schematically represent a database structure. Clicking the up or
down arrow buttons moves the selected picgroup up or down in the
data hierarchy; clicking the left or right arrow buttons promotes or
demotes the selected picgroup in relation to the picgroup
immediately above it.
− Join Records Across Data Sources: Selecting this check box
tells the e-terrabrowser Viewer to attempt to match up parent and
child records across data sources. For example:
The A records might be from e-terrahabitat, and the B records
might be from e-terracontrol.
• Starting Record Subscript: Use this option group to specify the
bounds of the server’s picgroup data retrieval sequence:
− All: Selecting this option instructs the server to start at the first
instance of the first picgroup’s primary record and retrieve all
subordinate picgroup data, then proceed to the next instance and
repeat the retrieval. Data retrieval continues until all records have
been accessed.
− Composite Key: Selecting this option instructs the server to start
at the record instance specified by a composite of key fields that
includes the primary record’s key field as the last entry.
− Resolve by ID: Select this option to resolve the Composite Key
field by ID. This is the default option, and it works as composite key
definitions worked in earlier versions.
Proprietary – See Copyright Page 103 Using the Scratch Pad Editors
Display Builder User’s Guide
− Resolve by Subscript: Select this option to specify a subscript
with a composite key. If this option is selected, record values must
be numeric and you cannot specify more than one composite key;
otherwise, a compilation error will be raised.
Note: Display call-up is much enhanced when composite keys are used to
bound the server’s data retrieval (see Database Linkages).
3.7.4.4 Link List Tab
The Link List tab becomes accessible if Link List Placement has been
specified on the Tabular Definition tab (see the section Data Linkage to
Linked List ).
Figure 28: Link List Tab
The following are included on the Link List tab:
• Layer: The active layer, as specified on the Layers tab.
Proprietary – See Copyright Page 104 Using the Scratch Pad Editors
Display Builder User’s Guide
• Picgroups: The list box contains the picgroup(s) associated with the
display. The picgroup list can be edited using the Add and Delete
buttons.
• Picgroup Ordering: By selecting a picgroup and using the directional
arrows, you can sort the picgroups into the desired order.
• Link List Driving Fields: Special driving data structures in a database
and linked list validation software allow sequencing and display of data
in an order other than the database order. The following fields are used
for specifying data retrieval:
− Sequence: Specify the field containing the name of a picgroup to
paint or the pointer to a picgroup list record.
− Driving Record: Specify the special record used to carry the linked
list sequencing information for the server.
− Occurrence: Specify the field containing the subscript of the
picgroup’s primary record.
− Picgroup List Record: Specify the name of the picgroup list
record.
− Forward Link: Specify the field containing the pointer to the next
link in the chain.
Note: When the driving record serves to independently arrange
several record types in a database, the linked list software creates
a dynamic list of picgroups that carries the sorted data at display
call-up. The picgroups added to the Picgroups list box must bear
the same names and must represent the full range of potentially
displayable record types.
− Picgroup List Database: Specify the name of the database where
the picgroup list record resides.
• First Record Subscript and Last Record Subscript: The choices in
these option groups specify the bounds of the data retrieval sequence:
− First: Select this radio button to begin data retrieval at the first
picture record subscript.
− Last: Select this radio button to end data retrieval at the last picture
record subscript.
− Literal: Select this radio button to begin and end data retrieval at a
specified subscript. Selecting this option enables the Literal text box
in which to enter the desired value.
Proprietary – See Copyright Page 105 Using the Scratch Pad Editors
Display Builder User’s Guide
− Field: Select this radio button to begin and end data retrieval at the
subscript identified by a specified field. Selecting this option
enables the Field and Database text boxes in which to enter the
desired values.
− Global Field: Select this radio button to begin and end data
retrieval at the subscript identified by a specified global field.
Selecting this option enables the Global Field and Database text
boxes in which to enter the desired values.
− Composite Key: Select this radio button to begin and end data
retrieval at the subscript whose location in the database tree is
identified by one or more key fields. Selecting this option enables
the Composite Key text box in which to enter the desired values.
Display call-up is much enhanced when composite keys are used to
bound data retrieval.
Note: Composite keys are specified as a series of one or more
equalities. The left side of the equation is the record type, and the
right side is a key field identifier.
For example, the composite key SUBSTN = BVILLE tells the server
to find the record instance of the SUBSTN record with an ID field
equal to “BVILLE” and to proceed from there to find the first
instance of the primary record.
− Field with Composite Key: Select this radio button to begin and
end data retrieval at the subscript specified by this field, which
resides on the key deepest in the tree structure. Selecting this
option enables the Field, Database, and Composite Key text boxes
in which to enter the desired values.
− Resolve by ID: Select this option to resolve the Composite Key
field by ID. This is the default option, and it works as composite key
definitions worked in earlier versions.
− Resolve by Subscript: Select this option to specify a subscript
with a composite key. If this option is selected, record values must
be numeric and you cannot specify more than one composite key;
otherwise, a compilation error will be raised.
Proprietary – See Copyright Page 106 Using the Scratch Pad Editors
Display Builder User’s Guide
3.7.4.5 Multi-Dimensional Tab
The Multi-Dimensional tab becomes accessible when Multi-Dimensional
Placement is selected on the Tabular Definition tab.
Figure 29: Multi-Dimensional Tab
The following are included on the Multi-Dimensional tab:
• Layer: The active layer, as specified on the Layers tab.
• Multi-Dimensional: Specify the 2-D or 3-D picgroup using the Add
button. Only a multi-dimensional picgroup can be specified.
• First Record Subscript and Last Record Subscript: The choices in
these option groups specify the bounds of the data retrieval sequence:
− First: Select this radio button to begin data retrieval at the first
picture record subscript.
− Last: Select this radio button to end data retrieval at the last picture
record subscript.
Proprietary – See Copyright Page 107 Using the Scratch Pad Editors
Display Builder User’s Guide
− Literal: Select this radio button to begin and end data retrieval at a
specified subscript. Selecting this option enables the Literal text box
in which to enter the desired value.
− Field: Select this radio button to begin and end data retrieval at the
subscript identified by a specified field. Selecting this option
enables the Field and Database text boxes in which to enter the
desired values.
− Global Field: Select this radio button to begin and end data
retrieval at the subscript identified by a specified global field.
Selecting this option enables the Global Field and Database text
boxes in which to enter the desired values.
− Composite Key: Select this radio button to begin and end data
retrieval at the subscript whose location in the database tree is
identified by one or more key fields. Selecting this option enables
the Composite Key text box in which to enter the desired values.
Display call-up is much enhanced when composite keys are used to
bound data retrieval.
Note: Composite keys are specified as a series of one or more
equalities. The left side of the equation is the record type, and the
right side is a key field identifier.
For example, the composite key SUBSTN = STATION1 tells the
server to find the record instance of the SUBSTN record with an ID
field equal to “STATION1” and to proceed from there to find the first
instance of the primary record.
− Field with Composite Key: Select this radio button to begin and
end data retrieval at the subscript specified by this field, which
resides on the key deepest in the tree structure. Selecting this
option enables the Field, Database, and Composite Key text boxes
in which to enter the desired values.
− Resolve by ID: Select this option to resolve the Composite Key
field by ID. This is the default option, and it works as composite key
definitions worked in earlier versions.
− Resolve by Subscript: Select this option to specify a subscript
with a composite key. If this option is selected, record values must
be numeric and you cannot specify more than one composite key;
otherwise, a compilation error will be raised.
• Record Processing Order: List the records in the order that they
should be processed, from left to right.
Proprietary – See Copyright Page 108 Using the Scratch Pad Editors
Display Builder User’s Guide
• Record Held Constant (required for 3-D specifications, optional for
2-D specifications): Specify the name of the record to hold constant.
Select the radio button to identify the subscript of the record
occurrence that is held constant:
− None: Select only if no record is to be held constant.
− Literal: Select to identify the constant record by means of a
specified subscript. Selecting this option enables the Literal text box
in which to enter the desired value.
− Proxy: Specify the subscript of the occurrence by proxy.
− Composite Key: Specify the key field of the occurrence by proxy
or literally.
− Resolve by ID: Select this option to resolve the Composite Key
field by ID. This is the default option, and it works as composite key
definitions worked in earlier versions.
− Resolve by Subscript: Select this option to specify a subscript
with a composite key. If this option is selected, record values must
be numeric and you cannot specify more than one composite key;
otherwise, a compilation error will be raised.
3.7.4.6 Indexed Tab
Indexed layers use a unique mechanism for resolving a query that
generates the placements on a layer. An “index” is a data structure
supported by the e-terrabrowser data server and updated by notifications
from various applications. The data server must be properly configured for
this feature (for details, see the e-terrabrowser Software Installation and
Maintenance Guide).
When you use an indexed layer, you specify the name of the index that
provides data for the layer and a parameter string that specifies sorting
and filtering criteria. All indexes automatically filter by area of
responsibility, so there is no need to use permission tests on these layers.
CAMs are not usually required, because the existence of a record in the
index indicates that it meets specific conditions.
The Indexed tab becomes accessible if Indexed Placement has been
specified on the Tabular Definition tab (refer to the section Placing Data-
Oriented Picgroups and also the Alarm User’s Guide).
Proprietary – See Copyright Page 109 Using the Scratch Pad Editors
Display Builder User’s Guide
Figure 30: Indexed Tab
The parameters for finding and delivering the data are specified on this tab
as follows:
• Layer: The active layer, as specified on the Layers tab.
• Index Name: Three indexes are currently supported:
− ALARMS
− EVENTS
− SCADA_EXCEPTIONS
• Params: Each index has a different parameter string syntax. The
syntax for each is listed below:
ALARMS
Syntax: sortOrder filter filterValues
“sortOrder” can be one of the following values:
unacked_first_desc_time,
unacked_first_asc_time,
unacked_first_desc_priority_desc_time,
desc_time,
asc_time,
desc_priority_desc_time
Proprietary – See Copyright Page 110 Using the Scratch Pad Editors
Display Builder User’s Guide
“filter” and “filterValues” can be one of the following:
"filter" = priority ==> "filterValue" = priority,priority,...
"filter" = category ==> "filterValue" = category,category,...
"filter" = location ==> "filterValue" = location,location,...
"filter" = priority_location ==>
"filterValue" = priority,priority,... location,location,...
Syntax: groupSortOrder “filter”
“groupSortOrder” can be one of the following values:
desc_severity
asc_severity
"filter" = groupbycategory
"filter" = groupbylocation
Examples:
unacked_first_desc_time priority 1,3
unacked_first_desc_time category cat1,cat4
desc_time location loc1,loc5
asc_time priority_location 1,5 loc1,loc2
asc_severity groupbylocation
EVENTS
Syntax: sortOrder startTime filter filterValues
“sortOrder” can be one of the following values:
desc_time,
asc_time
“startTime” can be a time in TimeDate “Time_Full” format, or “All”
“filter” and “filterValue” can be one of the following:
"filter" = location ==> "filterValue" = location1,location2,…
"filter" = category ==> "filterValue" = category1,category2,...
Syntax: groupSortOrder “filter”
“groupSortOrder” can be one of the following values:
desc_severity
asc_severity
"filter" = groupbycategory
"filter" = groupbylocation
Examples:
desc_time All category cat1,cat4
desc_time All location loc1,loc5
asc_severity groupbylocation
SCADA_EXCEPTIONS
Syntax: sortOrder recordType filter filterValues
“sortOrder” can be one of the following values:
desc_time,
Proprietary – See Copyright Page 111 Using the Scratch Pad Editors
Display Builder User’s Guide
asc_time
“recordType” can be one of the following values:
analog,point,both
“filter” and “filterValue” can be one of the following:
"filter" = location ==> "filterValue" = location1,location2,...
"filter" = category ==> "filterValue" = category1,category2,...
Examples:
desc_time both category cat1,cat4
desc_time analog location loc1,loc5
• Picgroups: Use the list box in this section to add and delete picgroups
and to indicate hierarchical relationships in the data.
3.7.5 Add Picgroup Dialog Box
The Add Picgroup dialog box is used to add picgroups to tabular layers. It
is displayed when you select the Add button on the Tabular Definition tab,
or the Tabular Type (Repeat, Hierarchical, etc.) tab on the Layer
Properties form.
Figure 31: Add Picgroup Dialog Box
Proprietary – See Copyright Page 112 Using the Scratch Pad Editors
Display Builder User’s Guide
The Add Picgroup dialog box includes the following:
• Select from Option Group: This section gives you the option of
adding either an additional picgroup, or a picture that is converted to a
picgroup. Selecting the Pictures option enables the Element Set list
box.
• Element Set: If the Pictures option is selected, the Element Set list
box is activated, listing all open element sets. Click on the element set
with the desired picture.
• Filter: The filter text box allows you to narrow the number of picgroups
or pictures displayed in the Picgroup/Picture list box. The search is
dynamic, with data entry populating the list box with matches without
other user action. The asterisk wildcard is supported.
• Picgroup/Picture List Box: All picgroups or pictures matching any
filter criteria are listed. Clicking on a selection causes a preview of the
item to be displayed in the preview box below. To make a selection,
click on the desired object and then click OK.
See the section Placing Data-Oriented Picgroups.
3.7.5.1 Placing Constant Picgroups
The constant picgroups for a tabular layer are selected and placed using
the Layer Properties tabbed form.
To place a constant picgroup, use the following procedure:
1. To open the Layer Properties form, from the Definition Manager menu
bar, select Display > Layers and Driving Data.
2. Select the Tabular Definition tab.
3. Select the Constant Picgroup check box.
4. Click Add to add the constant picgroup.
5. Click OK to save the changes and close the form.
See Tabular Definition Tab.
3.7.5.2 Placing Data-Oriented Picgroups
The data-oriented picgroups for a tabular layer are selected and placed
using the Layer Properties tabbed form.
To place a data-oriented picgroup, use the following procedure:
1. To open the Layer Properties form, from the Definition Manager menu
bar, select Display > Layers and Driving Data.
Proprietary – See Copyright Page 113 Using the Scratch Pad Editors
Display Builder User’s Guide
2. Activate the tabular layer by clicking the Layer button to the left of the
tabular layer name.
3. On the Tabular Definition tab, specify the tabular layer type by
selecting a Tabular Type radio button.
This activates the Repeat, Hierarchy, Link List, or Multi-Dimensional
context-sensitive tabs, reflecting your choice.
4. Select the context-sensitive tab.
5. Click Add to open the Add Picgroup form.
6. Select the picgroup (or picture) from the directory.
Note: Putting two picgroups that refer to the same record in the same
hierarchical layer does not work.
7. Click OK to save the changes and close the form.
See Add Picgroup .
3.7.5.3 Specifying Picgroup Layout
Display Builder specifies the picgroup painting details for the
e-terrabrowser client (sent to the client from the e-terrabrowser server
with the display definition and data) by describing the layout on the
Tabular Layout form.
To specify the layout of a picgroup on a tabular layer, use the following
procedure:
1. To open the Tabular Layout form, from the Definition Manager menu
bar, select Display > Tabular Layout.
2. From the Current Layer drop-down list, select the desired layer.
The names of the picgroups residing on that layer are displayed in the
Current Picgroup drop-down list.
3. From the Current Picgroup drop-down list, select the desired picgroup.
The current picgroup layout settings are echoed in the form.
4. In the Picgroups/Block text box, specify the picgroup blocking details.
5. In the offset text boxes, specify the selected picgroup’s horizontal and
vertical offsets and gluing orientation details.
6. At the bottom of the form, set the special picgroup attribute toggles as
desired.
7. Click OK to save the changes and close the form.
Proprietary – See Copyright Page 114 Using the Scratch Pad Editors
Display Builder User’s Guide
For more information about picgroup offsets and orientations, see
Picgroup Tab. For details about Tabular Layout form usage, see Tabular
Layout Form.
3.7.5.4 Simulating Tabular Layer Database Linkages
To simulate linkage to a layer’s data structure, use the following
procedure:
1. To open the Tabular Simulation Data form, from the Definition
Manager menu bar, select Display > Tabular Simulation Data.
2. From the Choose Layer drop-down list, select the desired tabular layer.
The names of the picgroups residing on that layer appear in the list box
on the left.
3. Select the desired picgroup.
The graphical contents of the picgroup appear in the Preview window.
4. Use the large arrow buttons to transfer picgroups to and from the
simulation window (the list box on the right). Move enough picgroups to
simulate the number of record instances that appear in the online
display.
5. Use the small arrow buttons to sort the picgroups in the simulation
window.
6. Click OK to save the picgroup sequencing simulation, and to display
the simulation in the Display Editor scratch pad.
For more information about using tabular simulation data, see Tabular
Simulation Form.
For information about using the Tabular Simulation Data form with
picgroups containing multi-dimensional pictures, see the chapter Multi-
Dimensional Displays.
Proprietary – See Copyright Page 115 Using the Scratch Pad Editors
Display Builder User’s Guide
3.7.6 Tabular Simulation Form
The Tabular Simulation form becomes accessible when a tabular layer is
the active layer of the Display Editor. This form, with its simulation window,
is provided for those who know the relative number of occurrences of
specific record types, their relationships in the database, and how the data
should be presented to the end user.
Figure 32: Tabular Simulation Form
The following are included on the Tabular Simulation form:
• Choose Layer: From the drop-down list, select the desired layer.
• Visible: Check this box to selectively make a layer visible for display
building purposes.
• Clear All Layers/This Layer: Click these buttons to clear the
simulation frame for one or all layers.
• Picgroup (Left) Window: Select the desired picgroup and move it into
the simulation window using the large import arrow.
• Simulation (Right) Window: Select the desired picgroup and move it
out of the simulation window using the large export arrow.
Proprietary – See Copyright Page 116 Using the Scratch Pad Editors
Display Builder User’s Guide
• Sequencing Arrows: Use these buttons to sequence the picgroups in
the simulation window.
• Show Slices with These Picgroups: This parameter applies only to
multi-dimensional layers. The list of picgroups in the simulation window
indicates the number of picgroups in one slice of the multi-dimensional
layout. Use this text box to indicate the number of slices to display.
• Preview Window: The picgroup selected for transfer to the simulation
window appears in the Preview window at the bottom of the form.
3.7.6.1 Specifying Layer Attachments and Permission Tests
The Attachments and Permission Test tabs on the Tabular Layer
Properties form are shared by the Display, Layer, and Picture Property
Definition forms (see Attachments Tab and Permission Test Tab).
Proprietary – See Copyright Page 117 Using the Scratch Pad Editors
Display Builder User’s Guide
3.7.7 Tabular Layout Form
The Tabular Layout form becomes accessible when a tabular layer is the
active layer of the Display Editor. This form provides the means for
aligning, blocking, and locking data, and for specifying picgroup attributes
for sequencing in the data delivered by the server. For details about
specifying picgroup attributes and alignment, see Specifying Picgroup
Layout.
Figure 33: Tabular Layout Form
The following are included on the Tabular Layout form:
• Current Layer: From the drop-down list, select the layer containing the
desired picgroup.
• Current Picgroup: From the drop-down list, select the desired
picgroup.
• Picgroups/Block: Specify the number of picgroups that are displayed
in a block. Values greater than 1 activate the Within Block Offset dialog
box.
• Offset Option Groups: The Offset option groups allow you to specify
picgroup layout parameters:
Proprietary – See Copyright Page 118 Using the Scratch Pad Editors
Display Builder User’s Guide
− Top Left Offset: X and Y offset from 0,0 coordinate in pixels.
− Between Block Offset: X and Y offset between the blocked data in
pixels.
− Within Block Offset: X and Y offset between the picgroups in each
block in pixels. This parameter is active only if Picgroups/Block is
greater than 1.
− Multi-Dimensional Offset: X and Y offset between multi-
dimensional picgroups in pixels. This parameter is active only if the
selected picgroup is multi-dimensional.
• Glue Buttons: Specify the repeat orientation of a picgroup by clicking
the Down , Right , or Both button.
• Picgroup Attributes: Selecting these check boxes specifies special
attributes for a picgroup:
− Page Header: Only one picgroup per page appearing at the
beginning of data.
− Page Ender: Only one picgroup per page appearing at the end of
data.
− Free Record: This picgroup can appear anywhere in the data
stream.
− Locked in X: Lock the data horizontally.
− Locked in Y: Lock the data vertically.
Proprietary – See Copyright Page 119 Using the Scratch Pad Editors
Display Builder User’s Guide
3.7.8 Layers Tab
The Layers tab contains the list of layers defined for a display. The radio
buttons to the left of the layer names are used to select the desired active
layer. The Layers tab is shared by the Simple Layer Properties and
Tabular Layer Properties forms.
Figure 34: Layers Tab
The following are included on the Layers tab:
• Active Layer: Selecting the radio button next to a layer activates the
tabs of the Layer Properties form that are applicable to the layer type.
• Layer Properties: The choices in this option group define layer
attributes:
− Visible: Checking this box causes the layer to be visible during
display design. Clearing the box causes the layer to be invisible.
− Display On Call-Up: Checking this box causes the layer to be
visible upon opening in e-terrabrowser. Clearing the box causes
the layer to be invisible.
− Not Removable: Checking this box locks the layer in the viewport.
Proprietary – See Copyright Page 120 Using the Scratch Pad Editors
Display Builder User’s Guide
− Clip to Locking Regions: Checking this box causes the layer to
be included from the calculation of locking regions. Clearing the box
causes the layer to be excluded.
− Delete: Clicking this button deletes the active layer.
• New Layer: The choices in this option group create new layers:
− New Layer Text Box: In the text box, specify the layer name.
− Simple: Selecting this radio button creates a simple layer.
− Tabular: Selecting this radio button creates a tabular layer.
− Add: Click this button to add the specified layer to the list of layers
on the Layer tab.
3.7.9 Specifying the Active Layer
Only one layer of a display definition can be active at a time. Display
Builder selects the active layer using the Active Layer toolbar or the Layer
Properties form.
To specify the active layer on the Active Layer toolbar, use the following
procedure:
1. With the Display Editor open to the desired display, select the layer
from the Active Layer toolbar drop-down menu.
Or:
In the Active Layer toolbar, click the Layers icon to open the Layer
Properties form.
2. On the Layers tab, select the radio button next to the desired layer.
3. Click OK to select the layer and close the form.
To specify the active layer using the Layer Properties form, use the
following procedure:
1. To open the Layer Properties form, from the Definition Manager menu
bar, select Display > Layers and Driving Data.
2. On the Layers tab, select the radio button next to the desired layer.
3. Click OK to select the layer and close the form.
See the section Layers Tab.
Proprietary – See Copyright Page 121 Using the Scratch Pad Editors
Display Builder User’s Guide
4. Scratch Pad Operations
This chapter describes the tasks common to the use of one or more of
Display Builder’s scratch pad editors.
4.1.1 Showing or Hiding the Grid
Scratch pad editors open with a grid displayed in the work space. Using
grid lines is optional and may be enabled or disabled for individual scratch
pads.
To show or hide grid lines, do one of the following:
• From the Display Builder menu bar, select Draw > Show Grid.
• From the Scratch Pad toolbar, click the Grid toggle icon .
• In a scratch pad, right-click and select Options. The Scratch Pad
Options Dialog Box opens with a Show Grid check box for toggling the
grid, as well as other options for customizing the grid appearance.
The grid is alternately displayed or hidden, as either of the above
procedures is performed.
4.1.2 Turning Snap to Grid On or Off
“Snapping” objects to the drawing grid provides for a uniformity of initial
alignments. Display Builder either “snaps” the object to the grid or places
the object where you have “dropped” it. Later, adjustments can be made
to these alignments by turning the Snap to Grid option off; this allows you
to drag objects off the grid lines.
To turn the Snap to Grid feature on or off, do one of the following:
• From the Display Builder menu bar, select Draw > Snap Grid On.
• From the Scratch Pad toolbar, click the Snap to Grid toggle icon .
• In a scratch pad, right-click and select Options. The Scratch Pad
Options Dialog Box opens with a Snap to Grid check box for toggling
the snap feature, as well as other options for customizing the grid
appearance.
Snap to Grid is alternately turned on or off, as either of the above
procedures is performed.
For more information about re-aligning placed objects to the grid, see
Aligning an Object to the Grid.
Proprietary – See Copyright Page 122 Scratch Pad Operations
Display Builder User’s Guide
4.1.3 Turning Scale to Fit On or Off
Scale the content of the display scratch pad to the size of the viewport by
clicking the Scale to Fit icon in the Scratch Pad toolbar. To return to
normal zoom level, click the button again.
4.1.4 Setting Scratch Pad Zoom
A scratch pad’s zoom factor determines whether objects appear actual
size, magnified, or reduced when they are placed on the scratch pad. The
zoom factor is expressed as a percentage of a scratch pad’s normal view.
A setting of 100 (percent) means that objects are displayed with no
magnification or reduction in size.
To set the scratch pad zoom factor, use the following procedure:
1. In a scratch pad, right-click in the scratch pad work area and select
Options.
The Scratch Pad Options dialog box appears.
2. In the Zoom text box, enter the desired value.
3. Click OK to close the form and apply the changes.
4.1.5 Zooming the Scratch Pad Incrementally
To incrementally magnify the size of drawing details, do one of the
following:
• From the Scratch Pad toolbar, click the Zoom In icon .
• In the scratch pad, press and hold Ctrl while scrolling the mouse
wheel.
The scratch pad zooms to the zoom level indicated in the View Zoom
drop-down list box located next to the button.
To incrementally reduce the size of drawing details, do one of the
following:
• From the Scratch Pad toolbar, click the Zoom Out icon .
• In the scratch pad, press and hold Ctrl while scrolling the mouse
wheel.
To set the zoom factor to a custom value, see Scratch Pad Options Dialog
Box for information about setting the zoom factor using the Scratch Pad
Options dialog box.
Proprietary – See Copyright Page 123 Scratch Pad Operations
Display Builder User’s Guide
4.1.6 Zooming the Scratch Pad to a Prescribed Level
To zoom a scratch pad to a prescribed zoom level, do the following:
• From the Zoom drop-down list , select the desired zoom
level.
The scratch pad zooms to the level selected.
To set the zoom factor to a custom value, see Scratch Pad Options Dialog
Box for information about setting the zoom factor using the Scratch Pad
Options dialog box.
4.1.7 Setting the Default Shared GAB Element Set
Each scratch pad can have its own default shared GAB. The default
shared GAB element set determines where the default shared GAB gets
its attributes. This set can be changed during an editing session.
To select the default GAB element set, use the following procedure:
1. With one or more element sets open in the Definition Manager, start
the desired scratch pad editor.
2. From the default GAB’s Element Set drop-down list in the Scratch Pad
toolbar, select the target set.
The currently selected default GAB now possesses the attributes
defined by the selected set.
4.1.8 Setting the Default Shared GAB
Setting the default GAB specifies which attributes primitives have when
they are placed on a scratch pad.
To select a scratch pad’s default shared GAB, use the following
procedure:
1. Open the desired default shared GAB element set.
2. Start the desired scratch pad editor.
3. From the default GAB Element Set drop-down list in the Scratch Pad
toolbar, select the target set.
4. From the default GAB drop-down list in the Scratch Pad toolbar, select
the desired shared GAB.
Primitives drawn on the scratch pad possess the attributes of this GAB.
Proprietary – See Copyright Page 124 Scratch Pad Operations
Display Builder User’s Guide
4.1.9 Placing an Element
Placements are most rapidly made using Display Builder’s drag-and-drop
utility. The alternatives are to use the Add Placement option from the
toolbar or the Draw menu. Elements placed in a scratch pad are classified
as placed objects of a display component definition.
4.1.9.1 Using Drag-and-Drop
To place an element on the Picture Editor scratch pad using drag-and-
drop, use the following procedure:
1. Open the Picture Editor.
2. From the element set window, select the Symbol or Conditional Text
tab.
3. From the element list, select the placeable element.
4. Drag the element from the element set window and drop it on the
Picture Editor scratch pad.
To place an element on a simple layer on the Display Editor scratch pad
using drag-and-drop, use the following procedure:
1. Open the Display Editor.
2. To activate the simple layer, use the Active Layer toolbar button or the
Layer Properties form.
For details about activating display layers, see Specifying the Active
Layer.
3. From the element set window, select the Symbol or Picture tab.
4. From the element list, select the placeable element.
5. Drag the element from the element set window and drop it on the
Display Editor scratch pad.
4.1.9.2 Using the Add Placement Dialog Box
To add a placement using the Add Placement dialog box, use the
following procedure:
1. To display the Add Placement dialog box, from the Edit toolbar, click
the Add Placement icon .
Or:
To open the Add Placement dialog box, select Draw > Add Placement.
Elements such as symbols and conditional text can now be placed.
Proprietary – See Copyright Page 125 Scratch Pad Operations
Display Builder User’s Guide
2. Using the radio buttons, select the placeable element type.
The available placeable elements are displayed in the list box.
3. From the list box, select the desired object.
4. Click OK to make the placement and close the dialog box.
The selected element appears on the scratch pad positioned in the
upper left corner.
For more information about placing objects using this dialog box, see Add
Placement .
4.1.10 Making Attachments to Placed Objects
Attachments are most rapidly made using Display Builder’s drag-and-drop
utility. The alternatives are to use the editor Add Attachment option from
the Draw toolbar or the Draw menu, or to activate the object’s Placement
Properties form by double-clicking the object.
Note: Pictures and pop-up pictures can reside on scratch pads and accept
attachments as placed objects.
4.1.10.1 Using Drag-and-Drop
To make an attachment using drag-and-drop, use the following procedure:
1. Open the editor whose scratch pad contains the target of the
attachment.
2. On the element set window, select the tab containing the attachable
element (for example, the Shared GAB tab).
3. From the tab’s list of elements, drag the attachable element and drop it
on the target.
4.1.10.2 Using the Add Attachment Dialog Box
To make an attachment to one object or the same attachment to multiple
objects, use the following procedure:
1. Open the editor whose scratch pad contains the target(s) of the
attachment.
2. On the scratch pad, select one or more objects.
Multiple selections can be made by holding down the Shift key while
selecting the objects.
3. To display the Add Attachment dialog box, from the Definition Manager
menu bar, select Draw > Add Attachment.
Proprietary – See Copyright Page 126 Scratch Pad Operations
Display Builder User’s Guide
Or:
To display the Add Attachment dialog box, from the toolbar, click the
Add Attachment icon .
4. Select the desired type and element set.
5. From the list box, select the desired object.
6. Click OK to make the attachment and close the dialog box.
For details about making an attachment using the Add Attachment dialog
box, see Add Attachment .
4.1.10.3 Attaching to WPF Controls
A WPF control can have a script-enabled CAM (SECAM) as its
attachment. Currently, only script-enabled CAMs using .NET Scripting
languages (IronPython and IronRuby) are allowed to attach to a WPF
control placement.
For instructions on how to place a WPF control on a scratch pad editor,
refer to the section Placing WPF Controls on the Editor.
To attach to a WPF control, either in a picture or in a display:
1. Open the Control Property Setter dialog box, and select the
Other Settings tab.
2. To activate the Add Attachment dialog box, click the Add button.
The list of available SECAMs is presented.
3. From the Add Attachment dialog box, select the desired SECAM, and
click OK.
Proprietary – See Copyright Page 127 Scratch Pad Operations
Display Builder User’s Guide
When the placement is a WPF control, in the Add Attachment dialog
box, Display Builder only lists SECAMs that use .NET Scripting
languages such as IronPython and IronRuby. When the placement is
not a WPF control, all CAMs, except SECAMs that use .NET Scripting
languages, are listed in the Add Attachment dialog box.
The chosen SECAM shows up in the Attachments group, as shown in
the figure below.
Proprietary – See Copyright Page 128 Scratch Pad Operations
Display Builder User’s Guide
4. Click OK.
For WPF controls placed in a display, the display designer also needs to
define the record context on the Other Settings tab, to specify the
database linkage from which to retrieve the referenced database field
values.
4.1.11 Removing Attachments from Objects
To remove a local attachment, use the following procedure:
1. Double-click the object in the scratch pad to open its Properties form
(see Placement Properties Forms).
2. Using the Attachments tab on the Properties form, select the
attachable element type (shared GAB, CAM, pop-up picture, keyset, or
menu) (see Attachments Tab).
The attachments of the type selected appear in the list box.
3. Select the attachment to be deleted.
Delete and Edit are enabled.
4. Click Delete.
The element is deleted from the attachments list.
Proprietary – See Copyright Page 129 Scratch Pad Operations
Display Builder User’s Guide
5. Click OK to save the changes and close the form.
4.1.12 Making Overall Attachments
Overall attachments can be made to pictures, layers, picgroups, and
displays as well as to individual elements placed on them.
4.1.12.1 Making Attachments to Pictures
To make an overall attachment to a picture, use the following procedure:
1. For the desired picture, open the Picture Editor.
2. Open the Picture Definition form.
3. From the Definition Manager menu bar, select Picture > Picture
Properties.
Or:
From the pop-up menu, right-click on the picture, and select Picture
Properties.
Or:
Press the F3 shortcut key.
4. Select the Attachments tab (see Attachments Tab).
5. To open the Add Attachment dialog box (see Add Attachment ), click
Add.
6. Click OK to close the Add Attachment dialog box.
7. Click OK again to save the changes and close the Picture Definition
form.
Note: The procedure for making overall attachments to picgroups and
displays differs only slightly from making attachments on pictures. The
Picgroup and Display menus and the editor’s respective Definition forms
are used.
4.1.12.2 Making Attachments to Layers
To make an overall attachment to a display layer, use the following
procedure:
1. To open the Layer Properties form, from the Definition Manager menu
bar, select Display > Layers and Driving Data.
2. Select the Attachments tab.
3. To open the Add Attachment dialog box (see Add Attachment ), click
Add.
Proprietary – See Copyright Page 130 Scratch Pad Operations
Display Builder User’s Guide
4. Click OK to close the Add Attachment dialog box.
5. Click OK again to save the changes and close the Layer Properties
form.
4.1.13 Removing Overall Attachments
To remove overall attachments, use the following procedure:
1. Open the Properties form of the desired object, and select the
Attachments tab.
A listing of the element’s attachments is displayed in the list box.
2. Select the attachment to be deleted.
Delete and Edit are enabled.
3. Click Delete.
The element is deleted from the attachments list.
4. Click OK to save the changes and close the form.
The attachment has been deleted.
4.1.13.1 Using the Placement Properties Dialog Box
To make an attachment using the Placement Properties form, use the
following procedure:
1. To display the Placement Properties form, double-click the object in
the scratch pad.
2. Select the Attachments tab.
3. To open the Add Attachment dialog box (see Add Attachment ), click
Add.
4. Click OK to close the Add Attachments dialog box.
5. Click OK again to save the changes and close the Placement
Properties form (see Placement Properties Forms).
4.1.14 Browsing Object Definitions in Scratch Pads
Graphical objects are often composed of other objects and elements such
as symbols, pictures, and conditional modifiers. These composite objects
are stored by Display Builder in a definition schema. You can review an
object’s composition by opening its definition schema in the browser
window.
Proprietary – See Copyright Page 131 Scratch Pad Operations
Display Builder User’s Guide
To browse the composition of a display, a picgroup, a picture, or a symbol
definition, use the following procedure:
1. To open the browser window, from the Draw toolbar, click the Browse
Current Object icon .
Or:
To open the browser window, from the editor’s pop-up menu, select
the Browse option.
2. To expand or contract the definition schema, click the +/- expansion
indicator boxes.
4.1.15 Selecting Objects in a Scratch Pad
Before objects in a scratch pad can be moved or edited, they must first be
selected in the scratch pad. This section provides instructions for selecting
and de-selecting objects in the scratch pad.
4.1.15.1 Selecting Single Objects
To select a single object in the scratch pad, use the following procedure:
1. Position the cursor on the scratch pad on the object to be selected.
2. Click on the desired object.
When selected, objects appear with their bounding rectangle, and
primitives appear with hot spots. Actions can now be performed on the
selected object.
4.1.15.2 Selecting Multiple Objects
To select multiple objects in the scratch pad, do the following:
• While holding down the Shift key, click on the desired objects.
Bounding rectangles and hot spots appear, indicating that the objects
are selected. Actions can now be collectively performed on the
selected objects.
4.1.15.3 Selecting Objects Using the Rubber-Band Method
To select an object or objects using the rubber-band method, use the
following procedure:
1. To put the scratch pad in select mode, from the Draw toolbar, click the
Select icon .
2. Position the cursor on the scratch pad near the object(s) to be
selected.
Proprietary – See Copyright Page 132 Scratch Pad Operations
Display Builder User’s Guide
3. To define the anchor point of the rubber-band, click and hold down the
left mouse button.
4. Drag the cursor so that the object(s) to be selected is inside the
rectangular-shaped rubber-band.
5. Release the mouse button.
Bounding rectangles and hot spots now appear around the objects, to
indicate that they are currently selected.
Additional objects can be selected as follows:
1. While holding down the Shift key, click on the desired object.
Or:
Position the cursor on the scratch pad near the object(s) to be
selected.
2. To define the anchor point of the rubber-band, while holding down the
Shift key, click and hold down the left mouse button.
3. Drag the cursor so that the additional object(s) to be selected is inside
the rectangular-shaped rubber-band.
4. Release Shift and the mouse button.
4.1.15.4 Using the Select All Option
All objects in a scratch pad can be selected at one time.
To select all objects in a scratch pad, do the following:
• From the Definition Manager menu bar, select Edit > Select All.
All objects in the scratch pad appear with their bounding rectangles
and hot spots, to indicate that they are currently selected.
4.1.16 De-Selecting Objects in a Scratch Pad
This section describes how to de-select currently selected objects in a
scratch pad.
4.1.16.1 De-Selecting All Selected Objects
To de-select all selected objects in the scratch pad, use the following
procedure:
1. To put the scratch pad in select mode, from the Draw toolbar, click the
Select icon .
Proprietary – See Copyright Page 133 Scratch Pad Operations
Display Builder User’s Guide
2. Click anywhere in the scratch pad outside the bounding rectangle(s) of
the selected object(s).
Note: Clicking any primitive button also de-selects all objects in the
scratch pad.
The bounding rectangles and hot spots of all selected objects
disappear.
4.1.16.2 De-Selecting Individual Objects
To de-select an individual object from a group of selected objects in the
scratch pad, use the following procedure:
1. To put the scratch pad in select mode, from the Draw toolbar, click the
Select icon .
2. While holding down the Shift key, click inside the bounding rectangle of
the object you want to de-select.
The bounding rectangle and hot spots of this object disappear. All
other selected objects remain selected.
4.1.16.3 De-Selecting Multiple Objects
To de-select multiple objects in one step, use the following procedure:
1. To put the scratch pad in select mode, from the Draw toolbar, click the
Select icon .
2. Position the cursor on the scratch pad near the objects to be de-
selected.
3. To define the anchor point of the rubber-band, while holding down the
Shift key, click and hold down the left mouse button.
4. Drag the cursor so that the objects to be de-selected are inside the
rubber-band.
5. Release Shift and the mouse button.
The bounding rectangles and hot spots disappear from around the
objects, to indicate that they are de-selected. All other currently
selected objects remain selected.
Proprietary – See Copyright Page 134 Scratch Pad Operations
Display Builder User’s Guide
4.1.17 Decluttering the Scratch Pad
The picture and simple layer scratch pads can be set to declutter any
items that have been defined to declutter at the current scratch pad zoom
factor. By default, all items are seen in the scratch pad, regardless of the
current zoom factor.
To turn the declutter capability on or off in a scratch pad, do the following:
• For pictures, from the Definition Manager menu bar, select Picture >
Declutter.
• For displays, select Display > Declutter.
When Declutter is turned on, only those items in the current scratch pad
set to appear at the current zoom factor are shown in the scratch pad.
When Declutter is turned off, all items, regardless of the zoom factor, are
shown. As the zoom factor changes, objects are shown or hidden
according to their declutter definitions.
4.1.18 Hiding or Showing Bounding Boxes for Static Text
When static text bounding boxes are displayed, they indicate the
approximate maximum extent of each text string. This is a guide for
positioning adjacent objects so that overlaps do not occur.
To hide or show the bounding boxes around static text in the active
scratch pad editor, do the following:
• From the scratch pad editor menu, select Picture > Show Text
Bounding Boxes.
4.1.19 Hiding or Showing Bounding Boxes for Pictures
To hide or show the bounding boxes around pictures in the active scratch
pad editor, do the following:
• From the Display Builder menu, select Picture > Show Picture
Bounding Boxes.
The pictures in the scratch pad display their bounding rectangles. The
Show Picture Bounding Boxes option shows its selection with a check
mark.
4.1.20 Hiding or Showing Bounding Boxes for Picgroups
To hide or show the bounding box around a picgroup in the active scratch
pad editor, do the following:
• From the scratch pad editor menu, select Picture > Show Picture
Bounding Boxes.
Proprietary – See Copyright Page 135 Scratch Pad Operations
Display Builder User’s Guide
4.1.21 Hiding or Showing Pop-Ups
To hide or show pop-ups in the Picture scratch pad, do the following:
• From the Definition Manager menu bar, select Picture > Show All
Pop-Up Pictures.
4.1.22 Grouping and Ungrouping Objects in a Scratch Pad
Objects in a scratch pad can be grouped together. When grouped, objects
are considered as a unit for selection, movement, and other operations.
For example, if you group five objects together, clicking on one selects all
five objects.
Groupings are not saved with the definition, and they are lost when the
editor is closed.
4.1.22.1 Grouping Objects
To group objects in a scratch pad, use the following procedure:
1. Using any of the methods described in Selecting Objects in a Scratch
Pad, select the desired objects.
2. On the Scratch Pad Editor toolbar, click Group .
The selected objects are now grouped and can be handled as a single
object for selection, movement, etc.
4.1.22.2 Ungrouping Objects
To ungroup objects in a scratch pad, use the following procedure:
1. Select the desired group.
2. On the Scratch Pad Editor toolbar, click Ungroup .
The selected objects are now ungrouped and must be handled as
individual objects for selection, movement, etc.
4.1.23 Moving an Object
Any drawn or placed picture, as well as attached pop-ups, can be moved
after initial placement on a scratch pad. An object in the scratch pad can
be moved by direct manipulation or by using the object’s Placement
Properties form.
Proprietary – See Copyright Page 136 Scratch Pad Operations
Display Builder User’s Guide
4.1.23.1 Moving Directly
To move an object in a scratch pad by direct manipulation, use the
following procedure:
1. Select the object on the scratch pad.
2. Click and hold down the left mouse button anywhere inside the object’s
bounding box.
3. Drag the cursor in any direction to move the object.
An outline of the object moves with the cursor, while the object itself
remains at the original position.
4. When the outline is at the desired location, release the mouse button.
The outline disappears and the object snaps to the new position.
4.1.23.2 Moving an Object Incrementally
To move an object one scratch pad unit up, down, to the right, or to the
left, use the following procedure:
1. Select the object on the scratch pad.
2. To move the selection, use the up, down, right, or left arrow keys on
the keyboard.
4.1.23.3 Moving Using a Properties Form
To move an object using its Properties form, use the following procedure:
1. Double-click the object in the scratch pad to open its Properties form
with the Definition tab selected, or click the Properties icon in the
Drawing toolbar.
2. In the Origin option group, enter coordinates in either or both of the X
or Y text boxes.
Note: The origin of an object is always the upper left corner.
3. Click OK to save the changes and close the Properties form.
The selected object snaps to its new position.
4.1.24 Moving to the Front or Back
Objects can be stacked on a scratch pad, and can then be positioned in
front of other objects, obscuring the view of the object(s) behind them. The
positions of these objects can be changed, as described in the following
sections.
Proprietary – See Copyright Page 137 Scratch Pad Operations
Display Builder User’s Guide
4.1.24.1 Moving to the Front
To move some objects in front of others, use either of the following
procedures.
• If the object(s) to be moved to the front is visible in the scratch pad:
− Select the desired object(s).
− From the Definition Manager menu bar, select Draw > Bring to
Front, or click the Bring to Front icon .
• If the object(s) to be moved to the front is not visible in the scratch pad
and cannot be selected:
− Select those object(s) you can see that are in front of the desired
object(s).
− From the Definition Manager menu bar, select Draw > Send to
Back, or click the Send to Back icon .
The desired object(s) is now seen in front of the other objects.
4.1.24.2 Moving to the Back
To move objects behind other objects, use the following procedure:
1. Select the desired object(s) in the scratch pad.
2. From the Definition Manager menu bar, select Draw > Send to Back, or
click the Send to Back icon .
The selected object(s) now appears behind any other objects.
4.1.24.3 Moving an Object One Level
To move the selected object up or down in the object placement order,
use the following procedure:
1. Select the desired object.
2. To reposition the object, from the Definition Manager menu bar, select
Draw > Bring Forward One or Draw > Send Backward One.
4.1.25 Removing an Object from a Scratch Pad
To remove an object from a scratch pad, use the following procedure:
1. Select the desired object.
2. From the Definition Manager menu bar, select Edit > Delete.
Proprietary – See Copyright Page 138 Scratch Pad Operations
Display Builder User’s Guide
Or:
Press the Delete key.
The selected object is deleted from the scratch pad.
4.1.26 Aligning an Object to the Grid
Objects that are not currently positioned on the alignment grid can be
snapped to the grid. With the exception of text objects, when the Align to
Grid option is selected, the upper left corner of the object’s bounding
rectangle aligns to the nearest alignment grid intersection.
To position an object on the alignment grid, use the following procedure:
1. Select the object in the scratch pad.
2. To reposition the object to the nearest alignment grid intersection, from
the Definition Manager menu bar, select Draw > Align to Grid.
Exceptions: For text objects (text, formatted fields, and conditional text),
the object’s baseline snaps to the nearest alignment grid intersection.
4.1.27 Aligning Objects on Edges and Centers
Groups of objects can be aligned either horizontally or vertically on a
scratch pad.
4.1.27.1 Aligning Objects Horizontally
To align the top or bottom edges of selected objects horizontally across a
scratch pad, use the following procedure:
1. Select the desired objects in the scratch pad.
2. From the Definition Manager menu bar, select Draw > Align > Tops or
Draw > Align > Bottoms.
Or:
From the Arrange toolbar, click Align Tops or Align Bottoms .
The selected objects re-position on the scratch pad to reflect the
selection.
4.1.27.2 Aligning Objects Vertically
To align the left or right edges of selected objects vertically down the
scratch pad, use the following procedure:
1. Select the desired objects in the scratch pad.
Proprietary – See Copyright Page 139 Scratch Pad Operations
Display Builder User’s Guide
2. From the Definition Manager menu bar, select Draw > Align > Lefts or
Draw > Align > Rights.
Or:
From the Arrange toolbar, select Align Lefts or Align Rights .
The selected objects re-position on the scratch pad to reflect the
selection.
4.1.27.3 Centering Objects
To center objects relative to each other, either horizontally or vertically,
use the following procedure:
1. Select the desired objects in the scratch pad.
2. From the Definition Manager menu bar, select Draw > Align > Middles
or Draw > Align > Centers.
Or:
From the Arrange toolbar, select Align Middles , or
Align Centers .
The selected objects re-position on the scratch pad to reflect the
selection.
Selecting Middles centers the objects on the X axis. Selecting Centers
centers the objects on the Y axis.
4.1.28 Changing the Graphic Attributes of a Primitive
To change the graphic attributes of a primitive defined by a shared GAB
attachment, use the following procedure:
1. With the desired primitive open on a scratch pad, select the element
set window in which the shared GAB definitions reside.
This gives the element set window input focus.
2. To display the directory list of available GABs, select the Shared GAB
tab.
3. Drag the desired shared GAB over the primitive in the scratch pad.
The drag-and-drop cursor appears as the selection is carried over the
scratch pad to the target.
4. Release the mouse button.
The new attribute is attached and the old attachment is deleted.
Proprietary – See Copyright Page 140 Scratch Pad Operations
Display Builder User’s Guide
Or:
Double-click the desired primitive to open its Properties form.
5. Make the attachment using the Attachments tab (see Attachments
Tab).
4.1.29 Undoing Edit Actions
Edit actions can be reversed using the Undo feature. This includes
changes made using a Properties form.
To reverse the last edit action, use the following procedure:
1. On the Edit menu, select the Undo option.
Or:
Press Ctrl+Z.
The last edit action performed on the selected object is reversed.
2. To reverse an earlier editing action, repeat the Undo action.
Display Builder supports infinite levels of Undo.
4.1.30 Redoing Edit Actions
Previously undone edit actions can be reversed using the Redo feature.
• To re-apply the last undone edit action, click the Redo button.
Display Builder allows you to redo as many edit operations as previously
undone.
4.2 Defining Permission Area Tests
You can specify a permission area by name or specify a field that contains
the name. If needed, an indirect pointer chain can be specified to point to
this field. One or more permission area tests can be defined for each
object. For more information about permission tests, see Permission Area
Tests.
4.2.1 Defining a Picture Permission Area Test
Each picture, simple layer, and tabular layer can be defined with a
permission area test. A “permission test” is a check that controls which
data or displays appear on a console screen. This test exceeds the implicit
application permission test performed by e-terrahabitat.
To define a permission area test for a picture, use the following procedure:
1. In the Picture Editor, open the desired picture.
Proprietary – See Copyright Page 141 Scratch Pad Operations
Display Builder User’s Guide
2. To open the Picture Definition form, right-click on the scratch pad, and
select Picture Properties from the pop-up menu.
3. Select the Permission Test tab.
4. Select the Apply Permission Test check box, and complete the dialog
box (see Permission Test Tab).
5. Click OK to save the changes and close the Picture Definition form.
The permission test for the picture is now defined.
4.2.2 Defining a Layer Permission Area Test
To specify a permission area test for a simple or tabular layer, use the
following procedure:
1. Open the display in which the layer resides.
2. From the Definition Manager menu bar, select Display > Layers and
Driving Data.
Or:
To open the Layer Properties form, from the Layer toolbar, select
Layers.
3. Select the Permission Test tab.
4. Select the Apply Permission Test check box, and complete the dialog
box (see Permission Test Tab).
5. Click OK to save the changes and close the Layer Properties form.
The permission test for the layer is now defined.
Specify the permission area by name. One or more permission area tests
can be defined for a layer.
4.2.3 Defining a Display Permission Area Test
To specify a permission area test for a display, use the following
procedure:
1. Open the desired display.
2. Right-click on the scratch pad, and select Display Properties from the
pop-up menu.
3. Select the Permission Test tab.
4. Select the Apply Permission Test check box, and complete the dialog
box (see Permission Test Tab).
Proprietary – See Copyright Page 142 Scratch Pad Operations
Display Builder User’s Guide
5. Click OK to save the changes and close the Display Properties form.
The permission test for the display is now defined.
Specify the permission area by name. One or more permission area tests
can be defined for a display.
Proprietary – See Copyright Page 143 Scratch Pad Operations
Display Builder User’s Guide
5. Using the Dialog Editors
This chapter describes the procedures for defining shared GABs, CAMs,
conditional text, menus, GEMs, and keysets using their corresponding
dialog editors. These editors utilize dialog tools exclusively.
5.1 Creating a New Element
To name a shared GAB, CAM, CT, menu, GEM, or keyset, use the
following procedure:
1. To open the New Name dialog box, with the desired element set
active, from the Definition Manager’s New menu, select the element
option (such as shared GAB).
2. In the text box, type a name for the new element.
3. Click OK to close the New Name dialog box.
The dialog editor for the chosen element opens with focus on a new
definition.
5.2 Defining GABs
Shared GABs are defined in the Shared GAB dialog editor using the
Colors, Lines and Fills, and Fonts tabs. These attributes are mirrored in a
Preview window to the right of the work area.
To set a graphic attribute, use the following procedure:
1. Select the element set window.
2. To open the New Name dialog box, from the Definition Manager menu
bar, select New > Shared GAB.
3. In the text box, enter a name for the shared GAB.
4. Click OK to save the name and close the New Name dialog box.
The shared GAB is now named, and its name appears in the title bar of
the Shared GAB dialog box.
5. Select the desired options for the shared GAB (see Colors Tab, Lines
and Fills Tab, and Fonts Tab).
6. From the pop-up menu, right-click and select the Save Data option.
The shared GAB definition is saved in the active element set.
Proprietary – See Copyright Page 144 Using the Dialog Editors
Display Builder User’s Guide
5.3 Defining CAMs
To define CAMs, use the following procedure:
1. Select the element set window.
2. To open the New Name dialog box, from the Definition Manager menu
bar, select New > CAM.
3. In the text box, enter a name for the CAM.
4. Click OK to save the name and close the New Name dialog box.
The CAM is now named, and its name appears in the title bar of the
CAM dialog box.
5. Complete all sections of the dialog editor (see Completing the CAM
Dialog Box).
6. After all parameters are defined, right-click on the dialog box and
select Save Data from the pop-up menu to save the CAM definition.
5.3.1 Completing the CAM Dialog Box
Figure 35: CAM Editor Dialog Box
The following are included in the CAM dialog editor:
• Select Script Engine: Using the radio buttons, select the desired
scripting option. For information related to creation of script-enabled
CAMs, see Defining CAMs Using Third-Party Scripting.
Proprietary – See Copyright Page 145 Using the Dialog Editors
Display Builder User’s Guide
• Database: To resolve conditional tests, enter the name of the
database that this CAM accesses.
• Application: If only one application owns the data, enter the name of
the application.
• Record(s): Enter the name of the specific record type(s) from the
Application database to which this CAM links. Additional text boxes are
provided for defining the record relationships for two- and three-
dimensional arrays.
Note: The test fields specified in any of the conditional tests defined for
this CAM must be in the record type specified here, unless pointers are
used.
• Indirect Links: If all test values are accessed by the same indirect
pointer, specify the pointer field or indirect chain.
Note: Whenever record linkages/indirect pointers are specified to
access data in records other than the CAM record, these pointers must
be specified in a sequence that proceeds from the record instance
defined by the formatted field and points upward/outward into the
target database structure. This linkage sequence must match the
upward linkage of the records specified in the target database
hierarchy.
• Conditional Wizard: To activate the wizard for defining the CAM’s
conditional tests, select Conditional Wizard (see Defining Conditional
Tests for CAMs and CT).
• Conditional Statement Text Window: This text window is populated
through either of two means: the Conditional Wizard, or direct entry of
conditional statements. Select the desired statement line to give the
line input focus for Attribute Set definition. A black dot appears to the
left of the line when it is active.
• Verify Conditions: To validate the conditional statements defined,
select Verify Conditions.
• Outcome Attributes Work Area: Define outcomes for each statement
using the attribute tabs provided in the outcome attributes work area
(see Defining Attribute Sets, Colors Tab, and Lines and Fills Tab).
Note: All attribute types that are used (e.g., from the Colors, Lines and
Fills, and TrueType Fonts tabs) must be enabled on the Conditional
Attributes tab, in order to preserve the changes after saving the CAM.
For example, if you use an italic font from the TrueType Fonts tab, you
must enable Font Slant from the Conditional Attributes tab.
Proprietary – See Copyright Page 146 Using the Dialog Editors
Display Builder User’s Guide
5.3.2 Defining CAMs with Permission Checks
CAMs can be used to test permissions.
Four new operators have been introduced to test the four types of
permissions supported by PERMIT:
• READ_PERMITTED
• WRITE_PERMITTED
• EXECUTE_PERMITTED
• AUDIBLE_PERMITTED
Below is a sample CAM that uses the new permission syntax:
DEFAULT SET A
IF UNACK1_ANALOG TRUE
AND I__AREA_ANALOG AREA1_AREA READ_PERMITTED SET B
ELSE IF NOLIM_ANALOG FALSE
OR UNREAS_ANALOG TRUE
AND I__AREA_ANALOG AREA1_AREA READ_PERMITTED SET C
ELSE IF UNACK2_ANALOG TRUE
AND I__AREA_ANALOG AREA2_AREA READ_PERMITTED SET D
ELSE SET L
Note: These operators are represented in the DDL file using the
respective keywords: permitted_read, permitted_write, permitted_execute,
and permitted_audible.
5.3.3 Defining CAMs Using Third-Party Scripting
Active Scripting and .NET Scripting provide a means to greatly extend
what users can do to displays at run time. Third-party scripts are user-
defined scripting functions that are invoked as a result of user interactions
with a display or a change in database field values. Operations such as
changing graphics colors, mobilizing display objects, altering online
display definitions, exchanging messages with other processes, and
launching external programs (just to name a few) can be achieved by
third-party scripts written in various scripting languages such as JScript
(Microsoft JavaScript), VBScript, IronPython, and IronRuby.
Script-enabled CAMs (SECAMs) currently support two categories of
languages: Active Scripting and .NET Scripting. .NET Scripting languages
are designed to be used in the .NET Framework and support WPF
controls, while Active Scripting languages can be used to interact with
ActiveX controls placed on display.
For e-terrabrowser 3.6, the IronRuby and IronPython languages are the
only supported .NET Scripting languages. All supported scripting
languages are listed in the CAM Editor’s Script Language combo box.
Proprietary – See Copyright Page 147 Using the Dialog Editors
Display Builder User’s Guide
To define a script-enabled CAM, use the following procedure:
1. From the Script Engine option group in the CAM dialog box, select the
Third-Party Script Engine radio button.
The available options change.
2. In the Database text box, enter the name of the database that this
CAM accesses to resolve conditional tests.
3. In the Record(s) text box, enter the name of the specific record type
from the above database that this CAM links to.
4. If only one application owns the data, type the name of the application
in the Application text box.
5. From the combo box, select the third-party script language.
If the desired language is not listed, type in the name.
6. In the Script Function text box, specify the name of the script function
with which this CAM interacts.
7. In the Argument Value text box, specify the argument value.
8. In the Type text box, specify the argument value type.
9. When the argument value and type have been specified, to add the
argument, click Add Argument.
10. To modify an argument, from the Arguments list, select the desired
argument.
11. Make your changes to the Argument Value and/or Type.
Proprietary – See Copyright Page 148 Using the Dialog Editors
Display Builder User’s Guide
12. When the changes are complete, to update the argument, click Update
Argument.
13. To delete an argument, select the desired argument from the
Argument list and click Delete.
5.4 Defining GEMs
The GEM dialog box is used to shift factors for display elements (see the
section Shift Factors).
To define GEMs, use the following procedure:
1. Select the element set window.
2. To open the New Name dialog box, from the Definition Manager menu
bar, select New > GEM.
3. In the text box, enter a name for the GEM.
4. Click OK to save the name and close the New Name dialog box.
The GEM is now named, and its name appears in the title bar of the
GEM dialog box.
5. Complete all sections of the dialog editor (see Completing the GEM
Dialog).
6. After all parameters are defined, right-click on the dialog box and
select Save Data from the pop-up menu to save the CAM definition.
Proprietary – See Copyright Page 149 Using the Dialog Editors
Display Builder User’s Guide
5.4.1 Completing the GEM Dialog
GEMs are configured using the GEM Editor.
Figure 36: GEM Editor
The following are included in the GEM dialog box:
• Apply Shift: To enable the parameter fields, check the Apply Shift
check box.
• Database: To resolve the database value, enter the name of the
database that this GEM accesses.
• Application: If only one application owns the data, enter the name of
the application.
• Record(s): Enter the name of the specific record type(s) from the
above database that this GEM links to. Text boxes are provided for
defining the record relationships for two- and three-dimensional arrays.
• Coordinate Mode Relative To: “Absolute” means that the shift value
is treated as “absolute” world coordinates (i.e., relative to the display
Proprietary – See Copyright Page 150 Using the Dialog Editors
Display Builder User’s Guide
origin). “Relative” means that the shift amount is “relative” to the default
position of the element being shifted.
• Constrain By:
− X Movement: Use the check box to enable the text box for X axis
movement. Enter a single field or an indirect chain in the X Field
Name and Indirect Links text boxes. The semantics for ordering
indirects match the semantics required in the Formatted Field
Properties dialog box.
− Y Movement: Use the check box to enable the text box for Y axis
movement. Enter a single field or an indirect chain in the Y Field
Name and Indirect Links text boxes. The semantics for ordering
indirects match the semantics required in the Formatted Field
Properties dialog box.
Note: At minimum, either an X or a Y shift factor must be specified.
5.5 Defining Conditional Text (CT)
The aspects unique to CT definitions that appear in the Conditional Text
Editor dialog box are the Output Text and Shared GAB text boxes, and the
Add Shared GAB button.
To define conditional text, use the following procedure:
1. Select the element set window.
2. To open the New Name dialog box, from the Definition Manager menu
bar, select New > Conditional Text.
3. In the text box, enter a name for the CT.
4. Click OK to save the name and close the New Name dialog box.
The CT is now named, and its name appears in the title bar of the
Conditional Text dialog box.
5. Complete all sections of the dialog box (see Completing the CT
Dialog).
6. After all parameters are defined, right-click on the dialog box and
select Save Data from the pop-up menu to save the CT definition.
Proprietary – See Copyright Page 151 Using the Dialog Editors
Display Builder User’s Guide
5.5.1 Completing the CT Dialog Box
The fields of the CT Editor must be completed to define conditional text.
Figure 37: Conditional Text Editor
The following are included in the Conditional Text Editor dialog box:
• Shared GAB: Specify the default shared GAB. These attributes are
overridden by the outcome of conditional test results based on the
contents of the assigned Attribute Set.
• Output Text: On the scratch pad, enter a default text string for easier
identification of the CT.
The output text field can be used to show the value of proxies. For
example, assuming the enabled data server is named “EMS1”, the
output text string “The Enabled Host is %%enabled%%” is displayed at
run time as “The Enabled Host is EMS1” if the given clause evaluates
to True.
• Add GAB: To open the Attachment form for shared GABs, select
Add GAB.
• Record(s): Enter the name of the specific record type(s) to which this
conditional text links. Text boxes are provided for defining the record
relationships for two- and three-dimensional arrays.
Proprietary – See Copyright Page 152 Using the Dialog Editors
Display Builder User’s Guide
Note: The test fields specified in any of the conditional tests defined for
this CT must be in the record type specified here, unless pointers are
used.
• Indirect Links: If all test values are accessed by the same indirect
pointer, specify the pointer field or indirect chain.
Note: Whenever record linkages/indirect pointers are specified to
access data in records other than the conditional text record, these
pointers must be specified in a sequence that proceeds from the
record instance defined by the formatted field and points
upward/outward into the target database structure. This linkage
sequence must match the “upward” linkage of the records specified in
the target database hierarchy.
• Conditional Wizard: To activate the wizard for defining conditional
tests (see Defining Conditional Tests), select Conditional Wizard.
• Conditional Statement Text Window: This text window is populated
through either of two means: the Conditional Wizard, or direct entry of
conditional statements. To give the line input focus for Attribute Set
definition, select the desired statement line. A black dot appears to the
left of the line when it is active.
• Verify Conditions: To validate the conditional statements defined,
select Verify Conditions.
• Outcome Attributes Work Area: Define outcomes for each statement
using the Attribute tabs provided in the outcome attributes work area
(see Defining Attribute Sets, Colors Tab, and Lines and Fills Tab).
− This work area is inactive when the Default statement is the active
statement.
− For Attribute Set A, specify the text string in the Output text box that
appears on the display if the test associated with the A condition is
True. Graphic attributes are controlled by the default shared GAB
(see Statement Modifiers).
− For Attribute Set B and all remaining Attribute Sets, specify the text
string in the Output text box that appears on the display if the test
associated with the B (or other) condition is True.
5.5.2 Tool Tips in Conditional Text Specifications
To enter the tool tip text values, a text field named “Tool Tip” has been
introduced below the Output Text field in the Conditional Text window.
This supports different tool tips for each conditional text value — that is,
you can provide different tool tip values for each of the conditions to
clearly indicate what that condition means.
Proprietary – See Copyright Page 153 Using the Dialog Editors
Display Builder User’s Guide
When the display is loaded in e-terrabrowser, the tool tip text displayed is
based on the current valid condition.
The new Conditional Text window with the Tool Tip field is shown in Figure
38.
Figure 38: New Conditional Text Window
5.5.3 Defining CTs Using Third-Party Scripting
As of Display Builder 5.6, Conditional Text was enhanced to support
Substring Testing. This functionality has been realized by using Active
Scripting. For several years, Active Scripting has been supported in CAM,
MENU, and KEYSET. For Active Scripting to work properly, the respective
scripting engine of the target language must be registered at the client
machine. Supported script engines are JScript, VBScript, PerlScript, and
Python script.
The configuration of script files for CT should be the same as for CAM,
MENU, and KEYSET.
For general information about how to configure the script files, refer to the
e-terrabrowser Software Installation and Maintenance Guide.
Display Builder allows you to specify an associated script language and
function with arguments to pass to the function, as shown in Figure 39.
Proprietary – See Copyright Page 154 Using the Dialog Editors
Display Builder User’s Guide
Figure 39: Specifying a Script Language and Arguments
Below is a simple example of Substring testing for CT using JScript.
Determine if both fields have the substring “Brighton” between two
database values in CT:
function substring_test( val1, val2 )
{
var gab, ct, test_result;
context = document.ScriptingContext;
ct = context.ConditionalText;
gab = ct.DisplayGab;
var i = val1.indexOf("Brighton");
var j = val2.indexOf("Brighton");
gab.ForegroundFlag = true;
if(i >= 0 && j >= 0)
{
gab.Foreground = "SandyBrown";
ct.DisplayString = "I found substring Brighton in both
field";
}
else
{
gab.Foreground = "Seagreen";
ct.DisplayString = "substring Brighton not found";
}
document.Invalidate();
}
Proprietary – See Copyright Page 155 Using the Dialog Editors
Display Builder User’s Guide
5.6 Defining Conditional Tests for CAMs and CTs
Conditional tests are defined for CAMs and conditional text using the
same mechanism: one or more conditional statements.
Except where noted, the information and instructions that follow apply to
defining conditional tests for either type of conditional element.
A conditional statement is composed of keywords. The statement is
created using Display Builder’s Conditional Wizard.
The Conditional Wizard form is activated using the Conditional Wizard
button in the CAM and CT Editor dialog box. The pages of the wizard have
the following buttons in common:
• Next: Click the Next button to proceed to the next step.
• Back: Click the Back button to return to a previous page.
• Cancel: Click the Cancel button to cancel the conditional statement
definition process.
To create a conditional statement using the Conditional Wizard, use the
following procedure:
1. Select Conditional Wizard.
The Test page of the Conditional Wizard appears:
Proprietary – See Copyright Page 156 Using the Dialog Editors
Display Builder User’s Guide
2. Use the radio buttons to specify the conditional statement keyword,
and click Next.
Each IF statement defines a separate test from which there is a single
result. ELSEIF and ELSE statements support a given IF statement and
do not stand alone. An IF statement can be supported by as many
ELSEIF statements as desired, but only one ELSE statement.
Note: The DEFAULT keyword is reserved for specifying default
attributes that give CAMs and conditional text (CT) a default
appearance until the test is resolved.
The Database Field page of the Conditional Wizard appears.
3. Using either the Database Field text box or the Indirect List text box,
specify the location of the test field.
Database Field: Enter the target field name in field_record format.
Indirect List: Enter the chain of indirect pointer fields in field_record
format, starting with the CAM’s field record specification.
Important: Indirect pointers specified in a CT definition must be listed
in the order matching the database hierarchy, starting locally (at the
picture record) and jumping upward through the database hierarchy
(for more information about pointers in e-terrahabitat databases, see
the Hdb User’s Guide).
4. Click the radio button next to the desired text box to activate it.
Proprietary – See Copyright Page 157 Using the Dialog Editors
Display Builder User’s Guide
5. Click Next.
The Logic page of the Conditional Wizard appears.
6. Using the radio buttons, specify the logic for comparing the test field to
a comparison field or value, and click Next.
Quantitative Test Radio Buttons: Select from the buttons provided to
define a comparative test between database quantities or user-
specified literal values.
Boolean Test Radio Buttons: Select the True or False radio button to
specify the boolean test desired.
The Comparison Value page of the Conditional Wizard appears.
If you selected a quantitative test radio button on the Logic page, the
fields on this page are active.
Proprietary – See Copyright Page 158 Using the Dialog Editors
Display Builder User’s Guide
7. Specify the location of the comparison field using the Database Field
text box, or specify a literal string for comparison.
Database Field: Enter the target field name in field_record format.
Literal: Enter the literal value for the comparison.
Type: Specify the format of the literal value by selecting the type from
the drop-down menu.
8. Click the radio button next to the desired text box to activate it.
9. Click Next.
The Check Statement page of the Conditional Wizard appears.
The summation of the test statement, followed by the keyword SET (for
attribute set), appears in the Check Statement text box.
Proprietary – See Copyright Page 159 Using the Dialog Editors
Display Builder User’s Guide
10. Using the radio buttons, choose between the following options:
Apply GAB or text modifications when this statement is true:
Select this radio button if an attribute set assignment is desired.
Wait to add another phrase: Select this radio button if an attribute set
assignment is not desired (when an AND or OR statement must be
added).
11. If the conditional statement is acceptable, click Finish.
The Conditional Wizard closes, and the results appear in the editor’s
conditional statement text window.
If you selected the Apply GAB option, the wizard has added the
keyword SET to complete the statement and has assigned an attribute
set. This attribute set is identified by a letter.
If you selected the Wait to Add option, the user must add the modifying
keywords. The keyword SET must also be added to conclude each
statement (see Statement Modifiers).
12. To determine whether the statement(s) is acceptable, click the Verify
Conditions button.
13. Keywords displayed in red indicate errors. Correct and re-verify.
The conditional statement(s) for the CAM or conditional text are now
defined. The next step is to define the attribute set for each test.
Proprietary – See Copyright Page 160 Using the Dialog Editors
Display Builder User’s Guide
Note: You can also define conditional statements directly in the editor
conditional text box using standard editing techniques.
5.7 Statement Modifiers
AND and OR are the keywords that can be used to add logic to the
primary test. Each modifying statement has a test field, a comparison
value or field, and an operand of its own.
An AND statement (conjunction) means that the primary test and the
modifier test must both pass to cause a positive test result.
An OR statement (disjunction) means that, if either the primary test or the
modifier test passes, a positive result occurs.
5.8 Defining Attribute Sets
An “attribute set” defines the graphic attributes that result when a
conditional test passes. Sometimes called “override attributes”, these
attributes override any default settings applied to an element with a GAB.
For conditional text, any default text and its settings are changed.
To define an attribute set, use the following procedure:
1. Select the desired test statement for configuration. To select a test
statement, position the cursor on the desired line and click. A black dot
appears next to the test to show it is selected.
2. Select the graphic attributes that are activated when the test evaluates
to True. This is done using the choices on the Graphic Attributes tab.
Proprietary – See Copyright Page 161 Using the Dialog Editors
Display Builder User’s Guide
The following options are available:
− Visible: Selecting this option toggles between Visible (default) and
Not Visible.
− Foreground: Selecting this option sets the foreground color to the
color currently specified on the Colors tab.
− Background: Selecting this option sets the background color to the
color currently specified on the Colors tab.
− Blink: Selecting this option toggles between Blinking (default) and
Not Blinking.
− Line Width: Selecting this option sets the line width to the width
currently specified on the Lines and Fills tab.
− Line Style: Selecting this option sets the line style to the style
currently specified on the Lines and Fills tab.
− Fill: Selecting this option toggles between Filled (default) and
Not Filled.
− Fill Style: Selecting this option sets the fill style to the style
currently specified on the Lines and Fills tab.
− Fill Pattern: Selecting this option sets the fill pattern to the pattern
currently specified on the Lines and Fills tab.
− Fill Rule: Selecting this option sets the fill rule to the rule currently
specified on the Lines and Fills tab.
− Font Family: Selecting this option sets the font family to that
currently specified on the Fonts tab.
− Font Size: Selecting this option sets the font size to that currently
specified on the Fonts tab.
− Font Weight: Selecting this option sets the font weight to that
currently specified on the Fonts tab.
− Font Slant: Selecting this option sets the font slant to that currently
specified on the Fonts tab.
− Halo Style: Selecting this option toggles between Halo Style
(default) and None.
3. Specify the parameters for Conditional Attributes other than toggles
using the Colors, Lines and Fills, and Fonts tabs (see Colors Tab,
Lines and Fills Tab, and Fonts Tab).
Proprietary – See Copyright Page 162 Using the Dialog Editors
Display Builder User’s Guide
5.9 Defining Menus
Menus are defined using the Menu dialog editor. Menu labels and their
associated commands are specified by typing and adding each label to
the Menu Items list box on the Edit Menu tab.
Figure 40: Edit Menu Tab
To define menu labels and commands, use the following procedure:
1. Select the element set window.
2. To open the New Name dialog box, from the Definition Manager menu
bar, select New > Menu.
3. In the text box, enter a name for the menu.
4. Click OK to save the name and close the New Name dialog box.
The menu is now named, and its name appears in the title bar of the
Menu dialog box. The Edit Menu tab is active.
5. In the Label text box, type a label.
This is the text that appears in the list of menu items when a menu is
accessed. The label can be any alphanumeric text string, including
blank spaces, up to 32 characters.
Proprietary – See Copyright Page 163 Using the Dialog Editors
Display Builder User’s Guide
6. Select the Command radio button if selecting the label issues a
command, and enter the command in the adjacent text box.
This can be any e-terrabrowser command, a series of commands
separated by semicolons, or part of a command.
Or:
Select the Submenu radio button to specify that the label activates a
submenu when selected. Enter the submenu name in the adjacent text
box.
7. To add the label to the list box, click Add.
8. To save the menu definition, right-click in the Menu Editor and select
the Save Data option.
See Edit Menu Tab.
It is possible to define a base command that can be added to the
commands defined for individual labels. This prevents redundancy when
all commands begin or end with the same base command (see Menu
Editor Definition Tab).
5.9.1 Edit Menu Tab
The following are included on the Edit Menu tab in the Menu Editor dialog
box:
• Menu Items: The menu items to be included in the pull-down menu
are displayed in the list box.
• Menu Item Sequencing Arrows: Click the sequencing arrows to
move the selected label up or down in the list of menu items.
• Currently Selected Item Option Group: This option group allows you
to add new menu items, or edit or delete existing menu items.
− Label: The label of the currently selected menu item appears here.
The label can be edited, or labels for new menu items can be
entered.
− Submenu: To activate the Submenu text box, select Submenu.
− Submenu Name Text Box: Enter the name of the submenu that is
activated when this menu item is selected.
− Command: To activate the Command text box, select Command.
− Command Text Box: Enter the command to be issued when this
menu item is selected.
Proprietary – See Copyright Page 164 Using the Dialog Editors
Display Builder User’s Guide
− Add: To add a new label to the Menu Items list box, click this
button.
− Update: To save changes to an existing label, click this button.
− Delete: To remove an existing label from the Menu Items list box,
click this button.
5.9.2 Menu Editor Definition Tab
Figure 41: Definition Tab
The following are included on the Definition tab of the Menu Editor:
• Select Script Engine: Using the radio buttons, select the desired
scripting option.
• Base Command: Specify a base command to be associated with each
label in the menu.
• Append Item to Base Command: Select this radio button if the base
command should follow each label command.
• Append Base Command to Item: Select this radio button if the base
command should precede each label command.
Proprietary – See Copyright Page 165 Using the Dialog Editors
Display Builder User’s Guide
5.10 Defining Keysets
Keysets and their associated commands are specified in the Keyset Editor
by typing and adding each one to the Keyset Items list box on the Edit
Keyset tab.
Figure 42: Edit Keyset Tab
To define virtual keys and their commands, use the following procedure:
1. Select the element set window.
2. To open the New Name dialog box, from the Definition Manager menu
bar, select New > Keyset.
3. In the text box, enter a name for the keyset.
4. Click OK to save the name and close the New Name dialog box.
The Keyset is now named, and its name appears in the title bar of the
Keyset dialog box. The Edit Keyset tab is active.
5. In the Key Name text box, enter the virtual key name.
This can be any alphanumeric text string up to 32 characters;
characters must reside in the system key map (for information about
defining virtual key names in the system key map, see the
e-terrabrowser User’s Guide).
Proprietary – See Copyright Page 166 Using the Dialog Editors
Display Builder User’s Guide
6. In the Command text box, specify the command for this virtual key.
A series of commands must be separated by semicolons (;).
7. To add the key assignment to the list box, click Add.
8. To save the keyset definition, right-click in the editor window and select
the Save Data option.
5.10.1 Edit Keyset Tab
The following are included on the Edit Keyset tab:
• Keyset Items: From the key name directory window, select the virtual
key label to be modified. A virtual key associates a command with a
specific keyboard or mouse button action. For details about defining
virtual keys, see the e-terrabrowser User’s Guide.
• Currently Selected Item Option Group: This option group allows you
to add new menu items, or edit or delete existing menu items.
− Key Name: Enter the virtual key name here. This can be any of the
alphanumeric text strings, 32 characters or fewer, that reside in the
system key map (for information about defining virtual key names in
the system key map, see the e-terrabrowser User’s Guide).
− Command: Specify the command that is issued when this keyset is
activated.
• Add: To place a key name in the key name directory, select Add.
• Update: To update a virtual key that has been edited, select Update.
• Delete: To remove a key name from the directory, select Delete.
Proprietary – See Copyright Page 167 Using the Dialog Editors
Display Builder User’s Guide
5.10.2 Keyset Editor Definition Tab
Figure 43: Definition Tab
The following are included on the Definition tab of the Keyset Editor:
• Select Script Engine: Using the radio buttons, select the desired
scripting option (see Defining Keysets Using Third-Party Scripting).
• Flash on Select: Select this toggle to cause the object to which the
keyset is attached to flash when a valid keystroke is performed.
• Use Command Line to Complete: Select this toggle when command
text is entered by the operator from a command window.
• Append Keyset Command to Key Map Command: Select this toggle
to cause commands defined in the keyset to be appended to the
commands defined for the virtual keys.
5.10.3 Defining Keysets Using Third-Party Scripting
Active Scripting provides a mechanism to greatly extend what users can
do to displays at run time. Third-party scripts are user-defined scripting
functions that are invoked as a result of user interactions with a display, or
a change in database field values. Operations such as changing graphics
colors, mobilizing display objects, altering online display definitions,
exchanging messages with other processes, and launching external
Proprietary – See Copyright Page 168 Using the Dialog Editors
Display Builder User’s Guide
programs (just to name a few) can be achieved by third-party scripts
written in various scripting languages such as JScript (Microsoft
JavaScript), VBScript, and PerlScript.
Third-party scripting is enabled on the Definition tab of the Keyset Editor.
Figure 44: Keyset Definition Tab Enabled for Third-Party Scripting Configuration
To define a script-enabled keyset, use the following procedure:
1. Create a new keyset (see Defining Keysets), or open an existing
keyset for editing.
2. On the Definition tab, from the Select Script Engine option group,
select Third-Party Script Engine.
3. Select Flash on Select, if desired.
This option causes the object to which the keyset is attached to flash
when a valid keystroke is performed.
4. Select the desired script language.
If the language is not available, type in the name.
After the script language has been specified, select the Edit Keyset tab to
complete the keyset definition by setting the following parameters:
• Key Name: Specify the virtual key.
Proprietary – See Copyright Page 169 Using the Dialog Editors
Display Builder User’s Guide
• Function: Specify the name of the script function this keyset interacts
with when the specified virtual key is received.
• Argument Value: Specify the argument value.
• Type: Specify the argument value type.
• Add Argument: When the argument value and type have been
specified, click the Add Argument button to add the argument.
• Update Argument: In the Arguments list, select the argument you
want to update. Make your changes to the Argument Value and/or
Type. When the changes are complete, click the Update Argument
button to update the argument.
• Delete Argument: In the Argument list, select the argument you want
to delete. Click the Delete button to delete the argument.
Proprietary – See Copyright Page 170 Using the Dialog Editors
Display Builder User’s Guide
6. Other Forms, Dialog Boxes, and Tabs
Display Builder utilizes various forms, dialog boxes, and tabs that are
shared by more than one editor.
Details about the use of these forms, dialog boxes, and tabs can be found
in the following sections.
6.1.1 Change References Dialog Box
When a display set window has input focus, the Change Reference dialog
box is accessed by selecting Edit > Change Reference. All display and
picgroup editors for the display set must be closed prior to making the
selection, or an error message is generated.
Figure 45: Change References Dialog Box
• Change All References to Element Sets in this Display Set to:
Enter the name of a valid element set, and click OK to change the
reference.
6.2 Placement Properties Forms
Placement Properties forms are accessed by any of the following three
means:
• Double-clicking the desired object on a scratch pad
• Selecting the desired object on the scratch pad, then choosing the
Properties option from the editor menu of the Definition Manager
• Right-clicking the desired object and selecting the Properties option
from the pop-up menu
Placement Properties forms contain one or more tabs. These tabs are
activated and de-activated depending on the context of the selection.
• Angle: A rotation angle property has been added to all placeable
objects except for picgroups. Both Display Builder and the
Proprietary - See Copyright Page 171 Other Forms, Dialog Boxes, and Tabs
Display Builder User’s Guide
e-terrabrowser client rotate the given placement according to each
rotation angle before rendering the placement.
• Definition: This tab is unique to the selected object for each
Placement Property form. Details about a placed object’s Definition tab
can be found in the following sections.
• Tool Tip: This placement property can be used to specify a descriptive
text message that is activated when the cursor hovers over the
placement. Tool tips can contain any combination of static text, proxy
strings, and database fields. This allows the display to provide context-
sensitive information about the object under the cursor and how it can
be used. Proxies can be embedded in the tool tip using normal syntax
“%myProxy%” (for more information about proxies, see the
e-terrabrowser Reference Manual). Database fields can be embedded
in a tool tip using the syntax “%%myField%%”. If needed, an indirect
pointer chain can be specified to point to this field. There is no limit on
the number of proxies and/or field values that can be referenced in a
given tool tip.
6.2.1 Symbol and Conditional Text Placement Properties
Symbols and conditional text (CT) are defined by name and element set.
To substitute one symbol or conditional text for another, enter the
substitute name in the Reference text box and click OK. The substitute
symbol or conditional text appears on the scratch pad at a position relative
to the original object’s origin. For details about symbol and CT
placements, see Placing Elements in Pictures.
6.2.2 Static Text Placement Properties
Static text is defined by its text string. Static text can be modified by using
the text field on the form to edit the string. For details about static text
placements, see Placing Elements in Pictures.
6.2.3 Placeholder Placement Properties
Placeholders are defined by their text strings. They can be modified by
using the text field on the form to edit the string. For details about
placeholder placements, see Defining a Placeholder.
6.2.4 Picture Placement Properties
The Definition tab on the Picture Placement Properties form appears when
a picture is double-clicked on Picgroup or Display Editor scratch pads. The
origin coordinates for the placement are modifiable on this form, as is the
picture placed at this location.
Proprietary - See Copyright Page 172 Other Forms, Dialog Boxes, and Tabs
Display Builder User’s Guide
The Subscript field appears if the picture selected resides on the Picgroup
Editor scratch pad. This field is used for any picture whose record
occurrence does not match the driving record subscript. You must specify
the field where this subscript can be found in field_record format.
To change coordinates, edit the X and/or Y origin values.
To change the picture appearing at the placement location, edit the
reference picture and/or element set fields.
See Attachments Tab, Define Link Tab, and Lock Tab.
6.2.5 Primitive Placement Properties
The common fields in the definition tabs of primitive definitions are the
origin data fields, which specify the element’s position in coordinate space
in pixels. Details about the fields of other definition tabs can be found in
the following sections. Details about primitive creation can be found in
Drawing Primitives.
6.2.5.1 Placed Lines, Polylines, and Polygons
Lines, polylines, and polygons are defined by the X and Y coordinates of
their end points. The list box on the Definition tab for lines, polylines, and
polygons shows each point.
The attributes of this Definition tab are as follows:
• Points: The X and Y text boxes contain the coordinates of the
highlighted end points. Select an end point from the list box to call it
into the Points text box for editing.
• List Box Operations: End points are manipulated in the list box as
follows:
− Insert: Click this button to insert a new end point.
− Delete: Click this button to delete the selected end point.
− Move Up: Click this button to move the selected end point up in the
list.
− Move Down: Click this button to move the selected end point down
in the list.
See Attachments Tab.
6.2.5.2 Placed Rectangles and Ellipses
Rectangles and ellipses are defined by their width and height.
The attribute of this Definition tab is as follows:
Proprietary - See Copyright Page 173 Other Forms, Dialog Boxes, and Tabs
Display Builder User’s Guide
• Size: The Width and Height text boxes contain the coordinates of the
primitive.
See Attachments Tab, Declutter Tab, Colors Tab, Lines and Fills Tab, and
Fonts Tab.
6.2.5.3 Placed Circles
Circles are defined by their diameters.
The attribute of this Definition tab is as follows:
• Diameter: Enter a new number to change the diameter of the circle.
See Attachments Tab.
6.2.5.4 Placed Arcs
Arcs are defined by their width and height parameters, by their angle of
rotation away from their anchor point, and by their angle of sweep or
extent.
The attributes of this Definition tab are as follows:
• Size: The Width and Height text boxes contain the symmetrical
dimensions of the arc from its origin in pixels. Symmetry is maintained
when a dimension is modified.
• Angles: Arcs are created in a “rising sun” attitude with their anchor
points (A) to the right of center in the horizontal plane. The text boxes
for modifying the attitude and extent of an arc are as follows:
− Anchor: This value represents an amount of rotation in a counter-
clockwise direction from the arc’s anchor point. This rotation gives
the arc its horizontal/vertical attitude.
− Extent: This value denotes how much of a circle the arc
represents.
See Attachments Tab.
6.3 Shared Forms and Dialog Boxes
Several forms are shared among the scratch pad editors. Details about
these forms can be found in the following sections.
6.3.1 Toolbars Form
The Toolbars form is accessed by choosing View > Toolbars from the
Definition Manager menu bar. The six toolbar options plus the browser
window option are selectable by clicking the selection box adjacent to
each option.
Proprietary - See Copyright Page 174 Other Forms, Dialog Boxes, and Tabs
Display Builder User’s Guide
The results of user selections are immediate: the View menu is updated,
and the toolbar is made available or unavailable from the Definition
Manager as specified.
6.3.2 File Transfer Form
The File Transfer form is used to transfer files to and from the local display
building environment using the File Transfer Protocol (FTP). For details
about file transfers, see Transferring Sets for Compilation.
Figure 46: File Transfer Form
The following are included on the File Transfer form:
• Login: Use this section to enter account login information.
− Host: Enter the name of the e-terrabrowser server. The entry in
this field is saved.
Proprietary - See Copyright Page 175 Other Forms, Dialog Boxes, and Tabs
Display Builder User’s Guide
− Account: Enter the user account on the destination machine. The
entry in this field is saved.
− Password: Enter the password to the user account. The entry in
this field is saved.
• File Transfer: Use the options in this section to control file transfers.
− Send to Host: Select to put the FTP utility in upload mode.
− Get from Host: Select to put the FTP utility in download mode.
− Transfer Now: Click the Transfer Now button to start the transfer.
• Directory and Files: In this section, specify the path names of the
server and local transfer directories.
Note: This path is automatically defined if you select the transfer file(s)
using the Windows File Open dialog (see Files below).
− Host Directory: In the text box provided, enter the path name of
the server transfer directory.
− Local Directory: In the text box provided, enter the path name of
the local transfer directory.
− File List Window: Enter the file names in this window, or use the
Files button described below.
− Files: To access the standard Windows File Open dialog box, click
the Files button. After you select file(s) and click OK, the selected
file(s) appears in the Transfer Files text box. If the Change Local
Directory text box is empty, the path to the file(s) is echoed there.
• Host File Locking: Use this section to specify file locking controls.
− Lock ID: User ID supplied by Display Builder; enter a new identifier
if desired.
− Lock/Unlock: To create an .LCK file in the Host transfer directory
for each file specified in the file list window, click the Lock button.
Reverse the lock with the Unlock button.
Note: .LCK files indicate which files are currently being modified. If
the current file transfer is targeting one of these files, Display
Builder notifies you. You must remove the lock before the transfer
can be successful.
• FTP Message Window: The FTP utility echoes its actions in the
window at the bottom of the form.
Proprietary - See Copyright Page 176 Other Forms, Dialog Boxes, and Tabs
Display Builder User’s Guide
6.3.3 Add Placement Dialog Box
The Add Placement dialog box is activated from the Draw toolbar and the
Draw menu whenever the display building context supports element
placement.
Figure 47: Add Placement Dialog Box
Select the placeable element type using the Symbol, Conditional Text, or
Picture radio buttons, and then select the set where it resides using the
Element Set drop-down list box (only open sets appear in the list). The
placeable elements appear in the form’s list box.
Place an element by selecting it and clicking OK. A filter text box is
provided to aid in the search for elements. The search is dynamic, with
data entry populating the list box with matches without other user action.
The asterisk wildcard is supported.
Proprietary - See Copyright Page 177 Other Forms, Dialog Boxes, and Tabs
Display Builder User’s Guide
6.3.4 Add Attachment Dialog Box
The Add Attachment dialog box is activated from the Draw toolbar and the
Draw menu whenever the display building context supports element
placement. The Add Attachment dialog box adds an attachment to all
selected objects.
Figure 48: Add Attachment Dialog Box
Select the placeable element type using the Shared GAB, CAM, Keyset,
Menu, or Pop-Up Picture radio buttons, and then select the set where it
resides using the Element Set drop-down list box (only open sets appear
in the list). The placeable elements appear in the form’s list box.
Drag-and-drop does not work in this context. Place an element by
selecting it and clicking OK. A filter text box is provided to aid in the search
for elements. The search is dynamic, with data entry populating the list
box with matches without other user action. The asterisk wildcard is
supported.
Proprietary - See Copyright Page 178 Other Forms, Dialog Boxes, and Tabs
Display Builder User’s Guide
6.3.5 Options Form
The Options form is accessed by selecting View > Options from the
Definition Manager menu bar.
Many of the items set from the Options form customize the building
environment. These settings are applied globally to the scratch pad editors
and are saved for future sessions.
For details about using the Options form, see Customizing the Building
Environment.
In addition to customizing the work environment, some settings specify
options for the Display Builder application, such as turning the Auto Save
feature on and off.
Details about the tabs on this form can be found in the following sections.
6.3.5.1 Options Tab
Figure 49: Options Tab
The following are included on the Options tab on the Options form:
• Draw Lines with Flat Ends: Select this check box to apply this
characteristic of blunting the end points of polylines.
Proprietary - See Copyright Page 179 Other Forms, Dialog Boxes, and Tabs
Display Builder User’s Guide
Warning: This feature can produce unpredictable results if the display
generating hardware and software resident on a workstation do not
support it.
• Automatic Save: Select this check box to activate Auto Save. Specify
the interval in minutes.
• Auto Save Directory: Specify the directory for the backup file.
• Compiler Compatibility Version: Select the version of
e-terrabrowser with which your work is compatible. This is an
important feature that controls the availability of display features
compatible with a given version.
Note: It is very important not to select the “WebFG Development”
Compiler Compatibility Version. For a detailed description of Display
Builder’s compatibility version feature, see Selecting the Compatibility
Version. For a detailed cross-reference between compatibility versions
and display features, see the appendix Display Feature Cross-
Reference.
• WebFG Root Output Directory: Enter the destination directory for the
output of any binary compilation of displays for e-terrabrowser usage.
• WebFG Image Directory: Enter the directory where image files are
located. This directory path gives Display Builder access to image files
at design time.
If an image file directory does not exist, create an image directory and
copy the desired display image files in to it. Then, enter the path to the
new image directory in this configuration option.
Note: This path is not saved as part of the display definition. At run
time, the image path must be supplied in the "<images>" section of the
webfg_config.xml file in order to give the e-terrabrowser client access
to the image files that are used in a given display.
• Third-Party Control Directory: Specify the directory where Display
Builder probes third-party assemblies for WPF controls when the
application starts up (for additional information, see the section
Configuration).
• Don’t Warn Me About Compatibility Settings when Opening Files:
When an element or display set is opened in Display Builder, the
current compatibility version is compared to the version that was used
when the element or display set was saved. If the versions do not
match, an informational message is issued.
Proprietary - See Copyright Page 180 Other Forms, Dialog Boxes, and Tabs
Display Builder User’s Guide
This informational message is optional and can be disabled. It might be
useful to disable this option while performing batch compiles, etc.
• Embed Image Data Streams into Compiled Display File: This option
allows you to choose between compiling background images into the
display file, or linking to background images in the specified directory.
Note: Once these image files have been downloaded and cached,
displays that reference external image files should not incur noticeable
performance degradation for display call-up, scrolling, or zooming.
Displays that contain compiled-in image files have a larger file size and
take longer to load.
• Warning Level (0–4): Select the level of warning messages you would
like to be notified about based on the scale below:
− Warning Level 1: Show Data Integrity and Compiler Status
warning, suppress all others.
− Warning Level 2: Suppress Legacy and Upgrade Compatibility
warning, show all others.
− Warning Level 3: Suppress Legacy Compatibility warnings only.
− Warning Level 4: Show all compilation warnings.
Proprietary - See Copyright Page 181 Other Forms, Dialog Boxes, and Tabs
Display Builder User’s Guide
6.3.5.2 Customize Colors Tab
Figure 50: Customize Colors Tab
The following are included on the Customize Colors tab:
• Drawing Background: The color of the button indicates the
background color of all scratch pads.
• Alignment Grid Button: The color of the button indicates the color of
the grid lines on all scratch pads.
• Color Palette List Box: Mirrors the drawing background color and
alignment grid color selections.
• Selection Style: Depending on the background color, the default
selection box is sometimes hard to see. To make the selection box
easier to see, you can choose a dotted border or a solid border. By
default, the selection box is drawn using the Hatched Border option.
− Dotted Border: The selection box is shown with a dotted border,
which has medium visibility.
− Solid Border: The selection box is shown with a solid border,
which has the most visibility.
− Hatched Border: The selection box is shown with a hatched
border, which has the least visibility.
Proprietary - See Copyright Page 182 Other Forms, Dialog Boxes, and Tabs
Display Builder User’s Guide
For details about using the Customize Colors tab, see Customizing the
Building Environment.
6.3.5.3 Font Mapping Tab
Display Builder represents FG fonts by using Windows TrueType fonts.
The Font Mapping tab on the Options form maps the available FG font
family fonts to a TrueType font family. You can modify the mapping to
obtain the best match of appearance and size of fonts.
For details about using the Font Mapping tab, see Customizing the
Building Environment.
Figure 51: Font Mapping Tab
The following are included on the Font Mapping tab:
• Font Mapping Table: The FG font families and their mappings to
TrueType fonts are listed here.
• Select Font: Click this button to call up the standard Windows Font
dialog box.
Proprietary - See Copyright Page 183 Other Forms, Dialog Boxes, and Tabs
Display Builder User’s Guide
6.3.6 Scratch Pad Options Dialog Box
The Scratch Pad Options dialog box is accessed by selecting Options
from the scratch pad pop-up menu.
Figure 52: Scratch Pad Options Dialog Box
The following are included in the Scratch Pad Options dialog box:
• Grid Settings: Set the toggles in this section to control grid usage.
− Selecting Show Grid causes the gridlines to be displayed;
unselecting it causes them to be hidden. Gridlines are displayed by
default.
− Selecting Snap to Grid causes objects placed on the scratch pad
to automatically align with the grid. Unselecting Show Grid does not
affect whether or not objects snap to the grid; objects continue to
snap to the invisible gridlines.
− Selecting Square Grid causes the value of an entry on either the X
or Y axis to be mirrored in the companion entry. If Square Grids is
unselected, the X and Y values can be entered independently.
− Setting Show Grid Interval controls the number of gridlines
displayed on the scratch pad. Changing the grid interval does not
change the size of the grid; objects continue to snap to the invisible
gridlines.
− Square Grids: Select this check box to activate square gridding.
Proprietary - See Copyright Page 184 Other Forms, Dialog Boxes, and Tabs
Display Builder User’s Guide
− X and Y Grid Sizes: Specify the pixel spacing between grid lines in
the X and Y directions.
− Show Grid Interval: Specify the interval of grid painting in the
scratch pad (every grid line or some alternative interval).
• Zoom: Specify the magnification (%) of the scratch pad. The default
value is 100, which is standard magnification.
• Selection Handles: Use the radio buttons in this section to specify the
attributes of the handles (hot spots) that appear when an object is
selected.
− Handles Inside: Select this check box to put the handles inside the
object perimeter.
− Handles Outside: Select this check box to put the handles outside
the object perimeter.
− Size: Specify the size of the handle in pixels.
− Display Margin: Specify any margin (in pixels) that is desirable for
separating the grid from the edge of the editor window.
Note: When you close the editor, the settings specified in the Scratch Pad
Options dialog box are applied to the current scratch pad and saved for
future sessions. These options are saved separately for each type of
scratch pad (symbol, picture, picgroup, and display).
Proprietary - See Copyright Page 185 Other Forms, Dialog Boxes, and Tabs
Display Builder User’s Guide
6.4 Shared Tabs
Several tabs are shared by the Display Builder editors. These tab
descriptions are collected here for easy reference. Details about the tabs
can be found in the following sections.
6.4.1 Attachments Tab
The Attachments tab is used to specify and edit attachments.
Figure 53: Attachments Tab
The attachments are added to the list box by clicking the Add Attachment
button. Selecting an attached element, then clicking the Edit button, opens
the attached element’s editor. Selecting an element, then clicking the
Delete button, removes the attachment. For details about attaching
elements to objects, see Making Attachments to Placed Objects.
6.4.2 Permission Test Tab
Permission area tests are used to control operator interaction with
applications and their databases by limiting whether a display can be
called up at a workstation. In a permission area test, define the access
permission area ID(s) used in the display-based comparison check with
the PERMIT database, or specify where the area ID is found. For details
Proprietary - See Copyright Page 186 Other Forms, Dialog Boxes, and Tabs
Display Builder User’s Guide
about defining permission tests for pictures, layers, and displays, see
Defining Permission Area Tests.
Figure 54: Permission Test Tab
You can specify the permission area by name or specify a field that
contains the name. If needed, an indirect pointer chain can be specified to
point to this field. One or more permission area tests can be defined for
each object.
The following are included on the Permission Test tab:
• Apply Permission Test: Select this check box to enable test
definition.
• Permission Granted When: Use the radio buttons to specify when
display access is permitted.
− All Areas Are Valid: Select this radio button to grant display
access only when all specified area permission tests pass.
− Any Area Is Valid: Select this radio button to grant display access
when any of the tests pass.
• For Areas Specified By: Use the radio buttons to identify how the
area ID used in the test is being specified.
Proprietary - See Copyright Page 187 Other Forms, Dialog Boxes, and Tabs
Display Builder User’s Guide
− Area Names: Select this radio button to specify that the text
entered in the list box is the area ID.
− Fields and Indirects: Select this radio button to specify that the
text entered in the list box identifies a database location for the area
ID.
• Area ID Data Entry: In the list box, type the area ID or its database
location. The database location can be specified with global fields,
record fields, or record fields with indirects. OK each test definition
separately.
6.4.3 Placements Tab
The Placements tab is activated any time you simultaneously select more
than one scratch pad object.
Figure 55: Placements Tab
The selected objects are identified by their element type icon, type name,
and element name. Formatted fields are identified by their field_record
definition rather than by element name.
Proprietary - See Copyright Page 188 Other Forms, Dialog Boxes, and Tabs
Display Builder User’s Guide
Note: Selecting an object causes it to flash on the scratch pad.
6.4.4 Define Link Tab
The Define Link tab is activated for pictures placed on a simple layer and
symbols with an attached CAM placed on a simple layer. Primitives with a
CAM attached that have been drawn on a simple layer also activate this
tab.
Figure 56: Define Link Tab
Specify the linkage for a picture, symbol, or primitive by entering a
composite key, with each entry separated by a carriage return. For details
about entering composite keys, see Defining Simple Layer Database
Linkages.
Proprietary - See Copyright Page 189 Other Forms, Dialog Boxes, and Tabs
Display Builder User’s Guide
6.4.5 Lock Tab
The Lock tab is used to specify picture locking in a picgroup. This tab is
part of the Picture Properties form, which appears when a picture is
double-clicked in the Picgroup Editor scratch pad.
Figure 57: Lock Tab
Select the X Locked check box to lock the picture in the horizontal
(panning) direction. Select the Y Locked check box to lock the picture in
the vertical (scrolling) direction (see Locking Picgroup Objects).
Proprietary - See Copyright Page 190 Other Forms, Dialog Boxes, and Tabs
Display Builder User’s Guide
6.4.6 Scale Tab
The Scale tab is used to specify the parameters for dynamically scaling a
symbol or primitive from its original size (100% growth) to a minimum or
maximum or no upper boundary.
Figure 58: Scale Tab
The following are included on the Scale tab:
• Apply Scale Factor: Select this check box to activate the fields on the
tab.
• Scaling Field: Specify the record field whose value is represented by
the size of the symbol or primitive.
• Growth Buttons: Click the button that indicates the direction(s) of
growth.
• Minimum Growth Percentages: Specify the location of the value that
determines a scaling to 0% of original size by selecting one of the
following:
− Field: In the text box, enter the field_record identifier.
Proprietary - See Copyright Page 191 Other Forms, Dialog Boxes, and Tabs
Display Builder User’s Guide
− Literal: In the text box, enter the integer value.
• Maximum Growth Percentages: Specify the location of the value that
determines a scaling to 100% of original size by selecting one of the
following:
− Field: In the text box, enter the field_record identifier.
− Literal: In the text box, enter the integer value.
− No Limit: Select this check box if the object has no growth
maximum.
The basic concepts of defining a scale factor are:
• Defining the scaled object in the scratch pad to represent a value in the
scaling field of one (1), or 100% growth.
This means that, by default, the object appears on the online display
exactly as drawn when the scaling field value is 1. When the scaling
field value is 0.5, it appears at 50% of its defined size, and when the
scaling field value is 1.25, it appears at 125% of its defined size.
• Defining proportionality values when scaling field values are not
decimal representations of percentages (i.e., values such as 0.5, 1,
1.25, etc.). Proportionality values are those scaling field values that
you want to represent 0% and 100% growth, respectively.
Example: Assume that the values in a scaling field range between 20
and 50, and you want 0% growth represented by the value 20, and
100% growth represented by the value 40. In this case, a value of 30
scales the object to 50% of its defined size, and a value of 45 scales it
to 125%.
Minimum or maximum proportionality values can be specified literally,
or you can reference a field that contains the values.
• Specifying the growth directions. The object can be defined to grow in
any combination of dimensions.
• Defining minimum and maximum growth percentages that limit the
growth of the object.
Example: If the minimum growth percentage is set at 20% and the
maximum is 125%, the object can never shrink below 20% or grow
beyond 125% of its defined size, regardless of the value in the scaling
field.
Indirect links for scale factors were provided as of Display Builder 5.6.
Previously, indirect links were only supported for Formatted Fields,
Proprietary - See Copyright Page 192 Other Forms, Dialog Boxes, and Tabs
Display Builder User’s Guide
CAMs, CTs, and Shift Factors. Indirect links can be associated with the
scaling field, minimum bound field, and maximum bound field.
For instructions on how to apply a scale factor, see the section Specifying
a Scale Factor on a Picture Object (Primitive or Symbol).
6.4.7 Declutter Tab
The Declutter tab is used to specify the % zoom level at which the element
vanishes from the display.
Figure 59: Declutter Tab
Select the Declutter check box to activate the zoom % boxes, then specify
the percent level of zoom at which decluttering occurs.
For details about the declutter specifications, see Defining Placement
Declutter.
Proprietary - See Copyright Page 193 Other Forms, Dialog Boxes, and Tabs
Display Builder User’s Guide
6.4.8 Colors Tab
The Colors tab is a feature of the Shared GAB editor. It is also available
on the Properties forms for primitives if no shared GAB has been
attached.
Figure 60: Colors Tab
The following are included on the Colors tab:
• Foreground and Background (Alternate Blink Color): Click the
Foreground or Background button, then select a color from the color
palette list box. The result of the selection is mirrored on the selected
button.
Note: The background color specified becomes the background color
of run-time text entry boxes when the GAB is attached to an enterable
formatted field.
• Blinking Option: Select On or Off to set the shared GAB’s blink
attribute.
Proprietary - See Copyright Page 194 Other Forms, Dialog Boxes, and Tabs
Display Builder User’s Guide
6.4.9 Lines and Fills Tab
The Lines and Fills tab is a feature of the Shared GAB editor. It is also
available on the Properties forms for primitives if no shared GAB has been
attached.
Figure 61: Lines and Fills Tab
The following are included on the Lines and Fills tab:
• Line Width: Move the slider to specify the line width in pixels.
• Fill Pattern: From the list box, select a fill pattern. If the object can be
filled and has the Fill attribute set to Filled, this pattern is painted.
• Fill Options: Set the Fill, Fill Style, and Fill Rule options as follows:
− Unfilled/Filled: Select Unfilled for an empty interior or Filled for a
patterned interior.
− Solid/Stippled/Opaque: Select Solid for solid coloration, Stippled
for a dotted coloration with the background color predominant, or
Opaque for a dotted coloration with the foreground color
predominant.
Proprietary - See Copyright Page 195 Other Forms, Dialog Boxes, and Tabs
Display Builder User’s Guide
− Even-Odd/Winding: Select Even-Odd for alternating fill within a
polygon and Winding for total filling of a polygon. The Even-Odd
selection tells the Fill utility to alternately fill “spaces” that result
from construction lines.
− Halo: The Halo Style attribute affects how graphics are rendered.
Specifically, it determines whether and how an enclosing band in
the background color of the GAB should be drawn around the
primary graphics. Halo Style is intended to create the “highlight”
effect during abnormal conditions.
− None: No Halo “highlight” effect.
− One Pixel: Thin “highlight” effect.
− As Line: Thick “highlight” effect.
6.4.10 Fonts Tab
The Fonts tab is a feature of the Shared GAB editor. It is also available on
the Properties forms for primitives if no shared GAB has been attached.
Figure 62: Fonts Tab
Specify the font by selecting the character set, family, size, weight, and
slant from the drop-down lists.
Proprietary - See Copyright Page 196 Other Forms, Dialog Boxes, and Tabs
Display Builder User’s Guide
6.4.11 TrueType Fonts Tab
Starting with version 5.4.0, Alstom Grid replaced the existing Fonts tab (on
the Shared GAB editor, and on the Properties Page for primitives if no
shared GAB has been attached) with a new TrueType Fonts tab.
Figure 63: TrueType Fonts Tab
Specify the font by clicking the Select TrueType Font button, and then
clicking OK.
Proprietary - See Copyright Page 197 Other Forms, Dialog Boxes, and Tabs
Display Builder User’s Guide
Figure 64: Standard Windows Font Dialog Box
Proprietary - See Copyright Page 198 Other Forms, Dialog Boxes, and Tabs
Display Builder User’s Guide
7. Multi-Dimensional Displays
Tabular layers can be defined to automatically generate a table showing
two dimensions in a multi-dimensional array. This is accomplished by
defining a special multi-dimensional (“multi-D”) picture, placing it in a
picgroup, and placing the picgroup on a tabular layer. The multi-D picture
is unique in that it specifies more than one record in its definition (the
records in the multi-dimensional array). In addition, all formatted fields in
the picture must be defined in the form:
fieldname_recorda_recordb_recordc
where fieldname is the name of the field in the multi-dimensional structure
to be displayed and recorda, recordb, and recordc are the multi-
dimensional records specified in the picture definition.
Note: For two-dimensional arrays, only two records are specified in the
picture and formatted field definitions.
• The multi-D picture is defined to display the various instances of the
multi-dimensional field, F_A_B_C, where F is the field name and A, B,
and C are the records in the multi-dimensional array that share the
field.
• The multi-dimensional repeats the picgroup, thus showing the various
values of F for successive instances of A for constant values of B and
C.
• The picgroup repeats showing the various values of F for successive
values of B.
7.1 Creating Multi-Dimensional Pictures
To create a multi-dimensional picture, use the following procedure:
1. Open the Picture Editor.
2. Use the Picture Properties form to enter two or three records.
3. Specify the field names for all formatted fields using the
field_recorda_recordb_recordc convention.
4. Click OK to save the parameters and close the form.
For details about Picture Properties form usage, see the section Picture
Placement Properties.
Proprietary - See Copyright Page 199 Multi-Dimensional Displays
Display Builder User’s Guide
7.2 Modifying Default Driving Data
The default driving data of a multi-dimensional display can be modified by
doing the following:
• Modify the order in which records repeat within the picgroup and in
which records repeat with the picgroup. By default, these are in the
order they are listed in the multi-D picture definition.
• Specify which occurrence of the constant record is displayed. This is
required for three-dimensional displays and is specified using the
Tabular Layer Properties form.
Figure 65: Multi-Dimensional Tab
To modify the default driving data, use the following procedure:
1. Call up the Tabular Layer Properties form using the Layers button in
the toolbar, or the Layers and Driving Data option from the Display
menu.
2. Select the Tabular Definition tab.
3. Select the Multi-Dimensional radio button.
Proprietary - See Copyright Page 200 Multi-Dimensional Displays
Display Builder User’s Guide
4. Select the Multi-Dimensional tab.
5. (optional) Specify the data retrieval sequence using the First and Last
Subscript radio buttons.
6. (optional) Modify the record processing order by editing the text boxes,
as follows:
− In the first text box, type in the name of the record that repeats
within the picgroup.
− In the second text box, type in the name of the record that repeats
with the picgroup.
− In the third text box, type in the name of the record held constant.
− If you have changed the record held constant, modify the Record
Subscript For text box to match.
7. (required for three-dimensional displays) Specify which occurrence of
the record held constant is displayed.
− Specify a subscript value literally, as follows:
∗ Select the Literal radio button.
∗ Type the literal value in the adjacent text box.
Or:
− Specify a proxy that evaluates to a subscript value, as follows:
∗ Select the Proxy radio button.
∗ In the text box, type the proxy string.
Or:
− Specify a composite key, as follows:
∗ Select the Composite Key radio button.
∗ Type the linkages in the dialog box.
The default driving data for the multi-dimensional display is now
modified.
For details about Tabular Layer Properties form usage, see the section
Tabular Definition Tab.
Proprietary - See Copyright Page 201 Multi-Dimensional Displays
Display Builder User’s Guide
7.3 Specifying the Layout of Multi-D Displays
e-terrabrowser creates multi-D displays by painting one or more slices of
the display. A “slice” is made by holding all but the first record constant,
and showing all occurrences of picgroups for this record.
The picgroup spacing and orientation within this slice is determined by the
multi-dimensional offset parameters of the Tabular Layout form. Once this
slice has been painted, the second record in the processing order is
incremented, and a second slice is created.
The spacing and orientation between slices is determined by the Between
block offset parameters of the Tabular Layout form.
To set these offset parameters, use the following procedure:
1. Use the Tabular Simulation form to set the simulation data to a few
(three to five) instances of the multi-D picgroup and one slice.
2. Adjust the orientation and spacing of the multi-dimensional offset using
the Tabular Layout form.
3. On the Tabular Simulation form, increase the number of slices.
4. Adjust the orientation and spacing of the Between block offset
parameters using the Tabular Layout form.
The layout of displays that mix multi-D layers with other layer types can be
greatly simplified by manually setting the picture sizes on the Picture
Definition form.
Note: If the height of all pictures repeating downward is the same and the
width of all pictures repeating across is the same, then pictures on
different layers align exactly.
Proprietary - See Copyright Page 202 Multi-Dimensional Displays
Display Builder User’s Guide
8. WPF Controls
This chapter discusses embedding WPF Controls into displays.
8.1 The Controls Library
8.1.1 Showing the Controls Library Window
WPF controls are only placed on simple layers. To place a WPF control in
a display or Picture Editor, access the Controls Library by clicking the
Controls Library button on the Display Builder toolbar. The Control
Library button is only enabled for Picture, Nested Picture, and Display
(Simple) editors.
The Controls Library window appears, as shown below.
Figure 66: Controls Library
Proprietary - See Copyright Page 203 WPF Controls
Display Builder User’s Guide
The Controls Library window always floats on top of other windows in
Display Builder. You can move it around the workspace area to make
room for working on the editor.
You can resize the Controls Library window to see more or fewer controls.
When the list of controls is long, you can click on the expander/collapser
arrow or the text next to it to hide or see more controls. When the list of
controls is longer than what the window can show, use the scrollbar or the
mouse wheel to scroll the content.
Expanded Collapsed
8.1.2 Content of the Controls Library
The content of the Controls Library is composed of a small set of .NET
Framework WPF controls, the WPF controls found from probing
assemblies in the <%installation folder%>\CustomControls, and in the
control directory you specify.
The .NET Framework controls that are grouped and included in the
Controls Library are as follows:
• Common
− Button
− CheckBox
− ComboBox
− Label
− RadioButton
− TabControl
• Items Controls
− ListBox
− ListView
− TreeView
Proprietary - See Copyright Page 204 WPF Controls
Display Builder User’s Guide
• Specialized Controls
− GroupBox
− ProgressBar
− Slider
− TextBox
WPF controls that are found from probing assemblies in the <%installation
folder%>\CustomControls directory and the Third-Party Control directory
you specified are all grouped into the Third-Party Controls.
By default, without the Third-Party Control directory being set, you find two
WPF controls in the Third-Party Controls group, which are
AreaStatusChart and PesgoChart. These controls are shipped with the
Display Builder installation.
8.1.3 Third-Party Control Directory
8.1.3.1 Configuration
At startup, Display Builder probes assemblies in the
<%installation folder%>\CustomControls and the Third-Party Control
directory for WPF controls. If the latter is not configured, it is skipped.
To set the location of the Third-Party Control directory:
1. In Display Builder, from the View menu, click Options.
2. In the Options window, update the Third-Party Control Directory field
by either typing the path to the directory or by using the Browse button
to browse to and set the directory.
Proprietary - See Copyright Page 205 WPF Controls
Display Builder User’s Guide
3. After changing the Third-Party Control Directory, restart Display Builder
for the change to take effect.
8.1.3.2 Organization of the Third-Party Control Directory
At the root of this directory is the optional
ControlPropEditorMapping.config file, which is used to configure which
WPF controls are custom property editors and which are controls that use
custom property editors.
Details about the ControlPropEditorMapping.config file are mentioned in
the section The ControlPropEditorMapping.config File.
An assembly containing WPF controls and its dependencies must be
organized into a subdirectory of the Third-Party Control directory for
Display Builder to examine. Display Builder ignores assemblies that are at
the root level of the Third-Party Control directory.
8.1.4 Loading the Content of the Third-Party Control Directory
• When reading the content of the configured Third-Party Control
directory, if the file ControlPropEditorMapping.config exists, Display
Builder merges its content with that of the default
ControlPropEditorMapping.config file in the
<%installation folder%>\CustomControls directory.
Proprietary - See Copyright Page 206 WPF Controls
Display Builder User’s Guide
• The Controls Library does not include duplicate controls. For example,
if the configured Third-Party Control directory contains the exact
content as the <%installation folder%>\CustomControls one, the
Controls Library only shows one instance of each control it finds
instead of two.
• Assemblies from the default <%installation folder%>\CustomControls
have a higher priority than those in the configured Third-Party Control
directory. For example, if you copy an assembly to both the default
custom controls directory and the configured one, the copy in the
default custom control is used. For more details, see the Order of
Loading .NET Assemblies for WPF Controls.
• WPF controls that are configured to be custom property editors in the
ControlPropEditorMapping.config file are not included in the Controls
Library.
• Display Builder does not support WPF controls of types or subclasses
of the types: System.Windows.Window,
System.Windows.Controls.Primitives.Popup, or
System.Windows.Controls.ToolTip. Therefore, WPF controls that are
of these types or subclasses of these types are not included in the
Control Library.
• When new assemblies are added to the Third-Party Control directory,
they are probed for controls and the content of the Controls Library are
updated in real time.
8.1.5 Showing Icons for Third-Party Controls
If the control has a class level ToolboxBitmapAttribute specifying how to
get the graphic for the control, the control is displayed in the Controls
Library using the specified graphic as an icon. Otherwise, the control is
displayed with the default icon.
For users who develop their own third-party controls and want to show
their controls in the Control Library with their icons, include the image files
used for icons in the assembly as embedded resources and set the
ToolboxBitmapAttribute to the control class.
For example:
[System.Drawing.ToolboxBitmap(typeof(MyControl),
"icons.logo.png")]
public partial class MyControl
{
public TestAsmOneUserControlA()
{
...
}
}
Proprietary - See Copyright Page 207 WPF Controls
Display Builder User’s Guide
In this case, the graphic for the logo is stored in the icons folder of the
project as an embedded resource.
8.1.6 Use a Network Share as the Third-Party Control Directory
You can store control assemblies on a network share and configure
Display Builder to check that location for custom controls. That way,
management of control assemblies can be centralized.
However, for Display Builder to be able to load and probe assemblies from
a network share for controls, the Code Access Security policy of the
machine on which Display Builder is running needs to be modified to trust
the network share using the Code Access Security Policy Tool,
Caspol.exe. Caspol.exe is included in the installation of the .NET
Framework. Details of how to use the tool can be found in the MSDN
library at http://msdn.microsoft.com/en-us/library/cb6t8dtz.aspx.
Alstom Grid provides the TrustRemoteAsm.bat in Display Builder’s
installation folder as a tool to modify Code Access Security to grant Full
Trust to the network share passed to the batch file as one of the
arguments. You are free to modify the script file to fit your security policy.
For details of how to use the batch file, at the command prompt, change
directories to Display Builder’s installation folder, and type:
TrustRemoteAsm.bat /?
For more information about Code Access Security, refer to the MSDN
library at: http://msdn.microsoft.com/en-us/library/930b76w0.aspx.
8.1.7 Placing WPF Controls on the Editor
To place a WPF control on the editor, use the Controls Library. Drag a
WPF control from the Controls Library and drop it onto the desired editor
to place it. Upon dropping a control, the control is created with a default
size. The default size of a control varies for each type of the control and is
never smaller than the control’s minimum size if the control has the
MinWidth and MinHeight properties set.
You can only drop a WPF control on the display or on a Picture Editor.
8.2 Embedding WPF Controls in e-terrabrowser Displays
8.2.1 Order of Loading .NET Assemblies for WPF Controls
When opening an existing display or picture with WPF controls on it, or
when probing assemblies for WPF controls to display in the Controls
Library, Display Builder uses a defined pattern to resolve assemblies. It is
important for you to know the sequence that Display Builder uses to
resolve assemblies to create WPF controls so that you can understand
Proprietary - See Copyright Page 208 WPF Controls
Display Builder User’s Guide
why a display might look different on one machine from the other in the
case where the two machines use different versions of assemblies.
With the <%installation folder%>\CustomControls directory referred to as
“Primary Assembly Location” and the location that you configured as a
Third-Party Control directory using the Options dialog box referred to as
“Configured Assembly Location”, below is the activity diagram of how
Display Builder resolves an assembly to create the requested WPF
control.
Request to load Check if the assembly with
assembly with fullname such fullname is LOADED
No
Yes Check if assembly is a
framework assembly or is
in GAC
Search Primary Assembly Find assembly with exact
Location version
Found Search Configured
Assembly Location
Found Find assembly with exact
version
Check LOADED assemblies Find assembly with exact
using SIMPLE name version
Found
Find greatest version
Found
In the list of loaded
assemblies and
Load assembly assemblies found in
Primary Assembly
Location and Configured
Assembly Location
If Display Builder fails to resolve the assembly needed to create a WPF
control on the display or Picture Editor, the control is not created.
However, the information about the control is still maintained. The object
browser still shows the control. You can still select it, highlight it, and so
on. This is necessary in case you get the display definition file (the DDL
Proprietary - See Copyright Page 209 WPF Controls
Display Builder User’s Guide
file) from a colleague, but do not have a required assembly available on
your machine. However, you are still able to work on the file.
8.2.2 Instantiation and Display of a WPF Control
WPF controls placed in displays are instantiated with the property settings
and event handlers specified in Display Builder.
For properties that are databound, the run-time data value is used to
update the associated properties in order to change the appearance
and/or behavior of the control. Refreshes are also supported.
If provided with value converters defined by scripting functions, bound
values are converted by running through the converting scripting function
before being applied to the binding properties.
Due to the limitation of the .NET Framework’s rendering logic, if the WPF
control’s size is set to be larger than the virtual desktop area, only the
portion equal to the virtual desktop area is visible.
8.3 Modifying a WPF Control Using the Property Setter
8.3.1 Calling Up the Property Setter
To modify the properties of a WPF control, call up the Control Property
Setter. There are a couple of ways to call up the Property Setter:
• Right-click on the WPF control and select Properties.
Note that this is different from viewing properties for other types of
placeable elements because you do not have to select the placement
object first in order to change its properties. Even if the WPF control is
selected, right-clicking on another area of the editor does not show the
properties menu item for the WPF control.
Proprietary - See Copyright Page 210 WPF Controls
Display Builder User’s Guide
• Using the Object Browsing window, right-click on the item representing
the WPF control, and select Properties.
8.3.2 Using the Property Setter to Modify the WPF Control
The Property Setter is a resizable modal window. Using this Property
Setter window, you can change the look and feel of the WPF control, set
up data bindings for properties, set up event handlers for events of
interest, change the position of the control on the display, and so on.
By default, there are three tabs: Properties, Events, and Other Settings. If
the control being modified is configured to have a custom property editor,
a fourth tab is displayed. For more details, see the section Custom
Property Editor Tab.
Proprietary - See Copyright Page 211 WPF Controls
Display Builder User’s Guide
8.3.2.1 Properties Tab
The Properties tab displays the dependency properties of the control
together with data binding information. On this tab, you can change values
of properties or set up data binding information for them.
8.3.2.1.1 List Modes
There are five modes of how the Properties tab displays properties of the
WPF control. You can switch among these modes using the five list mode
buttons at the top of the tab.
Alphabetical Lists properties in alphabetical order of the
properties’ names.
Proprietary - See Copyright Page 212 WPF Controls
Display Builder User’s Guide
In Use Lists only properties that are in use, i.e., are
different from the default values for those properties.
By Category Groups properties into categories and lists them by
alphabetical order. Use the expander control to
expand/collapse the groups to hide/see more/fewer
properties.
By Type Groups properties into groups of .NET data types of
the properties. For example, for a Button control,
many properties are of types Boolean, Brush,
Double, Thickness, etc., and they are grouped into
those types. Use the expander control to
expand/collapse the groups to hide/see more/fewer
properties.
By Class Groups properties by places where the properties
are defined, i.e., the exact classes that the WPF
control inherits from. Use the expander control to
expand/collapse the groups to hide/see more/fewer
properties.
8.3.2.1.2 Advanced Check Box
Select or unselect the Advanced check box to see more or fewer
properties of the WPF control.
Sometimes, the whole list of properties is overwhelming. Most of the time,
you only need to work on a small set of common properties.
8.3.2.1.3 Assigning a Name to a WPF Control
To be able to bind to the control’s properties from other WPF controls or to
get a reference to the control from the scripting function definition, the
control needs to have a name. To assign a name to a WPF control, use
the Name text box.
The string “Name” is prefixed with the type of the control being modified.
For example, if you are modifying the properties of a check box, the text is
shown as “CheckBox Name”.
The name assigned to the control must be unique on the editor. If you type
a name that is already used by another control (even on another layer),
Display Builder prompts you to choose a different name.
Proprietary - See Copyright Page 213 WPF Controls
Display Builder User’s Guide
8.3.2.1.4 Modifying Property Values of a WPF Control
Each property is presented with its name, the property value editor,
a reset button, and a data binding button.
8.3.2.1.5 Property Name
The name of a property of the WPF control that the Property Setter
retrieves dynamically. When the property’s value is different from the
default one, the property’s name is bold.
8.3.2.1.6 Property Value Editors
For different types of properties, the Property Setter presents different
property editors to change its value, such as a TextBox for properties that
do not need a special editor, a Brush Editor for Brush type properties, a
Check Box for Boolean type properties, a ComboBox for properties whose
values can be selected from a list of items, a Collection Editor for
IEnumerable type properties, a Visibility editor for Visibility type properties,
and so on.
Property value editors that are CheckBox, TextBox, ComboBox, or
templated radio buttons are intuitive to work with. The Brush, Bitmap, and
Collection editors require a few steps.
8.3.2.1.7 Brush Editor
By default, the brush editor is hidden. Click on the expander button to
view it.
When presented with the Brush editor, use the appropriate button to select
the brush type. The action is different for each brush type.
Proprietary - See Copyright Page 214 WPF Controls
Display Builder User’s Guide
Named Click this button to use a named brush. Named
brushes are premade static brushes found in WPF.
There are close to 200 static brushes in the
System.Windows.Media.Brushes class. Named
brushes are frozen and cannot be modified. For
example, you cannot use the opacity property on a
named brush. Upon clicking this button, you are
presented with a list of named colors to select from.
Selecting an item in the list sets the color for the
property.
System Click this button to use a named system brush.
System brushes are brushes that represent certain
colors in Microsoft Windows, such as the
background color for a control. These colors can
change depending on the theme you are using for
Windows. Upon clicking this button, you are
presented with a list of named system brushes to
select from.
Selecting an item in the list sets the color for the
property.
Proprietary - See Copyright Page 215 WPF Controls
Display Builder User’s Guide
Solid Click this button to use a solid color. Upon clicking
this button, you are presented with options to select
a solid color.
Use the Opacity text box or the slider to change the
value for the opacity.
Use the ARGB text box to enter a hex value
representing the color of interest, or use the color
palette to select a color.
Proprietary - See Copyright Page 216 WPF Controls
Display Builder User’s Guide
Linear Click this button to use a linear gradient brush. A
Gradient linear brush paints two or more colors in a uniform
manner. A series of gradient stops defines the
interpolation of the colors. Colors are drawn along a
gradient axis defined by start and end points. Upon
clicking this button, you are presented with the UI to
set the direction of the gradient, add/remove gradient
stops, set colors for the gradient stops, and set
opacity, as well as applying gradient effects to the
linear gradient.
Proprietary - See Copyright Page 217 WPF Controls
Display Builder User’s Guide
Radial Click this button to use the radial gradient brush. A
Gradient radial brush also uses gradient stops. The axis used
for interpolation of the colors is defined from the
center of an ellipse outwards. Upon clicking this
button, you are presented with the UI to set the
origin of the gradient, add/remove gradient stops,
change directions of the gradient, and so on.
Image Click this button to select the brush that paints using
a raster image.
Video Click this button to select the brush that paints using
video.
Proprietary - See Copyright Page 218 WPF Controls
Display Builder User’s Guide
8.3.2.1.8 Bitmap Effects Editor
The Bitmap Effects Editor is used for modifying the BitmapEffect property
of the WPF control. The BitmapEffect property is hidden by default. Select
the Advanced check box to show it.
Use the expander next to the property name to reveal the Bitmap Effects
editor if it is hidden.
The Add button lets you select one of the five bitmap effects: Blur, Drop
Shadow, Outer Glow, Bevel, and Emboss. Below are brief descriptions of
each effect’s properties.
• Blur
Blur is the effect similar to smudging the edges of an object in order to
give it a softer look. The Bitmap Effects editor offers two types of blur
effects (also known as kernel types): box and Gaussian. A box blur
effect changes the color value of each pixel based on the number of
pixels next to it, along either the horizontal or vertical planes. A
Gaussian blur effect is a bell-shaped curve where the blur is applied in
a uniform distribution to the overall shape — a softer effect than the
box blur effect.
The radius property determines the radius of the effect. The value
range of this property appears to be whole numbers from 1 to 500.
Proprietary - See Copyright Page 219 WPF Controls
Display Builder User’s Guide
• Drop Shadow
This effect gives an object a shadow in order to give it a 3-D
appearance. In order to use this effect, your object must have a
minimum opacity of 10% (0.1).
Drop shadow effects have six defining characteristics: color, direction,
noise, opacity, shadow depth, and softness.
− Color: Only solid (opaque) colors may be applied. If you wish to
soften the shadow color, you can lighten the tone with the Bitmap’s
Opacity property.
− Direction: This property range is from 0 to 360 degrees and
appears to render the light from left to right. For example, 1 degree
leaves a shadow to the right and slightly above the element. The
rest of the values go in a counter-clockwise rotation.
− Noise: This property adds random transparency variations to the
shadow. This effect is useful if you want to imply or match a texture
of an image. The value range is between 0 and 1.
− Opacity: As with the rest of the API, the opacity range for the
bitmap shadow is from 0 to 1.
− Shadow Depth: This property determines the width of your shadow.
− Softness
• Outer Glow
This effect creates an aura surrounding the element.
− Glow Color: This property only recognizes solid opaque colors as
values. Use the Bitmap Opacity property to thin out your color.
− Glow Size: This property determines the width of the aura
surrounding the element.
− Noise: This property adds random transparency variations to the
Outer Glow. This effect is useful if you want to imply or match a
texture of an image. The value is between 0 and 1.
− Opacity: As with the rest of the API, the opacity range for the
bitmap shadow is from 0 to 1.
• Bevel
This effect creates a beveled look.
Proprietary - See Copyright Page 220 WPF Controls
Display Builder User’s Guide
• Emboss
This effect creates an embossed look.
8.3.2.1.9 Collection Editor
The Collection Editor is for modifying properties of type IEnumerable.
Controls that inherit the ItemsControl control such as ComboBox, ListBox,
TabControl, TreeView, and so on all have the ItemsSource property,
which is edited using the Collection Editor.
Use the Ellipses button to open the Collection Editor dialog box.
When presented with the Collection Editor dialog box, use the Add button
to add items to the collection.
Use the arrow buttons and the Delete button to rearrange the selected
items in the collection or remove them from the collection.
Select an added item, and its properties are displayed on the right panel.
Edit them the way you do with the properties of the WPF control being
edited.
If the child items being added to the collection also have properties of
IEnumerable type, you can recursively add items to those child items. An
example is the TreeView control. Each TreeViewItem added to the
TreeView has the ItemsSource property to which you can add
TreeViewItems.
Proprietary - See Copyright Page 221 WPF Controls
Display Builder User’s Guide
8.3.2.1.10 Reset Button
The Reset button changes the value of the property back to its original
value.
8.3.2.1.11 Data Binding Button
The Data Binding button shows the menu for selecting the type of data
binding for the property’s value.
8.3.2.1.12 Configuring Data Binding for a Property
In addition to being able to set literal values in the WPF control’s
properties, you can choose to bind the properties to three different types
of data sources: a database field, a WebFGQuery, or a property of
another named WPF control on the same editor. Optionally, you can
provide a converter for the bound data source. The converter converts the
value retrieved from the data source before applying it to the binding
property.
When a property is configured to be databound, you are not able to edit
the property. The editor becomes grayed out.
The Data Binding button’s appearance changes to indicate the type of
data binding that the property is using. Below is the list of the indicators
and their meanings.
Being bound using Database Field Binding.
Being bound using Query Binding.
Being bound using Object Binding.
The Data Binding button’s behavior changes to show menu items for
deleting or editing the data binding information.
Removing the data binding information makes the property editable again.
Proprietary - See Copyright Page 222 WPF Controls
Display Builder User’s Guide
8.3.2.1.13 Bind to Database Field
The Bind to Database Field option lets you bind a property to the value of
the given database field.
Upon clicking the Data Binding button and selecting “Bind to Database
Field”, you are presented with the Database Field Binding dialog box.
Figure 67: The Database Field Binding Dialog Box
The following fields are shown on the Database Field Binding dialog box:
• Field Name
In the Field Name text box, enter the database field to which the
property is bound. That is all it needs for setting up database field
binding. Enter Record Context information on the Other Settings tab.
For information about inputting Record Context information, see the
section Other Settings Tab.
• Converter
If you choose to use a converter, you can input information about the
converter in the Converter area.
− Script Language: Use the combo box to select the language in
which the scripting function that converts the value is written in.
− Convert Method: Enter the name of the scripting method to use for
converting the value.
− Convert Parameter: This is optional. Enter a value or a proxy
string to pass to the second parameter of the scripting function. See
the subsection Value Converter of the .NET Scripting Support
section in the e-terrabrowser Reference Manual for more
information about how to write a value converter method. If a proxy
is entered, it is resolved first. The resolved value is then passed to
the converting method.
Proprietary - See Copyright Page 223 WPF Controls
Display Builder User’s Guide
In addition to existing proxy strings, Alstom Grid introduces two new
proxy string formats that you can use in this context:
%PROP.this.PropertyName%
Resolves to the value of the property with the name PropertyName
of this control.
For example:
The WPF control being modified is a button control with the width
equal to 200.
%PROP.this.Width%
resolves to 200.
%PROP.ControlName.PropertyName%
Resolves to the value of the property with the name PropertyName
of the control with the name ControlName.
For example:
%PROP.ButtonOne.Height%
Assuming that there is a WPF control named “ButtonOne” whose
height is 100, the above proxy resolves to 100.
8.3.2.1.14 Bind to Query
Bind to Query lets you bind the property to the result of executing a query.
The result of the query binding is the data in the first column of the first
table of the dataset returned by executing the query. If the first table has
more than one column, data from the columns are combined and delimited
by commas.
Upon clicking the Data Binding button and selecting “Bind to Query”, you
are presented with the Query Binding dialog box.
Proprietary - See Copyright Page 224 WPF Controls
Display Builder User’s Guide
Figure 68: The Query Binding Dialog Box
• Query
Enter the XML text of the query syntax used for issuing the query into
the Query text box.
One usage of query binding is to bind the ItemsSource property of an
ItemsControl such as the combo box to the query that returns the list of
something.
• Converter
Similar to the Bind to Database Field option, you can provide a
converter to convert the returned value from the query before applying
it to the property.
8.3.2.1.15 Bind to Object
Bind to Object lets you bind a property to that of a different named control
that is on the same editor (i.e., the same display editor or picture editor).
Upon clicking the Data Binding button and selecting “Bind to Object”, you
are presented with the Object Binding dialog box.
Proprietary - See Copyright Page 225 WPF Controls
Display Builder User’s Guide
Figure 69: The Object Binding Dialog Box
• Source
− Name: Use the combo box to select a named control.
− Property: Only enabled when a named control is selected from the
Name combo box. When a control is selected from the named
combo box, the Property combo is populated dynamically with the
properties of the selected control. Use the combo box to select the
property you want to bind to.
• Converter
This is similar to the Bind to Database Field option and the Bind to
Query option with the exception of the Convert Back method. The
Convert Back method is for converting the value of the property before
applying it back to the source. The Convert Back method and its
accompanying Convert Back parameter are only enabled when the
Binding Mode is Two Way or One Way to Source (discussed in the
following section).
• Binding Mode
There are four binding modes.
− OneWay: Causes changes to either the source property or the
target property to automatically update the other.
− TwoWay: Updates the binding target property when the binding
source changes.
Proprietary - See Copyright Page 226 WPF Controls
Display Builder User’s Guide
− OneTime: Updates the binding target only once when the display is
called up.
− OneWayToSource: Updates the source property when the target
property changes.
8.3.2.2 Events Tab
The Events tab displays events that the control exposes. On this tab, you
can choose to add event handlers for events that you are interested in.
8.3.2.2.1 List Modes
There are three modes for how the Events tab displays the list of events.
You can switch among the listing modes using the three list mode buttons
at the top of the tab.
Alphabetical Lists events in alphabetical order of the events’
names.
In Use Lists only events that have handlers set up.
By Category Groups events into categories and lists them by
alphabetical order. Use the expander control to
expand/collapse the groups to hide/see
more/fewer events.
Proprietary - See Copyright Page 227 WPF Controls
Display Builder User’s Guide
8.3.2.2.2 Setting Up an Event Handler for an Event
An event without a handler is shown with an empty text box. Note that the
text box is not editable.
To add an event handler for the event, click the Event button , and select
the Add Event Handler menu item.
Upon selecting the Add Event Handler menu item, the Event Handler
dialog box is presented. Use this dialog box to define an event handler for
the event.
Figure 70: The Event Handler Dialog Box
• Event Name: Event name displays the name of the event to which you
are adding the event handler.
• Available Parameters: This is the list of event arguments and their
properties (if there are any) available for you to use when the event is
fired. To use an item in the list, double-click on it, and the proxy string
representing it is put in the bottom text box at the cursor position.
Proprietary - See Copyright Page 228 WPF Controls
Display Builder User’s Guide
• Show Full Type Name: Check/uncheck this check box to show the
types of the available event arguments in full/short name. The default
is unchecked.
For example, for the DragEventArgs type, when the Show Full Type
Name check box is unchecked, it is shown as “DragEventArgs” under
the Type column of the Available Parameters list; when the
Show Full Type Name check box is checked, it is shown as
“System.Windows.DragEventArgs”.
• Script Language: Use this to select the type of handler you use. Items
for this combo box are composed of FG and other supported scripting
languages.
The bottom text box’s title changes as you select FG or a scripting
language from “FG Commands” to “{Scripting Language} Method”,
e.g., IronPython Method.
• Handler Text Box
− FG Command(s)
When the script language is selected to be FG, the text box is for
entering FG commands. Use this text box to enter an FG command
or multiple FG commands separated by semicolons. The FG
command(s) is executed when the event is fired.
For example, if you have a WPF button control, and when it is
clicked you want to set the zoom level to 2 times and call up the
Alarm Summary display, you can add an event handler for the Click
event of the button, select FG as the script language, and enter the
text below in the FG Commands text box:
ZOOM/TO 2;DISPLAY/APP=ALARM ALARM_SUMMARY
Proprietary - See Copyright Page 229 WPF Controls
Display Builder User’s Guide
− Scripting Method
When a script language is selected, the Method text box is
available for entering a scripting method name and arguments to
pass to the method’s parameters.
Note that the %ARGn% argument behaves differently for WPF
controls than it did for ActiveX controls. In WPF controls, this
argument represents the event’s values, and it is meant to be
passed to scripting functions such as IronPython or IronRuby.
For example, if you have a WPF button control, and when it is
clicked you want to call an IronPython scripting method named
“OnAlstomButtonClicked” (which has one parameter of type
RoutedEventArgs), you can add an event handler to the click event
of the button, select IronPython as the Script Language, enter
OnAlstomButtonClicked in the IronPython Method text box, and
double-click on the second item of the Available Parameters to use
its value as an argument. The text and screenshot are as shown
below:
OnAlstomButtonClicked(%ARG1%)
Proprietary - See Copyright Page 230 WPF Controls
Display Builder User’s Guide
For more information about using WPF control event arguments, or
any WPF control–related questions (i.e., properties, events, etc.),
refer to the .NET Framework documentation.
Note: For this version of Display Builder, Alstom Grid does not
validate the input to the Handler text box. So, be careful when
entering values.
When an event has the event handler set up, the text box to its right
shows the event handler. The Event button’s appearance changes to
indicate whether the set-up event handler is FG command, IronPython, or
IronRuby. Also, the button’s behavior changes to show menu items for
deleting and editing the configured event handler.
Proprietary - See Copyright Page 231 WPF Controls
Display Builder User’s Guide
8.3.2.3 Other Settings Tab
The Other Settings tab is used for setting properties that are Display
Builder-specific.
8.3.2.3.1 Location
The Location group allows the display designer to set the control’s position
on the editor and specify its x-lock and y-lock settings (X-lock and Y-lock
are not enabled for a WPF control placed on a Picture Editor).
8.3.2.3.2 Record Context
The Record Context group box allows the display designer to specify the
database linkage (composite key) for a WPF control placement placed on
a simple layer.
Proprietary - See Copyright Page 232 WPF Controls
Display Builder User’s Guide
The Record Context group box is shown only for those WPF controls that
are placed on a Display editor to define their database linkage. WPF
controls that are part of a Picture definition inherit the database linkage
from their Picture placements.
8.3.2.3.3 Attachments
A WPF control can have a script-enabled CAM as its attachment.
Currently, only a script-enabled CAM using .NET scripting languages is
allowed to attach to a WPF control placement.
8.3.2.3.4 Attaching to a WPF Control
To attach to a WPF control:
1. Either in a picture or in a display, bring up the Control Property Setter
dialog box and select the Other Settings tab.
2. Click the Add button to activate the Add Attachment dialog box.
The list of available SECAMs is presented.
3. Select the desired SECAM from the Add Attachment dialog box and
click its OK button.
The chosen SECAM shows up in the Attachments group, as shown in
the figure.
4. Click the OK button when done.
Proprietary - See Copyright Page 233 WPF Controls
Display Builder User’s Guide
5. For WPF controls placed in a display, the display designer also needs
to define the record context on the Other Settings tab, to specify the
database linkage from which to retrieve the referenced database field
values.
Only .NET script-enabled CAMs are listed.
When the placement is a WPF control, Display Builder only lists in the Add
Attachment dialog box SECAMs that use .NET scripting languages such
as IronPython and IronRuby. When the placement is not a WPF control,
all CAMs, except SECAMs that use .NET scripting languages, are listed in
the Add Attachment dialog box.
Proprietary - See Copyright Page 234 WPF Controls
Display Builder User’s Guide
8.3.2.3.5 Defining a .NET Script-Enabled CAM
To define a .NET scripting SECAM, select the Third-Party Script Engine
radio button of the Select Script Engine group box in the CAM Editor.
Fill in the database, application, and record type information. Then select
the language in the Script Language combo box. All supported scripting
languages are listed in the combo box.
SECAM currently supports two categories of languages: Active Scripting
and .NET Scripting. .NET scripting languages are designed to be used in
the .NET Framework and are chosen for support of WPF controls. For
e-terrabrowser 3.6, IronRuby or IronPython languages should be used.
In the Script Function text box, type the name of the scripting function.
Depending on the language chosen, names may be case-sensitive. A
script function may have zero or more arguments.
To add an argument:
1. Type its name in the Argument Value text box and specify its type in
the Type combo box.
Supported types are: Field, Proxy, Text, Integer, Float, and Boolean.
The type field indicates that the argument is a database field. The type
proxy flags that the argument is a proxy string. The rest is for literal
values in the respective type.
2. Click the Add Argument button to add the argument.
The new argument is inserted at the top of the list in the Argument list
box.
3. Repeat the steps for additional arguments.
Function arguments can be modified, deleted, or have their order
changed.
• To modify a function argument, select the desired argument from the
Arguments list box. Its content fills the Argument Value text box and
type selected in the Type combo box. Make the changes, and click the
Update Argument button when finished.
• To delete an argument, select it from the Arguments list box and click
the Delete Argument button.
• To change the order of an argument, select it from the Arguments
list box, and click the small triangle to the right of the Arguments
list box to move it up, or click the inverted triangle to move it down.
Proprietary - See Copyright Page 235 WPF Controls
Display Builder User’s Guide
Proprietary - See Copyright Page 236 WPF Controls
Display Builder User’s Guide
8.3.2.4 Custom Property Editor Tab
Optionally, you can configure the Property Setter to use your control for
modifying the properties of a control. For example, the AreaStatusChart
control that is shipped with Display Builder is configured to have the
PesgoChartPropertyEditor control as a custom property editor. As a result,
when you open the Property Setter for the AreaStatusChart control, there
is an extra tab to host the editor control — in this case, the
PesgoChartPropertyEditor control.
There are two steps in the process of setting the Custom Property Editor
for a control:
1. Select or create a control to be used as the custom control editor.
The control that can be used as the custom control editor must be a
WPF control that implements the ICustomPropertyEditor interface.
If you are unsure whether a control implements the
ICustomPropertyEditor interface, you can use the ILDASM tool
shipped with .NET, or a free third-party tool called “Red Gate .NET
Reflector”.
Proprietary - See Copyright Page 237 WPF Controls
Display Builder User’s Guide
2. Modify the existing ControlPropEditorMapping.config file that is
shipped with Display Builder in the CustomControls directory, or
create/modify the ControlPropEditorMapping.config file in the location
configured as the Third-Party Control directory.
8.4 Third-Party Charting Controls
Prior to version 3.6, e-terrabrowser delivered an ActiveX control for
charting named “PesgoExt Control”. This control was used on several
displays; one of the most popular was the area_status display in the
RTGEN application. Starting with e-terrabrowser 3.6, this control is no
longer available because the control only supports 32-bit.
On the right side of the area_status display, there were eight instances of
PesgoExt at the same location with the same size. At run time, only one
instance was visible. The visibility of each instance was controlled by a
CAM. This was an inefficient method, since all eight instances were
loaded and only one of them was used. Because of this, a new control
named “AreaStatusChart” was created to replace the eight instances
mentioned above. At run time, the AreaStatusChart was created once.
Depending on the database values, it showed exactly the same data as
one of the eight instances did before. This means that the
AreaStatusChart was to be used only to replace the current logic on the
area_status display.
Starting with e-terrabrowser 3.6, a new control to replace PesgoExt is
delivered for both 32- and 64-bit kits. It is named “PesgoChart”.
As of e-terrabrowser 3.6, there are two new charting controls: PesgoChart
and AreaStatusChart. These controls replace the PesgoExt control
previously used on the area_status and some other displays.
8.4.1 PesgoChart
PesgoChart is a charting control that can be used on any displays for
charting purposes.
8.4.1.1 Creating a PesgoChart
To create a new chart, drag and drop PesgoChart from the WPF Control
Picker onto a picture or display editor.
To bring up the Properties Setter dialog box, right-click on the blue banner
at the bottom of the control, and select the Properties menu option.
Proprietary - See Copyright Page 238 WPF Controls
Display Builder User’s Guide
8.4.1.2 PesgoChart Settings
The first three tabs (Properties, Events, and Other Settings) at the top of
the Control Property Setter window are the same as those provided for all
WPF controls.
Proprietary - See Copyright Page 239 WPF Controls
Display Builder User’s Guide
8.4.1.2.1 Chart Properties
This property grid allows settings for the “look and feel” of the control,
such as font, size, color, etc.
There are two important properties at the bottom of this grid: Queries and
Traces. You can define one or more queries, each with a query ID.
After defining queries, you can define one or more traces, each with a
query specified by a query ID. You can also change properties for each
trace by clicking on the rectangle on the right side of the traces, as shown
in Figure 71.
Figure 71: Trace Properties
Proprietary - See Copyright Page 240 WPF Controls
Display Builder User’s Guide
8.4.1.2.2 Query Tab
The Query tab allows you to specify the query definitions more easily,
since a typical query can be long.
8.4.1.2.3 Subset Tab
The Subset tab allows you to define data dimensions for a trace. Each X,
Y, and Z field requires a database field column.
Proprietary - See Copyright Page 241 WPF Controls
Display Builder User’s Guide
8.4.1.2.4 IronPython Script Tab
The IronPython Script tab allows you to specify IronPython script
statements, which are executed after all the defined queries are executed
the first time or after a query refreshes subsequently.
Sample script:
import clr
clr.AddReference("System.Drawing")
clr.AddReference("System.Windows.Forms")
from System.Drawing import Color
from System.Drawing import Brushes
from System.Windows.Forms import MessageBox
control = document.GetWpfControl();
# get reference to the Chart object
chart = control.Chart;
# set text color
chart.PeColor.Text = Color.Blue;
8.4.2 AreaStatusChart
The AreaStatusChart is not a generic control. It should only be used to
replace the eight instances of the PesgoExt controls on the right side of
the area_status display.
Here is the list of the eight fields that were used to build the CAMs:
• Application = RTGEN
• Database = CPS
• Rec = OPAREA
• Fld = Day31
• Fld = day07
• Fld = Month
• Fld = Scatter
• Fld = Day07His
• Fld = Day31His
• Fld = MonthHis
• Fld = AceOff
8.4.2.1 Creating an AreaStatusChart
To create a new chart, drag and drop the AreaStatusChart from the
Control Picker onto the picture or display editor.
Proprietary - See Copyright Page 242 WPF Controls
Display Builder User’s Guide
To bring up the Properties Setter dialog box, right-click on the blue banner
at the bottom of the control, and select the Properties menu option.
8.4.2.2 AreaStatusChart Settings
The first three tabs (Properties, Events, and Other Settings) at the top of
the Control Property Setter window are the same as those provided for all
WPF controls.
Proprietary - See Copyright Page 243 WPF Controls
Display Builder User’s Guide
8.4.2.2.1 Conditions
Under Conditions, there are eight options that correspond to the eight
CAMs. Select each condition and build the traces, queries, and settings
for each, as if you were building the eight instances in the past.
8.4.2.2.2 Settings Tab
The settings tab allows you to change the “look and feel” of the control,
such as font, size, color, etc.
8.4.2.2.3 Query Tab
The Query tab for an AreaStatusChart is the same as the PesgoChart
Query tab. For details, refer to the previous section Query Tab.
8.4.2.2.4 Subset Definition Tab
The Subset Definition tab for an AreaStatusChart is the same as the
PesgoChart Subset tab. For details, refer to the section Subset Tab.
8.4.2.2.5 IronPython Script Tab
The IronPython Script tab for an AreaStatusChart is the same as the
PesgoChart IronPython Script tab. For details, refer to the previous
section IronPython Script Tab.
8.5 The ICustomPropertyEditor Interface
The ICustomPropertyEditor interface is packaged in the
Areva.FgbWpfUi.Interfaces.dll assembly that is shipped with the Display
Builder installation.
Namespace name:
Areva.FgbWpfUi.Interfaces
Elements that make up the ICustomPropertyEditor interface:
• IsDirtyChanged event
• SetSelectedControl function
• ApplyChanges function
• CancelChanges function
• Dispose function
Proprietary - See Copyright Page 244 WPF Controls
Display Builder User’s Guide
8.5.1 IsDirtyChanged Event
Signature
event IsDirtyChangedEventHandler IsDirtyChanged;
Define and raise this event when the IsDirty state of the editor is changed so that the host dialog
box can update its Apply button.
The IsDirtyChangedEventHandler delegate is defined in the same namespace,
Areva.FgbWpfUi.Interfaces, and packaged in the same assembly.
8.5.2 SetSelectedControl Function
Signature
bool SetSelectedControl(Control control);
Set the selected control for the property editor. The implementer needs to check for the correct
type of the given WPF Control (if necessary). The dirty state of the editor should be reset to false
upon setting.
Parameter
control
Type: Control
The control whose properties are to be modified.
Return Value
Boolean value indicating the status of executing the function. If the function executes
successfully, returns true. Otherwise, returns false.
8.5.3 ApplyChanges Function
Signature
void ApplyChanges();
The host, the Property Setter, calls this method whenever users click the OK/Apply button to
apply changes. The implementer should apply changes the user made to the control and reset its
dirty state to false.
8.5.4 CancelChanges Function
Signature
void CancelChanges();
The host, the Property Setter, calls this method whenever users click the Cancel button to cancel
changes. The implementer ignores changes the user made to the control and resets its dirty state
to false.
8.5.5 Dispose Function
Signature
void Dispose();
Implement this method to release any resources that the implementer, the custom property
editor, is using. The host, the Property Setter, calls this method when it is closed and disposed.
Proprietary - See Copyright Page 245 WPF Controls
Display Builder User’s Guide
8.6 The ControlPropEditorMapping.config File
The ControlPropEditorMapping.config file is an XML file used for
configuring which types of WPF controls have custom property editors and
what editors to use. The Property Setter reads the configuration files from
both locations (the installation folder, and the folder configured for third-
party controls) and shows the extra tab for hosting the control configured
in this configuration file as the custom property editor for the control being
modified.
To configure your control as a custom property editor, you can modify the
existing ControlPropEditorMapping.config file in the CustomControls
subfolder of the installation folder to add new entries to it. Or you can use
that as a template, create a new one, and put it in the folder configured as
the Third-Party Control directory. With the latter, if you use a network
share as the third-party controls location and different display designers
are all using that location, you do not have to maintain multiple copies of
the file.
If you choose to create the file anew, make sure to follow the schema
shown in the following section.
8.6.1 Schema
<?xml version="1.0" encoding="utf-8" ?>
<xs:schema xmlns:cpm="http://tempuri.org/ControlPropEditorMapping"
elementFormDefault="qualified"
targetNamespace="http://tempuri.org/ControlPropEditorMapping"
xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:complexType name="TypeInfo">
<xs:sequence>
<xs:element name="Asm" type="xs:string" />
<xs:element name="Type" type="xs:string" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="MappingInfo">
<xs:sequence>
<xs:element name="Control" type="cpm:TypeInfo" />
<xs:element name="Editor" type="cpm:TypeInfo" />
</xs:sequence>
<xs:attribute name="Name" />
</xs:complexType>
<xs:complexType name="Mappings">
<xs:sequence minOccurs="0" maxOccurs="unbounded">
<xs:element name="ControlEditorMapping" type="cpm:MappingInfo" />
</xs:sequence>
</xs:complexType>
<xs:element name="Mappings" type="cpm:Mappings" />
</xs:schema>
Proprietary - See Copyright Page 246 WPF Controls
Display Builder User’s Guide
8.6.2 Sample Configuration
<?xml version="1.0" encoding="utf-8"?>
<Mappings xmlns="http://tempuri.org/ControlPropEditorMapping"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://tempuri.org/ControlPropEditorMapping
ControlPropEditorMapping.xsd">
<!--
Defining a mapping without a name.
In this case, the Property Editor displays the extra tab
with the title "Extra Properties".
-->
<ControlEditorMapping>
<!-- Information about the control whose properties need
to be modified with custom property editor. -->
<Control>
<!-- The full name of the assembly containing the control. -->
<Asm>
MyAssembly, Version=1.0.0.0, Culture=neutral,
PublicKeyToken=null
</Asm>
<Type> <!-- The full type name of the control. -->
MyAssembly.ControlA
</Type>
</Control>
<!-- Information about the editor.-->
<Editor>
<!-- The full name of the assembly containing the editor control.
-->
<Asm>
MyPropEditor, Version=1.0.0.0, Culture=neutral,
PublicKeyToken=null
</Asm>
<Type> <!-- The full type name of the editor. -->
MyPropEditor.Editor1
</Type>
</Editor>
</ControlEditorMapping>
<!--
Defining a mapping with a name.
The name will be displayed as the title of the extra
tab in the property editor.
-->
<ControlEditorMapping Name="My Special Editor">
<Control>
<Asm>
MyAssembly, Version=1.0.0.0, Culture=neutral,
PublicKeyToken=null
</Asm>
<Type>
MyAssembly.ControlB
</Type>
</Control>
<Editor>
<Asm>
MyPropEditor, Version=1.0.0.0, Culture=neutral,
PublicKeyToken=null
</Asm>
Proprietary - See Copyright Page 247 WPF Controls
Display Builder User’s Guide
<Type>
MyPropEditor.Editor1
</Type>
</Editor>
</ControlEditorMapping>
</Mappings>
8.7 Styling a WPF Control
Using the Property Setter, you can change the Style property of a WPF
control to give it a different look and feel.
In the screenshot below, the two controls on the top use the default
Microsoft Windows XP theme. The two controls at the bottom are styled.
To style a WPF control, you need an XAML file that defines the style to
apply to the control. In the Property Setter, on the Properties tab, scroll to
the Style property (if the Style property does not show, check the
Advanced check box to show it) and click the Ellipses button to browse to
and select the XAML file.
The XAML file that is used to define the style needs to start with the
<Style> element, together with the namespaces and the TargetType
attributes. Below is an example snippet of the style element for the button.
<Style
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
TargetType="{x:Type Button}">
...
</Style>
Proprietary - See Copyright Page 248 WPF Controls
Display Builder User’s Guide
Details about how to define style in WPF are beyond the scope of this
document. You can use tools such as Expression Blend to help create
styles for controls.
8.8 .NET Scripting Support
WPF controls on displays only support .NET scripting.
8.8.1 Supported Languages
e-terrabrowser is shipped with the support of IronPython and IronRuby
using the run-time dynamic language.
In the future, if there are any languages that are implemented on .NET
using the Dynamic Language Runtime (DLR), users will be able to use
them to implement scripting functions for WPF controls.
To add a new scripting language, users need to copy the assemblies for
the language to the installation folder of e-terrabrowser, and then update
the <languages> element to add a <language> entry to the
FgbDotNetUtil.config file.
8.8.2 Usage
Users implement the scripting functions and store them in script files.
Below are usages of script functions and how to manage script files.
8.8.2.1 Value Converter
A script function can be used as a value converter to convert data-bound
values before applying them to properties of WPF controls. The scripting
function used as the value converter must always have one parameter for
the data-bound value. It can optionally have a second parameter.
Example of a value converter scripting function:
def ConvertTextToBntContent(text, colorText):
if (text):
tb = TextBlock()
tb.Text = text
if (colorText):
if (colorText == "Blue"):
tb.Foreground = Brushes.Blue
elif (colorText == "Red"):
tb.Foreground = Brushes.Red
else:
tb.Foreground = Brushes.Black
return tb
return ""
Proprietary - See Copyright Page 249 WPF Controls
Display Builder User’s Guide
8.8.2.2 Event Handlers
A script function can be used as an event handler to handle an event fired
from a WPF control — for example, the click of a button. There is no
restriction on the number of parameters that an event handling scripting
function must have; it depends on how the users want to handle the event.
Example of an event handling scripting function to handle the click event
of a button:
def OnButtonClicked():
MessageBox.Show("Hello. The button was clicked.")
def OnButtonClicked2(aRoutedEventArg):
MessageBox.Show(aRoutedEventArg.RoutedEvent.Name)
8.8.3 APIs Exposed to the Script Definition Body
As with active scripting, from the scripting body, the user can use the
“document” keyword to gain access to APIs that e-terrabrowser exposes.
However, unlike active scripting, what the user can do using the
“document” keyword is restricted.
Below are APIs that the users can use with “document” “dot”.
Proprietary - See Copyright Page 250 WPF Controls
Display Builder User’s Guide
DownloadFile
Downloads a file.
Syntax
bool DownloadFile(string url, bool isAsFile, bool isUnicode, ref string data)
Parameters
url
Type: System.String
The URL to locate the file.
isAsFile
Type: System.Boolean
If set to True, the file is downloaded as a file. Otherwise, the content of the file is streamed to the
data parameter.
isUnicode
Type: System.Boolean
If set to True, use Unicode.
data
Type: System.String (by reference)
Holds the content of the file if isAsFile is passed as False. Otherwise, holds the path to the
downloaded file.
Return Value
A Boolean value indicating whether the file download has been successful.
Example
import clr
# Skip declarations for brevity
def DownloadFileSample(url):
data = clr.Reference[String](“”)
result = document.DownloadFile(url, False, True, data)
if (result):
MessageBox.Show(data.Value)
Else
MessageBox.Show(“Failed to download file.”)
Proprietary - See Copyright Page 251 WPF Controls
Display Builder User’s Guide
ExecuteFgCommand
Executes a single FG command. Not all FG commands are executed. See Remarks for the list of
FG commands that are ignored by this function.
Syntax
bool ExecuteFgCommand(string command)
Parameters
command
Type: System.String
The command to execute.
Return Value
Boolean value indicating whether the command has been executed.
Remarks
Below is the list of commands that are not executed by this method.
• CALL
• MENU
• POPDOWN
• POPUP
• ROOM
• SELECT
• DELETE
• INSERT
• COPY
• ENTER
Example
def GotoChenaux():
document.ExecuteFgCommand(“display/app=scada chenaux”)
Proprietary - See Copyright Page 252 WPF Controls
Display Builder User’s Guide
ExecuteScript
Executes the given scripting code on the fly. The main usage for this is to execute the scripting
code that is saved with a third-party control.
Syntax
void ExecuteScript(string script, string language)
Parameters
script
Type: System.String
The scripting code (statements) to execute.
language
Type: System.String
The scripting language that the script is written in. For example, IronPython or IronRuby.
Return Value
None.
Example
def ExecuteScriptSample():
myCtrl = document.GetWpfControl() # see GetWpfControl()
script = myCtrl.GetScript() # returns a string of statements
language = myCtrl.GetScriptingLanguage();
document.ExecuteScript(script, language)
Proprietary - See Copyright Page 253 WPF Controls
Display Builder User’s Guide
GetConnection
Gets the connection that the display is using.
Syntax
IAsyncConnection GetConnection()
Return Value
The connection.
Example
def DisplayInfoOfCurrentConnection():
conn = document.GetConnection()
MessageBox.Show(“Database: “ + conn.Database)
MessageBox.Show(“ConnectionString: “ + conn.ConnectionString)
Proprietary - See Copyright Page 254 WPF Controls
Display Builder User’s Guide
GetWpfControl
Gets the WPF control on which the script calling this method is executing.
Syntax
Control GetWpfControl()
Return Value
The reference to the WPF control on which the script calling this method is executing.
Example
def CycleBackgroundColor():
from System.Windows.Media import Brushes
control = document.GetWpfControl()
if (control.Foreground == Brushes.Red):
control.Foreground = Brushes.Yellow
elif (control.Foreground == Brushes.Yellow):
control.Foreground = Brushes.Blue
elif (control.Foreground == Brushes.Blue):
control.Foreground = Brushes.Black
elif (control.Foreground == Brushes.Black):
control.Foreground = Brushes.Red
else:
control.Foreground = Brushes.Red
Proprietary - See Copyright Page 255 WPF Controls
Display Builder User’s Guide
GetWpfControl (overload)
Gets the WPF control on the display using its name.
Syntax
Control GetWpfControl(string controlName)
Parameters
controlName
Type: System.String
The name of the control.
Return Value
The control with the requested name if found. Null if not.
Example
def GetControlByNameSample(name):
control = document.GetWpfControl(name)
if (control):
MessageBox.Show(control.Name)
else:
MessageBox.Show(“Cannot find the control with the name: ” + name)
Proprietary - See Copyright Page 256 WPF Controls
Display Builder User’s Guide
ResolveProxy
Resolves the proxy string to a value.
Syntax
string ResolveProxy(string proxy)
Parameters
proxy
Type: System.String
The FG proxy string to be resolved.
Return Value
The string resolved from the proxy string.
Example
def DisplayCurrentAppName():
MessageBox.Show(“Application Name:” + document.ResolveProxy(“%app%”)
Proprietary - See Copyright Page 257 WPF Controls
Display Builder User’s Guide
9. Preparing Displays for Online Viewing
This chapter provides instructions for creating online versions of displays
from their display and element set definitions. These are the files that are
opened by e-terrabrowser on the client computer.
9.1 Display Compilation Overview
The display assembly process is performed from any e-terrahabitat
account on the e-terrabrowser server.
e-terrabrowser validates displays only at call-up. The compiled display
files (.fgdisplay) contain only graphics and query information. The query is
an un-validated version of the schema and linkage data for the display.
The e-terrabrowser server validates and binds this query, returning any
errors to the client along with the live data, or query results. The display
analyst must then read the validation errors and manually update the
display definition.
9.2 Prerequisites for Onlining Displays
You can use the Online feature (shown in Figure 72) to test the displays
you are developing in e-terrabrowser, to see how they perform with live
data. In an open display editor window, right-click anywhere in the window
and select Online.
Figure 72: Online
Proprietary - See Copyright Page 258 Preparing Displays for Online Viewing
Display Builder User’s Guide
To use the Online feature to test displays while developing them, ensure
that the following points are configured so that the Online feature works:
• e-terrabrowser must be installed on the machine.
• In Display Builder, the “WebFG Root OutPut” directory must point to a
valid display structure to publish into (e.g., /habweb60/displays).
The given output directory must contain all the relevant folders and the
configuration files necessary for a proper display folder (e.g., a Config
folder with a valid webfg_config.xml file).
• A valid webfg_config.xml file must be present to point to the production
system to obtain the live data.
9.3 Compiling e-terrabrowser Displays
Display Builder contains the e-terrabrowser compiler. Currently, this is the
only application that can be used to compile e-terrabrowser displays.
From the Display Builder user interface (UI), you can compile displays in a
number of different places, each designed to serve a different function.
There are three ways to compile displays:
• Compile each display in the display set individually
You can compile a single display while modifying a display in the
Display Builder’s display scratch pad.
To do this, open the display set containing the desired display (from
the Display Builder File menu, select Open, and navigate to the DDL
file containing the display). Select the display’s set, and double-click
the desired display. With the display editor selected, either click the
Save Binary button in the toolbar, or select the Save Binary menu item
from the File menu.
This compiles the current display and gives a detailed listing of any
errors in an e-terrabrowser error window. This window is integrated
with Display Builder and can be used to quickly track down any errors
on the display. Each error message has context information about the
error and the display objects that have issues.
• Compile an entire display set
If a display set is open in Display Builder and the input focus is given to
the set, you can compile the set by selecting the Save Binary menu
item from the File menu. This option compiles all displays in the current
set.
Proprietary - See Copyright Page 259 Preparing Displays for Online Viewing
Display Builder User’s Guide
• Compile an entire DDL directory at once
If no display or element sets are open in Display Builder, you can
compile a complete batch. From the File menu, select Batch Compile,
then specify the directory where the DDLs are stored. This compiles all
displays in all of the display sets in a given directory.
For system builds of displays, there is a much better way to compile
displays. Display Builder supports command-line arguments that allow you
to perform compilations from batch files.
The command to perform compilations is:
fgb_builder_app -compile -ddldir <ddlDir> -outdir
<outDir>
Note: Display Builder 5.3.2 and later supports the optional command-line
argument “-version”. This command-line argument can be used to specify
the compatibility version the compiler should use when compiling the
displays. The version specified here overrides the compatibility version
specified in the Display Builder Options dialog box.
The Display Builder installation delivers a batch file that can be used as an
example of how to set up a display system build. The file name is
“WebFG_BatchCompile_Example.bat”.
The content of the batch file is shown here for quick reference:
@echo off
rem **************************************************************
rem ** The WebFG display compiler is integrated into the Display
rem ** Builder. The compiler can be accessed through the Display
rem ** Builder's user interface. In addition to the user
rem ** interface, Display Builder also supports command line
rem ** arguments that allow you to run batch compiles. This is an
rem ** example of how you might set up a batch procedure to
rem ** compile your WebFG displays.
rem **
rem ** The syntax of the Display Builder's command line argument
rem ** is as follows:
rem ** fgb_builder_app.exe -compile -ddldir <input_dir> -outdir
rem ** <output_dir>
rem **************************************************************
rem
rem **************************************************************
rem ** Set a variable to point to the Display Builder EXE.
rem **************************************************************
SET BUILDER_PATH="E:\Eterra\RapportFG\Builder\"
SET BUILDER="fgb_builder_app.exe"
rem **************************************************************
rem ** Set a variable to point to the Display Builder Log and
rem ** the location and file to preserve Display Builder Log
rem ** content.
rem **************************************************************
SET LOG_NAME="RFGDisplayBuilder.log"
SET SAVE_LOG_DIR=E:\WEBFGDISPLAY_COMPILE_LOGS\
Proprietary - See Copyright Page 260 Preparing Displays for Online Viewing
Display Builder User’s Guide
SET SAVE_LOG_NAME=RFGDisplayBuilder_Test.log
rem **************************************************************
rem ** Set a variable to point to:
rem ** ddlDir: DDL files to compile.
rem ** outDir: Where WebFG displays will be created.
rem **************************************************************
SET ddlDir="E:\DDL Files\ddl_compiler_test"
SET outDir="E:\WEBFGDISPLAYS_COMPILE_TEST"
rem **************************************************************
rem ** Compile some displays
rem **************************************************************
@echo on
%BUILDER_PATH%%BUILDER% -compile -ddldir %ddlDir% -outdir %outDir%
@echo off
rem **************************************************************
rem ** Display Builder creates log file named
rem ** RFGDisplayBuilder.log.
rem ** This file is located in the directory where the Display
rem ** Builder is installed. When a batch compile is running, the
rem ** Display Builder will write Errors and Warnings to this
rem ** file. It is a good idea to capture and scan this file for
rem ** errors and warnings after a batch compilation has
rem ** completed. Strings to search for: "-Error:", "-Warning:".
rem **************************************************************
@echo on
move %BUILDER_PATH%%LOG_NAME% %SAVE_LOG_DIR%%SAVE_LOG_NAME%
@echo off
rem ******************* DONE *************************************
9.4 Comparing DDL Files
Many customers make changes to the standard displays delivered by
Alstom Grid. When a new release of the displays is made available, a
comparison is needed to check whether any of the “customer-modified”
displays have been changed in the new release. This determines whether
a merge is needed.
In the past, comparing DDL files was difficult, because the file format
could change from one release to the next. To help eliminate the file
differences as a result of formatting, Display Builder has been modified to
perform an automatic save of all displays in a given directory. By first
performing an autosave on the “old” and “new” displays, the file formatting
differences can be eliminated and the true differences can be identified.
To perform an autosave, the following command-line argument is
supported by Display Builder:
fgb_builder_app -save -ddldir <ddlDir>
The Display Builder installation kit also includes a batch file that can be
used as an example of how to perform a comparison between two sets of
Proprietary - See Copyright Page 261 Preparing Displays for Online Viewing
Display Builder User’s Guide
DDL files. The example below is meant to show how this can be
completed while eliminating differences resulting from DDL file format
changes, version numbers, etc. The name of the example file is
“DDL_DIFF_EXAMPLE.BAT”. The file uses Windiff to perform the actual
comparison of the autosaved DDL files.
Note: For the batch file to work correctly, the Windiff utility must be
installed on the system where the batch file is run.
The content of the example file is included below as a quick reference.
@echo off
rem ******************************************************
rem ** This example attempts to compare two different versions of
rem ** a set of DDL files. Many customers make changes to the
rem ** standard displays delivered by Alstom Grid. When a new
rem ** release of the displays is made available, a comparison is
rem ** needed to check if any of the "customer modified" displays
rem ** have been changed in the new release. This is to determine
rem ** if a merge is needed. This example is meant to show how
rem ** this can be done while eliminating differences due to DDL
rem ** file format changes, version numbers etc.
rem **
rem ******************************************************
rem
rem ******************************************************
rem ** Set a variable to point to the Display Builder EXE.
rem ******************************************************
SET BUILDER_PATH="E:\Eterra\RapportFG\Builder\"
SET BUILDER="fgb_builder_app.exe"
rem ******************************************************
rem ** Set a variable to point to:
rem ** ddlDir: DDL files to save.
rem ******************************************************
SET ddlDir1="E:\DDL Files\CompareDDL_Current"
SET ddlDir2="E:\DDL Files\CompareDDL_New"
@echo on
rem ******************************************************
rem ** AutoSave Current DDL files
rem ******************************************************
%BUILDER_PATH%%BUILDER% -save -ddldir %ddlDir1%
rem ******************************************************
rem ** AutoSave New DDL files
rem ******************************************************
%BUILDER_PATH%%BUILDER% -save -ddldir %ddlDir2%
rem ******************************************************
rem ** Launch Windiff to compare the content of the two DDL
rem ** directories now that Display Builder has saved both
rem ** directories to remove differences due to any possible
rem ** changes to the file format. This example uses the Windiff
rem ** tool. Please substitute your favorite tool to perform the
Proprietary - See Copyright Page 262 Preparing Displays for Online Viewing
Display Builder User’s Guide
rem ** comparison.
rem **
rem ** Windiff is a shareware, and easily available. One of the
rem ** places where you can get it is:
rem ** http://www.meurrens.org/ip-Links/Tools/windiff/index.html.
rem **
rem ** If Windiff does not meet your liking, there are several
rem ** others, shareware, freeware and payware; here is a
rem ** reference:
rem ** http://directory.google.com/Top/Computers/Software
rem ** /File_Management/File_Managers/
rem **
rem ******************************************************
windiff %ddlDir1% %ddlDir2%
@echo off
rem ******************* DONE *************************************
9.5 WebFGUtils
WebFGUtils.exe is a multi-purpose tool that supports operations on
displays. It is installed as part of the e-terrabrowser client software, and it
can be executed as a batch procedure or as a Windows application.
9.5.1 Offline Display Validation
The offline display validation function allows users to verify offline a set of
displays against a set of application clones before putting them online on a
production system. The results of the bind validations can be recorded in a
log file as well as in the message log window of the WebFGUtils
application interface.
Proprietary - See Copyright Page 263 Preparing Displays for Online Viewing
Display Builder User’s Guide
Figure 73: Offline Bind Validation
Users should be aware that offline binding of a set of displays requires an
e-terrabrowser data server to run. It stresses CPU usage on this server,
since the binding process is actually equivalent to a display call-up.
It is highly recommended that you do not use the e-terrabrowser data
server of a production machine for offline binding purposes. To work
properly, the offline display validation function requires
e-terrabrowser 3.1.2 or later to be installed.
To launch this tool as a GUI application, simply run the WebFGUtils.exe
file. The syntax to run the file as a batch tool is as follows (executing
WebFGUtils -help produces the same information):
Binds one or more fgdisplay files to check for bind
errors.
WebFGUtils [-bind -displaydir <folder or display> [-logfile <logfile>]
[-error]]
WebFGUtils -areaextract -displaydir <folder>
-bind run in batch mode to check display binding
-areaextract run in batch mode to extract permission areas
-displaydir (1)Root display directory or
(2)Application subdirectory or
(3)Display file.
-logfile path of log file, default is
.\webfgutils_<date>_<time>.log
-error report only displays that have bind errors
Proprietary - See Copyright Page 264 Preparing Displays for Online Viewing
Display Builder User’s Guide
Example 1: WebFGUtils
Launches the application with its GUI.
Example 2: WebFGUtils -bind -displaydir d:\webfgdisplays
Binds all displays in d:\webfgdisplays and its immediate subfolders.
Example 3: WebFGUtils -bind -displaydir d:\webfgdisplays\alarm
Binds all fgdisplay files in the Alarm application folder.
9.5.2 Extract Permission Areas from FGDisplay Files
The extract permission area function reads the compiled FGDisplay files in
the Application Display directory, to extract the permission information of
each display and to generate the webfgdisplayinfo.xml file. The generated
webfgdisplayinfo.xml file is placed in the directory where the FGDisplay
files are, and it is used by the display directory Web pages.
For more information about the display directory Web pages and the use
of the webfgdisplayinfo.xml file, refer to the section “Updating the Web
Server Content” in the e-terrabrowser Software Installation and
Maintenance Guide.
This function is supported in batch mode only.
Example 1: Extract permission areas from all FGDisplay files under the
HABITAT_WEBROOT/displays directory:
WebFGUtils -areaextract -displaydir %HABITAT_WEBROOT%\displays
This command reads the FGDisplay files inside each application display
subdirectory below the HABITAT_WEBROOT\displays directory to create
the webfgdisplayinfo.xml file.
Example 2: Extract permission areas for a specific application directory,
ex. alarm:
WebFGUtils -areaextract -displaydir \
%HABITAT_WEBROOT%\displays\alarm
This command creates the webfgdisplayinfo.xml file for the alarm
application only.
Note that, in the Display Builder version 5.3.2 installation kit,
the –areaextract qualifier was added to WebFGUtils.
Proprietary - See Copyright Page 265 Preparing Displays for Online Viewing
Display Builder User’s Guide
9.6 Localizing Display Builder
Display Builder 5.3.3 and later has been modified to support
internationalization of its user interface. At startup, Display Builder checks
the locale setting for the machine on which it is running. If the locale is
something other than English United States (ENU), Display Builder
attempts to load the DLL that contains all necessary resources for Display
Builder in the language specified.
The Display Builder looks for the DLL DisplayBuilderRes_XXX.dll, where
XXX is the three-letter abbreviated name of the locale. This resource DLL
should be located in the directory where Display Builder is installed. If the
DLL cannot be found in the installation directory, Display Builder uses the
built-in English resources instead.
The following section describes how a language-specific DLL and an HLP
file can be created so that they can be loaded dynamically at run time.
9.6.1 Creating and Upgrading a Language-Specific DLL Using Visual
Localize Software
Visual Localize, a third-party software application, can be used to help
translate Display Builder’s resource DLL to other languages. For more
information about Visual Localize, visit the company’s Web site:
http://www.visloc.com/
9.6.2 Creating a Visual Localize Project
This section describes the steps involved in using Visual Localize to create
and maintain DLLs in other languages.
Display Builder 5.3.3 (and later) delivers the resource DLL
DisplayBuilderRes_ENU.dll. This is the English version of the Display
Builder resource DLL. This DLL is delivered in order to assist with
internationalization. Initially, it can be used as a startup kit for creating
DLLs in languages other than English. Subsequently, it can be used as a
reference point to see what may have changed in future releases of
Display Builder.
To create another version of the resource DLL, a Visual Localize project
needs to be created for the DLL. To create a Visual Localize project,
follow the steps below.
1. From the File menu, select New Project.
The following dialog box appears:
Proprietary - See Copyright Page 266 Preparing Displays for Online Viewing
Display Builder User’s Guide
2. In the Project field, enter a name for the project.
This can be any name, but it is a good idea to name the project using
the naming convention for the DLL.
3. In the Project Files list, enter the path and file name of the DLL that
needs to be translated into another language.
4. For the Source of Translation Language field, the language of the
source of translation should be English (United States).
5. The Target of Translation Language field should be set to the language
into which the DLL is to be translated.
6. For some languages, you may need to change the display font for the
Target of Translation to a font other than the default font, in order to
display the characters of the language correctly.
7. To create the project, click OK.
Proprietary - See Copyright Page 267 Preparing Displays for Online Viewing
Display Builder User’s Guide
9.6.3 Translating the Project
After the Visual Localize project is created, customers can start to
translate the text in the project. For more details about how to translate the
project into another language, refer to the help files of the Visual Localize
software.
Note: Alstom Grid has created Visual Localize sample projects for Display
Builder in French, German, and Portuguese. These project files were
roughly translated by the software, and they need human correction. To
save time, customers can request these project files from Alstom Grid and
correct them, instead of creating files from scratch.
9.6.4 Creating a DLL File
1. From the File menu, select Create Target Files.
The following dialog box appears:
2. In the Target Files field, enter the full path and file name for the new
DLL to be created.
The name of the DLL is the name of the source DLL (in the Source
Files field), with “ENU” replaced by the three-letter abbreviated name
of the language that the DLL is to be translated into.
Note that e-terrabrowser also displays the abbreviated locale identifier
in its About box.
Proprietary - See Copyright Page 268 Preparing Displays for Online Viewing
Display Builder User’s Guide
3. To create the DLL, click OK.
9.6.5 Upgrading a Resource DLL to a Newer Version
Customers should keep the translated Visual Localize project with them
for future upgrades of Display Builder’s resource DLL. When a new
version of a Display Builder resource DLL is delivered to customers, they
can follow the steps below to upgrade their translated resource DLL
without re-translating the translated strings in the DLL.
1. Open the Visual Localize project of the DLL that needs to be upgraded.
2. To activate the project, click the project name on the left panel of the
window.
3. From the Edit menu, select Reload Module to bring up the dialog box
shown below:
4. In the New Module field, make sure that the path file name points to
the correct DLL (the DLL that the project needs to get the new
resource from).
5. To load the new resource from the new DLL to the current project, click
OK.
6. Click the tab marked by the black arrow (as shown in the screenshot
below).
In the right panel, the new resource strings that have been added in
the new version of the DLL are listed. In the screenshot below, the
later version of DisplayBuilderRes_ENU.dll contains two phrases that
did not exist in the older DLL.
Proprietary - See Copyright Page 269 Preparing Displays for Online Viewing
Display Builder User’s Guide
7. Translate the newly added phrases, and then follow the steps
discussed in the section Comparing DDL Files to create the updated
version of the DLL.
Proprietary - See Copyright Page 270 Preparing Displays for Online Viewing
Display Builder User’s Guide
10. Field Display Formats
This chapter provides background information about and examples of the
various online display format options that can be defined on the Definition
tab on the Formatted Field Properties form.
The examples in the tables in this chapter show how different formatted
field definitions appear in an online display for the various types of
e-terrahabitat field formats (i.e., B*1, C*8, I*4, etc.). Tables are available
to describe the definitions and output of the various types of fields.
10.1 Introduction to Display Formats
Field display formats are defined on the Definition tab on the Formatted
Field Properties form on the Formatted Field Definition tab.
Defining a field’s display format in displays involves specifying the
following:
• The type of data output, such as character, integer, or real values, or a
text pair to display True/False values
• Whether a text pair accompanies the field value being displayed that
shows the sign of a real or integer field value or the bit status of a
boolean field
• The size of the output, such as the number of characters in a field to
display
• The position of the output, such as starting with the fourth character in
a field, or showing two digits after the decimal in a real field
Proprietary - See Copyright Page 271 Field Display Formats
Display Builder User’s Guide
Figure 74: Definition Tab on the Formatted Field Properties Form
Proprietary - See Copyright Page 272 Field Display Formats
Display Builder User’s Guide
10.1.1 Defining the Format Type
The display format type is defined using the Type drop-down list box. In
general, the display format type should match the format of the field itself.
Table 2 shows the recommended display format types for the various
types of field formats definable in e-terrahabitat.
Table 2: Standard Display Formats
e-terrahabitat Recommended
Data Type Notation Format Type
Boolean B*1, B*2, B*4 TEXT PAIR
Character C*n CHARACTER
Date D*1, D*2 TIME/DATE
Integer I*1, I*2, I*4 INTEGER
Logical L*1, L*2, L*4 TEXT PAIR
Real R*4, R*8 REAL
Time T*4 TIME/DATE
When the Time/Date option is selected, the format is further defined using
the Time/Date drop-down list box.
When the Text Pair option of the Type menu is selected (for boolean and
logical field types), the format is defined using the Text Pair section of the
dialog box. Using the boolean radio button selection, boolean and logical
field bit settings can be displayed as either text strings or directional
arrows. The text strings are specified in the Positive/True and
Negative/False text boxes. The directional arrows are defined using the
bitmap menus.
In addition, text pairs can be defined to accompany integer and real fields
to show the sign of the field value. The sign can also be displayed as
either a text string or a directional arrow.
10.1.2 Defining the Format Size and Position
The format display size is defined using the Size list box. This parameter
defines the maximum number of alphanumeric digits that are displayed. In
general, it should be set to match the maximum size of the field value. For
example, the largest number in an I*2 field is 99999; therefore, the size of
an I*2 INTEGER field should be 5.
Proprietary - See Copyright Page 273 Field Display Formats
Display Builder User’s Guide
The format display position is defined using the Position list box. For
CHARACTER fields, the position defines the first character position to
display. For a C*8 field, a position of 3 indicates that, counting from the
left, the display should begin with the third character. For REAL and
EXPONENT format types, the position indicates the number of decimal
places to display. For example, if the position is 2, a real field value
of 6.785 is displayed as 6.79.
The size and position work together. For CHARACTER fields, they can be
used to limit the display. For example, if you want to display only the last
four characters in the C*8 field, you set the size to 4 and the position to 5.
In this case, a position of 1 displays the first four characters. Blanks in the
field value are always counted as characters.
For Real and Exponent formats, the size must be large enough to display
all parts of the value.
• For REAL formats, this includes the integer, the decimal point, and the
number of decimal places (as defined by the position).
For example, it requires a minimum size of 6 with a position of 2 to
display the real value 345.67 as 345.67. For a value of 1234.567
rounded to the nearest tenth, a size of 6 and position of 1 are needed
(1234.6).
• For EXPONENT formats, this includes all of the above and the
exponent. The exponent requires five places: two for the letters EE
indicating an exponential value, one for the sign of the exponent
(+ or -), and two for the exponent (i.e., 02).
For example, to display the real value 1236.66667 as 1.24EE+03 in
EXPONENT format, it requires a minimum size of 9 with a position
of 2.
In all cases, the size and position should be defined on all enterable fields
to accommodate the largest number your users can enter, including the
level of decimal accuracy. Field values for display can only be limited in
size and position if space is an issue.
10.2 Character Fields
Character fields are those fields defined in e-terrahabitat as C*n fields,
where n equals any integer from 1 to 32,767. The values in character
fields can be any alphanumeric text string, up to 32,767 characters. In
practice, most character fields do not exceed 80 characters.
All character fields should be defined for display using the CHARACTER
option of the Format menu on the Formatted Field Definition tab. Other
options may produce an outcome but are not recommended.
Proprietary - See Copyright Page 274 Field Display Formats
Display Builder User’s Guide
Table 3 shows example size and position settings and the resulting display
output for a C*8 field.
Table 3: Character Field Display Examples
Field Value Size Position Output
DOGHOUSE 8 1 DOGHOUSE
3 1 DOG
5 4 HOUSE
4 3 GHOU
10.3 Integer and Real Fields
Integer fields are those fields defined in e-terrahabitat as I*n fields, where
n equals 1, 2, or 4, and can contain any positive or negative integer. Real
fields are those fields defined in e-terrahabitat as R*n fields, where n
equals 4 or 8, and can contain any real number.
Table 4 shows the acceptable type menu options for showing integer and
real field values in displays. Other menu options may produce an outcome
but are not recommended.
Table 4: Integer and Real Data Type Display Formats
e-terrahabitat
Data Type Acceptable Format Types
Notation
Integer I*1, I*2, I*4 INTEGER,
EXPONENT,
REAL,
HEX,
OCTAL
Real R*4, R*8 REAL,
EXPONENT,
INTEGER
Table 5 shows example format, size, and position settings and the
resulting display output for various I*2 field values.
Proprietary - See Copyright Page 275 Field Display Formats
Display Builder User’s Guide
Table 5: Integer Field Display Examples (I*2)
Field Value Format Type Size Position Output
1234 INTEGER 4 1 1234
12345 INTEGER 5 1 12345
12345 INTEGER 4 1 ****
12345 EXPONENT 16 3 1.234EE+04
4589 HEX 8 1 11ED
7392 OCTAL 8 1 16340
12345 REAL 8 2 12345.00
**** Format ERROR – In this case, the size is too small for the value.
Table 6 shows example format, size, and position settings and the
resulting display output for various R*4 field values.
Table 6: Real Field Display Examples (R*4)
Field Value Format Type Size Position Output
1234.00 REAL 8 2 1234.00
123.327 REAL 8 2 123.33
7.666667 REAL 12 6 7.666667
7.666667 INTEGER 8 1 8
7.666667 EXPONENT 12 4 7.6667EE+00
123.327 EXPONENT 12 2 1.23EE+02
Table 7 shows examples of integer and real field values that have a text
pair defined to accompany the field value and display the sign of that
value.
Table 7: Integer and Real Fields with Text Pairs
Field Value Format Type Sign/Boolean Pos/Neg Output
123 INTEGER Sign Pos / Neg Pos 123
- 123 INTEGER Sign --> / <-- <-- 123
Proprietary - See Copyright Page 276 Field Display Formats
Display Builder User’s Guide
Field Value Format Type Sign/Boolean Pos/Neg Output
- 123 INTEGER Sign +/- - 123
12.3456 REAL Sign Y/N Y 12.3456
1345.87 EXPONENT Sign --> / <-- --> 1.35EE+03
10.4 Boolean and Logical Fields
The settings of boolean fields, individual boolean field bits (i.e., MASK
fields), and logical fields are displayed by using the Text Pair setting in the
Type menu. The remainder of the definition is set in the Text Pair section
of the dialog box, by selecting the boolean radio button and defining either
text strings or directional arrows to display the True (ON or 1) and False
(OFF or 0) values.
Table 8 shows example text strings and directional arrow settings and the
resulting display output for boolean and logical field values. The type
menu setting for all examples is Text Pair.
Table 8: Boolean and Logical Field Text Pair Definitions
Sign or Text String or
Field Value Boolean Bitmap Pos/Neg Output
T Boolean Text String True / False True
F Boolean Bitmap --> / <-- <--
T Boolean Text String and Yes / <-- Yes
Bitmap
When defining text pairs to display the settings of individual bits in MASK
fields, the Field text box on the Definition tab on the Formatted Field form
must specify the Mask name (the name of the individual bit in the boolean
field), not the field name.
For example, assume a B*1 field in the STATUS record is named
“RTU_STATUS” and its eight bits are named “A_STATUS”, “B_STATUS”,
“C_STATUS”, etc. Then, to display the value of the second bit, you must
specify B_STATUS in the Field text box.
Proprietary - See Copyright Page 277 Field Display Formats
Display Builder User’s Guide
10.5 Date and Time Fields
The values in all date and time fields (D*1, D*2, and T*4) are displayed by
setting the type to the DATE/TIME option, then setting the DATE/TIME
option and size accordingly.
D*1 fields are one-byte integers that e-terrabrowser translates into a day
of the week. The result can be displayed as either the entire day or as a
three-character abbreviation.
D*2 fields are two-byte integers that e-terrabrowser translates into a date.
T*4 fields are four-byte integers that e-terrabrowser translates into a date
and time.
Table 9 shows the possible date/time settings and recommended size
settings for each type of date and time field.
Table 9: Allowed Date and Time Field Display Formats
Field Type Acceptable Time/Date Recommended Size
Menu Formats
D*1 DAY or 3
WEEKDAY 9
D*2 DATE, 11
VMS 11
Or any logical combination of the
following:
MONTH, 9
MON, 3
MM, 2
DD, 2
YY, 2
YYYY 4
Proprietary - See Copyright Page 278 Field Display Formats
Display Builder User’s Guide
Field Type Acceptable Time/Date Recommended Size
Menu Formats
T*4 DATE AND TIME, 20
VMS 20
Or any logical combination of the
following:
DATE, 11
DAY, 3
WEEKDAY, 9
MONTH, 9
MON, 3
MM, 2
DD, 2
YY, 2
YYYY, 4
HR, 2
MN, 2
SC, 2
HC, 2
HM, 2
MLTM 4
DATE ,TIME AND ZONE 20
In addition to the formats shown in Table 9, you can define the following
using other options in the Time/Date drop-down list box:
• The name of the current holiday, if the day has been defined in the
Time/Date database as one, using the Holiday option. The size should
be set to 12.
• Displaying whether Daylight Savings Time is in effect using the DST
option. This displays the character defined in the DSTCHAR global
field in the TIMEDATE database when Daylight Savings Time is in
effect and blank when not. The size should be set to 1.
• Displaying the time zone using the TMZ option. This is a three-
character display of PST, EST, etc.
Table 10 shows example time/date settings and the resulting display
output for various date and time field values.
Proprietary - See Copyright Page 279 Field Display Formats
Display Builder User’s Guide
Table 10: Time and Date Field Display Examples
Field Type Field Value Time/Date Setting Size Output
D*1 Monday DAY 3 MON
D*1 Thursday WEEKDAY 9 THURSDAY
D*2 01-JAN-1992 DATE 11 01-JAN-1992
D*2 23-AUG-1991 VMS 11 23-AUG-1991
D*2 23-AUG-1991 MON 3 AUG
1 1
D*2 05-DEC-1988 MM, DD, YY 2 12 05 88
D*2 05-DEC-1988 YYYY 4 1988
T*4 23-JAN-1992 DATE AND TIME 20 23-JAN-1992
11:56:05 11:56:05
T*4 23-JAN-1992 VMS 20 23-JAN-1992
11:56:05 11:56:052
T*4 23-JAN-1992 HR, MN, SC1 21 11, 56, 05
11:56:05
T*4 23-JAN-1992 MLTM 4 2356
11:56:05
T*4 23-JAN-1992 TMZ 3 PST3
11:56:05
T*4 23-AUG-1991 DST 1 Y4
05:17:23
T*4 23-AUG-1991 DATE, TIME AND 20 23-AUG-1991
05:17:23 ZONE 05:17:23 PST
1 – Defined as three separate formatted fields
2 – Displays all on one line
3 – Varies depending on time zone
4 – Varies depending on DSTCHAR field definition
10.6 Format Factor
The Format Factor Edit box becomes active only when Exponent, Integer,
and Real format type are selected. The default value is 1, but you can
specify any real number with precision less than 7.
The following two operations take place at run time:
• Database values are multiplied by a format factor before being
displayed
• Entered data is divided by a format factor before being stored in the
database
Proprietary - See Copyright Page 280 Field Display Formats
Display Builder User’s Guide
11. Helpful Hints
The following are helpful hints for building displays and display
components. These hints have been collected from Alstom Grid and
customer experiences in building displays for viewing in e-terrabrowser.
For detailed display building guidelines, refer to the User Interface Style
Guide.
11.1 Bounding Rectangles
The bounding rectangles of placeable elements, formatted fields, and
primitives can interfere with the intended function and performance of
displays.
Figure 75 shows how the bounding rectangles of some objects are
defined. Once defined, the bounding rectangles of pictures, conditional
text, formatted fields, and primitives can expand on the online display.
Expansion depends on such factors as the results of attached CAMs and
scale factors, the results of the tests within conditional text, and the
current value of a formatted field.
Figure 75: How Bounding Rectangles Are Defined
Proprietary - See Copyright Page 281 Helpful Hints
Display Builder User’s Guide
The bounding rectangles of these placed objects expand down and to the
right, but they do not expand up or to the left. That is, the placement
coordinate location fixes the top and left sides of these objects when
placed.
These expanding bounding rectangles can cause unintentional overlap of
placed objects, resulting in improper display appearance and
performance. For example, if one field expands over another, data entry is
prevented in the overlapped field.
Figure 76 shows other potential negative results of expanded bounding
rectangles.
Figure 76: Overlap of Bounding Rectangles on a Display
Recommendations:
Based on the above, the following recommendations are made to avoid
problems with overlapping bounding rectangles:
• Begin all pictures and symbols in the upper left corner of the scratch
pad. This aids in aligning pictures and symbols and reduces the risk of
overlap.
Note: See the next hint for additional cautions.
• Use caution when placing objects with keysets attached next to
expandable objects. Overlapping bounding rectangles can hide a
keyset from a user, even though the object is visible.
• When placing formatted fields, use the largest possible character as
the builder display character. For most fonts, this is the uppercase W.
If the character chosen is integral to identifying the field in the scratch
Proprietary - See Copyright Page 282 Helpful Hints
Display Builder User’s Guide
pad, place the field using the widest character, then change the display
character to its identifier.
If displaying a large character field (e.g., 32 characters or greater),
using the W may create a field that is far too wide. In this case, it is
recommended that you use an average-sized font family, such as
Helvetica, Arial, or Courier.
• Always have default output text for conditional text. Set the default
output string to the widest text string possible using the largest
possible font style and size. Not only does this aid in spacing in the
picture, but it provides a means of “seeing” the conditional text in the
Picture scratch pad.
• Define the maximum growth limit (on the Scale tab), or avoid placing
other objects next to primitives or pictures with scale factors.
• Use caution when placing primitives near the top or left of the Picture
scratch pad that can be scaled up or to the left. These are cut off
because the picture does not scale up or to the left.
11.2 Text
The following sections detail recommendations regarding the construction
of text in displays.
11.2.1 Positioning Text Objects
The location of text, formatted fields, and conditional text on a scratch pad
is determined by the baseline of the selected font, not by the upper left
corner of its bounding rectangle.
Figure 77 describes what a baseline is and how it affects the text
coordinate location and expansion. Text does not expand to the left.
Placing these objects near the top or left of a picture, picgroup, or display
can cause them to be cut off if they expand.
Proprietary - See Copyright Page 283 Helpful Hints
Display Builder User’s Guide
Figure 77: Position and Expansion of Text
Recommendations:
Based on the above, the following recommendations are made to keep
text objects from being truncated:
• Do not place text, formatted fields, or conditional text at Y-coordinate 0.
• When placing text, formatted fields, or conditional text at or near the
top or left side of a picture, ensure that they are placed using the
largest possible characters and font style.
For example, suppose a text string at the top left corner of a picture
can have its font style and size changed by a CAM. To ensure that it
does not expand outside the bounding rectangle:
− Define the text string.
− Apply the shared GAB.
− Select the Show Text Bounding Boxes option from the editor’s
menu to check the estimated maximum extent of the text string.
11.2.2 Text Case
Mixed-case text (uppercase and lowercase) is much more readable than
all uppercase.
Recommendation:
• Whenever possible, use mixed case for background text and
conditional text.
Note: Database values in formatted fields are always displayed in all
uppercase.
Proprietary - See Copyright Page 284 Helpful Hints
Display Builder User’s Guide
11.2.3 Text Font Family
The choice of text attributes is of particular importance in application log
displays. Since all fonts (except for Courier) are proportionally spaced,
log entry text fields do not automatically align as they do in character
graphics displays. For some users, this creates a distracting “wavy”
appearance to the entries in application log displays.
Recommendations:
• Experiment to determine the appropriate font family and size
acceptable for your users.
• For consistent application of your test results, create and use an
element set for all application log displays.
11.3 Conditional Data Entry
To make a formatted field appear conditional for data entry, do the
following:
• Define two pictures with identical formatted fields except for the ability
to enter data.
• Define and attach separate CAMs to the pictures to make each visible
for the correct condition.
• Position both pictures at the same coordinate location in the display or
picgroup.
11.4 Conditional Keysets
The process of making keysets conditional is similar to making data entry
conditional, except that keysets can be attached to many objects (pictures,
symbols, primitives, text, etc.).
To make keysets conditional, do the following:
• Create a duplicate of the object on which the conditional keyset is to be
attached.
• Attach the appropriate keyset or keysets to the duplicates.
Note: You can create a condition where no keyset is attached to one
duplicate or where different sets of keysets are attached to the
duplicates.
• Define and attach separate CAMs to the appropriate duplicate objects
to make each visible for the correct condition.
• Position the duplicate objects at the same coordinate location.
Proprietary - See Copyright Page 285 Helpful Hints
Display Builder User’s Guide
11.5 Using Menus in Development
Develop and add menu bar menus to displays early on in the development
process. This aids greatly in navigation during testing and development.
11.6 Toggling L*4 Fields
The /TOGGLE qualifier does not work directly on L*4 fields. As an
alternative, define a pop-up menu with two options using the /SET and
/CLEAR qualifiers.
11.7 CAM Precedence
Multiple CAMs can affect the attributes of a single element or primitive.
The precedence of which CAM overrides the others follows the last
attached rule. The “last attached rule” states that the CAM that was
attached last in the display definition process overrides all other CAMs.
An example is described in the section Last Attached Rule Example.
The last attached rule leads to the last attached hierarchy of CAM
precedence, as follows:
• CAMs attached as local attachments in display editors always override
all other CAMs affecting an object.
• CAMs attached as overall attachments to pictures or picgroups placed
in displays always override CAMs attached to objects within the picture
or picgroup definitions.
• CAMs attached locally in pictures or picgroup editors override GABs.
11.7.1 Last Attached Rule Example
Suppose text is defined on a picture and a shared GAB is applied to it,
setting the text color to green. Assume that CAM_BLUE is attached to the
text and that, under certain conditions, it changes the text color to blue.
CAM_RED is defined to change the color to red under certain conditions
and is attached as an overall attachment to the picture. Finally,
CAM_PINK, which is defined to change the color to pink if conditions are
met, is attached to the picture locally in the Simple Display Editor.
Assuming that conditions result in each CAM changing the color of the
text, then the text is pink (as specified by the CAM attached locally in the
Simple Display Editor). If conditions change and CAM_PINK no longer
resets the color, then the color is red (as specified by the CAM attached to
the picture) — provided, of course, that CAM_RED’s conditions are met to
change the color. If neither of these CAMs results in a color change, then
CAM_BLUE sets the color. And, if all three of the CAMs’ conditions are
Proprietary - See Copyright Page 286 Helpful Hints
Display Builder User’s Guide
not met to change the color, then the color specified in the shared GAB is
shown, which is green.
11.8 Conditional Test Processing
There are two important hints regarding the processing of conditional
statements.
11.8.1 Clause and Phrase Processing Order
CAM and conditional text clauses and phrases are processed in the order
they are entered in the definition. For example:
IF A TRUE “IF Clause”
AND B = “KV” “Phrases for IF Clause”
OR B = “VOLT”
the test processes like this:
IF (A TRUE AND B = “KV”) OR B = “VOLT”
If B = “VOLT”, then this test is always true.
If the desired processing is:
IF A TRUE AND (B = “KV” OR B = “VOLT”)
then you must define the test as follows:
IF A TRUE
AND B = “KV”
ELSEIF A TRUE
AND B = “VOLT”
Now, when B = “VOLT”, the IF clause does not pass but the ELSEIF
clause does, which is the desired result.
11.8.2 L*4 Field Testing
To define a logical (True/False) test on an L*4 field, you must test against
the literal hex strings FFFF or 0000. You cannot simply set the Logic
menu to TRUE or FALSE.
To define the test:
• Set Logic to EQ (equals).
• Define a literal test value of FFFF for True or 0000 for False.
• Specify the Type as Hex.
11.9 Showing Data from Different Databases
To display data from two different records in two different databases on
the picgroup in a tabular display, there must be a pointer from one record
to the other in one of the records.
Proprietary - See Copyright Page 287 Helpful Hints
Display Builder User’s Guide
To display data from both records in the same picgroup, do the following:
• Define pictures for both records.
• Place both pictures in the same picgroup.
• The primary picture in the picgroup must be the record that contains
the pointer to the other record.
Note: The primary record must either be the driving record or
referenced by the driving record.
• Select the secondary picture in the picgroup scratch pad and specify
the pointer field in the subscript field in the Picture Placement
Properties for that picture.
For each occurrence of the primary record, the appropriate secondary
record is displayed.
11.10 Building Pokepoints
There are several issues and recommendations regarding building
pokepoints, as described in the following sections.
11.10.1 Multiple-Part Pokepoints
When building pokepoints such as buttons, be sure to attach the keyset to
the entire area (i.e., the entire button).
For example, you define a button symbol, place it on a picture, and then
place the text “SELECT” on top of the picture. Attaching the keyset to only
the text causes a large area of the button outside the text to not be
sensitive. In this case, you need only attach the keyset to the button to
ensure that the entire area is sensitized.
11.10.2 Pokepoints on Fields with Proxy Strings
When building pokepoints that require field values for proxy string
resolution, you have three options:
• Display the field value only, using it as the pokepoint. To accomplish
this, attach the needed keyset to the formatted field.
• Define a symbol for the pokepoint while also displaying the field value.
Here you have two options:
− Place the formatted field on the symbol and attach the keyset to
both.
− Create a symbol that is not filled, such as a rectangle that can be
placed over the formatted field while allowing the field value to be
Proprietary - See Copyright Page 288 Helpful Hints
Display Builder User’s Guide
visible. The keyset is again attached to both the symbol and the
formatted field.
In both cases, if the symbol is larger than the field, the keyset may not
be resolved properly when the pointer is on the symbol and not in the
field.
To avoid this, make the symbol the same size as the formatted field.
This can be done by resizing the symbol, or by changing the field font
style, size, or display character.
• Show only the pokepoint, such as a button symbol, and do not show
the field value. To achieve this:
− Define the formatted field to be the same color as the display
background so that it does not show.
− Attach the keyset to the formatted field.
− Place the symbol over the field.
− Size the invisible formatted field (by changing fonts and display
characters) and symbol so that they are the same size.
11.11 Using the %FV% Proxy String
The %FV% proxy string is resolved using the current value at the client
and not the current value at the server. This affects the use of this proxy
string in keysets attached to formatted fields, as follows:
• The %FV% proxy string is resolved to only those characters of a field
that are displayed.
For example, if you have a 20-character field in a database, but you
only display the first 10 characters of it in a picture, the proxy string
resolves to the 10 displayed characters, not the entire field value.
• If refresh is not enabled for dynamic fields, database changes are not
reflected when the %FV% proxy string is resolved. This includes
“invisible” fields, as described in the previous section.
For a list of available proxy strings, see the e-terrabrowser Reference
Manual.
Proprietary - See Copyright Page 289 Helpful Hints
Display Builder User’s Guide
11.12 Constant Picgroups
This section provides hints on making picgroups constant and on making
portions of the placed picgroups constant.
11.12.1 Placing Constant Picgroups
Constant picgroups are totally fixed in X and Y. Therefore, they do not
scroll. If you need to have row or column headings scroll, you must either:
• Create a heading picgroup and lock it in X or Y.
Or:
• Create a picgroup, locking the header information in X or Y from within
the Picgroup Editor.
Note: When locking placements in X and Y directions, you must keep a
contiguous “L” shape of the locked objects using the top and left sides of
the display.
11.12.2 CAMs in Constant Picgroups
In order to define tests of hierarchical or non-hierarchical records from a
constant picgroup, there must be a global field (ITEMS record) available
that is a pointer to the record you wish to test.
To define a test for a constant picgroup, do the following:
• Define a picture for the global field.
• Define a formatted field in the picture. Specify the global field as an
indirect pointer in the DB Field Definition dialog box, defining the field
name as the field in the record you wish to test.
• Define a CAM, specifying the global field in the Record text box and as
an indirect pointer in the CAM Definition dialog box.
Define the CAM tests on the field in the destination record.
• Attach the CAM to the formatted field.
• Place the picture on the constant picgroup. Do not specify it as the
primary picture.
Proprietary - See Copyright Page 290 Helpful Hints
Display Builder User’s Guide
11.12.3 Constant Layer Placements
All picgroup placements on a layer can be made constant. This allows you
to place repeating picgroups as row or column headers that scroll with the
display.
By specifying the same occurrence of a picgroup record as the first and
last driving record, data from this occurrence can be made to appear on all
pages of the display.
Proprietary - See Copyright Page 291 Helpful Hints
Display Builder User’s Guide
12. Optimization Guidelines
This chapter provides an overview of the concepts of display performance
and processing, and it also provides guidelines for building displays for
optimal performance.
12.1 Display Performance
Optimal display performance is a function of time. A display performs at its
optimum when it can be called up and refreshed in the shortest amount of
time, while still meeting your requirements.
All displays should be designed, first and foremost, to aid end users in
performing their jobs. Displays should also be designed for ease of
construction and maintenance.
The guidelines presented in this document do not supersede these basic
display design principles. The guidelines are provided to aid you in
designing displays that not only perform their functions, but call up in the
shortest amount of time, while still being easy to construct and maintain.
12.2 Performance Guidelines
This section lists the specific guidelines for building displays for optimal
performance with regard to specific attributes.
12.2.1 Simple Layer Complexity
Simple layer performance is affected by a number of factors, such as the
number and complexities of declutter levels.
Guidelines:
• Reduce the overall complexity of simple layers by reducing the number
of layers and declutter levels requested in the display call-up.
• Design simple layers and declutter levels to reduce the number and
complexity of placed and conditional elements.
• Design simple layers to reduce the total number of database linkages.
• Minimize refreshable items.
• Remember that conditionality is very “expensive”.
12.2.2 Declutter Levels
Data on placements that are not visible at the specified display declutter
level is not sent to the client.
Proprietary - See Copyright Page 292 Optimization Guidelines
Display Builder User’s Guide
For example, if a picture is set to appear at or above the zoom factor 2.0,
and the display is called up at a zoom factor of 1.0, the server does not
send that data to the client.
Guidelines:
• Decluttering objects — especially pictures, formatted fields, and
objects with CAMs attached — can reduce refresh load and the
processing of declutter levels.
• “World Map” displays should be built with performance considerations.
The idea of having a huge display that shows a high-level picture,
where you zoom to multiple levels of detail (such as one-lines), should
be discouraged. Performance and maintenance issues limit this
approach. The same functionality can be achieved using multiple
displays, with keysets that tie them together.
12.2.3 Tabular Layer Pages
Only a single tabular layer page is sent from the server to the client at a
time, so that each page of the display is a separate display call-up. The
performance of each page is directly affected by its size and by the
number and complexity of layers. Pages can be limited in size by varying
methods.
Guidelines:
• Reduce the size of tabular layer pages by limiting the amount of
database information shown on one page using the page headers,
page enders, picgroups/pages, or records/page attributes.
This is especially helpful for long lists of data.
• Minimize the number of refreshable items.
• Fastest to slowest types of tabular layers:
− Indexed
− Repeat
− Link List
− Link List with Integer Sequence
− Link List with Character Sequence
− Hierarchical
− Multi-Dimensional
Proprietary - See Copyright Page 293 Optimization Guidelines
Display Builder User’s Guide
• Reduce the overall complexity of tabular layer pages by reducing the
number of layers requested in the display call-up.
• Design tabular layers to reduce the number and complexity of
picgroups placed on the display.
• Design picgroups to reduce the number and complexity of the placed
and conditional elements.
• Design picgroups to reduce the total number of database linkages.
• Start the tabular information with a DB Key linked to Key0 – Key9,
rather than issue a DISPLAY/FIND or DISPLAY/POSITION display
call-up command.
• Remember that setting the option for the last page number proxy slows
display call-up.
• Remember that conditionality is very “expensive”.
12.2.4 Layers and Display Call-Up
Each layer of a display is, in effect, a separate display. Layers can be
specified to appear or not appear on initial call-up of the display. In terms
of display performance, a request for an additional layer is a separate
display call-up.
Guidelines:
• Place only data initially needed by users on the layers specified to
display on call-up, and place all other data on layers not specified on
initial call-up. Also provide a visible indication to let the operator know
that there is more information, and give the operator a quick way to
access it (e.g., provide a button).
• For tabular layers where more than one layer is required to display the
required data, reduce the overall complexity of the layers as much as
possible.
• For keyset and menu definitions that request specific layers using the
/LAYER qualifier, all required layers, including the DEFAULT, must be
specified.
12.2.5 Placements and Complexity
This section describes the guidelines for building placements to reduce
complexity and optimize display performance.
Proprietary - See Copyright Page 294 Optimization Guidelines
Display Builder User’s Guide
12.2.5.1 Number of Placements vs. Placement Density
A placement (picture, symbol, or primitive) on a display requires the same
data structures to be built by the client, regardless of how dense it is. All
other things being equal, it takes proportionally less time to process a
display with five placements than one with 10.
For example, assume you want to display a total of five formatted fields,
each with a CAM, five text strings, and five conditional texts. The smallest
number of data structures needs to be created (1) if all of these are placed
in one picture. The greatest number of data structures (15) needs to be
created if each field, with attached CAM and conditional text, is a separate
picture, and if each text string is drawn directly on the display.
Guidelines:
• Create displays with fewer placements. With one possible exception, it
is best to place fewer, denser placements.
Note: The noted exception is in the use of indirect pointers in defining
multiple formatted fields and CAMs. Experience has found that single
placements of this type, each defined with indirect pointers, may
process less quickly than dividing the fields and CAMs among multiple
pictures. The performance break point probably needs to be
determined by trial and error.
• Avoid creating separate pictures for individual fields in the same
record. Group all fields for the same record in the same picture.
• When a group of items should appear together on a display, group
them in a picture and place that picture on the display or picgroup,
instead of placing them separately.
For example, group a display title with its associated graphics in a
picture and place the picture on the display or constant picgroup,
instead of placing the text and primitives separately.
12.2.5.2 Using Pop-Ups
Pop-ups are built only when used, not on initial display call-up.
Guideline:
• Use pop-up pictures to present infrequently used data that must still be
accessible on the initial call-up layer(s), page, or declutter level.
12.2.5.3 Display Background Primitives
Background primitives (graphics and text) placed directly on a display
must be sent from the server to the client. This causes additional data
structures to be created at the server and sent to the client.
Proprietary - See Copyright Page 295 Optimization Guidelines
Display Builder User’s Guide
Guideline:
• When at all possible, place needed background in a picture or symbol,
then place it on a display.
12.2.5.4 Effect of Drawing Order
Objects on a display are processed during call-up in the same order in
which they are drawn or placed in the Display Builder editor. This affects
display performance, in that it takes less time to process a display when
the client can paint all elements with the same set of graphic attributes
one after another.
Guidelines:
• When defining elements, picgroups, and displays, define and place all
items that use the same set of graphic attributes (e.g., the same
shared GAB) at the same time.
For example, define all polylines that have the same attributes at the
same time on a simple layer one-line diagram. Define all formatted
fields that have the same shared GAB applied at the same time.
• View the drawing order in Display Builder using the browser window.
Adjust the drawing order by using the send forward, send backward, or
group builder functions.
12.2.6 Conditional Elements and Processing Time
Conditional elements affect display processing time, as follows:
• The larger the number of CAMs and conditional text that must be
processed per display call-up or refresh, the longer the processing
time.
• The greater the complexity of the tests (groups of IF/ELSEIF/ELSE
clauses and associated AND/OR phrases) in the conditional element,
the longer the processing time. Some tests, such as tests of character
strings and ones using indirect pointers, require more processing.
Note: Processing of a test stops as soon as a clause passes. CAMs
can have multiple tests.
• Changes in the attributes may cause additional data structures to be
built.
• If CAMs, which are resolved at the server, determine which of two or
more placements are displayed, data structures for only the one
displayed placement are built and sent to the client.
Proprietary - See Copyright Page 296 Optimization Guidelines
Display Builder User’s Guide
Guidelines:
• Reduce the number of conditional elements, as follows:
− Use overall attachments instead of local attachments when
possible.
For example, group all objects together in a picture that is invisible
under the same conditions, and attach the “invisibility” CAM as an
overall attachment to the picture.
A specific example of this is in defining conditional enterability of
multiple formatted fields. In this case, build two pictures, each with
one CAM, instead of attaching the CAMs to the multiple formatted
field placements.
• Reduce the conditional element complexity, as follows:
− Eliminate unnecessary tests.
− Sequence tests by decreasing probability in the definition.
− Avoid character string testing when possible.
− Avoid using multiple levels of indirect tests.
− Consider database changes that may eliminate or reduce the
number of tests needed or reduce the number of indirects needed.
• Reduce the impact of attribute changes, as follows:
− Use colors and fonts already set up in other elements.
− Avoid using the default attribute modifications in the CAM definition
whenever possible.
− NEVER define an object’s graphic attributes using the CAM’s
default attributes. Use shared GABs instead.
12.2.7 Database Linkage Considerations
This section describes the guidelines for database linkages to optimize
display performance.
12.2.7.1 Display Refresh Rates
At the refresh rate, the server process must check the database values of
all dynamic data (formatted fields, CAMs, scale factors, etc.). The fewer
values that must be checked, the shorter the processing time.
Proprietary - See Copyright Page 297 Optimization Guidelines
Display Builder User’s Guide
Guideline:
• Check the Do Not Refresh field on formatted fields whose data is static
(such as ID fields).
12.2.7.2 Resolving Database Links
Unresolved links have been traced to decreased performance. Notification
that these links are unresolved may only show up in the log the first time a
display is called up after compilation.
Guideline:
• Be sure that all of your database linkages are resolved. You can use
the WebFGUtils utility that comes with e-terrabrowser for simple
layers.
Proprietary - See Copyright Page 298 Optimization Guidelines
Display Builder User’s Guide
Appendix A. Display Feature Cross-Reference
The purpose of this appendix is to give you some different ways to get
information about features that have been added to Display Builder over
time (for a listing of all the added features, see the section Comprehensive
Display Feature List below). Note that only features that require changes
to the DDL syntax are listed.
All compatibility versions supported by Display Builder are listed below.
For each compatibility version, a feature table is available. Each feature is
listed, and the “Supported” column indicates whether or not that feature is
supported for the given compatibility version.
A.1 Comprehensive Display Feature List
Below is a list of all features covered by the compatibility version feature.
Each feature is briefly described. The compatibility version that introduced
the feature is indicated.
A.1.1 Mixed Simple and Tabular Layers
Prior to FG 3.0, displays were referred to as “simple” or “tabular” displays.
Using FG 3.0 or later, a display can contain a mix of simple and tabular
layers. A display must contain at least one layer, and this layer can be
either simple or tabular. In addition, a given display can have zero or more
simple and/or tabular layers (see the section Layers Tab).
Version introduced: FG 3.0.
A.1.2 Specify Picture/Picgroup Size
The picture and picgroup size can be saved. To make it easier to line up
tabular placements, such as column and row headers defined on multiple
layers, users now have the option to set a fixed picture and/or picgroup
size. The default is that the picture or picgroup size is calculated by the
compiler/binder. Later, if a picture size is changed slightly, it can be
enough to cause placements on one tabular layer to no longer align with
placements on another layer. This can be done unintentionally by simply
adding/removing or changing the size of a placement near the border of
the picture or picgroup.
Now the display designer can choose to manually set the size at design
time. If this feature is used consistently, it can help to reduce display
maintenance due to incorrect alignments between layers. It can also help
to solve similar problems with simple placements.
Set the picture size by selecting Picture Properties in the Picture Editor. In
the Picture Property dialog box, change the Set Picture Size radio button
Proprietary - See Copyright Page 299 Display Feature Cross-Reference
Display Builder User’s Guide
from Automatic to Manual and specify the appropriate Width and Height
(see the section Picture Definition Window – Picture Tab).
Set the picgroup size by selecting Picgroup Properties in the Picgroup
Editor. In the Picgroup Property dialog box, change the Set Picgroup Size
radio button from Automatic to Manual and specify the appropriate Width
and Height (see the section Picgroup Tab).
Version introduced: FG 3.0.
A.1.3 Text Origin Saved in DDL
Prior to FG 5.0, all text placements saved in a DDL file had both a text
origin and a placement origin. FG 5.0 and later versions of a host do not
need the text origin, so it is no longer saved.
This is an internal feature that cannot be controlled.
Version introduced: FG 5.0.
A.1.4 New Multi-Dimensional Picture Group Layout
Multi-dimensional layout information is now saved correctly. Previously,
multi-dimensional layout information was incorrectly saved in the picgroup
definition rather than as part of the picgroup placement, which can cause
problems when multi-dimensional picgroups were re-used.
This is an internal feature that cannot be controlled.
Version introduced: FG 5.0.
A.1.5 Special Characters Allowed
Support for single quotes has been added. Now, text strings such as 2.0’
can be used in displays; previously, this caused parser errors.
This is an internal feature that cannot be controlled.
Version introduced: FG 3.0.2.
A.1.6 Localize Strings
A localize token has been added to the DDL syntax. The token “localize”
precedes every text string, to help find text strings that might need to be
internationalized.
This is an internal feature that cannot be controlled.
Version introduced: FG 3.0.
Proprietary - See Copyright Page 300 Display Feature Cross-Reference
Display Builder User’s Guide
A.1.7 Menu Bar Item Application
If a given menu bar item is pertinent to only one application, the
application’s name can be specified. When the compiled version of the
display appears at the console, the menu only appears in the menu bar of
the specified application. If Application is left blank, the menu can be
shared among all applications (see the section Menus Tab).
Version introduced: FG 5.1.
A.1.8 Uppercase Formatted Fields
It is now optional to uppercase formatted fields. Prior to this version, data
entry performed on any formatted field was uppercased. With support for
Linux, it has become required to make sure that certain data entry values
are not uppercased. This can be done on formatted fields by un-checking
the Uppercase Data Entry check box in the Formatted Field Properties
dialog box (see the section Defining Formatted Fields).
Version introduced: FG 5.1.
A.1.9 Format Factor
A multiplication factor has been added to the formatted field properties.
The format factor applies to formatted fields of the types Real, Integer, and
Exponent. The format factor is multiplied by the given formatted fields
database value before being displayed. When data entry is performed, the
entered value is divided by the format factor before being entered into the
database. The purpose of the format factor is to facilitate displays in the
distribution arena (see the section Formatted Field Properties Definition
Tab).
Version introduced: FG 5.2.
A.1.10 Third-Party Scripts
Active Scripting provides a new mechanism to greatly extend what users
can do to displays at run time. Third-party scripts are user-defined
scripting functions that are invoked as a result of user interactions with a
display, or a change in database field values. Operations such as
changing graphics colors, mobilizing display objects, altering online
display definitions, exchanging messages with other processes, and
launching external programs can be achieved with third-party scripts
written in various scripting languages such as JScript (Microsoft
JavaScript), VBScript, and PerlScript.
Keysets and CAMs can be defined to execute third-party scripts. Script-
enabled CAMs can be used to interact with ActiveX controls placed on
displays.
Proprietary - See Copyright Page 301 Display Feature Cross-Reference
Display Builder User’s Guide
For details about creation of keysets using third-party scripting, see the
section Defining Keysets Using Third-Party Scripting.
For details about creation of CAMs using third-party scripting, see the
section Defining CAMs Using Third-Party Scripting.
Version introduced: e-terrabrowser 2.1.
A.1.11 GEM Support
The GEM is a named attachment, like a CAM or a shared GAB. It allows
users to reposition (or shift) and scale elements to which it is attached.
Each GEM is made up of a scale factor and a shift factor, along with
e-terrahabitat–context information (app, db, record(s)). A GEM can be
attached to picture parts (this includes primitives, symbols, text, fields, and
CTs) and/or to pictures as an overall attachment. That is, it can be
attached within a picture or via the Picture Properties form (see the
section Defining GEMs).
Version introduced: FG 5.2.
A.1.12 Clip to Regions
Since FG started to support placements to be locked on the simple layers
in a display, the scrollable placements disappeared underneath the locking
regions on simple displays. Users were often confused by these
disappearing placements. In order to accommodate both tabular layers
and mixing simple and tabular layers in a display, a toggle button was
introduced so the creation of locking regions can be turned on or off on a
per-layer basis.
e-terrabrowser and Display Builder share the same method to calculate
the locking regions. The XYlocked region, the Xlocked region, the Ylocked
region, and the Unlocked region can be overlapped.
Below is a table that shows how the regions are calculated in
e-terrabrowser and Display Builder. Each region is given by top left point
(x1, y1) and bottom right point (x2, y2).
Proprietary - See Copyright Page 302 Display Feature Cross-Reference
Display Builder User’s Guide
Table 11: Clipping and Locked Regions
e-terrabrowser and Display Builder
XY (0, 0),
Locked (max(XY locked placement’s right boundary), max(XY
Region locked placement’s bottom boundary))
Y Locked (min(Ylocked Placements’ x origin), min(Ylocked
Region Placement’s y origin)), (infinity, infinity)
X Locked (min(Xlocked Placement’s x origin), min(Xlocked
Region Placement’s y origin)), (infinity, infinity)
Unlocked (min(Unlocked Placement’s x origin), min(Unlocked
Region Placement’s y origin)), (infinity, infinity)
See the section Layers Tab.
Version introduced: FG 5.2.
A.1.13 Dynamic Simple Layers
This new type of layer allows placements to be generated
programmatically by a special kind of OLE DB provider each time the
display is called up.
This feature is intended to be used by the Alstom Grid distribution
automation OLE DB provider, and it should not be used without consulting
with an Alstom Grid engineer (see the section Simple Layer Tab).
Version introduced: e-terrabrowser 3.0.
A.1.14 Indexed Placement
Indexed placement is a tabular layers type, which uses a new mechanism
for resolving the query that generates the placements on a layer. An
“index” is a data structure supported by the e-terrabrowser data server
and updated by notifications from various applications. When you use an
indexed layer, you need to specify the name of the index that should
provide the data for the layer, along with a parameter string that specifies
sorting and filtering criteria. All indexes automatically filter by area of
responsibility, so there is no need to use permission tests on these layers.
Also, CAMs are not usually required, because the existence of a record in
the index indicates that it meets specific conditions (see the section
Indexed Tab).
Version introduced: e-terrabrowser 3.0.
Proprietary - See Copyright Page 303 Display Feature Cross-Reference
Display Builder User’s Guide
A.1.15 Placement Rotation
A rotation angle property has been added to all placeable objects except
for Picgroups. Both Display Builder and the e-terrabrowser client rotate
the given placement according to each rotation angle before rendering the
placement (see the section Placement Properties Forms).
Version introduced: e-terrabrowser 3.0.
A.1.16 Secondary Application on Simple Layers
The Secondary Application property has been added to simple layers. This
should be used to specify an application that is different from the display’s
primary application. This property has been introduced in order to give the
display compiler an opportunity to check application context.
It is strongly recommended that pictures displaying data from an
application different from the primary application are moved to a layer that
has the given application name specified as a secondary application (see
the section Simple Layer Tab).
Version introduced: e-terrabrowser 5.2.1.
A.1.17 Background Image
The Background Image property allows the designer to specify an image
to serve as a background. A display can have a maximum of one
background image at any given time, but it can change to show a different
image when certain conditions are met (see the section Background
Image).
Version introduced: e-terrabrowser 3.0.
A.1.18 Halo Style
The Halo Style is a new attribute member of a GAB. Similar to other GAB
attributes, Halo Style affects how a piece of graphics is rendered.
Specifically, it determines whether and how an enclosing band in the
background color of the GAB should be drawn around the primary
graphics. Halo Style is intended to create the “highlight” effect during
abnormal conditions (see the section Lines and Fills Tab).
Version introduced: e-terrabrowser 3.0.
A.1.19 Hidden Data Entry
This is a new attribute that can be used with formatted fields. If a field with
this attribute checked is selected for data entry, the characters typed into
the edit box are not visible and the data entry is encrypted. This attribute is
Proprietary - See Copyright Page 304 Display Feature Cross-Reference
Display Builder User’s Guide
typically used for fields that contain passwords (see the section Defining
Formatted Fields).
Version introduced: e-terrabrowser 3.0.
A.1.20 Conditional Permission Checks
CAMs can now be used to test permissions. Four new operators have
been introduced to test the four types of permissions supported by
PERMIT: read_permitted, write_permitted, execute_permitted, and
audible_permitted (see the section Defining CAMs with Permission
Checks).
Version introduced: e-terrabrowser 3.0.
A.1.21 Scale to Fit Style
The Display Definition dialog box provides Scale to Fit options, which are
used in e-terrabrowser to better size displays when the DISPLAY/FIT
feature is enabled. The options are as follows: Fit in XY, Fit in X Only, and
Fit Either XY or X Based on Aspect Ratio (see the section Defining
Displays).
Version introduced: e-terrabrowser 3.0.
A.1.22 Tool Tips
A “tool tip” is a small pop-up window that appears when the cursor hovers
over a location. e-terrabrowser allows a tool tip to be associated with any
visible object on a display. It can contain any combination of static text,
proxy strings, and database fields. This allows the display to provide
context-sensitive information about the object under the cursor and how it
can be used (see the section Placement Properties Forms).
Version introduced: e-terrabrowser 3.1.2.
A.1.23 Enhanced Support of ActiveX Controls
The support for ActiveX controls that was introduced in e-terrabrowser 3.0
has been extended. You can now place controls on pictures, which can be
used on tabular displays. New proxy strings and commands provide easier
access to the properties and methods of controls, without the need for a
scripting language such as JavaScript (for more information about proxy
strings and commands, see the e-terrabrowser Reference Manual). New
“data-aware” controls have also been added and are delivered with the
e-terrabrowser client.
Version introduced: e-terrabrowser 3.1.2.
Proprietary - See Copyright Page 305 Display Feature Cross-Reference
Display Builder User’s Guide
Note: ActiveX controls are being deprecated starting in Display
Builder 5.7.
A.1.24 Enhanced Support for Raster Images
Earlier versions of e-terrabrowser support the use of a bitmap as
background for a display. e-terrabrowser 3.1 extends this feature to allow
bitmap, gif, jpeg, or icon files to be specified as background for displays,
pictures, and symbols. These image files can be included in the compiled
display file, or referenced as separate files. Display Builder includes a
preview window that allows you to browse through images in any directory
on your hard drive, so you can easily find the image you want.
Version introduced: e-terrabrowser 3.1.2.
A.1.25 CAM Enhancements
CAMs have been enhanced to test and set the values of proxy strings.
CAMs can also define a command to be executed when a clause
evaluates to TRUE. Among other things, this capability allows the ability to
test and set properties of ActiveX controls based on conditional logic in
CAMs.
Version introduced: e-terrabrowser 3.1.2.
A.1.26 Placement Identifiers
All placeable objects can be assigned a unique identifier.
Version introduced: e-terrabrowser 3.1.2.
A.1.27 Multi-Layer CAMs
The e-terrabrowser compiler has been enhanced to process multi-layer
CAMs containing the %pgmax% proxy.
Note: This enhancement did not involve a change to the DDL syntax, but
it did result in a change to the binary structure of compiled displays.
Displays using the %pgmax% proxies in CAMs must be re-compiled using
compatibility version 3.2.1 or higher (for more information about proxies,
see the e-terrabrowser Reference Manual).
Version introduced: e-terrabrowser 3.2.1.
A.1.28 Windows TrueType Fonts
e-terrabrowser has been enhanced to support Windows TrueType fonts
rather than the limited number of FG fonts supported in the past.
This feature can be used wherever fonts can be selected. Rather than
being able to select from a limited set of FG fonts, you can select fonts
Proprietary - See Copyright Page 306 Display Feature Cross-Reference
Display Builder User’s Guide
from the standard Windows Font dialog box. This feature also allows you
to specify underscore and strikethrough effects.
Version introduced: e-terrabrowser 3.3.0.
A.1.29 Multiple Data Sources
e-terrabrowser has been enhanced to support multiple data sources on a
single display. This feature can be used to create displays that show
e-terrahabitat data alongside e-terracontrol data and/or relational data.
Version introduced: e-terrabrowser 3.3.0.
A.1.30 Signed Pair Arrow Size
The Formatted Field dialog box has been enhanced to allow the size of
signed pair arrows to be specified independently of the font size. This
feature should be used to enlarge signed pair arrows so they are easier to
see on one-line displays.
Version introduced: e-terrabrowser 3.3.0.
A.1.31 Limits for Inner Dimensions for Multi-Dimensional Data
This feature allows for the restriction of multi-dimensional data in all
dimensions. In the past, only one dimension could be restricted in the
case of two- or three-dimensional data. This feature allows all dimensions
to be restricted.
Version introduced: e-terrabrowser 3.3.0.
A.1.32 Layer Refresh Rate
This enhancement allows display designers to specify the refresh rate on
the layer level rather than on the display level. Previously, the refresh rate
has been specified in the display definition, which assigned the same
refresh rate to all layers. The layer-level refresh rate options allow display
designers to specify different refresh rates for layers.
Note: In order to disable refreshes for a given layer, specify the layer
refresh rate 9999. This should be used in cases where a given layer
contains only an ActiveX control.
Version introduced: e-terrabrowser 3.3.0.
Proprietary - See Copyright Page 307 Display Feature Cross-Reference
Display Builder User’s Guide
Appendix B. Compatibility Version Features
The following tables list all features added to Display Builder over time.
The “Introduced” column lists the compatibility version in which the feature
was first introduced.
The “Supported” column indicates whether or not a given feature is
supported in this compatibility version. “Yes” indicates that the feature is
supported. “No” indicates that the feature is not supported in this
compatibility version.
“e-terrabrowser Only” indicates that the feature is only supported in
e-terrabrowser and not in Rapport-FG.
FG 2.6.1 was the initial version used for backward compatibility. The
syntax generated is the same as the old VMS-based Display Builder
generated. Customers who interchangeably use both the old VMS-based
Display Builder as well as the new Display Builder can do so safely by
setting the Display Builder’s compatibility version to FG 2.6.1.
Proprietary - See Copyright Page 308 Compatibility Version Features
Display Builder User’s Guide
B.1 Compatibility Version FG 2.6.1
Table 12: Version FG 2.6.1 Features
Feature Introduced Supported
1 Mixed Simple and Tabular Layers FG 3.0 No
2 Specify Picture/Picgroup Size FG 3.0 No
3 Text Origin FG 5.0 Yes
4 New Multi-Dimensional Picture Group Layout FG 5.0 No
5 Special Characters Allowed FG 3.0.2 No
6 Localize String FG 3.0 No
7 Menu Bar Item Application FG 5.1 No
8 Uppercase Formatted Field FG 5.1 No
9 Format Factor FG 5.2 No
10 Third-Party Scripts e-terrabrowser 2.1 No
11 ActiveX Controls e-terrabrowser 3.0 No
12 Gem Support FG 5.2 No
13 Clip to Regions FG 5.2 No
14 Dynamic Simple Layers e-terrabrowser 3.0 No
15 Indexed Layers e-terrabrowser 3.0 No
16 Placement Rotation e-terrabrowser 3.0 No
17 Secondary Application on Simple Layer FG 5.2.1 No
18 Background Image e-terrabrowser 3.0 No
19 Halo Style e-terrabrowser 3.0 No
20 Hidden Data Entry e-terrabrowser 3.0 No
21 Conditional Permission Checks e-terrabrowser 3.0 No
22 Scale to Fit Style e-terrabrowser 3.0 No
23 Tool Tips e-terrabrowser 3.1.2 No
24 Enhanced Support of ActiveX Controls e-terrabrowser 3.1.2 No
25 Enhanced Support for Raster Images e-terrabrowser 3.1.2 No
26 CAM Enhancements e-terrabrowser 3.1.2 No
27 Placement Identifiers e-terrabrowser 3.1.2 No
28 Multi-Layer Cams e-terrabrowser 3.2.1 No
29 Windows TrueType Fonts e-terrabrowser 3.3.0 No
30 Multiple Data Sources e-terrabrowser 3.3.0 No
31 Signed Pair Arrow Size e-terrabrowser 3.3.0 No
32 Limits for Inner Dimensions for Multi- e-terrabrowser 3.3.0 No
Dimensional Data
33 Layer Refresh Rate e-terrabrowser 3.3.0 No
Proprietary - See Copyright Page 309 Compatibility Version Features
Display Builder User’s Guide
B.2 Compatibility Version FG 3.0
Table 13: Version FG 3.0 Features
Feature Introduced Supported
1 Mixed Simple and Tabular Layers FG 3.0 Yes
2 Specify Picture/Picgroup Size FG 3.0 Yes
3 Text Origin FG 5.0 Yes
4 New Multi-Dimensional Picture Group Layout FG 5.0 No
5 Special Characters Allowed FG 3.0.2 No
6 Localize String FG 3.0 Yes
7 Menu Bar Item Application FG 5.1 No
8 Uppercase Formatted Field FG 5.1 No
9 Format Factor FG 5.2 No
10 Third-Party Scripts e-terrabrowser 2.1 No
11 ActiveX Controls e-terrabrowser 3.0 No
12 Gem Support FG 5.2 No
13 Clip to Regions FG 5.2 No
14 Dynamic Simple Layers e-terrabrowser 3.0 No
15 Indexed Layers e-terrabrowser 3.0 No
16 Placement Rotation e-terrabrowser 3.0 No
17 Secondary Application on Simple Layer FG 5.2.1 No
18 Background Image e-terrabrowser 3.0 No
19 Halo Style e-terrabrowser 3.0 No
20 Hidden Data Entry e-terrabrowser 3.0 No
21 Conditional Permission Checks e-terrabrowser 3.0 No
22 Scale to Fit Style e-terrabrowser 3.0 No
23 Tool Tips e-terrabrowser 3.1.2 No
24 Enhanced Support of ActiveX Controls e-terrabrowser 3.1.2 No
25 Enhanced Support for Raster Images e-terrabrowser 3.1.2 No
26 CAM Enhancements e-terrabrowser 3.1.2 No
27 Placement Identifiers e-terrabrowser 3.1.2 No
28 Multi-Layer Cams e-terrabrowser 3.2.1 No
29 Windows TrueType Fonts e-terrabrowser 3.3.0 No
30 Multiple Data Sources e-terrabrowser 3.3.0 No
31 Signed Pair Arrow Size e-terrabrowser 3.3.0 No
32 Limits for Inner Dimensions for Multi- e-terrabrowser 3.3.0 No
Dimensional Data
33 Layer Refresh Rate e-terrabrowser 3.3.0 No
Proprietary - See Copyright Page 310 Compatibility Version Features
Display Builder User’s Guide
B.3 Compatibility Version FG 3.0.2
Table 14: Version FG 3.0.2 Features
Feature Introduced Supported
1 Mixed Simple and Tabular Layers FG 3.0 Yes
2 Specify Picture/Picgroup Size FG 3.0 Yes
3 Text Origin FG 5.0 Yes
4 New Multi-Dimensional Picture Group Layout FG 5.0 No
5 Special Characters Allowed FG 3.0.2 Yes
6 Localize String FG 3.0 Yes
7 Menu Bar Item Application FG 5.1 No
8 Uppercase Formatted Field FG 5.1 No
9 Format Factor FG 5.2 No
10 Third-Party Scripts e-terrabrowser 2.1 No
11 ActiveX Controls e-terrabrowser 3.0 No
12 Gem Support FG 5.2 No
13 Clip to Regions FG 5.2 No
14 Dynamic Simple Layers e-terrabrowser 3.0 No
15 Indexed Layers e-terrabrowser 3.0 No
16 Placement Rotation e-terrabrowser 3.0 No
17 Secondary Application on Simple Layer FG 5.2.1 No
18 Background Image e-terrabrowser 3.0 No
19 Halo Style e-terrabrowser 3.0 No
20 Hidden Data Entry e-terrabrowser 3.0 No
21 Conditional Permission Checks e-terrabrowser 3.0 No
22 Scale to Fit Style e-terrabrowser 3.0 No
23 Tool Tips e-terrabrowser 3.1.2 No
24 Enhanced Support of ActiveX Controls e-terrabrowser 3.1.2 No
25 Enhanced Support for Raster Images e-terrabrowser 3.1.2 No
26 CAM Enhancements e-terrabrowser 3.1.2 No
27 Placement Identifiers e-terrabrowser 3.1.2 No
28 Multi-Layer Cams e-terrabrowser 3.2.1 No
29 Windows TrueType Fonts e-terrabrowser 3.3.0 No
30 Multiple Data Sources e-terrabrowser 3.3.0 No
31 Signed Pair Arrow Size e-terrabrowser 3.3.0 No
32 Limits for Inner Dimensions for Multi- e-terrabrowser 3.3.0 No
Dimensional Data
33 Layer Refresh Rate e-terrabrowser 3.3.0 No
Proprietary - See Copyright Page 311 Compatibility Version Features
Display Builder User’s Guide
B.4 Compatibility Version FG 5.0
Table 15: Version FG 5.0 Features
Feature Introduced Supported
1 Mixed Simple and Tabular Layers FG 3.0 Yes
2 Specify Picture/Picgroup Size FG 3.0 Yes
3 Text Origin FG 5.0 No
4 New Multi-Dimensional Picture Group Layout FG 5.0 Yes
5 Special Characters Allowed FG 3.0.2 Yes
6 Localize String FG 3.0 Yes
7 Menu Bar Item Application FG 5.1 No
8 Uppercase Formatted Field FG 5.1 No
9 Format Factor FG 5.2 No
10 Third-Party Scripts e-terrabrowser 2.1 No
11 ActiveX Controls e-terrabrowser 3.0 No
12 Gem Support FG 5.2 No
13 Clip to Regions FG 5.2 No
14 Dynamic Simple Layers e-terrabrowser 3.0 No
15 Indexed Layers e-terrabrowser 3.0 No
16 Placement Rotation e-terrabrowser 3.0 No
17 Secondary Application on Simple Layer FG 5.2.1 No
18 Background Image e-terrabrowser 3.0 No
19 Halo Style e-terrabrowser 3.0 No
20 Hidden Data Entry e-terrabrowser 3.0 No
21 Conditional Permission Checks e-terrabrowser 3.0 No
22 Scale to Fit Style e-terrabrowser 3.0 No
23 Tool Tips e-terrabrowser 3.1.2 No
24 Enhanced Support of ActiveX Controls e-terrabrowser 3.1.2 No
25 Enhanced Support for Raster Images e-terrabrowser 3.1.2 No
26 CAM Enhancements e-terrabrowser 3.1.2 No
27 Placement Identifiers e-terrabrowser 3.1.2 No
28 Multi-Layer Cams e-terrabrowser 3.2.1 No
29 Windows TrueType Fonts e-terrabrowser 3.3.0 No
30 Multiple Data Sources e-terrabrowser 3.3.0 No
31 Signed Pair Arrow Size e-terrabrowser 3.3.0 No
32 Limits for Inner Dimensions for Multi- e-terrabrowser 3.3.0 No
Dimensional Data
33 Layer Refresh Rate e-terrabrowser 3.3.0 No
Proprietary - See Copyright Page 312 Compatibility Version Features
Display Builder User’s Guide
B.5 Compatibility Version FG 5.1
Table 16: Version FG 5.1 Features
Feature Introduced Supported
1 Mixed Simple and Tabular Layers FG 3.0 Yes
2 Specify Picture/Picgroup Size FG 3.0 Yes
3 Text Origin FG 5.0 No
4 New Multi-Dimensional Picture Group Layout FG 5.0 Yes
5 Special Characters Allowed FG 3.0.2 Yes
6 Localize String FG 3.0 Yes
7 Menu Bar Item Application FG 5.1 Yes
8 Uppercase Formatted Field FG 5.1 Yes
9 Format Factor FG 5.2 No
10 Third-Party Scripts e-terrabrowser 2.1 No
11 ActiveX Controls e-terrabrowser 3.0 No
12 Gem Support FG 5.2 No
13 Clip to Regions FG 5.2 No
14 Dynamic Simple Layers e-terrabrowser 3.0 No
15 Indexed Layers e-terrabrowser 3.0 No
16 Placement Rotation e-terrabrowser 3.0 No
17 Secondary Application on Simple Layer FG 5.2.1 No
18 Background Image e-terrabrowser 3.0 No
19 Halo Style e-terrabrowser 3.0 No
20 Hidden Data Entry e-terrabrowser 3.0 No
21 Conditional Permission Checks e-terrabrowser 3.0 No
22 Scale to Fit Style e-terrabrowser 3.0 No
23 Tool Tips e-terrabrowser 3.1.2 No
24 Enhanced Support of ActiveX Controls e-terrabrowser 3.1.2 No
25 Enhanced Support for Raster Images e-terrabrowser 3.1.2 No
26 CAM Enhancements e-terrabrowser 3.1.2 No
27 Placement Identifiers e-terrabrowser 3.1.2 No
28 Multi-Layer Cams e-terrabrowser 3.2.1 No
29 Windows TrueType Fonts e-terrabrowser 3.3.0 No
30 Multiple Data Sources e-terrabrowser 3.3.0 No
31 Signed Pair Arrow Size e-terrabrowser 3.3.0 No
32 Limits for Inner Dimensions for Multi- e-terrabrowser 3.3.0 No
Dimensional Data
33 Layer Refresh Rate e-terrabrowser 3.3.0 No
Proprietary - See Copyright Page 313 Compatibility Version Features
Display Builder User’s Guide
B.6 Compatibility Version FG 5.2
Table 17: Version FG 5.2 Features
Feature Introduced Supported
1 Mixed Simple and Tabular Layers FG 3.0 Yes
2 Specify Picture/Picgroup Size FG 3.0 Yes
3 Text Origin FG 5.0 No
4 New Multi-Dimensional Picture Group Layout FG 5.0 Yes
5 Special Characters Allowed FG 3.0.2 Yes
6 Localize String FG 3.0 Yes
7 Menu Bar Item Application FG 5.1 Yes
8 Uppercase Formatted Field FG 5.1 Yes
9 Format Factor FG 5.2 Yes
10 Third-Party Scripts e-terrabrowser 2.1 No
11 ActiveX Controls e-terrabrowser 3.0 No
12 Gem Support FG 5.2 Yes
13 Clip to Regions FG 5.2 Yes
14 Dynamic Simple Layers e-terrabrowser 3.0 No
15 Indexed Layers e-terrabrowser 3.0 No
16 Placement Rotation e-terrabrowser 3.0 No
17 Secondary Application on Simple Layer FG 5.2.1 No
18 Background Image e-terrabrowser 3.0 No
19 Halo Style e-terrabrowser 3.0 No
20 Hidden Data Entry e-terrabrowser 3.0 No
21 Conditional Permission Checks e-terrabrowser 3.0 No
22 Scale to Fit Style e-terrabrowser 3.0 No
23 Tool Tips e-terrabrowser 3.1.2 No
24 Enhanced Support of ActiveX Controls e-terrabrowser 3.1.2 No
25 Enhanced Support for Raster Images e-terrabrowser 3.1.2 No
26 CAM Enhancements e-terrabrowser 3.1.2 No
27 Placement Identifiers e-terrabrowser 3.1.2 No
28 Multi-Layer Cams e-terrabrowser 3.2.1 No
29 Windows TrueType Fonts e-terrabrowser 3.3.0 No
30 Multiple Data Sources e-terrabrowser 3.3.0 No
31 Signed Pair Arrow Size e-terrabrowser 3.3.0 No
32 Limits for Inner Dimensions for Multi- e-terrabrowser 3.3.0 No
Dimensional Data
33 Layer Refresh Rate e-terrabrowser 3.3.0 No
Proprietary - See Copyright Page 314 Compatibility Version Features
Display Builder User’s Guide
B.7 Compatibility Version FG 5.2.1
Table 18: Version FG 5.2.1 Features
Feature Introduced Supported
1 Mixed Simple and Tabular Layers FG 3.0 Yes
2 Specify Picture/Picgroup Size FG 3.0 Yes
3 Text Origin FG 5.0 No
4 New Multi-Dimensional Picture Group Layout FG 5.0 Yes
5 Special Characters Allowed FG 3.0.2 Yes
6 Localize String FG 3.0 Yes
7 Menu Bar Item Application FG 5.1 Yes
8 Uppercase Formatted Field FG 5.1 Yes
9 Format Factor FG 5.2 Yes
10 Third-Party Scripts e-terrabrowser 2.1 No
11 ActiveX Controls e-terrabrowser 3.0 No
12 Gem Support FG 5.2 Yes
13 Clip to Regions FG 5.2 Yes
14 Dynamic Simple Layers e-terrabrowser 3.0 No
15 Indexed Layers e-terrabrowser 3.0 No
16 Placement Rotation e-terrabrowser 3.0 No
17 Secondary Application on Simple Layer FG 5.2.1 Yes
18 Background Image e-terrabrowser 3.0 No
19 Halo Style e-terrabrowser 3.0 No
20 Hidden Data Entry e-terrabrowser 3.0 No
21 Conditional Permission Checks e-terrabrowser 3.0 No
22 Scale to Fit Style e-terrabrowser 3.0 No
23 Tool Tips e-terrabrowser 3.1.2 No
24 Enhanced Support of ActiveX Controls e-terrabrowser 3.1.2 No
25 Enhanced Support for Raster Images e-terrabrowser 3.1.2 No
26 CAM Enhancements e-terrabrowser 3.1.2 No
27 Placement Identifiers e-terrabrowser 3.1.2 No
28 Multi-Layer Cams e-terrabrowser 3.2.1 No
29 Windows TrueType Fonts e-terrabrowser 3.3.0 No
30 Multiple Data Sources e-terrabrowser 3.3.0 No
31 Signed Pair Arrow Size e-terrabrowser 3.3.0 No
32 Limits for Inner Dimensions for Multi- e-terrabrowser 3.3.0 No
Dimensional Data
33 Layer Refresh Rate e-terrabrowser 3.3.0 No
Proprietary - See Copyright Page 315 Compatibility Version Features
Display Builder User’s Guide
B.8 Compatibility Version e-terrabrowser 2.1
Table 19: Version e-terrabrowser 2.1
Feature Introduced Supported
1 Mixed Simple and Tabular Layers FG 3.0 Yes
2 Specify Picture/Picgroup Size FG 3.0 Yes
3 Text Origin FG 5.0 No
4 New Multi-Dimensional Picture Group Layout FG 5.0 Yes
5 Special Characters Allowed FG 3.0.2 Yes
6 Localize String FG 3.0 Yes
7 Menu Bar Item Application FG 5.1 Yes
8 Uppercase Formatted Field FG 5.1 Yes
9 Format Factor FG 5.2 Yes
10 Third-Party Scripts e-terrabrowser 2.1 e-terrabrowser Only
11 ActiveX Controls e-terrabrowser 3.0 No
12 Gem Support FG 5.2 Yes
13 Clip to Regions FG 5.2 Yes
14 Dynamic Simple Layers e-terrabrowser 3.0 No
15 Indexed Layers e-terrabrowser 3.0 No
16 Placement Rotation e-terrabrowser 3.0 No
17 Secondary Application on Simple Layer FG 5.2.1 No
18 Background Image e-terrabrowser 3.0 No
19 Halo Style e-terrabrowser 3.0 No
20 Hidden Data Entry e-terrabrowser 3.0 No
21 Conditional Permission Checks e-terrabrowser 3.0 No
22 Scale to Fit Style e-terrabrowser 3.0 No
23 Tool Tips e-terrabrowser 3.1.2 No
24 Enhanced Support of ActiveX Controls e-terrabrowser 3.1.2 No
25 Enhanced Support for Raster Images e-terrabrowser 3.1.2 No
26 CAM Enhancements e-terrabrowser 3.1.2 No
27 Placement Identifiers e-terrabrowser 3.1.2 No
28 Multi-Layer Cams e-terrabrowser 3.2.1 No
29 Windows TrueType Fonts e-terrabrowser 3.3.0 No
30 Multiple Data Sources e-terrabrowser 3.3.0 No
31 Signed Pair Arrow Size e-terrabrowser 3.3.0 No
32 Limits for Inner Dimensions for Multi- e-terrabrowser 3.3.0 No
Dimensional Data
33 Layer Refresh Rate e-terrabrowser 3.3.0 No
Proprietary - See Copyright Page 316 Compatibility Version Features
Display Builder User’s Guide
B.9 Compatibility Version e-terrabrowser 3.0
Table 20: Version e-terrabrowser 3.0 Features
Feature Introduced Supported
1 Mixed Simple and Tabular Layers FG 3.0 Yes
2 Specify Picture/Picgroup Size FG 3.0 Yes
3 Text Origin FG 5.0 No
4 New Multi-Dimensional Picture Group Layout FG 5.0 Yes
5 Special Characters Allowed FG 3.0.2 Yes
6 Localize String FG 3.0 Yes
7 Menu Bar Item Application FG 5.1 Yes
8 Uppercase Formatted Field FG 5.1 Yes
9 Format Factor FG 5.2 Yes
10 Third-Party Scripts e-terrabrowser 2.1 e-terrabrowser Only
11 ActiveX Controls e-terrabrowser 3.0 e-terrabrowser Only
12 Gem Support FG 5.2 Yes
13 Clip to Regions FG 5.2 Yes
14 Dynamic Simple Layers e-terrabrowser 3.0 e-terrabrowser Only
15 Indexed Layers e-terrabrowser 3.0 e-terrabrowser Only
16 Placement Rotation e-terrabrowser 3.0 e-terrabrowser Only
17 Secondary Application on Simple Layer FG 5.2.1 Yes
18 Background Image e-terrabrowser 3.0 e-terrabrowser Only
19 Halo Style e-terrabrowser 3.0 e-terrabrowser Only
20 Hidden Data Entry e-terrabrowser 3.0 e-terrabrowser Only
21 Conditional Permission Checks e-terrabrowser 3.0 e-terrabrowser Only
22 Scale to Fit Style e-terrabrowser 3.0 e-terrabrowser Only
23 Tool Tips e-terrabrowser 3.1.2 No
24 Enhanced Support of ActiveX Controls e-terrabrowser 3.1.2 No
25 Enhanced Support for Raster Images e-terrabrowser 3.1.2 No
26 CAM Enhancements e-terrabrowser 3.1.2 No
27 Placement Identifiers e-terrabrowser 3.1.2 No
28 Multi-Layer Cams e-terrabrowser 3.2.1 No
29 Windows TrueType Fonts e-terrabrowser 3.3.0 No
30 Multiple Data Sources e-terrabrowser 3.3.0 No
31 Signed Pair Arrow Size e-terrabrowser 3.3.0 No
32 Limits for Inner Dimensions for Multi-Dimensional e-terrabrowser 3.3.0 No
Data
33 Layer Refresh Rate e-terrabrowser 3.3.0 No
Proprietary - See Copyright Page 317 Compatibility Version Features
Display Builder User’s Guide
B.10 Compatibility Version e-terrabrowser 3.1.2
Table 21: Version e-terrabrowser 3.1.2 Features
Feature Introduced Supported
1 Mixed Simple and Tabular Layers FG 3.0 Yes
2 Specify Picture/Picgroup Size FG 3.0 Yes
3 Text Origin FG 5.0 No
4 New Multi-Dimensional Picture Group Layout FG 5.0 Yes
5 Special Characters Allowed FG 3.0.2 Yes
6 Localize String FG 3.0 Yes
7 Menu Bar Item Application FG 5.1 Yes
8 Uppercase Formatted Field FG 5.1 Yes
9 Format Factor FG 5.2 Yes
10 Third-Party Scripts e-terrabrowser 2.1 e-terrabrowser Only
11 ActiveX Controls e-terrabrowser 3.0 e-terrabrowser Only
12 Gem Support FG 5.2 Yes
13 Clip to Regions FG 5.2 Yes
14 Dynamic Simple Layers e-terrabrowser 3.0 e-terrabrowser Only
15 Indexed Layers e-terrabrowser 3.0 e-terrabrowser Only
16 Placement Rotation e-terrabrowser 3.0 e-terrabrowser Only
17 Secondary Application on Simple Layer FG 5.2.1 Yes
18 Background Image e-terrabrowser 3.0 e-terrabrowser Only
19 Halo Style e-terrabrowser 3.0 e-terrabrowser Only
20 Hidden Data Entry e-terrabrowser 3.0 e-terrabrowser Only
21 Conditional Permission Checks e-terrabrowser 3.0 e-terrabrowser Only
22 Scale to Fit Style e-terrabrowser 3.0 e-terrabrowser Only
23 Tool Tips e-terrabrowser 3.1.2 e-terrabrowser Only
24 Enhanced Support of ActiveX Controls e-terrabrowser 3.1.2 e-terrabrowser Only
25 Enhanced Support for Raster Images e-terrabrowser 3.1.2 e-terrabrowser Only
26 CAM Enhancements e-terrabrowser 3.1.2 e-terrabrowser Only
27 Placement Identifiers e-terrabrowser 3.1.2 e-terrabrowser Only
28 Multi-Layer Cams e-terrabrowser 3.2.1 No
29 Windows TrueType Fonts e-terrabrowser 3.3.0 No
30 Multiple Data Sources e-terrabrowser 3.3.0 No
31 Signed Pair Arrow Size e-terrabrowser 3.3.0 No
32 Limits for Inner Dimensions for Multi-Dimensional e-terrabrowser 3.3.0 No
Data
33 Layer Refresh Rate e-terrabrowser 3.3.0 No
Proprietary - See Copyright Page 318 Compatibility Version Features
Display Builder User’s Guide
B.11 Compatibility Version e-terrabrowser 3.2.1
This compatibility version did not introduce any new display features. It
was added to capture a compiler change needed to support multi-layer
CAMs using the proxy %pgmax%.
Table 22: Version e-terrabrowser 3.2.1 Features
Feature Introduced Supported
1 Mixed Simple and Tabular Layers FG 3.0 Yes
2 Specify Picture/Picgroup Size FG 3.0 Yes
3 Text Origin FG 5.0 No
4 New Multi-Dimensional Picture Group Layout FG 5.0 Yes
5 Special Characters Allowed FG 3.0.2 Yes
6 Localize String FG 3.0 Yes
7 Menu Bar Item Application FG 5.1 Yes
8 Uppercase Formatted Field FG 5.1 Yes
9 Format Factor FG 5.2 Yes
10 Third-Party Scripts e-terrabrowser 2.1 e-terrabrowser Only
11 ActiveX Controls e-terrabrowser 3.0 e-terrabrowser Only
12 Gem Support FG 5.2 Yes
13 Clip to Regions FG 5.2 Yes
14 Dynamic Simple Layers e-terrabrowser 3.0 e-terrabrowser Only
15 Indexed Layers e-terrabrowser 3.0 e-terrabrowser Only
16 Placement Rotation e-terrabrowser 3.0 e-terrabrowser Only
17 Secondary Application on Simple Layer FG 5.2.1 Yes
18 Background Image e-terrabrowser 3.0 e-terrabrowser Only
19 Halo Style e-terrabrowser 3.0 e-terrabrowser Only
20 Hidden Data Entry e-terrabrowser 3.0 e-terrabrowser Only
21 Conditional Permission Checks e-terrabrowser 3.0 e-terrabrowser Only
22 Scale to Fit Style e-terrabrowser 3.0 e-terrabrowser Only
23 Tool Tips e-terrabrowser 3.1.2 e-terrabrowser Only
24 Enhanced Support of ActiveX Controls e-terrabrowser 3.1.2 e-terrabrowser Only
25 Enhanced Support for Raster Images e-terrabrowser 3.1.2 e-terrabrowser Only
26 CAM Enhancements e-terrabrowser 3.1.2 e-terrabrowser Only
27 Placement Identifiers e-terrabrowser 3.1.2 e-terrabrowser Only
28 Multi-Layer Cams e-terrabrowser 3.2.1 e-terrabrowser Only
29 Windows TrueType Fonts e-terrabrowser 3.3.0 No
30 Multiple Data Sources e-terrabrowser 3.3.0 No
31 Signed Pair Arrow Size e-terrabrowser 3.3.0 No
32 Limits for Inner Dimensions for Multi-Dimensional e-terrabrowser 3.3.0 No
Data
33 Layer Refresh Rate e-terrabrowser 3.3.0 No
Proprietary - See Copyright Page 319 Compatibility Version Features
Display Builder User’s Guide
B.12 Compatibility Version e-terrabrowser 3.3.0
Table 23: Version e-terrabrowser 3.3.0 Features
Feature Introduced Supported
1 Mixed Simple and Tabular Layers FG 3.0 Yes
2 Specify Picture/Picgroup Size FG 3.0 Yes
3 Text Origin FG 5.0 No
4 New Multi-Dimensional Picture Group Layout FG 5.0 Yes
5 Special Characters Allowed FG 3.0.2 Yes
6 Localize String FG 3.0 Yes
7 Menu Bar Item Application FG 5.1 Yes
8 Uppercase Formatted Field FG 5.1 Yes
9 Format Factor FG 5.2 Yes
10 Third-Party Scripts e-terrabrowser 2.1 e-terrabrowser Only
11 ActiveX Controls e-terrabrowser 3.0 e-terrabrowser Only
12 Gem Support FG 5.2 Yes
13 Clip to Regions FG 5.2 Yes
14 Dynamic Simple Layers e-terrabrowser 3.0 e-terrabrowser Only
15 Indexed Layers e-terrabrowser 3.0 e-terrabrowser Only
16 Placement Rotation e-terrabrowser 3.0 e-terrabrowser Only
17 Secondary Application on Simple Layer FG 5.2.1 Yes
18 Background Image e-terrabrowser 3.0 e-terrabrowser Only
19 Halo Style e-terrabrowser 3.0 e-terrabrowser Only
20 Hidden Data Entry e-terrabrowser 3.0 e-terrabrowser Only
21 Conditional Permission Checks e-terrabrowser 3.0 e-terrabrowser Only
22 Scale to Fit Style e-terrabrowser 3.0 e-terrabrowser Only
23 Tool Tips e-terrabrowser 3.1.2 e-terrabrowser Only
24 Enhanced Support of ActiveX Controls e-terrabrowser 3.1.2 e-terrabrowser Only
25 Enhanced Support for Raster Images e-terrabrowser 3.1.2 e-terrabrowser Only
26 CAM Enhancements e-terrabrowser 3.1.2 e-terrabrowser Only
27 Placement Identifiers e-terrabrowser 3.1.2 e-terrabrowser Only
28 Multi-Layer Cams e-terrabrowser 3.2.1 e-terrabrowser Only
29 Windows TrueType Fonts e-terrabrowser 3.3.0 e-terrabrowser Only
30 Multiple Data Sources e-terrabrowser 3.3.0 e-terrabrowser Only
31 Signed Pair Arrow Size e-terrabrowser 3.3.0 e-terrabrowser Only
32 Limits for Inner Dimensions for Multi-Dimensional e-terrabrowser 3.3.0 e-terrabrowser Only
Data
33 Layer Refresh Rate e-terrabrowser 3.3.0 e-terrabrowser Only
Proprietary - See Copyright Page 320 Compatibility Version Features
Display Builder User’s Guide
B.13 Compatibility Version e-terrabrowser 3.4.0
Table 24: Version e-terrabrowser 3.4.0 Features
Feature Introduced Supported
1 Mixed Simple and Tabular Layers FG 3.0 Yes
2 Specify Picture/Picgroup Size FG 3.0 Yes
3 Text Origin FG 5.0 No
4 New Multi-Dimensional Picture Group Layout FG 5.0 Yes
5 Special Characters Allowed FG 3.0.2 Yes
6 Localize String FG 3.0 Yes
7 Menu Bar Item Application FG 5.1 Yes
8 Uppercase Formatted Field FG 5.1 Yes
9 Format Factor FG 5.2 Yes
10 Third-Party Scripts e-terrabrowser 2.1 e-terrabrowser Only
11 ActiveX Controls e-terrabrowser 3.0 e-terrabrowser Only
12 Gem Support FG 5.2 Yes
13 Clip to Regions FG 5.2 Yes
14 Dynamic Simple Layers e-terrabrowser 3.0 e-terrabrowser Only
15 Indexed Layers e-terrabrowser 3.0 e-terrabrowser Only
16 Placement Rotation e-terrabrowser 3.0 e-terrabrowser Only
17 Secondary Application on Simple Layer FG 5.2.1 Yes
18 Background Image e-terrabrowser 3.0 e-terrabrowser Only
19 Halo Style e-terrabrowser 3.0 e-terrabrowser Only
20 Hidden Data Entry e-terrabrowser 3.0 e-terrabrowser Only
21 Conditional Permission Checks e-terrabrowser 3.0 e-terrabrowser Only
22 Scale to Fit Style e-terrabrowser 3.0 e-terrabrowser Only
23 Tool Tips e-terrabrowser 3.1.2 e-terrabrowser Only
24 Enhanced Support of ActiveX Controls e-terrabrowser 3.1.2 e-terrabrowser Only
25 Enhanced Support for Raster Images e-terrabrowser 3.1.2 e-terrabrowser Only
26 CAM Enhancements e-terrabrowser 3.1.2 e-terrabrowser Only
27 Placement Identifiers e-terrabrowser 3.1.2 e-terrabrowser Only
28 Multi-Layer Cams e-terrabrowser 3.2.1 e-terrabrowser Only
29 Windows TrueType Fonts e-terrabrowser 3.3.0 e-terrabrowser Only
30 Multiple Data Sources e-terrabrowser 3.3.0 e-terrabrowser Only
31 Signed Pair Arrow Size e-terrabrowser 3.3.0 e-terrabrowser Only
32 Limits for Inner Dimensions for Multi- e-terrabrowser 3.3.0 e-terrabrowser Only
Dimensional Data
33 Layer Refresh Rate e-terrabrowser 3.3.0 e-terrabrowser Only
34 DDL Cross-Reference Tool Provided with the Display Builder Installation Kit
35 Nested Picture Support e-terrabrowser 3.4.0 e-terrabrowser Only
Proprietary - See Copyright Page 321 Compatibility Version Features
Display Builder User’s Guide
B.14 Compatibility Version e-terrabrowser 3.5.0
Table 25: Version e-terrabrowser 3.5.0 Features
Feature Introduced Supported
1 Mixed Simple and Tabular Layers FG 3.0 Yes
2 Specify Picture/Picgroup Size FG 3.0 Yes
3 Text Origin FG 5.0 No
4 New Multi-Dimensional Picture Group Layout FG 5.0 Yes
5 Special Characters Allowed FG 3.0.2 Yes
6 Localize String FG 3.0 Yes
7 Menu Bar Item Application FG 5.1 Yes
8 Uppercase Formatted Field FG 5.1 Yes
9 Format Factor FG 5.2 Yes
10 Third-Party Scripts e-terrabrowser 2.1 e-terrabrowser Only
11 ActiveX Controls e-terrabrowser 3.0 e-terrabrowser Only
12 Gem Support FG 5.2 Yes
13 Clip to Regions FG 5.2 Yes
14 Dynamic Simple Layers e-terrabrowser 3.0 e-terrabrowser Only
15 Indexed Layers e-terrabrowser 3.0 e-terrabrowser Only
16 Placement Rotation e-terrabrowser 3.0 e-terrabrowser Only
17 Secondary Application on Simple Layer FG 5.2.1 Yes
18 Background Image e-terrabrowser 3.0 e-terrabrowser Only
19 Halo Style e-terrabrowser 3.0 e-terrabrowser Only
20 Hidden Data Entry e-terrabrowser 3.0 e-terrabrowser Only
21 Conditional Permission Checks e-terrabrowser 3.0 e-terrabrowser Only
22 Scale to Fit Style e-terrabrowser 3.0 e-terrabrowser Only
23 Tool Tips e-terrabrowser 3.1.2 e-terrabrowser Only
24 Enhanced Support of ActiveX Controls e-terrabrowser 3.1.2 e-terrabrowser Only
25 Enhanced Support for Raster Images e-terrabrowser 3.1.2 e-terrabrowser Only
26 CAM Enhancements e-terrabrowser 3.1.2 e-terrabrowser Only
27 Placement Identifiers e-terrabrowser 3.1.2 e-terrabrowser Only
28 Multi-Layer Cams e-terrabrowser 3.2.1 e-terrabrowser Only
29 Windows TrueType Fonts e-terrabrowser 3.3.0 e-terrabrowser Only
30 Multiple Data Sources e-terrabrowser 3.3.0 e-terrabrowser Only
31 Signed Pair Arrow Size e-terrabrowser 3.3.0 e-terrabrowser Only
32 Limits for Inner Dimensions for Multi- e-terrabrowser 3.3.0 e-terrabrowser Only
Dimensional Data
33 Layer Refresh Rate e-terrabrowser 3.3.0 e-terrabrowser Only
34 DDL Cross-Reference Tool Provided with the Display Builder Installation Kit
35 Nested Picture Support e-terrabrowser 3.4.0 e-terrabrowser Only
36 Pop-Up Pictures on Polylines e-terrabrowser 3.5.0 e-terrabrowser Only
37 Active Scripting in CTs e-terrabrowser 3.5.0 e-terrabrowser Only
Proprietary - See Copyright Page 322 Compatibility Version Features
Display Builder User’s Guide
Feature Introduced Supported
38 Indirect Links in Scale Factor e-terrabrowser 3.5.0 e-terrabrowser Only
B.15 Compatibility Version e-terrabrowser 3.6.0
Table 26: Version e-terrabrowser 3.6.0 Features
Feature Introduced Supported
1 Mixed Simple and Tabular Layers FG 3.0 Yes
2 Specify Picture/Picgroup Size FG 3.0 Yes
3 Text Origin FG 5.0 No
4 New Multi-Dimensional Picture Group Layout FG 5.0 Yes
5 Special Characters Allowed FG 3.0.2 Yes
6 Localize String FG 3.0 Yes
7 Menu Bar Item Application FG 5.1 Yes
8 Uppercase Formatted Field FG 5.1 Yes
9 Format Factor FG 5.2 Yes
10 Third-Party Scripts e-terrabrowser 2.1 e-terrabrowser Only
11 ActiveX Controls e-terrabrowser 3.0 No
12 Gem Support FG 5.2 Yes
13 Clip to Regions FG 5.2 Yes
14 Dynamic Simple Layers e-terrabrowser 3.0 e-terrabrowser Only
15 Indexed Layers e-terrabrowser 3.0 e-terrabrowser Only
16 Placement Rotation e-terrabrowser 3.0 e-terrabrowser Only
17 Secondary Application on Simple Layer FG 5.2.1 Yes
18 Background Image e-terrabrowser 3.0 e-terrabrowser Only
19 Halo Style e-terrabrowser 3.0 e-terrabrowser Only
20 Hidden Data Entry e-terrabrowser 3.0 e-terrabrowser Only
21 Conditional Permission Checks e-terrabrowser 3.0 e-terrabrowser Only
22 Scale to Fit Style e-terrabrowser 3.0 e-terrabrowser Only
23 Tool Tips e-terrabrowser 3.1.2 e-terrabrowser Only
24 Enhanced Support of ActiveX Controls e-terrabrowser 3.1.2 No
25 Enhanced Support for Raster Images e-terrabrowser 3.1.2 e-terrabrowser Only
26 CAM Enhancements e-terrabrowser 3.1.2 e-terrabrowser Only
27 Placement Identifiers e-terrabrowser 3.1.2 e-terrabrowser Only
28 Multi-Layer Cams e-terrabrowser 3.2.1 e-terrabrowser Only
29 Windows TrueType Fonts e-terrabrowser 3.3.0 e-terrabrowser Only
30 Multiple Data Sources e-terrabrowser 3.3.0 e-terrabrowser Only
31 Signed Pair Arrow Size e-terrabrowser 3.3.0 e-terrabrowser Only
32 Limits for Inner Dimensions for Multi- e-terrabrowser 3.3.0 e-terrabrowser Only
Dimensional Data
33 Layer Refresh Rate e-terrabrowser 3.3.0 e-terrabrowser Only
34 DDL Cross-Reference Tool Provided with the Display Builder Installation Kit
Proprietary - See Copyright Page 323 Compatibility Version Features
Display Builder User’s Guide
Feature Introduced Supported
35 Nested Picture Support e-terrabrowser 3.4.0 e-terrabrowser Only
36 Pop-Up Pictures on Polylines e-terrabrowser 3.5.0 e-terrabrowser Only
37 Active Scripting in CTs e-terrabrowser 3.5.0 e-terrabrowser Only
38 Indirect Links in Scale Factor e-terrabrowser 3.5.0 e-terrabrowser Only
Proprietary - See Copyright Page 324 Compatibility Version Features
Display Builder User’s Guide
Index
Display Definition Language (DDL), 29
Display performance, 292
A Drag and Drop, 36, 126
Aligning objects Drag‐and‐Drop, 27
to edges and centers, 139 Drawing order, 296
to the grid, 139 Driving data structures, 16
Attachments, 18, 93, 117, 125, 126
Attribute modifiers, 7, 33, 144 E
e‐terrabrowser, 24
B e‐terrabrowser compiler, 259
Batch compilation, 260
Batch Compile option, 24 F
Browser window, 22, 131
Browsing object definitions, 131 FG Font Family, 183
Builder Sets, 28 File transfer, 24, 50, 51, 175, 176
Formatted field alignment, 67
Formatted fields
C defining, 65
Conditional elements display format, 271
CAMs, 7 usage, 35
conditional text, 9
processing time, 296 G
Conditional tests, 156
Conditional text, 5, 9 Grid alignment, 182
Conditional Wizard, 146, 153, 156
Constant picgroup, 113
Customizations, 40
H
Handles (hot spots), 40, 185
D Hot spots, 185
Database linkage, 27, 93
Database linkages, 13
L
display layers, 13 Layer construction, 90
driving data structures, 16 Local attachments, 11
linked list structures, 18 Locking objects, 190
performance, 297
simple layers, 92, 96
Declutter
M
guidelines, 292 Making Attachments to Placed Objects, 126
scratch pad, 135 Merging component definitions, 49
specifying, 71 Multi‐dimensional displays, 199
usage, 2
Default Shared GAB, 124
Defining permission area tests, 186 N
Defining picgroups, 78 Name conflicts, 47
Defining placement declutter, 71
Definition Manager, 19
Definition Manager context, 24 O
Definition property attachments Optimization guidelines, 292
"overall" attachments, 18 Overall attachments, 11
Definition schema, 45, 131
Definition workarea, 19
Display attributes, 2 P
Display compilation, 258
Permission tests
Proprietary – See Copyright Page 325 Index
Display Builder User’s Guide
defining, 187 usage, 4
usage, 19 Scratch pad zoom
Picgroups by level, 124
layout, 114 incremental, 123
locking objects, 82 Secondary record, 10, 81
spatial orientation, 17 Snap to Grid, 122
usage, 10 Specifying a scale factor, 71
Placeholder Starting editors, 43
specifying, 95
usage, 13, 36
Pop‐up pictures
T
usage, 9, 295 Time/Date formatting, 69
Primary picture, 10 Toolbars, 25
Primary record, 10 Transferring sets, 50
Printing, 50 TrueType Font Family, 183
R W
Recovering work, 49 WebFGUtils, 263
WPF Controls, 13
S
Save As Binary option, 24
Z
Scale Zoom
tab, 191 usage, 1
Scale factor
specifying, 71
Proprietary – See Copyright Page 326 Index
Display Builder User’s Guide