SYS600 - Visual SCIL Application Design
SYS600 - Visual SCIL Application Design
3
Visual SCIL Application Design
1MRS756645 MicroSCADA Pro SYS 600 9.3
Issued: 31.3.2010 Visual SCIL Application Design
Version: A/31.3.2010
Configuration Manual
Contents
Copyrights .....................................................................................5
1. Introduction ...............................................................................7
1.1. Use of symbols ..............................................................................7
1.2. Document conventions ..................................................................7
1.3. Document revisions .......................................................................8
2. Visual SCIL overview ................................................................9
2.1. SYS 600 User Interface Design ....................................................9
2.2. Visual SCIL Design Method ........................................................10
3. Designing Dialog Systems .....................................................15
3.1. Creating Objects in Dialog Editor ................................................15
3.2. Composing Dialog Systems ........................................................17
3.3. Object Hierarchy .........................................................................19
3.4. Miscellaneous .............................................................................20
4. Programming Dialog Systems ...............................................23
4.1. Methods ......................................................................................23
4.1.1. Methods Activated Automatically .....................................24
4.1.2. Methods Activated by Operator .......................................24
4.1.3. Methods Activated by Events in the Object .....................25
4.1.4. Methods Activated by SCIL ..............................................27
4.2. Attributes .....................................................................................28
4.2.1. Predefined and User Defined Attributes ..........................28
4.2.2. Some Important Attributes ...............................................28
4.3. Handling Visual SCIL Objects .....................................................29
4.3.1. Loading, Creating and Deleting Objects ..........................29
4.3.2. Referencing Objects in SCIL ............................................30
4.3.3. Handling Attributes in SCIL ..............................................32
4.3.4. Handling Methods in SCIL ...............................................33
4.4. Programming Hints and Notes ....................................................35
4.4.1. Main Dialogs and Picture Containers ...............................35
4.4.2. Accessing Objects Outside Dialog Systems ....................36
4.4.3. Using Language Dependent Texts ..................................38
5. Using Dialog Editor .................................................................41
5.1. General .......................................................................................41
5.2. File Handling ...............................................................................45
5.2.1. Using a Template .............................................................48
5.3. Object Handling ...........................................................................49
5.3.1. Object List ........................................................................51
5.3.2. Object Editors ..................................................................53
3
SYS 600 9.3 MicroSCADA Pro 1MRS756645
4
1MRS756645 MicroSCADA Pro SYS 600 9.3
Visual SCIL Application Design
Configuration Manual
Copyrights
The information in this document is subject to change without notice and should not
be construed as a commitment by ABB Oy. ABB Oy assumes no responsibility for
any errors that may appear in this document.
In no event shall ABB Oy be liable for direct, indirect, special, incidental or
consequential damages of any nature or kind arising from the use of this document,
nor shall ABB Oy be liable for incidental or consequential damages arising from use
of any software or hardware described in this document.
This document and parts thereof must not be reproduced or copied without written
permission from ABB Oy, and the contents thereof must not be imparted to a third
party nor used for any unauthorized purpose.
The software or hardware described in this document is furnished under alicense and
may be used, copied, or disclosed only in accordance with the terms of such license.
Copyright © 2010 ABB Oy
All rights reserved.
Trademarks
ABB is a registered trademark of ABB Group. All other brand or product names
mentioned in this document may be trademarks or registered trademarks of their
respective holders.
Guarantee
Please inquire about the terms of guarantee from your nearest ABB representative.
5
6
1MRS756645 MicroSCADA Pro SYS 600 9.3
Visual SCIL Application Design
Configuration Manual
1. Introduction
7
SYS 600 9.3 MicroSCADA Pro 1MRS756645
You may be told to enter the string MIF349 in a field. The string is shown as follows
in the procedure:
MIF349
• Variables are shown using lowercase letters:
sequence name
8
1MRS756645 MicroSCADA Pro SYS 600 9.3
Visual SCIL Application Design
Configuration Manual
9
SYS 600 9.3 MicroSCADA Pro 1MRS756645
10
1MRS756645 MicroSCADA Pro SYS 600 9.3
Visual SCIL Application Design
Configuration Manual
The Dialog Editor does not support the following Visual SCIL
Objects:
VS_HEADER_ITEM
VS_NOTICE_DIALOG
VS_IMAGE_EDITOR
VS_FILE_CHOOSER
VS_PROGRAM_EDITOR
VS_INPUT_DIALOG
These Visual SCIL Objects must be inserted using a SCIL program.
Dialog Systems
A dialog system starts with a main dialog or a picture container. The main dialog and
all dialogs opened from it, or from items included, belong to the same dialog system.
Likewise, the picture container and all dialogs opened from the picture included in
the container, belong to the same dialog system.
Note that it is recommended to use main dialogs always when possible and form
several dialog systems because each dialog system has its own SCIL context i.e. its
own variable space, object name space, etc.
Composing Procedure
The general procedure for composing a dialog system:
• Designing dialogs and other objects in the Dialog Editor and storing them in a
file. One dialog is a main dialog.
• Loading a main dialog from a main dialog or a picture. (The main dialog is
loaded automatically when a SYS 600 monitor is started.) A new main dialog
starts a new dialog system.
• Loading other dialogs and objects from the main dialog.
Figure 2.2.-1 shows an example of a dialog system.
11
SYS 600 9.3 MicroSCADA Pro 1MRS756645
Dialog_System
Example
The dialog in the following example opens a new dialog if the operator clicks the
Yes button. At the same time it deletes the present dialog. If the operator selects No,
the dialog is deleted but no new dialog is opened. The method named NOTIFY is a
user activated method activated by a click the object. The dialog is referred to as
PARENT. ROOT refers to the main dialog or picture container of the dialog system.
12
1MRS756645 MicroSCADA Pro SYS 600 9.3
Visual SCIL Application Design
Configuration Manual
Simple_Dialog
13
14
1MRS756645 MicroSCADA Pro SYS 600 9.3
Visual SCIL Application Design
Configuration Manual
General
By using the Dialog Editor you can create main dialogs, dialogs, all types of dialog
items and images and store them in files.
The Dialog Editor lets you design dialogs, dialog items and images visually on
screen, using simple mouse operations. It also provides facilities for arranging
dialog items neatly and connecting them to preserve their relative location and size
when a dialog is resized.
Storing Objects
Normally you create a dialog, add contained dialog items and store the dialog in a
file. See Figure 3.1.-1. However, all types of objects can be stored in files, from
where they are loaded into the dialog system with SCIL. See Section 3.2. The objects
stored by individual object definitions in a file can be loaded with SCIL. Objects
contained within other objects cannot be loaded separately. One file can contain
several object definitions.
In the Dialog Editor, each dialog item is defined by a name. This will be the Visual
SCIL object name, which identifies the item within the dialog system. Object
definitions stored in files are also given names. These names are used for identifying
the items within the file.
15
SYS 600 9.3 MicroSCADA Pro 1MRS756645
Dialog_Editor
Designing Dialogs
A dialog may contain several dialog items, which in turn may contain dialog items.
Figure 3.1.-2 shows the rules for arranging dialog items within a dialog. Main
dialogs, dialogs, containers and notebook pages can contain any type of dialog
items. Menu bars can contain menus, which in turn can contain other menu items.
By setting some attributes of the Visual SCIL objects (see Chapter 4), the dialog
items can be hidden and shown as well as disabled and enabled during operation.
16
1MRS756645 MicroSCADA Pro SYS 600 9.3
Visual SCIL Application Design
Configuration Manual
Dialog items can also be loaded into a dialog and deleted from a dialog during
operation using SCIL commands, see Section 3.2.
Rules_arr
General
Loading and creating dialogs and other Visual SCIL objects with SCIL composes
dialog systems.
A dialog system begins with a main dialog or a picture container. The main dialog
and all dialogs opened from it, or from items included, belong to the same dialog
system. Likewise, the picture container and all dialogs opened from the picture
included in the container, belong to the same dialog system. The dialog system
changes dynamically when new dialogs are loaded or dialogs are deleted. See Figure
3.2.-1.
Usually the type of a dialog is a main dialog. The difference between main dialogs
and dialogs is that when a dialog is used its attributes can be read from its parent
dialog. The dialog and its parent are in the same SCIL context. If a main dialog is
used, the variables cannot be used outside of it. Hence no confusions between
attributes of different dialogs occur. This is the reason why using main dialogs and
several dialog systems is recommended always when possible.
The use of main dialogs is not recommended when you want to read the variables
from other dialogs. An example of this is the Error Viewer and the Test Dialog
opened from it. The main dialogs are not used while they were designed, because the
user is shown information of SCIL errors that occur in other tools. The examination
of variables in the tool where the error occurred is also supported in the Test Dialog.
17
SYS 600 9.3 MicroSCADA Pro 1MRS756645
All objects within the same dialog system have their variables in common. Visual
SCIL objects and attributes are accessed by all objects within the same dialog
system. Outside only the objects in the interface between two dialog systems can
access one another (see Chapter 4).
Dialog_Systems
18
1MRS756645 MicroSCADA Pro SYS 600 9.3
Visual SCIL Application Design
Configuration Manual
The .LOAD, .CREATE and .DELETE commands are detailed in SYS 600
Programming Language SCIL.
Image Objects
As mentioned earlier, image objects cannot exist as dialog items. Images are always
stored in files and loaded into the dialog system with .LOAD. Images are displayed
on dialog items by assigning their image attribute the name of the image object or
by giving the object names as argument of predefined methods. Some types of
objects (boxes, buttons, containers) can also be given images in the Dialog Editor.
These images do not have any names and they are not seen as objects.
Images can be drawn using the Image Editor of the Dialog Editor, which also allows
importing images.
Group
Fig. 3.3.-1 An example of a dialog object containing objects in two levels. The
dialog contains three buttons and two option buttons. The option
buttons are placed in a container with label Group.
19
SYS 600 9.3 MicroSCADA Pro 1MRS756645
3.4. Miscellaneous
Coordinate System
The coordinate system of the Visual SCIL objects (unlike the SCIL coordinate
system, see SYS 600 Programming Language SCIL), has its origin (0,0) at the
bottom left corner of the screen or the object. See Figure 3.4.-1. When handling
dialogs, the origin of the coordinate system lies at the bottom left corner of the
screen. When handling dialog items, the origin is in the lower left corner of the
parent object (dialog, container or notebook page). One unit in the coordinate system
is one pixel.
The coordinates can be viewed in the Dialog Editor. Coordinates are also used, for
example, when giving a position with the _GEOMETRY attribute and when reading
a position with the _GET_POINTER_POS method. For more information on object
position, see Chapter 6 in this manual.
20
1MRS756645 MicroSCADA Pro SYS 600 9.3
Visual SCIL Application Design
Configuration Manual
Coordinate_system
21
22
1MRS756645 MicroSCADA Pro SYS 600 9.3
Visual SCIL Application Design
Configuration Manual
4.1. Methods
Overview
The dialogs are programmed using a number of SCIL programs, which are called
methods. The methods define the dynamic operation of the dialogs and dialog
items. Each dialog and dialog item have its own set of methods. There are methods
executed cyclically, methods executed on a certain user operation and methods
executed on a certain event, etc. Some methods can be executed by a method call in
SCIL.
The methods, except some predefined and preprogrammed methods, are SCIL
programs. Methods can contain all SCIL elements, except the picture handling
commands (SYS 600 Programming Language SCIL). Regarding the rules for SCIL
programs, see SYS 600 Programming Language SCIL. Some predefined and
preprogrammed methods are not editable.
The methods are programmed in the SCIL Program Editor, which is accessed from
the Dialog Editor. Generally, it is not possible to read or write the contents of the
methods from SCIL. Only the action methods can be read and written in SCIL via
an attribute.
Each dialog and dialog item may have the following methods:
• A number of cyclic methods started repeatedly at a chosen time cycle.
• A number of event methods started automatically as a consequence of a chosen
process event or SCIL event (event object).
• A number of action methods started at certain user operations, for example
clicking a button.
• A create method executed when the object is loaded, an init method started after
the create method and a delete method executed when the objects is deleted.
• An error handling method started at a SCIL error in the object or its child objects.
• A help method started when help is requested on the object.
23
SYS 600 9.3 MicroSCADA Pro 1MRS756645
Cyclic Methods
Each dialog and dialog item may have a number of methods executed cyclically at
a user-specified interval (cycle time). The cycle time is defined in seconds. One
object can have several cyclic methods with different cycle times.
The cyclic methods are executed first time the object is loaded, after a possible
Create method (will be described later) and then cyclically until the object is deleted.
Do not use cyclic methods with short intervals and do not start
comprehensive programs cyclically.
Event Methods
Each object can also have an arbitrary number of event methods started at the
activation of given Event Objects (see SYS 600 Application Objects). The activating
object is specified by entering the event object notation (‘name’:E’index’) in the
method definition.
Action Methods
These methods are activated by certain user actions, such as clicking a button,
dragging a scroll bar, entering data, etc. By programming the action methods in
SCIL, the engineer defines how the objects will behave on user actions. The action
methods have predefined names and activating operator actions, which are object
type specific. Some object types have no action methods.
The names of the action methods for the different object types and activating actions
are listed and described for each object type in SYS 600 Visual SCIL Objects.
The SCIL program of these types of methods can also be set and read from SCIL
using a special attribute, see Section 4.2. For example the object VS_BUTTON has
the method NOTIFY, which is executed when the button is clicked. The object has
also an attribute named _NOTIFY. The data type of this attribute is text vector and
setting this attribute means that the NOTIFY method gets its contents from the SCIL
program that was written to the attribute.
24
1MRS756645 MicroSCADA Pro SYS 600 9.3
Visual SCIL Application Design
Configuration Manual
Help Method
The help method is executed when help is requested on the object containing the
method. Help can be requested on a specific object in one of the following ways:
• By pressing the F1 while the object has focus.
• From SCIL by calling the predefined method ‘_Get_Help’ of the object.
When help is requested, the first Help method that is found is executed. The Help
method is first searched for in the object itself, that is, the object that has focus or
the object from which the _Get_Help method was called. If the method is not found,
it is searched for in the parent object. This search continues until the method is found
or up to the ROOT object (main dialog or picture container).
The method has one input parameter that is the name of the object from which help
is requested. The argument can be accessed using the SCIL function ARGUMENT.
See SYS 600 Programming Language SCIL.
OBJECT_NAMEthe name of the object on which help is requested.
If help was requested by pressing F1, the object name is the name of the object in
focus. If help was requested by calling the Get_Help method, then the object name
is the name of the object whose Get_Help method was called.
Create Method
The create method is executed during the creation of the object after the .LOAD
command has been issued. It is rarely needed, but can be used for initializing the
attributes of the object.
When a dialog or dialog item is loaded, all its child objects are loaded as well. The
create methods of the child objects are executed before the parent object. See the
example in Figure 4.1.3.-1. However, if there are several branches of dialogs and
dialog items, the programmer cannot know which branch is executed first. In Figure
4.1.3.-1, for example, the programmer cannot know what create method will be
executed before - the one of CONTAINER and its child objects or the one of
GROUP and its child objects. This should be regarded when programming the
methods.
An object cannot be referenced until it has been loaded. The child objects are loaded
before the parent object and the parent object can contain references to all its child
objects. This means that the child objects can be referenced in the create method of
the parent objects. However, object references should generally be avoided in create
methods.
When the create method of an object has been executed, the attribute assignments
given in the .LOAD command are executed. Hence, if the create method of the
object contains attribute assignments, they may be overwritten by assignments in the
.LOAD command.
If an error is encountered in a create method, no object in the loaded structure is
created.
25
SYS 600 9.3 MicroSCADA Pro 1MRS756645
Create_Methods
Fig. 4.1.3.-1 A possible execution order of the create methods (the numbered
order) when the object DLG is loaded
Init Method
This method is started automatically after an object and all its parent objects have
been created. The execution order of the init methods of the object in the structure
below could be as indicated in figure. That is, the init method of the parent object is
executed before the init methods of the child objects.
Since all objects have been loaded before the init methods are executed, all objects
in the loaded structure can be accessed from the init method.
The create method of all loaded objects has already been executed when the init
method is executed.
Init_Methods
Delete Method
This method is executed when the object is deleted. When several objects are deleted
by deleting a common parent, the delete methods are executed in the same order as
for the init method. Hence the delete method of the parent object (the object
mentioned in the .DELETE command) is executed before the delete methods of the
child objects. An object cannot be referenced after its delete method has been
executed. Hence, the delete method of the parent objects can reference child objects,
but the delete methods of the child objects cannot contain references to the parent
object.
26
1MRS756645 MicroSCADA Pro SYS 600 9.3
Visual SCIL Application Design
Configuration Manual
Overview
Each dialog and dialog item may have an arbitrary number of user defined methods,
which may be freely named and programmed. These methods are executed from
SCIL by a method call. In addition, there may be a number of predefined methods.
For more information on method calls see Section 4.3.4.
Predefined Methods
Predefined methods cannot always be deleted or edited. The predefined methods -
their names, purpose, activation, possible arguments and possible return values - are
described in SYS 600 Visual SCIL Objects.
The predefined methods have names starting with an underscore ( _ ).
27
SYS 600 9.3 MicroSCADA Pro 1MRS756645
4.2. Attributes
Overview
Each Visual SCIL object can have a number of attributes, which specify the
appearance and behavior of the object. The basic features given in the Dialog Editor
serve as default values when a dialog or dialog item is loaded. Most attributes are
also accessible from SCIL and can be changed dynamically.
Each object has a number of predefined, object type specific attributes. In addition,
it may be given a number of user defined, object specific attributes.
Predefined Attributes
The predefined attributes have fixed names and meanings. The attributes are object
type specific and cannot be deleted. When an object is created, its predefined
attributes are given default values, unless they are given other values in the Dialog
Editor or with the .CREATE or .LOAD command.
The predefined attributes of the different object types are detailed in SYS 600 Visual
SCIL Objects. It also describes the read/write access and the data type of the
predefined attributes.
The predefined attributes have names beginning with an underscore ( _ ).
or
.modify CANCEL = LIST(MY_ATTR="abc")
or
.load CANCEL = VS_BUTTON(‘file_name’,‘obj_name’,MY_ATTR="abc")
Visibility Attribute
The dialogs have an attribute that specifies whether it is shown or not. This attribute
is named _OPEN and it can be either TRUE or FALSE.
28
1MRS756645 MicroSCADA Pro SYS 600 9.3
Visual SCIL Application Design
Configuration Manual
Setting this attribute to TRUE means that the dialog with all of its child objects is
opened on screen. Setting the attribute to FALSE means that the dialog with all of
its contained objects is closed.
Enabled/Disabled
By setting the _ENABLED attribute to FALSE, the function of the object and all its
child objects is disabled. This means that the action methods are disabled, but cyclic
and event methods continue to be executed.
Overview
This section describes how to handle the Visual SCIL objects, their attributes and
methods in SCIL. The Visual SCIL commands for Visual SCIL object handling are
detailed in SYS 600 Programming Language SCIL.
29
SYS 600 9.3 MicroSCADA Pro 1MRS756645
General
Object references are used when loading, creating and deleting objects, and when
referencing attributes and methods. In addition, some attributes can be assigned
object references as values.
The hierarchy of the objects within a dialog system was described in Chapter 3. The
hierarchy is important when referencing objects.
Object Names
When a dialog or dialog item is loaded with the .LOAD command, it is assigned a
Visual SCIL object name used to refer to it in SCIL. Child objects loaded within a
parent have the Visual SCIL object names given in the Dialog Editor. Visual SCIL
objects created with the .CREATE commands are, likewise, given an object name.
Object Paths
When referencing an object that is not directly one level below in the object
hierarchy, a path is needed. An object path is the route to the referenced object seen
from the own object's point of view. The objects “passed” on the route to the
referenced object indicate the path. Each object name in the path is separated by a
backslash (\) in dialogs and a stroke (/) or a backslash in pictures.
A path of object names can generally only be given "downwards". To give a path to
an object above the own object, you must use one of the predefined path names
ROOT or PARENT, see below.
For example, the path from GROUP to the OK button in Figure 4.3.2.-1 would be:
PUSH\OK
Group
Fig. 4.3.2.-1 An example of a dialog object containing objects in two levels. The
dialog contains three buttons and two option buttons. The option
buttons are placed in a container with label Group.
30
1MRS756645 MicroSCADA Pro SYS 600 9.3
Visual SCIL Application Design
Configuration Manual
If no path is given, the object is first searched for among the children of the present
object. If there is no object with the given name, it is searched for among the children
of the first child of the present object and then among the children of the second
child.
For example, if the command
.set ROWS._TITLE = "Rows"
is encountered in the object GROUP in Figure 4.3.2.-1 it entails a search for the
ROWS object among the child objects SELECT and PUSH. As no objects are found
there, the search continues on the next level where the object ROWS is found.
Wildcards can be used for any intermediate object level by using double separator
signs.
Example:
.set DLG\\ROWS._TITLE = “Rows”
Object Access
Using object paths, objects can be accessed from all other objects within the same
dialog system. In addition, the main dialog objects and the picture container objects
can be accessed from their parent objects, and the main dialogs and picture
containers can access their parent objects. See Section 4.4.
31
SYS 600 9.3 MicroSCADA Pro 1MRS756645
General
Using attribute references, the attribute values can be read and written from SCIL.
“Reading” an attribute means that it is used in SCIL expressions. “Writing” an
attribute means that it is assigned a value.
Attribute Names
The predefined attributes have predefined names, which are listed for each object
type in SYS 600 Visual SCIL Objects. The user-defined attributes can be given
freely chosen names of up to 63 alphanumeric characters.
Attribute Reference
Attributes are referenced with the following notation:
[object].attribute
where ‘object’ is an object reference and ‘attribute’ is the name of the attribute.
Attributes belonging to the object in question are referenced by attribute name only
or by the object reference THIS.
Example:
THIS._TITLE
32
1MRS756645 MicroSCADA Pro SYS 600 9.3
Visual SCIL Application Design
Configuration Manual
The first line would result in a dialog appearing at X position 100 and Y position
200. The second line would result in a dialog first being displayed at default position
(0,0), then jumping to the X position 100, and at last jumping to the Y position 200.
.set dlg._background_color = “red”
Attribute Access
The predefined attributes are read-only, write-only or read and write access allowed.
They are accessible by all objects within the same dialog system. In addition, the
attributes of main dialogs and picture containers are accessible by their parent
objects. The user-defined attributes have always both read and write access.
Data Types
The attributes can have any of the SCIL data types described in SYS 600
Programming Language SCIL. The data types of the predefined attributes are given
in the attribute lists in SYS 600 Visual SCIL Objects.
The data types of the user-defined attributes are not fixed but they get the data type
of the value assigned to them. When first created, they get the data type of the value
given in the create command. If the value is changed with .SET the data type of the
attribute may be changed as well. The data types of the predefined attributes cannot
be changed.
The data types given in the attribute descriptions in SYS 600 Visual SCIL Objects
are the same as the SCIL data types, see SYS 600 Programming Language SCIL. In
addition, among the data types given in the lists, there are two "data types" that are
not actually data types: Color and Font. Attributes with these “data types” are
assigned values according to the color and font definition rules described in SYS 600
Programming Language SCIL.
General
The arbitrary user defined methods and the predefined methods can be called from
SCIL, which means that the methods are executed. Depending on whether the
methods are public or private (see Section 4.1.) they are accessible in the entire
dialog system or only within the object.
A method call may be used as a SCIL statement or, provided that it returns a value,
as an operand in SCIL expressions.
33
SYS 600 9.3 MicroSCADA Pro 1MRS756645
Method Calls
Method calls have the following format:
[object].method [(argument_list)]
where:
‘object’ is an object reference. Not needed when referencing
methods in the same object or one level below.
‘method’ is method name.
'argument_list' Arguments, which may be any SCIL expressions given as
a list of SCIL expressions separated by comma and
enclosed in parentheses. Up to 32 arguments may be
given.
If the method returns a value, the method call can be used in expressions, and the
returned value replaces the method call.
Examples:
LIST.UPDATE This method takes no arguments and returns nothing. It
just updates a list for example reading the list items from
another location.
LIST.HIGHLIGHT(1) This method takes one argument that is the index of the
item in the list. The LIST object then highlights this item
and no data is returned..
@ITEMS = LIST.GET_ITEMS
;This method takes no arguments but it returns all items of the list to the
;calling object as a vector. The vector is assigned to the variable ITEMS.
@ITEM = LIST.GET_ITEM(1)
;This method takes one argument, the index of the list item. The list item
;found at this ;index is also returned to the caller.
34
1MRS756645 MicroSCADA Pro SYS 600 9.3
Visual SCIL Application Design
Configuration Manual
General
This section gives some hints and notes for the programming of dialog systems:
• Notes related to main dialogs and picture containers.
• Accessing objects outside the dialog system.
• Using language dependent texts.
35
SYS 600 9.3 MicroSCADA Pro 1MRS756645
The commands that change the picture (!NEW_PIC etc.) replace the contents of the
picture container when executed within it.
General
As a rule the objects cannot be accessed outside the dialog system. However, the
main dialogs and picture containers can access their parent objects and thus can
work as an interface against the neighboring dialog system. This is illustrated with
two examples.
Navigator
Suppose that the START_TOOL button in figure above should load a TOOL object,
which is a main dialog. The START_TOOL object contains the following NOTIFY
method (action method started by a click the button):
.load ROOT\TOOL = VS_MAIN_DIALOG(‘file’,’dialog’)
In this case the ROOT object seen from the START_TOOL object is NAVIGATOR.
The TOOL object is hence created as a child of NAVIGATOR.
Setting the font of Individual tools after the .create or .load function may not load
the tools with proper Font display especially for bigger fonts. Font setting using
_font = ._font is recommended during creation or load of the tool.
36
1MRS756645 MicroSCADA Pro SYS 600 9.3
Visual SCIL Application Design
Configuration Manual
Result
The button EXIT could have the following NOTIFY method implementation:
ROOT.EXIT_TOOL
37
SYS 600 9.3 MicroSCADA Pro 1MRS756645
Pict_container
General
The Dialog Editor provides tools for entering text identifications and translations to
one or more languages. Text identifiers can be used in the Dialog Editor (for the Title
attribute) and in SCIL. During operation, the text references are substituted with the
corresponding texts of the selected language, see the figure below.
The text references and the corresponding texts for different languages are specified
in object specific text databases. The text reference is a SCIL identifier of maximum
63 characters. The language text databases are stored together with the dialog and
dialog items. The text references can be typed using Dialog Editor or Language
Editor.
38
1MRS756645 MicroSCADA Pro SYS 600 9.3
Visual SCIL Application Design
Configuration Manual
The used language is defined by base system attributes and can be changed by a
SCIL command and by a SCIL function.
Language
DLG
39
SYS 600 9.3 MicroSCADA Pro 1MRS756645
Text Identifiers
The text identifier is given as:
@name
The statement sets the title of the object to the text with the text reference @TITLE
and the chosen language.
40
1MRS756645 MicroSCADA Pro SYS 600 9.3
Visual SCIL Application Design
Configuration Manual
5.1. General
Dialog Editor is used to define VS (Visual SCIL) objects, such as dialogs, dialog
items and images. In the Dialog Editor you can either add a new dialog or edit one
that already exists. The working procedure, by which you should add a new dialog
and the Visual SCIL objects related to it, is described in this section. However, you
can edit objects in any order.
In the Dialog Editor you create VS object definitions, which are stored in files. The
object definitions are loaded from the files into dialog systems. This is done using
SCIL. Only one file at a time can be open in the editor. You can either create a new
VSO (Visual SCIL Objects) file or edit an existing one. In a file there can be several
dialogs and other VS objects.
When you define a new dialog, you usually begin by adding the dialog itself, the
VS_DIALOG or VS_MAIN_DIALOG object. Then you add the other objects that
are part of the dialog, the dialog items. In this manual the VS object types are without
the VS_ extension at the beginning of the name. For example, VS_MAIN_DIALOG
is simply called main dialog.
41
SYS 600 9.3 MicroSCADA Pro 1MRS756645
The menu bar and toolbar of the Dialog Editor Main Dialog are shown in Figure
5.1.-1. From the File menu you can choose to open or close a file, add a new one or
exit the Dialog Editor. From the Template menu you can choose to create a new
template or use one that already exists. From the Tools menu you can choose
functions related to testing, viewing object tree or compressing a file. In the Options
menu there is the File History Length function that gives the user a possibility to
adjust the File menu history length between 0 and 20. Selecting 0 means that the file
history is disabled. From the Help menu you choose to read the About Dialog Editor
information of the product.
The first button in the tool bar is the Exit button. It has the same functionality as Exit
in the File menu. The second button, the New button, works as New/Empty File in
the File menu. The third button, the Open button, works as Open in the File menu.
The fourth button, the Close button, works as Close in the File menu. The fifth
button, the Test button, works as Test Selected Object in the Tool menu. The sixth
button, the Stop Test button, works as Stop Test in the Tools menu.
VS_Dialog_Editor
Fig. 5.1.-1 The menu and toolbars of the Dialog Editor Main Dialog
The Object List and object editors also contain menus. The menu bar of the Object
List is shown in Figure 5.1.-2. From the File menu you can choose to save a file or
exit the Object List. From the Edit menu you can choose functions relating to
moving, copying or deleting. From the Object menu you can choose to edit, add,
rename or change the object type.
Menu_Bar_Obj
Menu_Bar_Dialog
42
1MRS756645 MicroSCADA Pro SYS 600 9.3
Visual SCIL Application Design
Configuration Manual
43
SYS 600 9.3 MicroSCADA Pro 1MRS756645
Add_Object
44
1MRS756645 MicroSCADA Pro SYS 600 9.3
Visual SCIL Application Design
Configuration Manual
Dialog_Items
45
SYS 600 9.3 MicroSCADA Pro 1MRS756645
The template contains sample code e.g. for the following functions:
• File menu with file history list.
• Storing settings between tool sessions.
• Showing messages and questions.
• Toolbar with standard icons which can be visible or hidden.
• Use of the standard color/font chooser.
DialogTmpl
Read_Only
Fig. 5.2.-2 The dialog box warning about opening a read-only VSO file
In the File Chooser, paths can be selected in four different modes:
• Application Relative Paths
Path representation in the SYS 600 path format relative to the current SYS 600
application home directory. The application home directory itself can't be
referenced.
46
1MRS756645 MicroSCADA Pro SYS 600 9.3
Visual SCIL Application Design
Configuration Manual
Open_file
Fig. 5.2.-3 The dialog box that informs about a file been locked
If Yes is clicked the file lock is broken and the requested VSO file is opened. If No
is clicked the Open function is cancelled.
Saving a File
To save a file that has not been saved before:
1. Choose Save As from the File menu of the Object List. The Save dialog box
appears.
2. Enter the filename you want to use by clicking the text box and then type the
name there. It is recommended to use maximum 10 characters in the name. The
extension is added to the name automatically. You can use letters A-Z, numbers
0-9 and the underscore (_). Begin the name with a letter. The file is saved in the
\pict directory, unless you change the location.
3. Click Save.
47
SYS 600 9.3 MicroSCADA Pro 1MRS756645
To save a file that has already been saved, choose Save from the File menu of the
Object List or press CTRL+S. To save a file with another name, use the Save As
function.
If a VSO file is a read-only file, saving it is not possible and the Save and Save As…
commands in the File menu of the Visual SCIL Object List are disabled.
Compressing a File
When you add and edit objects in a file, the file size is increased, but if you delete
objects, the file size is not automatically decreased. Hence, the size of a VSO file can
be gratuitously large unless space is released.
Compressing File releases space and reduces the size of the VSO file. To compress
file, choose Compress File from the Tools menu in the Main Dialog.
Closing a File
To close a file, choose Close from the File menu of the Object List. If you have not
saved the changes you have made, you are asked to do it now. If it is a read-only file
and changes have been made, the Object List closes without giving the possibility to
save the changes.
Adding a Template
To add a user template:
1. Choose Define User Templates from the Template menu. The dialog box shown
in Figure 5.2.1.-1 appears.
2. Click Add and the name of a new template appears in the list.
48
1MRS756645 MicroSCADA Pro SYS 600 9.3
Visual SCIL Application Design
Configuration Manual
User_Templates
Fig. 5.2.1.-1 You can define the User Templates using this dialog box
3. In the File text box type the name and path of the file you want to use as a
template or use the browse facility. Clicking Browse… opens the File Chooser
dialog box for selecting the name and path of the template file. You can also
change the description. By changing and updating the descriptions you can
change the name shown when you choose User from the Template menu.
4. Click Update. If you have changed the description, the changes are made to the
list at the top of the window.
5. Click OK.
In the File Chooser the path for the file used as a template can be selected in four
different modes. The modes are described in Section “Opening an Existing File” on
page 46.
49
SYS 600 9.3 MicroSCADA Pro 1MRS756645
Editing objects begins by selecting the object. All dialog items can be moved,
copied, resized, and deleted. Choose basic editing functions from the Edit menus.
There are also several other editing functions that can be chosen from other menus.
Testing an Object
Objects can be tested while they are edited. This way the effect of definitions can
be seen without closing the Dialog Editor. While testing a dialog you can see how
various features work. The resize feature, buttons and scroll bars can be tested as
well as text can be typed inside editable text fields. The feature is mainly used to
test the user interface. To test an object:
1. Save the changes you have made.
2. Select the object you want to test.
3. Activate the Dialog Editor Main Dialog.
4. Choose Test Selected Object from the Tools menu. A test copy of the object
appears. The objects are activated for testing.
5. Test the object.
6. When you have finished testing the object, choose Stop Test from the Tools
menu.
50
1MRS756645 MicroSCADA Pro SYS 600 9.3
Visual SCIL Application Design
Configuration Manual
shown in Figure 5.3.-1. This is because the object in the object window is always
updated when the window is closed, even if no changes were made, so any
replacements made in the Object tree dialog box would be overwritten.
Object_Window
Adding Objects
To add an object in the Object List:
1. Choose New from the Object menu. The list shown in Figure 5.3.1.-1 appears.
2. Choose the type of the object you want to create.
3. The new object is shown in the Object List with a given name. The object has
default attributes.
51
SYS 600 9.3 MicroSCADA Pro 1MRS756645
Object_list
Fig. 5.3.1.-1 From the list choose the object type you want to add
Editing Objects
Objects are edited in their object editor. To open the object editor of the object on
the list, double-click its name or select it and choose Edit from the Object menu. The
object editor appears. To select an object that is listed on the Object List, click it.
Editing is also possible for read-only files, but the changes cannot be saved.
Renaming Objects
Objects that are listed in the Object List can be renamed. The names listed in it are
the names used to identify the object within the file. They are also used in the SCIL
command .LOAD when loading an object into a dialog system. To rename an object:
1. Select the object you want to rename.
2. Choose Rename from the Object menu. The dialog box shown in Figure 5.3.1.-2
appears with the old name in it.
3. In the text box replace the old name with the new name. Click OK.
4. The new name of the object appears in the Object List.
Input_Dialog
Fig. 5.3.1.-2 In this dialog box you type the new name for the object
52
1MRS756645 MicroSCADA Pro SYS 600 9.3
Visual SCIL Application Design
Configuration Manual
Copying Objects
To copy an object within the Object List:
1. Select the object you want to copy.
2. Choose Duplicate from the Edit menu. The new object appears.
Or:
1. Select the object you want to copy.
2. Choose Copy from the Edit menu.
3. Choose Paste from the Edit menu. The new object appears.
The objects, which have been copied in the current object list, can be also pasted in
a different Visual SCIL dialog editor instance running simultaneously with the first
one or started later during the same monitor session.
Deleting Objects
The objects listed in the Object List are deleted in it. To delete an object:
1. Select the object you want to delete.
2. Choose Clear from the Edit menu and the object disappears. This can also be
done by pressing Delete or CTRL+X.
53
SYS 600 9.3 MicroSCADA Pro 1MRS756645
Item_List
Fig. 5.3.2.-1 From the list shown above you can choose the type of dialog item
you want to add.
Selecting Dialog Items
To select a dialog item in an object editor, click it. Handles appear on its border when
the selection is successful.
Several objects are selected by holding the Shift key down while clicking on the
objects to be selected. To select all dialog items, choose Select All from the Edit
menu. This can also be done by pressing CTRL+A.
An item or several items can also be selected by selecting an area. To select an area,
press the mouse button down in the corner of the area where the items to be selected
are located. Hold the mouse button down while dragging the pointer to the opposite
corner of the area. The items inside the area are selected.
Resizing Objects
To resize a dialog item:
1. Select the object.
2. Press the mouse button down on a handle and hold it down while dragging the
pointer to the new position of the handle. The size of the dialog item is changed
according to the new handle location.
To resize a dialog:
1. Activate the Dialog page of the Dialog Object Editor.
2. Hold the mouse button down on a border of the dialog while dragging the
pointer to the new position of the border. The size of the dialog is changed.
54
1MRS756645 MicroSCADA Pro SYS 600 9.3
Visual SCIL Application Design
Configuration Manual
55
SYS 600 9.3 MicroSCADA Pro 1MRS756645
After the items have been aligned their relative positions can be defined using
connections.
Copying Dialog Items
To copy a dialog item in the object editor:
1. Select the Dialog Item you want to copy.
2. Choose Duplicate from the Edit menu. The new dialog item appears.
3. Move the item to its correct position.
Or:
1. Select the Dialog Item you want to copy.
2. Choose Copy from the Edit menu.
3. Choose Paste from the Edit menu. The new dialog item appears.
4. Move the item to its correct place. This is done by holding the left mouse button
down while dragging the pointer to its new position.
The items, which have been copied in the current item editor of the parent object,
can be pasted in the same or different object. The Paste operation can be fulfilled
also in a different Visual SCIL dialog editor instance running simultaneously with
the first one or started later during the same monitor session.
Changing the Dialog Item Layers
Dialog Items can be placed on top of each other, so that they are in different layers.
Usually dialog items should not be overlapping. The layering of the dialog items
specifies the tabbing order of the items when the TAB key is used to move from an
item to another one. The layering/tabbing order can be viewed in the Order Items
page in the Dialog, Container and Notebook Object Editors. For more information
on the Order Items Page, see Chapter 7.
The dialog item layers can be changed using Bring To Front, Bring Forward, Send
To Back and Send Backward commands. The Bring To Front and Bring Forward
commands move a dialog item forward in the dialog item layers. Choose Bring
Forward to move a selected dialog item one layer closer to the front. Bring To Front
moves the items to the front.
The Send To Back and Send Backward commands move a dialog item backward in
the dialog item layers. Send Backward moves a selected dialog item one layer
closer to the bottom. Send To Back moves the item to the back.
To change the dialog item layers:
1. Select the dialog item.
2. Choose one of the commands mentioned above from the Arrange menu.
Deleting Objects
This section describes how to delete an object in an object editor. To delete:
1. Select the object you want to delete.
2. Choose Clear from the Edit menu and the object disappears. This can also be
done by pressing Delete or CTRL+X.
56
1MRS756645 MicroSCADA Pro SYS 600 9.3
Visual SCIL Application Design
Configuration Manual
Replacing Objects
You can replace a dialog item with another one simply by using the Replace
function.
To replace a dialog item:
1. Select the dialog item you want to replace.
2. Choose Replace from the Edit menu. The list of dialog items appears.
3. Choose the dialog item type you want to replace with. The dialog item appers in
the dialog, in the same place as the previous item.
57
58
1MRS756645 MicroSCADA Pro SYS 600 9.3
Visual SCIL Application Design
Configuration Manual
6. Defining Objects
This chapter describes the general principles of how to define VS objects.
6.1 The first section describes the most common object definitions. These
are the definitions that are given to almost all objects, for example,
name and title, position, color and font.
6.2 The second section describes the procedure for working with methods
and SCIL Program Editor.
6.3 The third section describes the procedure for working with language
dependent texts.
6.4 The fourth section describes geometry management. The relative
location of objects is decided using connections. An explanation is
given on how to define them.
Definitions
Fig. 6.1.-1 Some definitions are common for almost every object
Name
The Name is the object name of the dialog or dialog item, the descriptive name. It
can contain 63 characters. In the Name text box, type the name you want to use to
identify the object.
You are advised to name every object, because unnamed objects cannot be accessed
from SCIL or contain any methods. For objects listed in the Object List, the name
given here has no meaning, because the name in the Object List will always be used.
59
SYS 600 9.3 MicroSCADA Pro 1MRS756645
It is useful to name objects with some predefined logic, otherwise it can be difficult
to remember all the names when you are creating a large tool. Also if objects you
have added are to be used by others, the logic of naming the objects should be
explained somewhere. Note that you are not allowed to use the same name for two
objects that have same parent object. For more information on recommended logic
for naming objects, see Chapter 4.
Title
The title is the text on an object, for example a button can have the text “OK” or the
title can be written at the top of a dialog. If you want the user to be able to use the
dialog with different languages, you can use the language dependent text facility. To
enable translations, define the title as a text ID instead of a text. The text ID is the
identification of the language dependent text, the text you have written after the
character @. Translating language dependent texts is described in Section
“Language Dependent Texts” on page 66.
Example:
text ID in title@Yes
EnglishOK
SwedishJa
FinnishKyllä
GermanJa
Mnemonic
You can use the Mnemonic field to specify a mnemonic key for a dialog item. A
mnemonic key allows the user to choose the dialog item by pressing a specified key
in combination with the mnemonic key modifier on the keyboard (usually the ALT
key). Only one character can be specified as the mnemonic key. If the character is in
the title, it will be shown underlined on screen. If text ID is used, the mnemonic key
for text in every language is given in the translation table.
Color Setting
The foreground and background colors can be selected for all the objects. To select
them:
1. Select the Foreground or Background option.
2. Click Set Color. The Color Chooser shown in Figure 6.1.-2 appears.
60
1MRS756645 MicroSCADA Pro SYS 600 9.3
Visual SCIL Application Design
Configuration Manual
Color_Chooser2
61
SYS 600 9.3 MicroSCADA Pro 1MRS756645
Font Setting
The font type can be selected for all objects:
1. Select the Font option.
2. Click Set Font. The Font Chooser shown in Figure 6.1.-3 appears.
Font_Chooser2
Fig. 6.1.-3 In the Font Chooser you can choose the font type you want to use
3. In the Family list on the left select the font family you want to use. The font
types included in it are listed in the Face list.
4. Click a Face option and then select or type the size of the font in the Size box. A
sample of the font is shown in the upper part of the Font Chooser.
5. Click OK.
Cursor
The cursor is the appearance of the cursor (mouse pointer) when the mouse pointer
is placed on an object. To define the appearance of the cursor:
1. Select the Cursor option in an object editor.
2. Click Set Cursor. The Image Editor appears.
3. Specify the appearance of the cursor. Working with the Image Editor is
discussed in details in Chapter 9.
62
1MRS756645 MicroSCADA Pro SYS 600 9.3
Visual SCIL Application Design
Configuration Manual
Icon
An icon is shown in the icon bar when a dialog is minimized. Hence an icon is an
image that can be defined for dialogs. The icon of a dialog is shown only on a local
VS monitor. To define an icon:
1. Select the Cursor or Icon option in an object editor.
2. Click Set Cursor or Set Icon. The Image Editor appears.
3. Define the appearance. Working with the Image Editor is discussed in details, in
Chapter 9.
Image
Boxes, buttons and containers may contain an image. If a button contains an image,
it is shown on the button. If a box or a container contains an image, the image is
adjusted to fill the whole object.
To define the appearance of the image:
1. Add the image object in the Object List. Double-click it to edit.
2. Define the appearance. Working with the Image Editor is discussed in details in
Chapter 9.
An image created this way must be loaded at runtime.
Example:
.load root\myimage=vs_image("file.vso", "image")
.set root\btn._image="root\myimage"
Another way to assign a static image to an object is to check the Image check box in
the first page of the object editor and define the image there.
Other Attributes
The following attributes are described in more details in SYS 600 Visual SCIL
Objects where all attributes are listed. Hence the next list only contains the
references to it. See the attribute in the description of the object you are defining. If
the attribute is not described in it, it does not have effect on the object.
Enabled The option is selected by default. For more information see the
attribute _ENABLED in SYS 600 Visual SCIL Objects.
Visible The option is selected by default. For more information see the
attribute _VISIBLE in SYS 600 Visual SCIL Objects.
Border For more information, see the attribute _HAS_BORDER in SYS
600 Visual SCIL Objects. The option is selected by default.
Click Focusable For more information, see SYS 600 Visual SCIL Objects, the
attribute _CLICK_FOCUSABLE.
Focusable For more information, see the attribute _FOCUSABLE in SYS
600 Visual SCIL Objects.
Image Mask For more information, see SYS 600 Visual SCIL Objects, the
attribute _HAS_IMAGE_MASK.
63
SYS 600 9.3 MicroSCADA Pro 1MRS756645
6.2. Methods
All VS objects can have methods. Methods, which are SCIL programs that define
the behavior of the object, are defined in the Methods page of an object editor. In the
upper part of the editor are five methods, create, init, delete, error and help methods.
The lower part of the editor show property pages for public, private, action, cyclic
and event methods. For more information, see SYS 600 Visual SCIL Objects and
SYS 600 Programming Language SCIL.
Defining Methods
To define a method:
1. Select the method and click Edit. The methods that are of type public, private,
action, cyclic or event, are located in the property pages. If the method does not
exist, you can add it. To add a method click New and a new method of the type
appears.
2. The SCIL Program Editor appears and the existing program is shown. In the
editor you can copy, move or delete selections. You can also insert a line or a
comment mark, and use update, find, replace, undo and redo features. The
features of the SCIL Program Editor are described in more details in Section
“Using the SCIL Program Editor” on page 65.
Methods_Page
Fig. 6.2.1.-1 The procedure of defining methods is started from the Methods
page of the Object Editor.
3. Close the SCIL Program Editor by choosing Exit from the File menu.
64
1MRS756645 MicroSCADA Pro SYS 600 9.3
Visual SCIL Application Design
Configuration Manual
Methods_Properties
Fig. 6.2.1.-2 The name of the method can be changed in this dialog.
3. Replace the default name with the name of the method in the Name text box. If
you want to insert a comment, type it in the Comment text box.
4. Click OK.
Renaming of a method can be done by selecting the method in the object window,
clicking Properties … and performing similar steps as the steps 3 and 4 for adding
a new method.
Deleting Methods
You can delete methods of type public, private, cyclic and event. To delete a
method:
1. Select the method you want to delete.
2. Click Delete.
The program related to an action method can also be deleted. To delete an action
method:
1. Clear the check box of the method you want to delete.
2. The question “Do you really want to delete the selected action method” is
shown. Click Yes to delete.
65
SYS 600 9.3 MicroSCADA Pro 1MRS756645
The SCIL Program Editor is operated according to the same principles as other
Windows based applications. The editor is specialized for SCIL program editing.
For more information on using the SCIL Program Editor, see Chapter 12 in SYS 600
Programming Language SCIL.
66
1MRS756645 MicroSCADA Pro SYS 600 9.3
Visual SCIL Application Design
Configuration Manual
General
The distance between different objects in various situations and the size of some
dialog items are defined using connections. Dialog items have inside and outside
connections. Inside connections determine the size of an item. Outside connections
determine the relative location of a dialog item with the border of the dialog or
another dialog item. You particularly need this feature when you resize a dialog
containing dialog items.
There are seven types of Connections, which are natural length, natural base +
spring, fixed length, fixed base + spring, locked fixed length, zero length and spring.
These names are used when connecting one object to another. The procedure for
using the Connection Editor is described on page 73. The size and place of objects
may be changed after they have been added. If the place of one object changes, the
places of other objects may also have to be changed. If you use connections, you can
decide which distances will change and which ones will always be same. The
connections for dialog items are defined in the object editor of the parent object.
When you define connections it is recommended that you have Use Large
Connections and Show selected on the Connections menu.
Connection Colors
Connections are shown with different colors that have specific meanings. The
meanings of colors are listed below.
Blue The connections are colored blue by default.
Green The part of a connection that is colored green is of type natural
length.
Yellow The connection that is colored yellow is the one that is selected.
The type of this connection can be changed.
Red If connections are colored red, there is an error relating to them.
For example, if the connections from an object to the left border
of the dialog and to the right border of the dialog are both fixed,
their color is red because there is an error. You always have to
have one horizontal and one vertical flexible connection. An
object should never be left with illegal connections.
67
SYS 600 9.3 MicroSCADA Pro 1MRS756645
68
1MRS756645 MicroSCADA Pro SYS 600 9.3
Visual SCIL Application Design
Configuration Manual
Fig. 6.4.-1 The connections inside and between buttons have been done with
natural length.
Spring
When spring is used inside dialog item, the object enables changes in object sizes
and distances between adjacent objects.
Fig. 6.4.-2 Horizontal and vertical springs in the text field enable the size to
change depending on the label-size in the left.
Natural Base Added with Spring
Similar to the natural length, objects defined by using this type of connection are
adjusted automatically to changes according to font and text sizes. The difference to
natural length is that dialog item is adjusted according to changes in dialog size, too.
Eg. object stretchs when dialog is resized. In figure 19 connections in dialog items
have been internally defined as natural base added with spring in horizontal
direction. Adjacent objects have been defined by using connection type natural
length.
Fig. 6.4.-3 The connections have been done by using natural base added with
spring and natural length.
Fixed Length and Locked Fixed Length
69
SYS 600 9.3 MicroSCADA Pro 1MRS756645
This connection type defines the size of an object or the distance between adjacent
objects to a certain fixed value. The difference between fixed and locked fixed
length type is that the first one enables the dragging of dialog item in Connection
Editor, but the latter doesn't. Fixed length is not adjusted to changes according to
font and text sizes. E.g. the label defined as type fixed length, cuts off those pixels
that don't fit inside label area. Connections of fixed length type can be found by
setting some large font, like ("M", 4) to the dialog. Note how the width of the left
button in figure 20 is not adjusted according to dialog resize operation due to the
connection type fixed length.
Fig. 6.4.-4 Connections between adjacent objects and inside objects have been
done by using fixed length type.
Fixed Base Added with Spring
Specifies a minimum base length added with a spring. When used inside dialog item,
the width or height of the object is always same as or greater than fixed base. The
spring enables the stretching of the object depending on dialog size. When used
between the objects, fixed base quarantees a certain minimum fixed base distance
between objects. Due to the spring, the distance can be larger than the specified
value, but never smaller than this base distance.
Fig. 6.4.-5 Connections inside and between buttons have been done by using
fixed base value 50 points and spring. Due to this, the width of the
objects and distance between them, can not be under 50 points.
70
1MRS756645 MicroSCADA Pro SYS 600 9.3
Visual SCIL Application Design
Configuration Manual
Chain_Submenu
71
SYS 600 9.3 MicroSCADA Pro 1MRS756645
a fixed connection to the bottom side of the dialog. When you enlarge the dialog, the
distance between the buttons and the left and bottom sides of the dialog stay the
same. See Figure 6.4.-8.
Butt_Conn
Fig. 6.4.-7 Button connections are made with the Chain connection function. The
connections to the left and bottom sides of the dialog are fixed.
72
1MRS756645 MicroSCADA Pro SYS 600 9.3
Visual SCIL Application Design
Configuration Manual
Butt_Conn2
Fig. 6.4.-8 When you enlarge the dialog, the distance between the buttons and left
and bottom sides of the dialog remains the same.
73
SYS 600 9.3 MicroSCADA Pro 1MRS756645
Connection_Editor
74
1MRS756645 MicroSCADA Pro SYS 600 9.3
Visual SCIL Application Design
Configuration Manual
to is changed. So actually the direction of a connection does not define how the
connection behaves, only the objects connected to each other. The connection type
between them defines the behavior.
In the upper left corner of the Connection Editor, in the TO text field, you can see
the destination of a selected connection. If the destination is another dialog item, you
can see the name of the item. If the destination is the border of the dialog, the word
“Border” is displayed. If the destination is inside the dialog item, the word “Self” is
displayed. You can change the destination of a connection by selecting a connection
and dragging it to its destination.
The To Edge text field shows the location of the connection on the destination item.
The location is expressed as the top, bottom, left or right edge of the destination item.
You can usually see the destination of a dialog item in the picture by selecting it and
following the connection. The object at the other end of it is the one it is connected
to. If you cannot see the destination properly for some reason, you can also find out
the destination of a connection by using the Follow function. This is done by
selecting a dialog item and a connection and then choosing Follow from the
Connections menu. From the submenu choose the connection side. If the item is
connected to another item on that side, the object to which the item is connected to
is selected.
75
76
1MRS756645 MicroSCADA Pro SYS 600 9.3
Visual SCIL Application Design
Configuration Manual
General
The procedure for adding objects and the basic editing facilities are described in
Chapter 5. The most common definitions, name and title, color and font setting,
cursor, image, enabled, visible, border, click focusable, focusable and image mask
are also described there.
Notebooks, containers, menus and picture containers are dialog items, so they can
be inserted into other objects. Dialogs, notebooks and containers can contain all
types of dialog items. There is no limit to how many levels of objects can be placed
inside each other.
Notebooks, containers, menus and picture containers are added either in the Object
List or in an object editor. Dialogs can be added only in the Object List.
77
SYS 600 9.3 MicroSCADA Pro 1MRS756645
Order_Items_page
Fig. 7.-1 The Order Items page in which the dialog items inserted in the dialog are
listed
In the Item menu there are options that specify the behavior of items in the dialog.
The options are Default Focus Item, Confirm Item and Abandon Item. The dialog
item selected when the Default Focus Item is chosen is the item that will have the
keyboard focus when the user opens the dialog.
Choosing the Confirm Item option for a dialog item means that if the user presses
Enter, the item behaves as if it was clicked. There can be only one confirm item in
a dialog. Choosing the Abandon Item option for a dialog item means that if the user
presses Escape (on the keyboard), the item behaves as if it was clicked. There can
be only one abandon item in a dialog.
7.1. Dialogs
General
Dialogs are used when dialog boxes, which are windows appearing independently
on the screen, are desired. There are two types of dialogs, main dialogs and dialogs.
Usually it is recommended to use main dialogs. The types differ in the way variables
can be read from other dialogs.
Because the working procedure for both of them is the same, they are discussed
together. Dialog items are placed in a dialog. The position of a dialog item is
specified with connections.
Dialogs are edited in the Dialog Object Editor, which contains five pages. Window
page and Order Items page are described in this chapter.
78
1MRS756645 MicroSCADA Pro SYS 600 9.3
Visual SCIL Application Design
Configuration Manual
Window Page
The first page of the Dialog Object Editor is Window page. It contains several
attributes that are already explained in Chapter 5. The attributes discussed in this
chapter are the attributes located at the bottom. See Figure 7.1.-1.
Window_page
Fig. 7.1.-1 The Window page of the Object Editor when defining dialogs
Border is selected by default. The dialog is outlined with a border.
Maximizable is selected by default. The dialog can be enlarged to fill the
whole screen.
Iconifiable is selected by default. The dialog can be minimized to an icon.
Modal is not selected by default. When it is selected, the dialog box is
the only active window in the application. A user must respond
or perform some actions in the dialog to change the focus.
Resizable is selected by default. The user can resize the dialog.
Movable is selected by default. When it is selected, the user can move the
dialog on screen.
Unclosable is not selected by default. The user cannot close the dialog by
clicking the Close button (X button) in the title bar of the dialog.
For more information on the attributes, see SYS 600 Visual SCIL Objects, the
_STYLE attribute.
79
SYS 600 9.3 MicroSCADA Pro 1MRS756645
7.2. Notebooks
General
Notebooks are often used to group dialog items that are somehow related to each
other. Usually there are so many dialog items in a notebook, that there would not be
enough space for them in a container. See Figure 7.2.-1. For example a notebook can
contain several check boxes and option buttons. A notebook contains usually several
pages, which all have a tab to enter the page. Dialog items placed in notebook pages
are edited in their own object editors.
Notebook_Example
Defining a Notebook
To define a notebook:
1. Enter the Notebook page in Notebook Object Editor.
2. To add a notebook page, choose New Page from the Notebook menu. See Figure
7.2.-2.
80
1MRS756645 MicroSCADA Pro SYS 600 9.3
Visual SCIL Application Design
Configuration Manual
Notebook_Obj_Editor
Notebook_page
81
SYS 600 9.3 MicroSCADA Pro 1MRS756645
The Order Items page contains a list of dialog items that are inserted in the Notebook
page. For more information on defining this page, see Section The Order Items Page
on page 77.
5. Close the Notebook Page Object Editor by choosing Close Editor from the File
menu.
6. To customize the appearance of your tabs, use the options in the Custom Style
area at the bottom of the Notebook Object Editor. The attributes in the Custom
Style area are listed later (The Custom Style Options) with an explanation.
7. Click the button with the text “Make pages visible to SCIL”, otherwise the
pages cannot be handled with SCIL.
7.3. Containers
Container is mainly used to group dialog items that are somehow related to each
other. For example a set of option buttons can be placed into a container. See Figure
7.3.-1. The Container Attributes page is discussed in this section. The common
definitions were discussed in Chapter 6.
Container
82
1MRS756645 MicroSCADA Pro SYS 600 9.3
Visual SCIL Application Design
Configuration Manual
The containers can contain all types of dialog items, even containers. The dialog
items are added and arranged in the Container page. To add, edit and arrange the
dialog items, follow the procedures described for dialogs in Chapter 6.
Container_Attributes
Fig. 7.3.-2 The Container Attributes page of the Container Object Editor
7.4. Menus
General
With the help of menus you can provide a way for user to issue commands. There
are three object types for menus:
• Menubars.
• Menus.
• Menu items.
A menubar usually contains several menus, which all contain several menu items.
See Figure 7.4.-1. You begin to add menus by adding the menubar first. Then you
add the menus and menu items.
VS_Menu
83
SYS 600 9.3 MicroSCADA Pro 1MRS756645
Adding Menus
To define a menu:
1. Add the menubar and enter its object editor.
2. Click Menu Bar to enter the page where you add the menus. The page shown in
Figure 7.4.-2 appears.
Menu_Bar_Page
Fig. 7.4.-2 The Menu Bar page where you add new menus
3. Choose New Menu from the Menubar menu. A new menu appears. The name
within brackets is the object name of the menu and the name within quotation
marks is the title of the menu. The order of the menus can be changed by
selecting the row and holding both mouse buttons down while dragging the row
to a new position. The Has Help option on the Menubar menu means that the
rightmost menu is placed at the right edge of the dialog on some systems.
Otherwise it is placed according to amount and size of menu items starting from
the left side of the bar.
4. Open the Menu Object Editor by double-clicking the name of the menu. It is
shown in Figure 7.4.-3.
5. In the Menu page you define the title, name and mnemonic for the menu. The
name of the menu is shown with a mnemonic in the upper left corner of the
page.
84
1MRS756645 MicroSCADA Pro SYS 600 9.3
Visual SCIL Application Design
Configuration Manual
Menu_Page
Fig. 7.4.-3 The Menu page in the Menu Object Editor where you add new menu
items
6. To add a menu item, choose New from the Menu menu. On the submenu that
appears choose the menu item type you want to add. There are four types of
menu items, which are shown in the following list:
Menu Item is the regular command line inserted in the menu.
Separator Menu Item is a line inserted between other menu items. It is the
second menu item in Figure 7.4.-3.
Submenu Item is the submenu item, which is a command displayed with
an arrow pointing to the right. It indicates that more
menu options are available when it is selected.
Toggle Menu Item is a menu item that is displayed with a check mark when
it is selected.
7. Now you can define the Title, Name, Key and Mnemonic for the new menu
item. The name of the item is shown with the mnemonic key. You can also
define the attributes Disabled, Default, Exclusive and On depending on the type
of the menu item you are defining. You can give more definitions in the object
editor of the menu item. To enter the editor, click Programs.
The On attribute can be selected for toggle menu items. If it is selected, the toggle
menu item is selected by default and the check mark is shown in front of the option.
The Exclusive option can also be selected for toggle menu items. If it is selected,
only one toggle menu item in the menu, or in the part of the menu that is separated
by a separator menu item, can be selected at a time.
85
SYS 600 9.3 MicroSCADA Pro 1MRS756645
If you have added a submenu item, the next step is to add menu items into the
submenu. To add menu items into the submenu, enter the Submenu Object Editor
and repeat steps 6 and 7.
Testing a Menu
In the Menu Object Editor you can view and test a menu while you are defining it.
To test a menu, choose Try Out Menu from the Menu menu. The features you have
defined are visible. Your menu remains on the menubar until you unselect Try Out
Menu.
General
A Picture Container is a container used for conventional SYS 600 pictures, pictures
built in the Picture Editor. This way pictures that are made in SYS 600 Picture
Editors can also be shown in Visual SCIL dialogs.
The upper left corner of the picture will be placed in the upper left corner of the
picture container. If the picture container has scrollbars and the picture is bigger than
the picture container, the user can move around the picture using the scrollbars. The
used font and the size of the picture are determined by the current semigraphic font
that was chosen when the application session was started.
The Container Attributes page shown in Figure 7.3.-2 defines scroll bars and
keyboard traversal behavior. To insert scroll bars into your container, select the
Horizontal Scroll Bar or Vertical Scroll Bar options. It is not recommended to use
the Flat Keyboard Traversal option in the Picture Container.
Inserting a Picture
You can insert a picture into the picture container using the picture handling
methods. For example methods can be in the Init method of a picture container or in
a dialog or in some button method. The place depends on the time the picture is to
be shown. For more information on the subject, see Section Handling Picture
Containers on page 35.
86
1MRS756645 MicroSCADA Pro SYS 600 9.3
Visual SCIL Application Design
Configuration Manual
Icon_View
Fig. 7.6.-1 Examples of icon view object use, taken from the Tool Manager. The
“Dialog Editor” icon is selected which apart from the highlighted text
can be noticed as the Icon View area has focus.
87
88
1MRS756645 MicroSCADA Pro SYS 600 9.3
Visual SCIL Application Design
Configuration Manual
8.1. Texts
Label
A label is a static text field, where the user cannot make changes. It is usually used
to name another dialog item. See Figure 8.1.-1. Defining the label does not contain
any steps, which are not common to other objects. The text to be shown to the user
is written in the Title text box.
Label_Title
List
A list displays items organised into rows and columns. See Figure 8.1.-2. You can
use the List Object Editor to define the appearance and behavior of the list. Usually
the content of the list is defined using SCIL, for example the set_cell_text method.
89
SYS 600 9.3 MicroSCADA Pro 1MRS756645
Example_list
List_view
Fig. 8.1.-3 The List View page of the List Object Editor
90
1MRS756645 MicroSCADA Pro SYS 600 9.3
Visual SCIL Application Design
Configuration Manual
The String List page of the List Object Editor is shown in Figure 8.1.-4. You can use
it to insert and remove rows and coloumns into a list. To insert a new row, click
Insert under the text Row and to remove a row, click Remove. Inserting and
removing columns is done in the same way under the text Column. The added rows
and columns are shown in the white box with the column and row number in
parentheses.
Usually rows, columns, texts or other characters are set with SCIL. To insert texts
or other characters into a cell manually:
1. Select the cell.
2. Click the String text box and type the text in it. Press Enter. The written text
appears in the cell.
String_list
Fig. 8.1.-4 The String List page of the List Object Editor
The List Item page of the editor is shown in Figure 8.1.-5. You can use the List Item
page to specify the appearance and selection method for the list. Use the Natural
Number of Rows and Auto-Calculate Widths options to determine the size of
naturally -sized list. You can define a list as naturally -sized by changing its inside
connections. Natural Number of Rows is the number of rows used to calculate the
natural height of a list. A naturally -sized list displays the number of rows entered
here. The value zero indicates that all rows are used to calculate the natural height.
The default column width is same as the width of the list. If you select Auto-
Calculate Widths, the default size is changed.
The selection method has four choices:
None None indicates that no cell from a list can be chosen.
Only One Only One indicates that no more than one cell can be selected at
any time.
Free Free indicates that any cell or a combination of cells can be
selected.
91
SYS 600 9.3 MicroSCADA Pro 1MRS756645
List_item
Fig. 8.1.-5 The List Item page of the List Object Editor
Text
In the text box the user can insert or edit text. You can also define that the user
cannot change the content of the text box. See Figure 8.1.-6.
Text_item
92
1MRS756645 MicroSCADA Pro SYS 600 9.3
Visual SCIL Application Design
Configuration Manual
Text_View
Fig. 8.1.-7 In this Text View page of the editor, you define how the text item
behaves
The Text Object Editor contains a simple text editor with a text box and various
features to specify the text properties, such as tab setting and line spacing. It is
located in the Text Item page of the Text Object Editor. See Figure 8.1.-8. You can
leave the large text box blank or place text in it. To type text, click in the text box
and begin typing.
The Selectable option is selected by default and it enables the user to select text in
the text box. If this option is not selected the user cannot do this. The Modifiable
option is selected by default. It enables the user to change the contents of the text
box. If this option is not selected, the user cannot do this. The Wrap option is not
selected by default. If it is selected, the editor automatically wraps the text. The One
Line option is not selected by default. If it is selected, the text can be at maximum
one line.
93
SYS 600 9.3 MicroSCADA Pro 1MRS756645
Text_editor
Style_Chooser
Fig. 8.1.-9 The Style Chooser where you can change the text style
94
1MRS756645 MicroSCADA Pro SYS 600 9.3
Visual SCIL Application Design
Configuration Manual
The options that can be chosen with the check boxes are Bold, Italic, Underline,
Hidden and Strikethru. These check boxes have three states, select, unselect and no
selection. The unselect state removes the specified attribute. The no selection leaves
the current attribute unchanged.
The Style Chooser also contains two buttons for setting Font and Color. Click either
one and the Font Chooser or Color Chooser appears. The procedure for using Font
and Color Choosers is described in Chapter 6.
In the Style Chooser you can also define the Ascent, Descent and Size of selected
text. Ascent is the amount the type rises above the base line. Descent is the amount
type descends below the base line. Size represents the font size. These attributes are
set to auto, which means that the default values of the font define the attribute. If you
want to change the default values, type the number of points in the box.
8.2. Buttons
Button
When the user clicks a button, an action is performed according to NOTIFY action
method inserted in the button. If the button is naturally sized, it automatically adjusts
its size to the Title text. See Figure 8.2.-1.
Button
Palette
A palette is a collection of buttons. Palette contains palette items, on which you can
place icon to represent the available object or action. See Figure 8.2.-2. You can add
the icons with the Image Editor or SCIL. For more information on using the Image
Editor, see Chapter 9.
95
SYS 600 9.3 MicroSCADA Pro 1MRS756645
Palette
Palette_page
Fig. 8.2.-3 The Palette page where you can choose the palette items for the
palette
To insert the palette items, choose New Item in the Palette menu. The item appears
in the Palette Images text box. The name of the item is used only in this list, so it
does not matter which name the item has. To open the Image Editor, double-click
the item. The size of the palette item can be changed in the upper part of the editor.
Click the Cell Width or Cell Height and type the new number of points. In the
Columns box you can change the number of columns in the Palette.
96
1MRS756645 MicroSCADA Pro SYS 600 9.3
Visual SCIL Application Design
Configuration Manual
Check Box
The user can select or unselect a check box of an option. If you want to give the user
several options from which all, none or some can be selected, you can use check
boxes. See Figure 8.3.-1. It may be useful to place check boxes in a container. A
check box can have the values, On and Off. It has a set of states, which you can
define by control values. An example of a page in which you define control values
for check boxes is shown in Figure 8.3.-2.
Check_box
Control_values
Fig. 8.3.-2 The control values for a check box are set in the Check Box page
The control values and their meaning while defining check boxes are listed here. The
following attributes are described in more details in SYS 600 Visual SCIL Objects,
hence in the next list are the references to it. See the attribute in the check box
description.
Min Does not change. The default value is 0. For more information
see the attribute _MIN_VALUE in SYS 600 Visual SCIL
Objects.
Max Does not change.The default value is 1. For more information
see the attribute _MAX_VALUE in SYS 600 Visual SCIL
Objects.
Value Defines the default value. The choices are On or Off. Value 0
means Off and value 1 means On. For more information see the
attribute _VALUE in SYS 600 Visual SCIL Objects.
97
SYS 600 9.3 MicroSCADA Pro 1MRS756645
Page Has no meaning for Check Box. For more information see the
attribute _PAGE_INCREMENT_VALUE in SYS 600 Visual
SCIL Objects.
Increment Has no meaning for Check Box. For more information see the
attribute _INCREMENT_VALUE in SYS 600 Visual SCIL
Objects.
Vertical Has no meaning for Check Box. For more information see the
attribute _VERTICAL_VALUE in SYS 600 Visual SCIL
Objects.
Option Button
You can use option buttons to allow the user to select one of the given options. The
title is placed on the right side of the button. See Figure 8.3.-3.
The following attributes are described in more details in SYS 600 Visual SCIL
Objects, hence in the next list are the references to it. See the attribute in the
description of the option button.
Min. Does not change. The default value is 0. For more information
see the attribute _MIN_VALUE in SYS 600 Visual SCIL
Objects.
Max. Does not change. The default value is 1. For more information
see the attribute _MAX_VALUE in SYS 600 Visual SCIL
Objects.
Value Defines the default value. The choices are On or Off. Value 0
means Off and value 1 means On. For more information see the
attribute _VALUE in SYS 600 Visual SCIL Objects.
Option_Button
98
1MRS756645 MicroSCADA Pro SYS 600 9.3
Visual SCIL Application Design
Configuration Manual
Combo
Combo_pop
Combobox_page
99
SYS 600 9.3 MicroSCADA Pro 1MRS756645
The behavior of the combo is determined at the bottom of the page. There are eight
choices to Accept, Select and Scroll situations. The choices are Do Nothing, Match
or Add, Match or Closest, Match or Member, Match or Nothing, Match or First,
Match or Revert and Default. You can usually use the default setting.
Normally the text box is modifiable, which means that the user can enter a selection.
If you select Auto-Sort, the choices are automatically arranged in alphabethical
order. The number of visible values defines how many options are shown on screen
at any one time. The user can change the visible options by changing the number in
the Number of Visible Values text box.
Numeric Spinner
A numeric spinner allows a user to enter values to define a range. See Figure 8.3.-7.
The user can move through possible values and view all of them, but cannot see them
all at the same time. The user enters the value selecting the number from the list or
by typing it in the box. Numeric spinners accept only integer values. The Control
page for the Numeric Spinner is shown in Figure 8.3.-8.
Num_spinner
Control_page
Fig. 8.3.-8 The Control page of the Numeric Spinner, where you can specify
control values
100
1MRS756645 MicroSCADA Pro SYS 600 9.3
Visual SCIL Application Design
Configuration Manual
The following attributes are described in more details in SYS 600 Visual SCIL
Objects, hence in the next list are the references to it. See the attribute in the
description of the numeric spinner. In the Control page of the Numeric Spinner you
can specify:
Min. Minimum value defines the lowest value in the spinner range.
For more information see the attribute _MIN_VALUE in SYS
600 Visual SCIL Objects.
Max. Maximum value defines the highest value in the spinner range.
For more information see the attribute _MAX_VALUE in SYS
600 Visual SCIL Objects..
Value Defines the default value of the spinner. For more information
see the attribute _VALUE in SYS 600 Visual SCIL Objects.
Increment The increment for a spinner indicates how much the value is
increased or decreased when the arrow button is pressed. For
more information see the attribute _INCREMENT_VALUE in
SYS 600 Visual SCIL Objects.
Normally the text box of a numeric spinner is modifiable, which means that the user
can enter a selection. If the Wrap option is selected, the user can scroll backward and
forward from one end of the list to the other. Otherwise, the user can only scroll to
the end of the list.
Spinner_page
Text Spinner
A text spinner allows a user to enter text from a defined range. The user can move
through possible strings and view all of them, but cannot see them all at the same
time. User can enter the string by selecting it from the list or in some cases typing it
101
SYS 600 9.3 MicroSCADA Pro 1MRS756645
in the Text box, depending on the definitions. If the user types a part of the string
and presses enter, the first string that begins with those characters is shown. See
Figure 8.3.-10.
Text_Spinner
Spinner_page
Fig. 8.3.-11 The options that the user can select in the text spinner
In the Text Spinner page of the Text Spinner Object Editor you can insert the options
to be shown in the spinner. This can also be done with SCIL. To insert a new option,
choose New Entry from the Spinner menu. A new string appears in the large white
box.
To insert text or other characters in the string:
1. Click the string to select it.
2. Click in the Text box and type the text. Press Enter. The written text appears in
the option.
To remove the option, click it and then choose Clear from the Edit menu. If the
cursor is in the Text box, only the text in it is removed. Select the option in the large
white box and try again to remove the option.
Normally the text box of a text spinner is modifiable, which means that the user can
enter the selection in the box. If the Wrap option is selected, the user can scroll
backward and forward from one end of the list to the other. Otherwise, the user can
only scroll to the ends of the list. To automatically arrange the options in
alphabethical order, select the Auto-Sort option.
102
1MRS756645 MicroSCADA Pro SYS 600 9.3
Visual SCIL Application Design
Configuration Manual
Scroll Bar
Using a scroll bar the user can move through a list or text. See Figure 8.4.-1.
Scroll_Bar
Slider
By using a slider the user can select from a continuous range of possible values. The
user drags the slider left or down to decrease the value and right or up to increase it.
See Figure 8.4.-2.
Slider
103
SYS 600 9.3 MicroSCADA Pro 1MRS756645
The following attributes are described in more details in SYS 600 Visual SCIL
Objects, hence in the next list are only the references to it. See the attribute in the
description of the object you are defining. If the attribute is not described in it, it does
not have effect on the object.
Min. The default value is 0, which is the minimum value of the slider.
For more information see the attribute _MIN_VALUE in SYS
600 Visual SCIL Objects.
Max. This value is the maximum value of the slider. The difference
between the maximum and minimum values is the number of
steps in the slider. For more information see the attribute
_MAX_VALUE in SYS 600 Visual SCIL Objects.
Value Defines the default position of the slider. For more information
see the attribute _VALUE in SYS 600 Visual SCIL Objects.
Page The base unit by which the control unit is increased, so this is the
number of steps the slider moves when some value of the slider
is clicked. For more information see the attribute
PAGE_INCREMENT_VALUE in SYS 600 Visual SCIL
Objects.
Increment The base unit by which the control unit is increased, so this is the
number of steps the slider moves when it is dragged with the
mouse. For more information see the attribute
_INCREMENT_VALUE in SYS 600 Visual SCIL Objects.
Vertical If the option is selected, the slider is vertical, otherwise it is
horizontal. For more information see the attribute _VERTICAL
in SYS 600 Visual SCIL Objects.
Box
You can use a box to group functionally related items or to improve the appearance
of the dialog. A box is defined in the same way as other dialog items. A box can also
be used to accomodate an image. See Figure 8.5.-1.
Box
Icon View
You can use the Icon View to display icons. The icons are created with SCIL. The
predefined method _APPEND_ICON can be used for this purpose. For more
information on adding icons, see Chapter 6. See also SYS 600 Visual SCIL Objects
and SYS 600 Programming Language SCIL. Icon View Item is shown in Figure
8.5.-2.
104
1MRS756645 MicroSCADA Pro SYS 600 9.3
Visual SCIL Application Design
Configuration Manual
Icon_View
Image Domain
An Image Domain is a rectangle in which images can be strored. It is recommended
that it should be used only in advanced programming.
Line
You can use the line dialog item to place a horizontal or vertical line into a dialog.
It is often used to separate grouped dialog items. The line item is an item with a line
drawn on one side. See Figure 8.5.-3. The size of the line is changed by changing the
size of the whole item, by moving the place of one of its border. This is done in the
Object Editor of the object in which the line item is placed. The size of the line is
drawn vertically by default. If you want to have a horizontal line, change the size of
the item so that the width of the line exceeds its height.
line
8.6. Tree
You can use the Tree to display hierarchical data. See Figure 8.6.-1. From the tree
you can select and open different new objects, which are called nodes and leaves.
You can add the box where the tree is drawn in the Tree Object Editor, but the tree
itself is added with SCIL. The predefined methods _ADD_ROOT_NODE,
_ADD_NODE and _ADD_LEAF are used for this purpose. You also need some
action methods to define the behavior of the tree. The most often used action method
is _HANDLE_EXPAND_NODE. For more information on adding trees, see
Chapter 6, SYS 600 Visual SCIL Objects and SYS 600 Programming Language
SCIL.
105
SYS 600 9.3 MicroSCADA Pro 1MRS756645
Example_Tree
Define_Attributes
Fig. 8.6.-2 You can define the special attributes related to the behavior of the tree
In the Options area you can select the following options:
Auto-Scroll Selected by default, so the user can move through a tree
by dragging the pointer to the edge of a tree view to see
the items beyond the border.
Traverse Wrap Not selected by default, so the user cannot move
backward and forward from one end of the tree to the
other.
Keyboard Selection Selected by default, so the user can select highlighted
items in the tree by pressing Enter.
Keyboard Traversal Selected by default, so the user can move through the tree
by using the arrow keys on the keyboard.
106
1MRS756645 MicroSCADA Pro SYS 600 9.3
Visual SCIL Application Design
Configuration Manual
VS_Header
#loop_with i= 1..5;(%i_number_of_columns)
.create item_'i' = vs_header_item
.set item_'i'._min_width = 0
.set item_'i'._max_width = 100
.set item_'i'._title = "Item'i'"
.set item_'i'._width = trunc(%i_width/5)
#loop_end
@b_created = true
Whenever the whole header has been resized the HEADER_RESIZED action
method is called. This action method can be used to adjust the items to the header.
For a complete list of predefined action methods and attributes of these objects, see
SYS 600 Visual SCIL Objects.
107
SYS 600 9.3 MicroSCADA Pro 1MRS756645
Plot_graph
Area_graph
Bar_graph
108
1MRS756645 MicroSCADA Pro SYS 600 9.3
Visual SCIL Application Design
Configuration Manual
Stackedbar_graph
Pie_graph
Combined_graph
109
SYS 600 9.3 MicroSCADA Pro 1MRS756645
Axis Annotation
The X-axis is annotated differently depending on the type of the X-axis. There are
two types of X-axis used in graphing:
• Continuous
• Discrete
A graph’s X-axis is continuos when spacing variations between points along the axis
are important and discrete when spacing between the points are not important. For
example bar and stacking bar graphs always have a discrete X-axis.
Terminology
110
1MRS756645 MicroSCADA Pro SYS 600 9.3
Visual SCIL Application Design
Configuration Manual
111
SYS 600 9.3 MicroSCADA Pro 1MRS756645
Flow-chart:
Execution_Order
Example_graph
;add_x_axis method
gra_test._add_x_axis(1,"time","bottom",2,0)
;set_x_axis_prop method
@v_koord=.get_values
112
1MRS756645 MicroSCADA Pro SYS 600 9.3
Visual SCIL Application Design
Configuration Manual
@v_xkoord=%v_koord(1)
@v_min_x=low(%v_koord(1))
@v_max_x=high(%v_koord(1))
@v_min_x(1)=%v_min_x(1)-((%v_min_x(1)) mod 3600)+2*3600
@v_max_x(1)=%v_max_x(1)-((%v_max_x(1)) mod 3600)+3600
@x_axis_prop_list=list( min=%v_min_x(1),-
max=%v_max_x(1),-
time_unit="SECONDS",-
time_format="%H:%M:%S",-
annotation_increment=3600,-
annotation_font=("M", 2),-
annotation_color="black",-
tick_increment=3600/6,-
axis_color="black",-
axis_title="Time",-
axis_title_font=("M", 1),-
axis_title_color="black",-
display_axis_title_enabled=TRUE,-
grid_mode="NONE",-
grid_line_width=1,-
grid_color="black",-
grid_line_style="SOLID")
gra_test._set_x_axis_properties(1, %x_axis_prop_list)
;add_y_axis method
gra_test._add_y_axis(2,"real", "bottom", 1,0)
;set_y_axis_prop
@v_koord=.get_values
@v_ykoord=%v_koord(2)
@v_min_y=(low(%v_ykoord))
@v_max_y=high(%v_ykoord)
@y_axis_prop_list=list( min=trunc(%v_min_y(1))/1.0,-
max=%v_max_y(1),-
annotation_increment=5,-
annotation_font=("M",2),-
annotation_color="black",-
tick_increment=1,-
axis_color="black",-
axis_title="Current/A",-
axis_title_font=("M",1),-
axis_title_color="black",-
display_axis_title_enabled=TRUE,-
grid_mode="NONE",-
grid_line_width=1,-
grid_color="black",-
grid_line_style="SOLID")
gra_test._set_y_axis_properties(2, %y_axis_prop_list)
;add_data_set method
gra_test._add_data_set(1,1,2)
;set_data_set_prop method
@data_set_prop_list=list(graph_type="PLOT",-
title="test",-
default_color="RED",-
show_line=TRUE,-
marker_shape="DOT",-
marker_color="BLACK",-
status_0_color="red",-
status_9_color="BLACK")
gra_test._set_data_set_properties(1,%data_set_prop_list)
;set_data_set_values method
113
SYS 600 9.3 MicroSCADA Pro 1MRS756645
@b_append=FALSE
@v_koord=vector()
@v_koord=.get_values
gra_test._set_data_set_values(1,%v_koord(1),%v_koord(2),%b_append)
;get_values method
@v_xkoord(%I)=vector()
@v_ykoord(%I)=vector()
@I=0
@i_last_index=(ftu_trd1:dlr)
#loop_with j= (%i_last_index - 180)..%i_last_index
@I=%I+1
@v_xkoord(%I)=(ftu_trd1:drt'j')-3.0*3600
@v_ykoord(%I)=ftu_trd1:dov'j'
#LOOP_END
#return vector(%v_xkoord, %v_ykoord)
8.9. Table
The VS_TABLE object is a two dimensional list of data that can have header
information for each row and/or each column of that list. Instances of the
VS_TABLE class can be used to display output information, like VS_LIST, but it
can also be used to allow the user to enter new data or to modify existing data.
An example of a VS_TABLE is shown in Figure 8.9.-1.
VS_Table
114
1MRS756645 MicroSCADA Pro SYS 600 9.3
Visual SCIL Application Design
Configuration Manual
The VS_TABLE class has about 50 attributes and 127 methods that allow
developers maximal functionality. Many of these entry points were designed to ease
the process of customization.
VS_TABLE_dialog
115
SYS 600 9.3 MicroSCADA Pro 1MRS756645
Table_List_tab
Fig. 8.9.2.-1 Inserting and removing rows and columns with the VS_TABLE
Editor
To insert a new row, click Insert, and to remove a row, click Remove in the Row
field. Insert and remove columns in the same way.
The added rows and columns are marked with a row and column number in
parentheses.
116
1MRS756645 MicroSCADA Pro SYS 600 9.3
Visual SCIL Application Design
Configuration Manual
Table_item_tab
Fig. 8.9.4.-1 Specifying cell selection method with the VS_TABLE Editor
117
SYS 600 9.3 MicroSCADA Pro 1MRS756645
VS_TABLE_Concepts
118
1MRS756645 MicroSCADA Pro SYS 600 9.3
Visual SCIL Application Design
Configuration Manual
View object:
• Used for viewing the input data from the user.
• Different kind of Visual SCIL objects can be assigned to individual cells, entire
row or column.
VS_TABLE_Properties
119
SYS 600 9.3 MicroSCADA Pro 1MRS756645
VS_TABLE_Inheritance
120
1MRS756645 MicroSCADA Pro SYS 600 9.3
Visual SCIL Application Design
Configuration Manual
_SORTING_ENABLED=FALSE
_ROW_HEADER_WIDTH=25
8.9.8. Cells
The cell is one of the main concepts of the VS_TABLE object. It encapsulates the
various attributes associated with the cells of a VS_TABLE object.
Table 8.9.8-1 Basic cell attributes
Attribute Type DescriptionD
Several of the attributes in Table 8.9.8-1 affect the way the content of a cell is drawn.
These are the background color, foreground color, font, and justification attributes.
The value or content of a cell is a string that is stored in the text attribute. If it is
necessary to store additional information for a cell, there is an object id attribute that
is simply text and can be used for this purpose. By default all cells are considered
read only and cell text is an empty string.
121
SYS 600 9.3 MicroSCADA Pro 1MRS756645
To separate a title into multiple lines simply add new line characters to the string
assigned to the title. If a blank line is desired you need to add at least one white-space
character to the line due to a limitation in the parsing routine. The VS_TABLE
object will divide all the available height of the header equally between all the lines
in the title (see Figure 8.9.9.-1).
An example of dividing the column title to multiple lines (see Figure 8.9.9.-1):
._set_column_title(9,"Micro"+ASCII(10)+"SCADA"+ASCII(10)+"%d")
Automatic Numbering
The most common row title is the row number. There is a special case supported that
allows the current row number (one based) to be included in the row or column title
without having to specifically set a title for each row of the VS_TABLE object. In
order to accomplish this automatic numbering just include the characters "%d"
somewhere in the title and assign the same string to all the rows.
The default row title is "Row: %d" and the default column title is "Column: %d".
An example of automatic row numbering:
.create root\dlg=vs_dialog(_open=true)
.create root\dlg\table=vs_table()
.set root\dlg\table._column_count==5
.set root\dlg\table._row_count=10
root\dlg\table._set_column_width(%currentRow, 100)
root\dlg\table._set_column_title(%currentRow,"MicroSCADA")
#loop_with currentRow = 1 .. root\\tbl._row_count
root\dlg\table._set_row_title(%currentRow,"My row %d")
#loop_end
VS_TABLE_Column_Groups
122
1MRS756645 MicroSCADA Pro SYS 600 9.3
Visual SCIL Application Design
Configuration Manual
Because SCIL doesn't have pointers, there must be some mechanism to set group’s
properties. There is an indexing mechanism for accessing a given group. The table
in Figure 8.9.9.-1 has some column groups, which are created like this:
root\dlg\table._add_column_group(1,2,1)
root\dlg\table._set_column_group_title(1,1,"Level 1,Index 1")
root\dlg\table._add_column_group(3,4,1)
root\dlg\table._set_column_group_title(1,2,"Level 1, Index 2")
root\dlg\table._add_column_group(5,6,1)
root\dlg\table._set_column_group_title(1,3,"Level 1, Index 3")
root\dlg\table._add_column_group(7,8,1)
root\dlg\table._add_column_group(1,4,2)
root\dlg\table._set_column_group_title(2,1,"Level 2, Index 1")
root\dlg\table._add_column_group(5,8,2)
root\dlg\table._set_column_group_title(2,2,"Level 2, Index 2")
root\dlg\table._add_column_group(1,8,3)
root\dlg\table._set_column_group_title(3,1,"Level 3, Index 1")
123
SYS 600 9.3 MicroSCADA Pro 1MRS756645
Here is an example of how to access column groups and to change all background
and foreground colors at known level:
@level=1
#loop_with i = 1 .. root\dlg\table._get_column_group_count(%level)
root\dlg\table._set_column_group_foreground_color(%level,%i,"BLACK")
root\dlg\table._set_column_group_background_color(%level,%i,"RED")
#loop_end
The sorting is not possible when there are some groups defined.
124
1MRS756645 MicroSCADA Pro SYS 600 9.3
Visual SCIL Application Design
Configuration Manual
CELL_EDITING_CANCELLED
This action method is executed whenever the user cancels the editing of a cell.
CELL_EDITING_STARTED
This action method is executed whenever the user is starting the editing of a cell.
COLUMN_TITLE_CLICKED
This method is executed whenever the user clicks on the column title.
COLUMN_TITLE_DOUBLE_CLICKED
This method is executed whenever the user double clicks on the column title.
DRAGGED_AND_DROPPED
This method is executed whenever the user has dragged and dropped a column/row
or multiple columns/rows.
FOCUSED_CELL_CHANGED
This action method is executed whenever the user has changed the focused cell with
mouse or arrow keys.
NOTIFY
Specifies the notification procedure of the dialog item. The notification procedure is
called for different reasons with different dialog items. See the general object in
Chapter 1 in SYS 600 Visual SCIL Objects.
SELECTION_HAS_CHANGED
This action method is executed whenever the selection is going to change, is
changing and has changed.
125
SYS 600 9.3 MicroSCADA Pro 1MRS756645
VS_TABLE_Frozen
Drawing border
VS_TABLE can be viewed with and without border. The viewing of borders is
defined with the _HAS_BORDER attribute.
By default this feature is enabled.
Grabbing hand
In VS_TABLE it is possible to have a grabbing feature on the table view at runtime.
The feature can be obtained using the _GRABBING_HAND_ENABLED attribute.
126
1MRS756645 MicroSCADA Pro SYS 600 9.3
Visual SCIL Application Design
Configuration Manual
By default this feature is disabled. When the attribute is set to 1, the feature is
available.
Once this feature is enabled, you cannot select any cell in the table.
Sorting
The sorting is based on cell texts. If the cell doesn't contain any text, it is assumed
that the text is an empty string. There are two possible ways to sort the table:
• Windows NT Explorer -like behaviour.
• Defining _SORT_CRITERIA attribute.
With the Windows NT Explorer -like behaviour the programmer enables the sorting
for the table and for the column. The user can double click the column title to sort
the current column, first it will be in ascending order. If user double clicks again, it
will be in descending order. This behaviour affects the _SORT_CRITERIA
attribute.
.set ._sorting_enabled=TRUE
._set_column_sorting(1,TRUE)
With defining the _SORT_CRITERIA attribute the table has an attribute called
_SORT_CRITERIA, which is an ordered vector containing vectors of column index
and sort order. Defining the _SORT_CRITERIA will override previous sorting
properties.
127
SYS 600 9.3 MicroSCADA Pro 1MRS756645
@criteriaVect=vector(vector(1,"ASCENDING"),-
vector(4,"ASCENDING"),vector(3,"DESCENDING"))
.set ._sort_criteria=%criteriaVect
._sort
The sorting is not possible when there are some groups defined
128
1MRS756645 MicroSCADA Pro SYS 600 9.3
Visual SCIL Application Design
Configuration Manual
GET_TABLE_VIEW_TEXT
This action method is executed whenever the table needs the value for the view
object of the current cell, for example when the view object is drawn into the cell.
This function can be used, for example, to convert edit object value of the cell into
the text value of the cell.
UPDATE_TABLE_EDIT_TEXT
This action method is executed whenever the edit object of the cell needs a value to
be shown, and just before the editing of the cell is started (just after the
CELL_EDITING_STARTED action method). This action method has three
parameters ROW and COLUMN of the cell and the text of the cell. This action
method could be used to convert the text value of the view object into the edit object
value.
UPDATE_TABLE_VIEW_TEXT
This action method is executed whenever the table needs a value for the view object,
and just before the view object of the cell is drawn. This function can be used, for
example, to convert the text value of the cell into the current value of the view object.
This action method has three parameters: ROW, COLUMN and TEXT of the cell.
Action Attributes
_GET_TABLE_EDIT_TEXT
Setting of this attribute specifies the action method GET_TABLE_EDIT_TEXT.
_GET_TABLE_VIEW_TEXT
Setting of this attribute specifies the action method GET_TABLE_VIEW_TEXT.
_UPDATE_TABLE_EDIT_TEXT
Setting of this attribute specifies the action method
UPDATE_TABLE_EDIT_TEXT.
_UPDATE_VIEW_TEXT
Setting of this attribute specifies the action method
UPDATE_TABLE_VIEW_TEXT.
Restrictions
The following objects can be used as edit or view objects:
• VS_BOX
• VS_BUTTON
• VS_CHECK_BOX
• VS_COMBO_POPDOWN
• VS_CONTAINER
• VS_ICON_VIEW
• VS_LIST
• VS_NUMERIC_SPINNER
• VS_OPTION_BUTTON
129
SYS 600 9.3 MicroSCADA Pro 1MRS756645
• VS_PALETTE
• VS_TEXT
• VS_TEXT_SPINNER
Known limitations:
• The cell should not contain an object that has a scrollbar enabled because the
scrollbar may be drawn incorrectly (VS_COMBO_POPDOWN can be used
because it may have a scrollbar on its popup window rather than on the parent
table space.)
• Setting, for example colours, fonts and geometry for a view or an edit object is
ignored. The table will set them, for example
_SET_COLUMN_BACKGROUND_COLOR.
• Edit and view objects must be created or loaded as childs of an ancestor object of
the table in the objects tree.
• If a sufficient time is passed between creating/loading the object and setting it as
value handler, the object should be made invisible and disabled (if it is not
expected to appear on the dialog and take mouse and keyboard events).
• One object can be set as edit or view object for only one cell, row or column.
• After the object has been set as value handler it cannot be deleted by SCIL
“.DELETE” command before the table is deleted.
If a big table would be used defining a value handler for every cell
would use a lot of memory. So it is more preferable to use
_SET_COLUMN_VALUE_HANDLER or
_SET_ROW_VALUE_HANDLER, if possible. In this case the table
will use only one value handler for the whole column or row.
Examples
Example 1:
This example uses a VS_COMBO_POPDOWN as an edit item for the column 1.
The view object can be NULL. In this case the table needs the text string to be saved
into the cell. The programmer must define the action methods for the edit object.
.load root\a=vs_combo_popdown(._source_file_name,"edit1_object")
mytable._set_column_value_handler(1, "", "root\a")
Example 2:
To show an image in the cell, define a VS_BOX as a view object and for example a
VS_COMBO_POPDOWN, VS_TEXT or VS_TEXT_SPINNER as an edit object.
.load root\viewObjcet=vs_box(._source_file_name,"view_object")
.load root\editObject=vs_text_spinner(._source_file_name,- "edit_object")
130
1MRS756645 MicroSCADA Pro SYS 600 9.3
Visual SCIL Application Design
Configuration Manual
root\editObject._set_text_at(1,"Image1")
root\editObject._set_text_at(2,"Image2")
root\editObject._set_text_at(3,"Image3")
mytable._set_column_value_handler(2,"root\viewObject",-"root\editObject")
.load root\image1=vs_image(._source_file_name,"image1")
.load root\image2=vs_image(._source_file_namme,"image2")
.load root\image3=vs_image(._source_file_name,"image3")
131
SYS 600 9.3 MicroSCADA Pro 1MRS756645
Start_Edit
132
1MRS756645 MicroSCADA Pro SYS 600 9.3
Visual SCIL Application Design
Configuration Manual
Cancel_Edit
Fig. 8.9.14.-2 The user has cancelled the editing of the cell
Accept_Value
Fig. 8.9.14.-3 The user has accepted a new value for the cell
133
SYS 600 9.3 MicroSCADA Pro 1MRS756645
Redraw_Table
134
1MRS756645 MicroSCADA Pro SYS 600 9.3
Visual SCIL Application Design
Configuration Manual
Table 8.9.15-2 Methods and their conditions that generate SCIL exceptions
Method name Condition
_SET_CELL_VALUE_HANDLER Given row and column has valid value, view object
and edit object are right type of Visual SCIL object.
_SET_COLUMN_VALUE_HANDLER Given column has valid value, view object and edit
object are right type of Visual SCIL object.
_SET_ROW_VALUE_HANDLER Given row has valid value, view object and edit
object are right type of Visual SCIL object.
_SET_CELL_TEXT New row or column count exceeds the maximum
_SET_CELL_TEXT_RANGE column or row count.
All other _GET_CELL and Given row and column has valid values.
_SET_CELL methods
All other _GET_COLUMN Given column has valid value.
and_SET_COLUMN methods
All other _GET_ROW and _SET_ROW given row has valid value.
methods
_FREEZE_COLUMNS Frozen column range does not occupy entire
group.
_ADD_COLUMN_GROUP Incorrect group parameters: start or end column,
_ADD_ROW_GROUP overlapping groups.
_ADD_COLUMNS Incorrect start number or column count.
_ADD_ROWS Incorrect start number or row count.
_DELETE_COLUMNS Incorrect start or end number.
135
SYS 600 9.3 MicroSCADA Pro 1MRS756645
136
1MRS756645 MicroSCADA Pro SYS 600 9.3
Visual SCIL Application Design
Configuration Manual
9. Image Editor
About this Chapter
This chapter describes how to use the Image Editor, for example how to add or edit
an image for an icon or a cursor.
General
Images can be drawn as image objects and stored in a file. They can also be drawn
directly on an object (boxes, containers and buttons). Images can be added for all
types of dialog items. They are an important part of image domain, icon view and
cursor items. You can also add an object of type Image in the Object List. In the
Image Editor you can edit, add, export or import images. Supported image formats
are GIF, PGM, PPM, PBM, ICO, DIB and BMP.
Drawing area
Color palette
Tool box
Background color
Foreground color
Line width
Image_Editor
137
SYS 600 9.3 MicroSCADA Pro 1MRS756645
Drawing an Image
You can add and edit images with the toolbox tools. To draw an image:
1. Click the tool you want to use.
2. Point to the drawing area.
3. Click or drag the mouse to make the image you want.
Toolbox
The tools are described in the same order as they appear in the toolbox.
Hand Moves the visible part of the image when an oversize image is in
the drawing area. Select and drag the oversize image with the
Hand Tool to its new position.
Dropper Replaces the foreground color with a color that is selected from
the image. Click any color in the drawing area to pick up that
color. The color you pick up is displayed in the Color Palette and
the Foreground Color Box. To pick up a background color, press
the Control key while clicking the Dropper.
Selection Selects a rectangular area. Select the area by clicking the
Selection tool and holding the mouse button down while
dragging the pointer from one corner of the area to the opposite
corner. To select the whole drawing area, double-click the tool.
Lasso Selects an area, which does not have to be rectangular. Choose
the area by clicking the Lasso tool and then holding the mouse
button down while dragging the pointer from the beginning point
of the area to the end point.
Fill Fills an area with the Foreground color.
Spray Can Draws with the Foreground color using a spray pattern.
Eraser Erases the image. Drag the eraser over the area you want to
erase. Press the shift key before erasing to constrain the tool
horizontally or vertically. To erase the whole drawing area, click
the drawing area and then double-click the eraser.
Text Allows you to type text and place it in the image. Click the Text
tool and then the drawing area. The dialog box shown in Figure
9.-2 appears. Type the text and click OK. Once you click OK, the
text can not be edited. If you want to change the text, you must
delete the old text and type the new text from scratch. The text
just entered can be removed using Edit/Undo menu command.
The font style can be changed by choosing Set Font from the
Tool menu. For more information on using the Font Chooser, see
Chapter 6.
138
1MRS756645 MicroSCADA Pro SYS 600 9.3
Visual SCIL Application Design
Configuration Manual
Image_Text
Fig. 9.-2 In this dialog box type the text you want to insert
Pencil Draws one pixel at the time, using the Foreground color by
default.
Line Draws straight lines. Hold the Shift key down during the
dragging to constrain the line horizontally, vertically or to a 45-
degree angle.
Ellipse Draws an ellipse. Hold the Shift key down during dragging if
you want to form a circle.
Filled Ellipse Draws an ellipse filled with foreground color. Hold the Shift key
down during dragging if you want to form a circle.
Rectangle Draws a rectangle. Hold shift down during dragging if you want
to form a filled square.
Filled Rectangle Draws a rectangle filled with the Foreground color. Hold the
Shift key down during dragging if you want to form a square.
Editing an Image
To use special edit functions:
1. Select the area you want to edit with the Selection Tool or Lasso Tool.
2. Choose the edit function you want to use. Move the area by selecting the Hand
tool or copy by using Cut, Copy and Paste functions from the Edit menu. You
can change the orientation of the area by using Rotate, Flip Horizontal or Flip
Vertical functions. Rotation rotates the selection 90 degrees. Flip Horizontal
mirrors the area horizontally and Flip vertical mirrors the area vertically. You
can also limit the image to a selected area by using the Crop to Selection
function. Choose these functions from the Edit menu.
Preview of an Image
To see the preview of the image, choose Preview from the View menu. Your image
is displayed as the users see it. You can also see the effect of changes as you make
them.
Saving Images
When you close the Image Editor, all changes are propagated to the image. You can
abandon changes using Edit/Undo menu command or closing the edited VSO file
without saving.
139
SYS 600 9.3 MicroSCADA Pro 1MRS756645
Color Setting
You can select the Foreground and Background colors in several ways. Here is one
way to do this.
To select the Foreground color, click a color in the Color Palette. The color is
displayed in the Foreground Color Box.
To select the Background color, hold the Control key down while clicking a color in
the Color Palette. The color is displayed in the Background Color Box.
The colors in the Color Palette are edited in the Color Palette Editor. To change the
Color Palette:
1. Open the Color Palette Editor by choosing Edit Colors from the Options menu.
The editor shown in Figure appears with the current Color Palette.
2. Click one of the default color palettes from the Palettes menu. The default
palettes are rainbow, pastels, earthtones, hues16 and EGA palettes.
3. Click Install. The chosen color palette is used in the Image Editor, which
appears on screen again.
140
1MRS756645 MicroSCADA Pro SYS 600 9.3
Visual SCIL Application Design
Configuration Manual
Color_Palette
Fig. 9.-3 The Color Palette Editor, where you can choose the Color Palette you
want to use in the Image Editor.
Image Transparency
A transparency is a mask of an image. The areas of a transparency that are not white
are masked out in the image.
To add a transparency for an image:
1. Choose Add Transparency from the Options Menu. The transparency editing
area appears.
2. Select the area of the original image you want to mask.
3. Choose Mask Selection from the Edit menu. The chosen area is shown masked
on the transparency editing area. You can edit the mask. Note that you cannot
change the Foreground and Background colors, they are always black and
white.
To remove transparency, choose Delete Transparency from the Options menu.
141
SYS 600 9.3 MicroSCADA Pro 1MRS756645
142
1MRS756645 MicroSCADA Pro SYS 600 9.3
Visual SCIL Application Design
Configuration Manual
10. Index
A
Abandon Item ........................................................................................... 78
Adding
Dialog Items ....................................................................................... 53
Image ................................................................................................ 138
Menu ................................................................................................... 84
Menubar .............................................................................................. 84
Methods .............................................................................................. 65
Objects in Object Editors .................................................................... 53
Objects in the Object List ................................................................... 49
Template ............................................................................................. 48
Aligning .................................................................................................... 55
Area graph .............................................................................................. 107
At Least One Selection ............................................................................. 92
Attribute Inheritance
VS_TABLE ...................................................................................... 120
Auto Calculate Widths ............................................................................. 91
Automatic numbering ............................................................................. 122
B
Background Color .................................................................................... 60
Bar graph ................................................................................................ 108
Border ................................................................................................. 63, 79
Box ......................................................................................................... 104
Breaking File Lock ................................................................................... 47
Button ....................................................................................................... 95
C
Cell ......................................................................................................... 121
Cell attributes .......................................................................................... 121
Check Box ................................................................................................ 97
Circle ...................................................................................................... 139
Clearing .................................................................................................... 56
Click Focusable ........................................................................................ 63
Closing
File ...................................................................................................... 48
Closing Dialog Editor ............................................................................... 41
Color
Saving ................................................................................................. 61
Color Chooser ........................................................................................... 60
Color Methods .......................................................................................... 61
Color Palette Editor ................................................................................ 140
Color Setting ........................................................................................... 140
Colors
143
SYS 600 9.3 MicroSCADA Pro 1MRS756645
Connections ........................................................................................ 67
Setting ................................................................................................ 60
Column Freezing .................................................................................... 125
Column groups ....................................................................................... 122
Combo ...................................................................................................... 98
Combo Popdown ...................................................................................... 98
Common concepts .................................................................................. 117
Confirm Item ............................................................................................ 78
Connection Types
Changing ............................................................................................ 70
Inside Connections ............................................................................. 73
Outside Connections .......................................................................... 68
Connections .............................................................................................. 67
Colors ................................................................................................. 67
Destination ......................................................................................... 74
Source ................................................................................................. 74
Container .................................................................................................. 82
Container Attributes ................................................................................. 83
Control values .......................................................................................... 97
Copy ......................................................................................................... 53
Copying
Object Editor ...................................................................................... 56
Object List .......................................................................................... 53
Creating
File ...................................................................................................... 45
Cursor ....................................................................................................... 62
Cursor Editor .......................................................................................... 142
D
Default Focus Item ................................................................................... 78
Defining Objects ...................................................................................... 59
Deleting .............................................................................................. 53, 56
Methods .............................................................................................. 65
Text ID ............................................................................................... 67
Destination ............................................................................................... 74
Dialog Item
Layers ................................................................................................. 56
Dialog item ............................................................................................... 44
Dialogs ..................................................................................................... 78
Distribute .................................................................................................. 55
Drag Lock ................................................................................................. 73
Drawing .................................................................................................. 138
Dropper ................................................................................................... 138
Duplicate
Object Editor ...................................................................................... 56
Object List .......................................................................................... 53
144
1MRS756645 MicroSCADA Pro SYS 600 9.3
Visual SCIL Application Design
Configuration Manual
E
EDIT TYPE ............................................................................................ 124
Editing
Image ................................................................................................ 139
Ellipse ..................................................................................................... 139
Enabled ..................................................................................................... 63
Entering Dialog Editor ............................................................................. 41
Eraser ...................................................................................................... 138
Exporting Image ..................................................................................... 140
F
File
Closing ................................................................................................ 48
Creating .............................................................................................. 45
Opening .............................................................................................. 46
Saving ................................................................................................. 47
File Chooser path selection modes ........................................................... 46
File History Length ................................................................................... 46
File Lock ................................................................................................... 47
Fill ........................................................................................................... 138
Filled Ellipse ........................................................................................... 139
Filled Rectangle ...................................................................................... 139
Fixed Base
Inside Connections ............................................................................. 73
Outside Connections ........................................................................... 68
Fixed Length ............................................................................................. 68
Outside Connections ........................................................................... 68
Flat Keyboard Traversal ........................................................................... 83
Focusable .................................................................................................. 63
Folio .......................................................................................................... 82
Folio Justification ..................................................................................... 82
Font Chooser ............................................................................................ 62
Font Setting .............................................................................................. 62
Foreground Color ..................................................................................... 60
G
Geometry Management ............................................................................ 67
Groups .................................................................................................... 122
H
Hand ....................................................................................................... 138
Handles ..................................................................................................... 54
Headers ................................................................................................... 121
I
Icon ........................................................................................................... 63
Icon View ......................................................................................... 86, 104
145
SYS 600 9.3 MicroSCADA Pro 1MRS756645
Iconifiable ................................................................................................. 79
Image ........................................................................................................ 63
Adding .............................................................................................. 138
Importing and Exporting .................................................................. 140
Image Domain ........................................................................................ 105
Image Editor ........................................................................................... 137
Image Mask .............................................................................................. 63
Image Text .............................................................................................. 139
Image Transparency ............................................................................... 141
Importing Image ..................................................................................... 140
Increment .................................................................................................. 98
Inserting
New Languages .................................................................................. 66
Picture ................................................................................................ 86
Inside Connections ................................................................................... 67
Items order ................................................................................................ 77
L
Label ......................................................................................................... 89
Language Dependent Text ....................................................................... 66
Inserting text ID ................................................................................. 60
Language Support .................................................................................... 66
Lasso ...................................................................................................... 138
Line ................................................................................................ 105, 139
Line Width in Image Editor ................................................................... 141
List ............................................................................................................ 89
List Item Page .......................................................................................... 91
List View Page ......................................................................................... 90
Location .................................................................................................... 60
Locked Fixed Length ............................................................................... 68
M
Main Dialogs ............................................................................................ 78
Make pages visible to SCIL ..................................................................... 82
Mask Selection ....................................................................................... 141
Max .......................................................................................................... 97
Maximizable ............................................................................................. 79
Menu Item ................................................................................................ 85
Menubar
Adding ................................................................................................ 84
Menus ................................................................................................. 41, 83
Adding ................................................................................................ 84
Main Dialog ....................................................................................... 41
Object Editor ...................................................................................... 42
Object List .......................................................................................... 42
Method
146
1MRS756645 MicroSCADA Pro SYS 600 9.3
Visual SCIL Application Design
Configuration Manual
Properties ............................................................................................ 65
Methods
Adding ................................................................................................ 65
Defining .............................................................................................. 64
Deleting .............................................................................................. 65
Renaming ............................................................................................ 65
Min ........................................................................................................... 97
Mnemonic Keys ........................................................................................ 60
Modal ........................................................................................................ 79
Movable .................................................................................................... 79
Moving ..................................................................................................... 55
Multiple lines of text .............................................................................. 121
N
Name ......................................................................................................... 59
Natural Base
Inside Connections ............................................................................. 73
Outside Connections ........................................................................... 68
Natural Length
Outside Connections ........................................................................... 68
New Languages ........................................................................................ 66
Notebook Page .......................................................................................... 81
Notebooks ................................................................................................. 80
Notice Dialogs .......................................................................................... 66
Numeric Spinner ..................................................................................... 100
O
Object List ................................................................................................ 51
Opening
File ...................................................................................................... 46
Opening a read-only VSO file .................................................................. 46
Option Button ........................................................................................... 98
Outside Connections ................................................................................. 67
P
Page .......................................................................................................... 98
Page Buttons ............................................................................................. 82
Pages Wrap ............................................................................................... 82
Palette ....................................................................................................... 95
Path selection modes ................................................................................ 46
Pencil ...................................................................................................... 139
Picture
Inserting .............................................................................................. 86
Picture Container ...................................................................................... 86
Pie graph ................................................................................................. 108
Plotted graph ........................................................................................... 107
Position ..................................................................................................... 60
147
SYS 600 9.3 MicroSCADA Pro 1MRS756645
148
1MRS756645 MicroSCADA Pro SYS 600 9.3
Visual SCIL Application Design
Configuration Manual
Strech ........................................................................................................ 73
String List Page ........................................................................................ 91
Style Chooser ............................................................................................ 95
Submenu Item ........................................................................................... 85
T
Tab Set Buttons Centered ......................................................................... 82
Tab Set Buttons Placement ....................................................................... 82
Tab Set Partial Tabs .................................................................................. 82
Tab Side .................................................................................................... 82
Tab Style ................................................................................................... 82
Tabs .......................................................................................................... 82
Template
Adding ................................................................................................ 48
Using ................................................................................................... 48
Testing
Menu ................................................................................................... 86
Text ................................................................................................... 92, 138
Text Editor ................................................................................................ 94
Text ID ...................................................................................................... 66
Inserting Translations ......................................................................... 66
Text Spinner ........................................................................................... 101
The Order Items Page ............................................................................... 77
Title ................................................................................................... 60, 121
Toggle Menu Item .................................................................................... 85
Translating Text ........................................................................................ 66
Tree ......................................................................................................... 105
U
Unclosable ................................................................................................ 79
Undo ......................................................................................................... 50
Update ....................................................................................................... 49
User Templates ......................................................................................... 49
V
Value ......................................................................................................... 97
Value handler .......................................................................................... 128
Value handlers limitations (VS_TABLE) .............................................. 130
Vertical ..................................................................................................... 98
Vertical Tabs ............................................................................................ 82
View Object Tree ..................................................................................... 50
Visible ....................................................................................................... 63
VS_TABLE ............................................................................................ 114
W
Window Page ............................................................................................ 79
Wrap ....................................................................................................... 101
149
SYS 600 9.3 MicroSCADA Pro 1MRS756645
Z
Zero Length .............................................................................................. 68
150
Contact us
www.abb.com/substationautomation
1MRS756645 A/31.3.2010