|
|
Graphic and logic elements
8.5 SIEsGraphCustomWidget
Example
Figure 8-16
Example - setCursorOnContour
moveCursorOnContourBegin - position the cursor to the first graphic object of a contour
Syntax:
ReturnValue = CallCWMethod(GraphVarName, "moveCursorOnContourBegin")
ReturnValue = CallCWMethod(GraphVarName, "moveCursorOnContourBegin",
ContourName)
Description:
Starting from the actual cursor position within a contour, using this function you
can navigate the cursor to the first point object of a contour.
Parameters:
GraphVarName
Name of the display variable which contains a SlEsGraph-
CustomWidget
Return Value
Error code (bool): TRUE = successful
ContourName
Name of the contour (QString).
If a contour is not specified, then the call automatically
refers to the currently selected contour.
Note
This function automatically refreshes the display.
moveCursorOnContourEnd - position the cursor to the last graphic object of a contour
Syntax:
ReturnValue = CallCWMethod(GraphVarName, "moveCursorOnContourEnd")
ReturnValue = CallCWMethod(GraphVarName, "moveCursorOnContourEnd",
ContourName)
Description:
Starting from the actual cursor position within a contour, using this function you
can navigate the cursor to the last point object of a contour.
Parameters:
GraphVarName
Name of the display variable which contains a SlEsGraph-
CustomWidget
Return Value
Error code (bool): TRUE = successful
ContourName
Name of the contour (QString).
If a contour is not specified, then the call automatically
refers to the currently selected contour.
SINUMERIK Integrate Run MyScreens
Programming Manual, 10/2020, A5E40869575B AD
251
Graphic and logic elements
8.5 SIEsGraphCustomWidget
Note
This function automatically refreshes the display.
moveCursorOnContourNext - position the cursor to the next graphic object of a contour
Syntax:
ReturnValue = CallCWMethod(GraphVarName, "moveCursorOnContourNext")
ReturnValue = CallCWMethod(GraphVarName, "moveCursorOnContourNext",
ContourName)
Description:
Starting from the actual cursor position within a contour, using this function you
can navigate the cursor to the next point object of a contour.
Parameters:
GraphVarName
Name of the display variable which contains a SlEsGraph-
CustomWidget
Return Value
Error code (bool): TRUE = successful
ContourName
Name of the contour (QString).
If a contour is not specified, then the call automatically
refers to the currently selected contour.
Note
This function automatically refreshes the display.
moveCursorOnContourBack - position the cursor to the previous graphic object of a contour
Syntax:
ReturnValue = CallCWMethod(GraphVarName, "moveCursorOnContourBack")
ReturnValue = CallCWMethod(GraphVarName, "moveCursorOnContourBack",
ContourName)
Description:
Starting from the actual cursor position within a contour, using this function you
can navigate the cursor to the previous point object of a contour.
Parameters:
GraphVarName
Name of the display variable which contains a SlEsGraph-
CustomWidget
Return Value
Error code (bool): TRUE = successful
ContourName
Name of the contour (QString).
If a contour is not specified, then the call automatically
refers to the currently selected contour.
Note
This function automatically refreshes the display.
SINUMERIK Integrate Run MyScreens
252
Programming Manual, 10/2020, A5E40869575B AD
Graphic and logic elements
8.5 SIEsGraphCustomWidget
serialize - save/restore the actual state
Syntax:
ReturnValue = CallCWMethod(GraphVarName, "serialize", FilePath, IsStoring)
Description:
Using this function, when required, you can write the actual state and content of
the SlEsGraphWidget in binary form to a file or datastream and also restore it.
Parameters:
GraphVarName
Name of the display variable which contains a SlEsGraph-
CustomWidget
Return Value
Error code (bool): TRUE = successful
FilePath
Complete path with file name (QString)
IsStoring
Save/restore (bool): TRUE = save
Note
This function automatically refreshes the display.
8.5.6
Signals
You can capture the subsequently described ViewChanged signal in the configuration and
respond appropriately.
Overview
Function
Description
ViewChanged
Changing the view
ViewChanged - changing the view
Syntax:
SUB(on_<GraphVarName>_ViewChanged)
…
END_SUB
Description:
The "ViewChanged“ signal is sent if the view changes. You can respond to this in
the configuration in a specific SUB method. The SIGARG parameters are appropri-
ately set.
Parameters:
GraphVarName
Name of the display variable which contains a SlEsGraph-
CustomWidget
SIGARG[0]
left-hand edge (double)
SIGARG[1]
upper edge (double)
SIGARG[2]
right-hand edge (double)
SIGARG[3]
lower edge (double)
SINUMERIK Integrate Run MyScreens
Programming Manual, 10/2020, A5E40869575B AD
253
Graphic and logic elements
8.5 SIEsGraphCustomWidget
Example
DEF MyGraphVar = (W///,"slesgraphcustomwidget.SlEsGraphCustomWidget"/////
10,10,340,340/0,0,0,0)
SUB(on_MyGraphVar_ViewChanged
DLGL("Current view: " << SIGARG[0] << ", " << SIGARG[1] << ", " <<
SIGARG[2]
<< ", " << SIGARG[3]
END_SUB
SINUMERIK Integrate Run MyScreens
254
Programming Manual, 10/2020, A5E40869575B AD
Graphic and logic elements
8.6 SlEsTouchButton
8.6
SlEsTouchButton
8.6.1
SlEsTouchButton
General information
You can create even functionally demanding applications simply by using Run MyScreens. For
touch operation you can configure buttons that can be freely located (TouchButtons). The
following attributes apply when configuring TouchButtons:
• The two possible state changes of the "clicked" and "checked" buttons can be queried in the
configuration and the appropriate actions initiated.
• TouchButtons can be operated with single or multitouch, mouse and keyboard.
• The TouchButton is displayed corresponding to the actual resolution. This also applies to the
font and displayed graphics.
• The TouchButton has two styles "Softkey look&feel" and "Application-specific". In the "Softkey
look&feel" style, the TouchButton is displayed corresponding to the Operate softkeys. Both
display styles have functions, for example, to scale graphics.
• TouchButtons are implemented and made available as custom widgets.
Figure 8-17
Examples of TouchButtons
Example
//M(MyTBMask/"My CustomWidget TouchButton ...")
DEF MyTB1 = (W///,"slesstdcw.SlEsTouchButton"/////70,20,200,100/0,0,0,0)
LOAD
WRITECWPROPERTY("MyTB1", "text", "This is my first TouchButton !!!")
SINUMERIK Integrate Run MyScreens
Programming Manual, 10/2020, A5E40869575B AD
255
Graphic and logic elements
8.6 SlEsTouchButton
//M(MyTBMask/"My CustomWidget TouchButton ...")
WRITECWPROPERTY("MyTB1", "textPressed", "This is my first TouchButton (pressed)!!!")
WRITECWPROPERTY("MyTB1", "picture", "dsm_remove_trashcan_red.png") WRITECWPROPERTY("MyTB1", "pic-
tureAlignment", "left")
WRITECWPROPERTY("MyTB1", "scalePicture", FALSE)
WRITECWPROPERTY("MyTB1", "picturePressed", "slsu_topology_empty_round_slot.png") WRITECWPROPER-
TY("MyTB1", "picture", "slsu_topology_empty_slot_left_error.png")
END_LOAD
Figure 8-18
Example, "This is my first TouchButton !!!"
8.6.2
Reading and writing properties
Description
The properties listed in the following section are read with ReadCWProperty() and written with
WriteCWProperty().
Examples
Reading the "Text" property of the SlEsTouchButton linked using display variable
"MyTouchButton". The result is written to register 0.
REG[0] = ReadCWProperty("MyTouchButton", "Text")
Writing value "sk_ok.png" in the "Picture" property of the SlEsTouchButton, linked using display
variable "MyTouchButton".
WriteCWProperty("MyTouchButton", "Picture", "sk_ok.png")
SINUMERIK Integrate Run MyScreens
256
Programming Manual, 10/2020, A5E40869575B AD
Graphic and logic elements
8.6 SlEsTouchButton
8.6.3
Properties
Overview
Property
Description
ButtonStyle
TouchButton display style
Flat
Displayed flat or in 3D
Enabled
Activate/deactivate operability
Checkable
Activate/deactivate toggle function
Checked
TouchButton is presently checked
ShowFocusRect
Display focus square if the TouchButton has the input focus
Picture
Picture (image) that should be displayed if the TouchButton is in
the normal, non-actuated state
PicturePressed
Picture (image) to be displayed if the TouchButton is pressed or
checked
PictureAlignment
Alignment of the picture
PictureAlignmentString
ScalePicture
Picture is scaled (stretched or compressed)
PictureKeepAspectRatio
Picture aspect ratio
Text
Normal display text
TextPressed
Text that is displayed if the TouchButton is pressed
textAlignment
Alignment of the text
textAlignmentString
TextAlignedToPicture
Text is aligned relative to the picture - activate/deactivate
BackgroundPicture
Background screen to be displayed
BackgroundPictureAlignment
Alignment of the backg37round picture
BackgroundPictureAlignmentString
ScaleBackgroundPicture
Background picture is scaled (stretched or compressed)
BackgroundPictureKeepAspectRatio
Picture aspect ratio
BackColor
Background color if the TouchButton is in the normal and non-
actuated state
BackColorChecked
Background color if the TouchButton is checked
BackColorPressed
Background color if the TouchButton is presently pressed
BackColorDisabled
Background color if the TouchButton cannot be operated
TextColor
Text color if the TouchButton is in the normal and non-actuated
state
TextColorChecked
Text color if the TouchButton is checked
TextColorPressed
Text color if the TouchButton is presently pressed
TextColorDisabled
Text color if the TouchButton cannot be operated
SINUMERIK Integrate Run MyScreens
Programming Manual, 10/2020, A5E40869575B AD
257
Graphic and logic elements
8.6 SlEsTouchButton
Button style
Syntax:
ReturnValue = ReadCWProperty(TouchButtonVarName, "ButtonStyle")
WriteCWProperty(TouchButtonVarName, "ButtonStyle", Value)
Description:
Reads/sets the TouchButton style
Parameters:
TouchButtonVarName
Name of the display variable that contains a SlEsTouch-
Button
Return Value
Read value of the property (int)
Value
value to be set (int)
0 = Softkey Look&Feel (default)
1 = user-specific
With the setting "0 = Softkey Look&Feel", the TouchButton is displayed and responds just like a
softkey. The currently set skin is taken into account - see display machine data 9112 =
$MM_HMI_SKIN.
Figure 8-19
ButtonStyle - Softkey Look&Feel
With setting "1 = user-specific", the text and backg37round color can be defined according to the
TouchButton state. Further, there is a 3D effect, which allows pictures to be automatically scaled
and influences the distances from the edges.
Figure 8-20
ButtonStyle - user-specific
Flat - display type
Syntax:
ReturnValue = ReadCWProperty(TouchButtonVarName, "Flat")
WriteCWProperty(TouchButtonVarName, "Flat", Value)
Description:
Reads/sets as to whether the TouchButton is shown flat (default) or in 3D
Note: This property is only available with active style (ButtonStyle) "1= user-spe-
cific".
TouchButtonVarName
Name of the display variable that contains a SlEs-
TouchButton
Parameters:
Return Value
Read value of the property (bool)
Value
Value to be set (bool): TRUE (default) or FALSE
SINUMERIK Integrate Run MyScreens
258
Programming Manual, 10/2020, A5E40869575B AD
Graphic and logic elements
8.6 SlEsTouchButton
Figure 8-21
Flat display style
Figure 8-22
3D display style
Enabled - operability of the TouchButton
Syntax:
ReturnValue = ReadCWProperty(TouchButtonVarName, "Enabled")
WriteCWProperty(TouchButtonVarName, "Enabled", Value)
Description:
Read/sets as to whether the TouchButton can be operated (= TRUE) - or cannot be
operated (FALSE).
Parameters:
TouchButtonVarName
Name of the display variable that contains a SlEsTouch-
Button
Return Value
Read value of the property (bool)
Value
Value to be set (bool): TRUE (default) or FALSE
Figure 8-23
TouchButton can be operated
Figure 8-24
TouchButton cannot be operated
Note
If a TouchButton that cannot be operated is clicked, then signal "clickedDisabled" is sent. The
signal can be evaluated, for example an appropriate message issued as to why the TouchButton
and the associated function presently cannot be operated. In the deactivated state, the picture
or backg37round picture is automatically displayed in shades of gray.
SINUMERIK Integrate Run MyScreens
Programming Manual, 10/2020, A5E40869575B AD
259
Graphic and logic elements
8.6 SlEsTouchButton
Checkable - activate/deactivate toggle function
Syntax:
ReturnValue = ReadCWProperty(TouchButtonVarName, "Checkable")
WriteCWProperty(TouchButtonVarName, "Checkable", Value)
Description:
Reads/sets the TouchButton toggle function.
Parameters:
TouchButtonVarName
Name of the display variable that contains a SlEsTouch-
Button
Return Value
Read value of the property (bool)
Value
Value to be set (bool): TRUE or FALSE (default)
Note
In the default setting, after it has been released, the TouchButton returns to its normal state (the
same as a pushbutton) However, if the TouchButton toggle functionality is activated (TRUE),
then after it is press, it initially remains in the pressed position. If it is actuated again, then it
changes back into its normal state (same as a switch).
See also the "Checked" property.
Checked - actual toggle state
Syntax:
ReturnValue = ReadCWProperty(TouchButtonVarName, "Checked")
WriteCWProperty(TouchButtonVarName, "Checked", Value)
Description:
Reads/sets the actual toggle state of the TouchButton
Parameters:
TouchButtonVarName
Name of the display variable that contains a SlEsTouch-
Button
Return Value
Read value of the property (bool)
Value
Value to be set (bool): TRUE or FALSE (default)
If the toggle function is activated as the property "Checkable" is "TRUE", then the actual toggle
state can be read or set using the "Checked" property.
Figure 8-25
Unchecked
Figure 8-26
Checked
SINUMERIK Integrate Run MyScreens
260
Programming Manual, 10/2020, A5E40869575B AD
Graphic and logic elements
8.6 SlEsTouchButton
For both states, text and picture can be specifically displayed.
Note
See also the "Checkable" property.
ShowFocusRect - focus rectangle display
Syntax:
ReturnValue = ReadCWProperty(TouchButtonVarName, "ShowFocusRect")
WriteCWProperty(TouchButtonVarName, "ShowFocusRect", Value)
Description:
Reads/sets as to whether the TouchButton should display a focus rectangle as
soon as it is assigned the input focus.
Parameters:
TouchButtonVarName
Name of the display variable that contains a SlEsTouch-
Button
Return Value
Read value of the property (bool)
Value
Value to be set (bool): TRUE or FALSE (default)
The focus frame color is automatically set with the Operate color setting, in the following
example "orange".
Figure 8-27
ShowFocusRect
Picture - displayed picture
Syntax:
ReturnValue = ReadCWProperty(TouchButtonVarName, "Picture")
WriteCWProperty(TouchButtonVarName, "Picture", Value)
Description:
Reads/sets the picture to be displayed if the TouchButton is in its quiescent state
(not actuated).
Parameters:
TouchButtonVarName
Name of the display variable that contains a SlEsTouch-
Button
Return Value
read value of the property (string)
Value
value to be set (string)
The file name is specified as value, for example "sk_ok.png". The TouchButton automatically
determines the correct picture file from the current resolution directory (see Chapter Using
display images/graphics (Page 67)).
SINUMERIK Integrate Run MyScreens
Programming Manual, 10/2020, A5E40869575B AD
261
Graphic and logic elements
8.6 SlEsTouchButton
In the deactivated state, the picture is automatically displayed in shades of gray.
Note
See also properties - "Text", "TextAlignedToPicture", "PictureAlignment", "ScalePicture",
"PictureKeepAspectRatio".
PicturePressed - picture in the pressed state
Syntax:
ReturnValue = ReadCWProperty(TouchButtonVarName, "PicturePressed")
WriteCWProperty(TouchButtonVarName, "PicturePressed", Value)
Description:
Reads/sets the picture to be displayed if the TouchButton is pressed or checked.
Parameters:
TouchButtonVarName
Name of the display variable that contains a SlEsTouch-
Button
Return Value
read value of the property (string)
Value
value to be set (string)
If a value is not specified (empty string " "), then in this state, the TouchButton shows the picture
specified with the "Picture" property.
The file name is specified as value, for example "sk_ok.png". The TouchButton automatically
determines the correct picture file from the current resolution directory (see Chapter Using
display images/graphics (Page 67)).
In the deactivated state, the picture is automatically displayed in shades of gray.
Note
See also properties - "Text", "TextAlignedToPicture", "PictureAlignment", "ScalePicture",
"PictureKeepAspectRatio".
PictureAlignment - picture alignment
Syntax:
ReturnValue = ReadCWProperty(TouchButtonVarName, "PictureAlignment")
WriteCWProperty(TouchButtonVarName, "PictureAlignment", Value)
Description:
Reads/sets the alignment of the picture on the TouchButton.
Parameters:
TouchButtonVarName
Name of the display variable that contains a SlEsTouch-
Button
Return Value
Read value of the property (int)
Value
Value to be set (int):
1 = left (default)
2 = right
32 = top
64 = bottom
128 = centered
SINUMERIK Integrate Run MyScreens
262
Programming Manual, 10/2020, A5E40869575B AD
Graphic and logic elements
8.6 SlEsTouchButton
Note
See Chapter Positioning and aligning picture and text (Page 277).
Also see properties - "Text", "TextAlignedToPicture", "PictureAlignmentString", "ScalePicture",
"PictureKeepAspectRatio".
PictureAlignmentString - picture alignment
Syntax:
ReturnValue = ReadCWProperty(TouchButtonVarName, "PictureAlignment-
String")
WriteCWProperty(TouchButtonVarName, "PictureAlignmentString", Value)
Description:
Reads/sets the alignment of the picture. This property is analogous to the "Pic-
tureAlignment" property. However, the value is not transfigured here as number
(int), but as string.
Parameters:
TouchButtonVarName
Name of the display variable that contains a SlEsTouch-
Button
Return Value
read value of the property (string)
Value
value to be set (string):
"Left" = left (default)
"Right" = right
"Top" = top
"Bottom" = bottom
"Center" = centered
Note
See Chapter Positioning and aligning picture and text (Page 277).
See also properties - "Text", "TextAlignedToPicture", "PictureAlignment", "ScalePicture",
"PictureKeepAspectRatio".
ScalePicture - scale picture
Syntax:
ReturnValue = ReadCWProperty(TouchButtonVarName, "ScalePicture")
WriteCWProperty(TouchButtonVarName, "ScalePicture", Value)
Description:
Reads/sets whether the TouchButton (depending on the alignment) should scale
the picture to be displayed.
Parameters:
TouchButtonVarName
Name of the display variable that contains a SlEsTouch-
Button
Return Value
Read value of the property (bool)
Value
Value to be set (bool): TRUE or FALSE (default)
Note
See Chapter Positioning and aligning picture and text (Page 277).
SINUMERIK Integrate Run MyScreens
Programming Manual, 10/2020, A5E40869575B AD
263
Graphic and logic elements
8.6 SlEsTouchButton
PictureKeepAspectRatio - scale picture - keeping the aspect ratio
Syntax:
ReturnValue = ReadCWProperty(TouchButtonVarName, "PictureKeepAspectRa-
tio")
WriteCWProperty(TouchButtonVarName, "PictureKeepAspectRatio", Value)
Description:
Reads/sets, whether, when scaling (Property "ScalePicture" = "TRUE"), the aspect
ratio of the picture should be kept or not.
Parameters:
TouchButtonVarName
Name of the display variable that contains a SlEsTouch-
Button
Return Value
Read value of the property (bool)
Value
Value to be set (bool): TRUE (default) or FALSE
Note
See Chapter Positioning and aligning picture and text (Page 277).
Text - display text
Syntax:
ReturnValue = ReadCWProperty(TouchButtonVarName, "Text")
WriteCWProperty(TouchButtonVarName, "Text", Value)
Description:
Reads/sets the displayed text if the TouchButton is in its quiescent state (not
actuated).
Parameters:
TouchButtonVarName
Name of the display variable that contains a SlEsTouch-
Button
Return Value
read value of the property (string)
Value
value to be set (string)
The texts are automatically wrapped around at the word limits in the rectangle provided.
Line breaks are only forced as a result of the system if the text to be displayed comes from a
language file.
Note
See Chapter Language-dependent texts (Page 279).
TextPressed - displayed text in the pressed state
Syntax:
ReturnValue = ReadCWProperty(TouchButtonVarName, "TextPressed")
WriteCWProperty(TouchButtonVarName, "TextPressed", Value)
Description:
Reads/sets the displayed text if the TouchButton is pressed or checked.
Parameters:
TouchButtonVarName
Name of the display variable that contains a SlEsTouch-
Button
Return Value
read value of the property (string)
Value
value to be set (string)
The texts are automatically wrapped around at the word limits in the rectangle provided.
SINUMERIK Integrate Run MyScreens
264
Programming Manual, 10/2020, A5E40869575B AD
Graphic and logic elements
8.6 SlEsTouchButton
Line breaks are only forced as a result of the system if the text to be displayed comes from a
language file.
Note
See Chapter Language-dependent texts (Page 279).
TextAlignment - alignment of the text
Syntax:
ReturnValue = ReadCWProperty(TouchButtonVarName, "TextAlignment")
WriteCWProperty(TouchButtonVarName, "TextAlignment", Value)
Description:
Reads/sets the alignment of the text on the TouchButton
Parameters:
TouchButtonVarName
Name of the display variable that contains a SlEsTouch-
Button
Return Value
Read value of the property (int)
Value
Value to be set (int):
1 = left
2 = right
32 = top
64 = bottom
128 = centered (default)
(see examples below)
Figure 8-28
TextAlignment - left
Figure 8-29
TextAlignment - right
Figure 8-30
TextAlignment - top
SINUMERIK Integrate Run MyScreens
Programming Manual, 10/2020, A5E40869575B AD
265
Graphic and logic elements
8.6 SlEsTouchButton
Figure 8-31
TextAlignment - bottom
Figure 8-32
TextAlignment - centered
Note
See Chapter Positioning and aligning picture and text (Page 277).
See also properties "Text", "TextAlignmentString", "TextAlignedToPicture".
TextAlignmentString - alignment of the text
Syntax:
ReturnValue = ReadCWProperty(TouchButtonVarName, "TextAlignment-
String")
WriteCWProperty(TouchButtonVarName, "TextAlignmentString", Value)
Description:
Reads/sets the alignment of the text. This property is analogous to the "TextA-
lignment" property. The value is not transfigured here as number (int), but as
string.
Parameters:
TouchButtonVarName
Name of the display variable that contains a SlEsTouch-
Button
Return Value
read value of the property (string)
Value
value to be set (string):
"Left" = left
"Right" = right
"Top" = top
"Bottom" = bottom
"Center" = centered (default)
Note
See Chapter Positioning and aligning picture and text (Page 277).
See also properties - "Text", "TextAlignment", "TextAlignedToPicture".
SINUMERIK Integrate Run MyScreens
266
Programming Manual, 10/2020, A5E40869575B AD
Graphic and logic elements
8.6 SlEsTouchButton
TextAlignedToPicture - text aligned relative to the picture
Syntax:
ReturnValue = ReadCWProperty(TouchButtonVarName, "TextAlignedToPicture")
WriteCWProperty(TouchButtonVarName, "TextAlignedToPicture", Value)
Description:
Reads/sets whether the displayed text should be positioned relative to the pic-
ture. If FALSE is set here, then the text is shown centered on the TouchButton.
Parameters:
TouchButtonVarName
Name of the display variable that contains a SlEsTouch-
Button
Return Value
Read value of the property (bool)
Value
Value to be set (bool): TRUE (default) or FALSE
Note
See Chapter Positioning and aligning picture and text (Page 277).
See also properties "Text", "TextPressed", "Picture", "PicturePressed".
BackColor - backg37round color
Syntax:
ReturnValue = ReadCWProperty(TouchButtonVarName, " BackColor")
WriteCWProperty(TouchButtonVarName, " BackColor", Value)
Description:
Reads/sets the backg37round color if the TouchButton is in its quiescent state (not
actuated).
Parameters:
TouchButtonVarName
Name of the display variable that contains a SlEsTouch-
Button
Return Value
Read color of the property (string)
Value
Value to be set (string) as RGB value in the form
"#RRGGBB",
for example, "#04B7FB"
Note
This property is only available with active style "1= user-specific".
BackColorChecked - backg37round color in the checked state
Syntax:
ReturnValue = ReadCWProperty(TouchButtonVarName, "BackColorChecked")
WriteCWProperty(TouchButtonVarName, " BackColorChecked", Value)
Description:
Reads/sets the backg37round color if the TouchButton is in the clicked state (toggle
function). See properties "Checked“, "Checkable“
Parameters:
TouchButtonVarName
Name of the display variable that contains a SlEsTouch-
Button
Return Value
Read color of the property (string)
Value
Value to be set (string) as RGB value in the form
"#RRGGBB",
for example, "#04B7FB"
SINUMERIK Integrate Run MyScreens
Programming Manual, 10/2020, A5E40869575B AD
267
Graphic and logic elements
8.6 SlEsTouchButton
Note
This property is only available with active style "1= user-specific".
Note
See also properties "Checked", "Checkable".
BackColorPressed - backg37round color in the pressed state
Syntax:
ReturnValue = ReadCWProperty(TouchButtonVarName, "BackColorPressed")
WriteCWProperty(TouchButtonVarName, " BackColorPressed", Value)
Description:
Reads/sets the backg37round color if the TouchButton is in the pressed state
Parameters:
TouchButtonVarName
Name of the display variable that contains a SlEsTouch-
Button
Return Value
Read color of the property (string)
Value
Value to be set (string) as RGB value in the form
"#RRGGBB"
e.g. "#04B7FB"
Note
This property is only available with active style "1= user-specific".
BackColorDisabled - backg37round color in the deactivated state
Syntax:
ReturnValue = ReadCWProperty(TouchButtonVarName, "BackColorDisabled")
WriteCWProperty(TouchButtonVarName, " BackColorDisabled", Value)
Description:
Reads/sets the backg37round color if the TouchButton is in the deactivated state.
Parameters:
TouchButtonVarName
Name of the display variable that contains a SlEsTouch-
Button
Return Value
Read color of the property (string)
Value
Value to be set (string) as RGB value in the form
"#RRGGBB",
for example, "#04B7FB"
Note
This property is only available with active style "1= user-specific".
Note
See also the " Enabled" property.
SINUMERIK Integrate Run MyScreens
268
Programming Manual, 10/2020, A5E40869575B AD
Graphic and logic elements
8.6 SlEsTouchButton
TextColor - text color
Syntax:
ReturnValue = ReadCWProperty(TouchButtonVarName, "TextColor")
WriteCWProperty(TouchButtonVarName, " TextColor", Value)
Description:
Reads/sets the text color if the TouchButton is in its quiescent state (not actuated).
Parameters:
TouchButtonVarName
Name of the display variable that contains a SlEsTouch-
Button
Return Value
Read color of the property (string)
Value
Value to be set (string) as RGB value in the form
"#RRGGBB",
for example, "#04B7FB"
Note
This property is only available with active style "1= user-specific".
TextColorChecked - text color in the checked state
Syntax:
ReturnValue = ReadCWProperty(TouchButtonVarName, "TextColorChecked")
WriteCWProperty(TouchButtonVarName, " TextColorChecked", Value)
Description:
Reads/sets the text color if the TouchButton is in the checked state (toggle func-
tion).
Parameters:
TouchButtonVarName
Name of the display variable that contains a SlEsTouch-
Button
Return Value
Read color of the property (string)
Value
Value to be set (string) as RGB value in the form
"#RRGGBB",
for example, "#04B7FB"
Note
This property is only available with active style "1= user-specific".
Note
See also properties "Checked", "Checkable".
TextColorPressed - text color in the pressed state
Syntax:
ReturnValue = ReadCWProperty(TouchButtonVarName, "TextColorPressed")
WriteCWProperty(TouchButtonVarName, "TextColorPressed", Value)
Description:
Reads/sets the text color if the TouchButton is in the pressed state
SINUMERIK Integrate Run MyScreens
Programming Manual, 10/2020, A5E40869575B AD
269
Graphic and logic elements
8.6 SlEsTouchButton
Parameters:
TouchButtonVarName
Name of the display variable that contains a SlEsTouch-
Button
Return Value
Read color of the property (string)
Value
Value to be set (string) as RGB value in the form
"#RRGGBB",
for example, "#04B7FB"
Note
This property is only available with active style "1= user-specific".
TextColorDisabled - text color in the deactivated state
Syntax:
ReturnValue = ReadCWProperty(TouchButtonVarName, "TextColorDisabled")
WriteCWProperty(TouchButtonVarName, "TextColorDisabled", Value)
Description:
Reads/sets the text color if the TouchButton is in the deactivated state
Parameters:
TouchButtonVarName
Name of the display variable that contains a SlEsTouch-
Button
Return Value
Read color of the property (string)
Value
Value to be set (string) as RGB value in the form
"#RRGGBB",
for example, "#04B7FB"
Note
This property is only available with active style "1= user-specific".
Note
See also the " Enabled" property.
BackgroundPicture - backg37round picture
Syntax:
ReturnValue = ReadCWProperty(TouchButtonVarName, "BackgroundPicture")
WriteCWProperty(TouchButtonVarName, "BackgroundPicture", Value)
Description:
Reads/sets the permanent backg37round picture to be displayed, i.e. independent
of the state.
Parameters:
TouchButtonVarName
Name of the display variable that contains a SlEsTouch-
Button
Return Value
read value of the property (string)
Value
value to be set (string)
The file name is specified as value, for example "sk_ok.png". The TouchButton automatically
determines the correct picture file from the current resolution directory (see Chapter Using
display images/graphics (Page 67)).
SINUMERIK Integrate Run MyScreens
270
Programming Manual, 10/2020, A5E40869575B AD
Graphic and logic elements
8.6 SlEsTouchButton
In the deactivated state, the backg37round picture is automatically shown in shades of gray.
Note
See Chapter Using display images/graphics (Page 67).
See also properties - "BackgroundPictureAlignment", "ScaleBackgroundPicture",
"BackgroundPictureKeepAspectRatio".
BackgroundPictureAlignment - alignment of the backg37round picture
Syntax:
ReturnValue = ReadCWProperty(TouchButtonVarName, "BackgroundPictureA-
lignment")
WriteCWProperty(TouchButtonVarName, "BackgroundPictureAlignment", Val-
ue)
Description:
Reads/sets the alignment of the backg37round picture.
Parameters:
TouchButtonVarName
Name of the display variable that contains a SlEsTouch-
Button
Return Value
Read value of the property (int)
Value
Value to be set (int):
1 = left
2 = right
32 = top
64 = bottom
128 = centered (default)
Note
See Chapter Positioning and aligning picture and text (Page 277).
See also properties - "BackgroundPictureAlignment", "ScaleBackgroundPicture",
"BackgroundPictureKeepAspectRatio".
BackgroundPictureAlignmentString - alignment of the backg37round picture
Syntax:
ReturnValue = ReadCWProperty(TouchButtonVarName, "BackgroundPictureA-
lignmentString")
WriteCWProperty(TouchButtonVarName, "BackgroundPictureAlignment-
String", Value)
Description:
Reads/sets the alignment of the backg37round picture. This property is analogous
to the property "BackgroundPictureAlignment". However, the value is not trans-
figured here as number (int), but as string.
SINUMERIK Integrate Run MyScreens
Programming Manual, 10/2020, A5E40869575B AD
271
Graphic and logic elements
8.6 SlEsTouchButton
Parameters:
TouchButtonVarName
Name of the display variable that contains a SlEsTouch-
Button
Return Value
Read value of the property (int)
Value
Value to be set (int):
"Left" = left
"Right" = right
"Top" = top
"Bottom" = bottom
"Center" = centered (default)
Note
See Chapter Positioning and aligning picture and text (Page 277).
See also properties - "BackgroundPictureAlignment", "ScaleBackgroundPicture",
"BackgroundPictureKeepAspectRatio".
ScaleBackgroundPicture - scale backg37round picture
Syntax:
ReturnValue = ReadCWProperty(TouchButtonVarName, "ScalePicture")
WriteCWProperty(TouchButtonVarName, "ScalePicture", Value)
Description:
Reads/sets whether the TouchButton (depending on the alignment) should scale
the picture to be displayed.
Parameters:
TouchButtonVarName
Name of the display variable that contains a SlEsTouch-
Button
Return Value
Read value of the property (bool)
Value
Value to be set (bool): TRUE or FALSE (default)
Note
See Chapter Positioning and aligning picture and text (Page 277).
See also properties - "BackgroundPictureAlignment", "ScaleBackgroundPicture",
"BackgroundPictureKeepAspectRatio".
BackgroundPictureKeepAspectRatio - scale backg37round picture and keep aspect ratio
Syntax:
ReturnValue = ReadCWProperty(TouchButtonVarName, "BackgroundPicture-
KeepAspectRatio")
WriteCWProperty(TouchButtonVarName, "BackgroundPictureKeepAspectRa-
tio", Value)
Description:
Reads/sets, whether, when scaling (property "ScaleBackgroundPicture" = "TRUE")
the aspect ratio of the backg37round picture should be kept or not.
Parameters:
TouchButtonVarName
Name of the display variable that contains a SlEsTouch-
Button
Return Value
Read value of the property (bool)
Value
Value to be set (bool): TRUE (default) or FALSE
SINUMERIK Integrate Run MyScreens
272
Programming Manual, 10/2020, A5E40869575B AD
Graphic and logic elements
8.6 SlEsTouchButton
Note
See Chapter Positioning and aligning picture and text (Page 277).
8.6.4
Functions
You can call the subsequently listed functions using the CallCWMethod() function.
Example
Setting the margins of the SlEsTouchButton linked using display variable "MyTouchButton".
The result is written to register 0.
REG[0] = CallCWMethod("MyTouchButton", "setMargins", 20, 20, 20, 20,
20)
Overview
Function
Description
setMargins
Setting the margins
serialize
Saves/restores the actual state
setMargins - setting the margins
Syntax:
ReturnValue = CallCWMethod(TouchButtonVarName, "setMargins", left, top,
right, bottom, center)
ReturnValue = CallCWMethod(TouchButtonVarName, "setMargins", left, top,
right, bottom, center, marginAlignment)
Description:
Using this function, the margin clearances and the distance between picture and
text are defined.
If a value of "-1" is specified, then this value is applicable for the system default
clearance. If the value is greater or equal to "0", then the value is set as edge
clearance.
SINUMERIK Integrate Run MyScreens
Programming Manual, 10/2020, A5E40869575B AD
273
Graphic and logic elements
8.6 SlEsTouchButton
Parameters:
TouchButtonVarName
Name of the display variable that contains a SlEsTouch-
Button
Return Value
Error code (bool): TRUE = successful
left
lefthand edge (int)
top
top edge (int)
right
right-hand edge (int)
bottom
bottom edge (int)
center
Clearance between picture and text (int), if the align-
ment is not "center"
marginAlignment
Optional: Defines whether the margin next to the dis-
played picture should also apply when positioning the
display text (bool), TRUE (default)
serialize - save/restore the actual state
Syntax:
ReturnValue = CallCWMethod(TouchButtonVarName, "serialize", FilePath, IsStor-
ing)
Description:
With this function, when required, you can write and restore the actual state and
content of the SlEsTouchButton binary into a file or Data Stream. This function
automatically refreshes the display.
Parameters:
TouchButtonVarName
Name of the display variable that contains a SlEsTouch-
Button
Return Value
Error code (bool): TRUE = successful
FilePath
Complete path with file name (QString)
IsStoring
Save/restore (bool): TRUE = save
Note
Programming engineers do not directly use this function!
8.6.5
Signals
You can capture the subsequently described signals in the configuration and respond
appropriately.
Overview
Function
Description
clickedDisabled
Press a deactivated TouchButton
clicked
A click or tap is executed
checked
It was toggled
SINUMERIK Integrate Run MyScreens
274
Programming Manual, 10/2020, A5E40869575B AD
Graphic and logic elements
8.6 SlEsTouchButton
• If a TouchButton can be operated - but it cannot be toggled - then "clicked" signal is sent when
the TouchButton is pressed.
• If a TouchButton can be operated and toggled - then the following sequence of signals is sent
when the TouchButton is pressed.
"checked" → "clicked"
• If a TouchButton cannot be operated - then the "clickedDisabled" signal is sent when the
TouchButton is pressed.
All of the signals mentioned above are only sent after an operator action, i.e. only once the
mouse or the space bar has been released or after a tap for multitouch.
As a consequence, the SlEsTouchButton has a pure switch function, i.e. a pushbutton function
is not possible.
Note
For multitouch operation, note that a click can only be sent if a tap gesture has been completely
identified (pressing and releasing within approximately 0.7 seconds). If an action was already
carried out when simply pressing, it would not be possible for example to scroll/shift the
ScrollArea behind, or it could lead to operator input errors.
clicked - the TouchButton was clicked
Syntax:
SUB(on_<TouchButtonVarName>_clicked)
…
END_SUB
Description:
A complete sequence comprising pressing and releasing a TouchButton (that can
be operated) results in a "clicked" signal. We recommend working predominantly
with this signal.
Parameters:
TouchButtonVarName
Name of the display variable that contains a SlEsTouch-
Button
SIGARG[0]
Supplies the toggle state of the TouchButton (bool)
Example
DEF MyTouchButton = (W///,"slesstdcw.SlEsTouchButton"/////70,20,200,100/0,0,0,0)
SUB(on_MyTouchButton_clicked)
DLGL("checked: " << SIGARG[0])
END_SUB
SINUMERIK Integrate Run MyScreens
Programming Manual, 10/2020, A5E40869575B AD
275
Graphic and logic elements
8.6 SlEsTouchButton
checked - a TouchButton was toggled
Syntax:
SUB(on_<TouchButtonVarName>_checked)
…
END_SUB
Description:
A TouchButton that can be toggled was pressed, which changed its state.
Parameters:
TouchButtonVarName
Name of the display variable that contains a SlEsTouch-
Button
SIGARG[0]
Supplies the toggle state of the TouchButton (bool)
Example
DEF MyTouchButton = (W///,"slesstdcw.SlEsTouchButton"/////70,20,200,100/0,0,0,0)
SUB(on_MyTouchButton_toggled)
DLGL("toggled: " << SIGARG[0])
END_SUB
clickedDisabled - a TouchButton that cannot be operated was clicked
Syntax:
SUB(on_<TouchButtonVarName>_clickedDisabled)
…
END_SUB
Description:
A complete sequence comprising pressing and releasing a TouchButton (that can-
not be operated) results in a "clickedDisabled" signal.
Parameters:
TouchButtonVarName
Name of the display variable that contains a SlEsTouch-
Button
SIGARG[0]
Supplies the toggle state of the TouchButton (bool)
Example
DEF MyTouchButton = (W///,"slesstdcw.SlEsTouchButton"/////70,20,200,100/0,0,0,0)
SUB(on_MyTouchButton_clickedDisabled)
DLGL("checkedDisabled: " << SIGARG[0])
END_SUB
SINUMERIK Integrate Run MyScreens
276
Programming Manual, 10/2020, A5E40869575B AD
Graphic and logic elements
8.6 SlEsTouchButton
8.6.6
Positioning and aligning picture and text
Positioning pictures
A picture is positioned as follows with the specified alignment:
• In a first step, the picture matching the current resolution is determined from the associated
resolution directory.
• The rectangle of the area (ClientArea) is then reduced by the specified clearances to the
edges (MarginArea).
The MarginArea can be influenced using the "setMargins" function:
- setMargins(-1, -1, -1, -1, -1)
Figure 8-33
setMargins(-1, -1, -1, -1, -1)
– setMargins(0, 0, 0, 0, 0)
Figure 8-34
setMargins(0, 0, 0, 0, 0)
– setMargins(20, 20, 20, 20, 20)
Figure 8-35
setMargins(20, 20, 20, 20, 20)
Example for alignment "left"
The area is horizontally halved, so that the picture to be displayed can assume half (maximum)
of the area.
SINUMERIK Integrate Run MyScreens
Programming Manual, 10/2020, A5E40869575B AD
277
Graphic and logic elements
8.6 SlEsTouchButton
The picture is then drawn as follows:
• Property "scalePicture": FALSE
The picture is drawn at this location without any scaling. It must be ensured that the basic
picture is not too large, and can be completely displayed within the TouchButton.
Figure 8-36
scalePicture FALSE
• Property "scalePicture": TRUE
The picture is scaled (stretched or compressed), so that it fits into the left-hand half of the
TouchButton. The "pictureKeepAspectRatio" property is taken into account as follows:
- Property "pictureKeepAspectRatio": FALSE
The picture is scaled horizontally and vertically so that it precisely fits into the left-hand
half of the TouchButton. In so doing, the aspect ratio of the original picture is no longer
taken into consideration.
Figure 8-37
scalePicture - pictureKeepAspectRatio FALSE
– Property "pictureKeepAspectRatio": TRUE
Taking into consideration the aspect ratio of the original picture, the picture is scaled large
enough so that it just fits into the left-hand half of the TouchButton.
Figure 8-38
scalePicture - pictureKeepAspectRatio TRUE
Note
The same principle applies for "right", "top" and "bottom" alignments.
For the "centered" alignment, an attempt is made to fit the picture - depending on the
"scalePicture" and "pictureKeepAspectRatio" properties - in the complete MarginArea.
SINUMERIK Integrate Run MyScreens
278
Programming Manual, 10/2020, A5E40869575B AD
Graphic and logic elements
8.6 SlEsTouchButton
Positioning the text
The text is positioned as follows depending on the "textAlignedToPicture" property:
• Property "textAlignedToPicture": FALSE
The text is shown in the MarginArea centered vertically and horizontally.
Figure 8-39
textAlignedToPicture FALSE
• Property "textAlignedToPicture": TRUE
The text is output in the remaining area of the MarginArea minus the area of the drawn
picture, centered horizontally and vertically.
Figure 8-40
textAlignedToPicture TRUE
8.6.7
Language-dependent texts
SlEsTouchButton does not support foreign languages by itself. However, the following example
shows how you can implement language dependency:
Example
easyscreen.ini:
[LANGUAGEFILES]LngFile03 = user.txt
user_eng.txt:
85000 0 0 "This is my first TouchButton !!!"
user_deu.txt:
85000 0 0 "Das ist mein erster TouchButton !!!"
Configuration file:
//M(MyTBMask/"My CustomWidget TouchButton ...")
DEF MyTB1 = (W///,"slesstdcw.SlEsTouchButton"/////70,20,200,100/0,0,0,0)
LOAD
SINUMERIK Integrate Run MyScreens
Programming Manual, 10/2020, A5E40869575B AD
279
Graphic and logic elements
8.6 SlEsTouchButton
//M(MyTBMask/"My CustomWidget TouchButton ...")
DEF MyTB1 = (W///,"slesstdcw.SlEsTouchButton"/////70,20,200,100/0,0,0,0)
WRITECWPROPERTY("MyTB1", "text", $85000)
END_LOAD
LANGUAGE
WRITECWPROPERTY("MyTB1", "text", $85000)
END_LANGUAGE
The texts are automatically wrapped around at the word limits in the rectangle provided. The
forced line break is only possible if the text to be displayed is sourced from a language file A "%n"
must be inserted at the appropriate location in the text (see the following example).
user_eng.txt:
85001 0 0 "This is%nmy%nfirst%nTouchButton !!!"
Configuration file:
WRITECWPROPERTY("MyTB1", "text", $85001)
Result
Figure 8-41
Example of a line break in a language-dependent text
SINUMERIK Integrate Run MyScreens
280
Programming Manual, 10/2020, A5E40869575B AD
"Custom" operating area
9
9.1
How to activate the "Custom" operating area
Activating the "Custom" operating area
The "Custom" operating area is not activated on delivery.
1. First copy the "slamconfig.ini". file from the directory [System siemens-directory]/cfg into the
directory [System oem-directory]/cfg
or correspondingly into [System addon-directory]/cfg or [System user-directory]/cfg.
2. To activate the "Custom" operating area, the following must be entered:
[Custom]
Visible=True
Result
After activation is complete, the softkey for the "Custom" operating area can be found in the
main menu (F10) on the menu continuation bar on the HSK4 (= default).
The "Custom" operating area displays an empty window covering the entire operating area, with
a configurable header. All horizontal and vertical softkeys can be configured.
SINUMERIK Integrate Run MyScreens
Programming Manual, 10/2020, A5E40869575B AD
281
"Custom" operating area
9.2 How to configure the "Custom" softkey
9.2
How to configure the "Custom" softkey
Configuring the softkey for the "Custom" operating area
The labeling and position of the softkey for the "Custom" operating area are configured in the
"slamconfig.ini" file.
The following options are available for configuring the start softkey:
1. To replace a softkey label with a language-dependent text, the following must be entered
in the [Custom] section:
TextId=MY_TEXT_ID
TextFile=mytextfile
TextContext=mycontext
In this example, the softkey shows the language-dependent text which was saved with the
text ID "MY_TEXT_ID" in text file mytextfile_xxx.qm under "MyContext" (xxx stands for
language code).
2. To replace a softkey label with a language-neutral text, the following must be entered in the
[Custom] section:
TextId=HELLO
TextFile=<empty>
TextContext=<empty>
In this example, the softkey for the "Custom" operating area displays the text "HELLO" for
every language.
3. An icon can also be displayed on the softkey in addition to the text.
To do this, the following must be entered in the [Custom] section:
Picture=mypicture.png
The softkey then displays the icon from the file mypicture.png. Graphics and bitmaps are
stored at the following path: [System oem directory]/ico/ico<resolution>. The directory that
corresponds to the display resolution must be used.
4. The position of the softkey can also be set. The following entry in the [Custom] section
makes this setting:
SoftkeyPosition=12
The default is position 12. This corresponds to the HSK4 on the menu continuation bar of the
operating area's menu. Positions 1 - 8 correspond to HSK1 to HSK8 on the menu bar, positions
9 - 16 to HSK1 to HSK8 on the menu continuation bar.
SINUMERIK Integrate Run MyScreens
282
Programming Manual, 10/2020, A5E40869575B AD
"Custom" operating area
9.3 How to configure the "Custom" operating area
9.3
How to configure the "Custom" operating area
Configuring the softkey for the "Custom" operating area
You need the "easyscreen.ini" and "custom.ini" files to configure the operating area. Templates
for both these files are available in the directory [System siemens-directory]/templates/cfg.
1.
First copy the files to the directory [System oem directory]/cfg and make your changes there.
2.
The "easyscreen.ini" file already contains a definition line for the "Custom" operating area:
;StartFile02 = area := Custom, dialog := SlEsCustomDialog,
startfile := custom.com
The ";" at the start of the line represents the comment character. This means the line is
commented out and, as such, not active. To change this, the ";" must be deleted.
The "startfile" attribute in this line defines that the entry will refer to the "custom.com" project
file when the "Custom" operating area is selected.
3.
You create the project file "custom.com" in the directory [System oem-directory]/proj. This
contains the relevant configuration which is created in the same way as the "aeditor.com"
file of the "Program" operating area. The configured start softkeys are then displayed in the
"Custom" operating area.
4.
You configure the language-neutral text for the title bar of the dialog in the "custom.ini" file.
The following entry is available in the template for this purpose:
[Header]
Text=Custom
You can replace this text with a customized one.
5.
The template contains the following entry for configuring a start screen for the "Custom"
operating area:
[Picture]
Picture=logo.png
Logo.png is the name of the start screen which appears on the "Custom" operating area's
start dialog. Here you can display a company logo, for example, or another image. The file
should be saved in the directory for the corresponding resolution under: [System oem-
directory]/ico/ …
6.
In order to display a specific "Run MyScreens" screen when the "Custom" operating area is
shown the first time, the following entry is available in the template:
; Mask shown with startup of area "custom"
[Startup]
;Startup = Mask:=MyCustomStartupMask, File:=mycustommasks.com
Typically, SINUMERIK Operate is started directly with a specific "Run MyScreens" screen.
The "startuparea" key must be set as follows in the "[miscellaneous]" section of the
"systemconfiguration.ini" file:
[miscellaneous]
;name of the area to be shown at system startup
startuparea = Custom
SINUMERIK Integrate Run MyScreens
Programming Manual, 10/2020, A5E40869575B AD
283
"Custom" operating area
9.4 Programming example for the "Custom" area
9.4
Programming example for the "Custom" area
Example
Figure 9-1
Example with "Start example" softkey
SINUMERIK Integrate Run MyScreens
284
Programming Manual, 10/2020, A5E40869575B AD
"Custom" operating area
9.4 Programming example for the "Custom" area
Figure 9-2
Example with bitmap and text fields
File overview
The following files are required:
• "custom.com"
• "easyscreen.ini"
Programming
Content of file "custom.com":
Note
The graphic file "mcp.png" integrated in the example is also only a sample file. If you wish to use
this programming example in your application, you must replace the graphic by one of your own
graphics.
//S(Start)
HS7=("Start example", se1, ac7)
PRESS(HS7)
LM("Maske4")
SINUMERIK Integrate Run MyScreens
Programming Manual, 10/2020, A5E40869575B AD
285
"Custom" operating area
9.4 Programming example for the "Custom" area
END_PRESS
//END
//M(Maske4/"Example: MCP"/"mcp.png")
DEF byte=(I/0/0/"Input byte=0 (default)","Byte number:",""/wr1,li1///380,40,100/480,40,50)
DEF Feed=(IBB//0/"","Feed override",""/wr1//"EB3"/20,180,100/130,180,100), Axistop=(B//0/"","Feed
stop",""/wr1//"E2.2"/280,180,100/380,180,50/100)
DEF Spin=(IBB//0/"","Spindle override",""/wr1//"EB0"/20,210,100/130,210,100), spinstop=(B//
0/"","Spindle stop",""/wr1//"E2.4"/280,210,100/380,210,50/100)
DEF custom1=(IBB//0/""," User keys 1",""/wr1//"EB7.7"/20,240,100/130,240,100)
DEF custom2=(IBB//0/"","User keys 2",""/wr1//"EB7.5"/20,270,100/130,270,100)
DEF By1
DEF By2
DEF By3
DEF By6
DEF By7
HS1=("Input byte", SE1, AC4)
HS2=("")
HS3=("")
HS4=("")
HS5=("")
HS6=("")
HS7=("")
HS8=("")
VS1=("")
VS2=("")
VS3=("")
VS4=("")
VS5=("")
VS6=("")
VS7=("Cancel", SE1, AC7)
VS8=("OK", SE1, AC7)
PRESS(VS7)
EXIT
END_PRESS
PRESS(VS8)
EXIT
END_PRESS
LOAD
By1=1
By2=2
By3=3
SINUMERIK Integrate Run MyScreens
286
Programming Manual, 10/2020, A5E40869575B AD
"Custom" operating area
9.4 Programming example for the "Custom" area
By6=6
By7=7
END_LOAD
PRESS(HS1)
Byte.wr=2
END_PRESS
CHANGE(Byte)
By1=byte+1
By2=byte+2
By3=byte+3
By6=byte+6
By7=byte+7
Feed.VAR="EB"<<By3
Spin.VAR="EB"<<Byte
Custom1.VAR="EB"<<By6
Custom2.VAR="EB"<<By7
Axisstop.VAR="E"<<By2<<".2"
Spinstop.VAR="E"<<By2<<".4"
Byte.wr=1
END_CHANGE
CHANGE(Axis stop)
IF Axistop==0
Axistop.BC=9
ELSE
Axistop.BC=11
ENDIF
END_CHANGE
CHANGE(Spin stop)
IF Spinstop==0
Spinstop.BC=9
ELSE
Spinstop.BC=11
ENDIF
END_CHANGE
//END
SINUMERIK Integrate Run MyScreens
Programming Manual, 10/2020, A5E40869575B AD
287
"Custom" operating area
9.4 Programming example for the "Custom" area
SINUMERIK Integrate Run MyScreens
288
Programming Manual, 10/2020, A5E40869575B AD
Dialog selection
10
10.1
Dialog selection using PLC softkeys
Configuration
Description of the procedure:
• The "systemconfiguration.ini" contains a section [keyconfiguration]. The entry specifies an
action for a special PLC softkey.
• A number is given as an action. A "Run MyScreens" call is involved if the number is greater
than or equal to 100.
• A section for defining the action to be performed must be created in the "easyscreen.ini" file.
The name of the section is based on the name of the operating area and the dialog name (see
entry under [keyconfiguration] → Area:=..., Dialog:=...) → [<Area>_<Dialog>]
→ e.g. [AreaParameter_SlPaDialog]
• The action numbers (which were given in the "systemconfiguration.ini" → see Action:=...) are
defined in this section. There are two commands involved:
1. LS("Softkey menu1","param.com") ... Loading a softkey menu
2. LM("Screen form1","param.com") ... Loading a screen form
Selecting softkey menus via PLC softkeys
"Run MyScreens" makes it possible to select "Run MyScreens" softkey menus and
"Run MyScreens" dialogs via PLC softkeys. This can only be done if the "action" attribute to be
specified when configuring the relevant PLC softkeys has a value greater than or equal to 100.
PLC softkeys are configured in the file "systemconfiguration.ini" in the section
[keyconfiguration]:
[keyconfiguration]
KEY75.1 = Area:=area, Dialog:=dialog, Screen:=screen, Action:= 100,
SINUMERIK Integrate Run MyScreens
Programming Manual, 10/2020, A5E40869575B AD
289
Dialog selection
10.1 Dialog selection using PLC softkeys
The LM and LS commands to be executed upon activation of the relevant PLC softkeys are
configured in the "easyscreen.ini" file. The names of the sections that are used for the purpose of
configuration are structured as follows:
[areaname_dialogname]
The first part of the name "areaname" refers to the operating area
and the second part "dialogname" designates the dialog to
which the commands configured in this section apply.
The names given in the "systemconfiguration.ini" file for the op-
erating area and dialog should be used. The dialog does not have
to be specified.
This is particularly true for operating areas which are only im-
[AreaParameter_SlPaDialog]
plemented by means of a single dialog. Please refer to the ex-
100.screen1 = LS("Softkey1","param.com")
ample on the left.
101.screen3 = LM("Screen
If "screen1" is displayed in the AreaParameter operating area
form1","param.com")
implemented by the SlPaDialog dialog, the "LS("Softkey1","par-
am.com")" command will be executed when the "action" with
the value 100 occurs.
action.screen=Command
Both the "action" and "screen" attributes clearly indicate when
the specified command will be executed.
The "screen" information is optional.
The following commands are permissible:
LM (LoadMask)
LS (LoadSoftkeys)
10.1.1
Calling Run MyScreens-cycle screens in the program editor
Application
PLC keys provide the possibility to open Run MyScreens cycle screens directly in the program
editor.
Boundary condition
A technology cycle can only be selected when the program editor is open. The technology cycle
parameterized via the screen will be inserted at the current cursor position in the program editor.
SINUMERIK Integrate Run MyScreens
290
Programming Manual, 10/2020, A5E40869575B AD
Dialog selection
10.1 Dialog selection using PLC softkeys
Procedure
1. Create the Run MyScreens cycle call via PLC hard keys (Page 292).
2. In order for the Run MyScreens screen to be properly integrated into the program editor, you
must extend the PLC Key configuration as described in the following example:
Example of a complete key configuration:
systemconfiguration.ini
[keyconfiguration]
KEY101.0 = action:=209, runmyscreenmode:=HandledByDialog
easyscreen.ini
[AreaProgramEdit_SlProgramEdit]
209 = LM("MASK_E_DR_O1_MAIN","e_dr_o1.com")
3. You can check the feedback from the open Run MyScreens cycle screen via the PLC interface
"DB19.DBW24".
Example:
In this example, the value "9876" is written to the PLC interface when the Run MyScreens
screen is opened:
Configuration with PLC-ID=9876:
//M(MASK_E_DR_O1_MAIN/$85305/////XG1,FA2,TA7//"drilling.txt"/9876)
or
//M{ MASK_E_DR_O1_MAIN, HD=$85305, LANGFILELIST=" drilling.txt", PLC_ID=9876}
See also: Function Manual SINUMERIK 840D sl Basic Functions
Status of the program editor on the OA interface
You can query the status of the program editor via the CAP local variable "/Hmi/StepEditorInfo".
Name of variable:
/Hmi/StepEditorInfo
Description of variable:
Information from the editor about the program
that has the focus.
The string contains the following information
[fileName]
Program path definition
[channel]
Channel number
[technology]
Technology
[appearance]
Program identifier (ShopMill/ShopTurn/G code)
[state]
Step editor status:
• EditorClosed: Editor is closed (e.g. HMI not in
program operating area)
• EditEnabled: Editing allowed
• EditDisabled: Editing not allowed (e.g. read on-
ly or invalid cursor position)
SINUMERIK Integrate Run MyScreens
Programming Manual, 10/2020, A5E40869575B AD
291
Dialog selection
10.2 Dialog selection using PLC hard keys
10.2
Dialog selection using PLC hard keys
Application
The following functions can be initiated in the operating software by the PLC:
• Select an operating area
• Select certain scenarios within operating areas
• Execute functions configured at softkeys
Hardkeys
All keys - also the PLC keys - are subsequently referred to as hardkeys. A maximum of 254
hardkeys can be defined. The following allocation applies:
Key number
Use
Key 1 - key 9
Keys on the operator panel front
Key 10 - key 49
Reserved
Key 50 - key 254
PLC keys:
Key 50 - key 81
Reserved for OEMs
Key 255
Pre-assigned by control information.
Hardkeys 1 - 9 are pre-assigned as follows:
Key designation
Action / effect
HK1
MACHINE
Selects "Machine" operating area, last dialog
HK2
PROGRAM
Selects "Program" operating area, last dialog or last program
HK3
OFFSET
Selects "Parameter" operating area, last dialog
HK4
PROGRAM MANAGER
Selects "Program" operating area, "Program Manager" basic screen
HK5
ALARM
Selects "Diagnostics" operating area, "Alarm list" dialog
HK6
CUSTOM
Selects "Custom" operating area
HK7 1)
MENU SELECT
Selects "Main menu"
HK8 1)
MENU FUNCTION
Selects "Function" operating area
HK9 1)
MENU USER
Selects "User" operating area
1) For 828D only
Configuration
The configuring is realized in the "systemconfiguration.ini" configuration file in the section
[keyconfiguration]. Each line defines what is known as a hardkey event. A hardkey event is the
n-th actuation of a specific hardkey. For example, the second and third actuation of a specific
hardkey can result in different responses.
The entries in the "systemconfiguration.ini" configuration file can be overwritten with user-
specific settings. The directories [System user-directory]/cfg and [System oem-directory]/cfg are
available for this purpose.
SINUMERIK Integrate Run MyScreens
292
Programming Manual, 10/2020, A5E40869575B AD
Dialog selection
10.2 Dialog selection using PLC hard keys
The lines for configuring the hardkey events have the following structure:
KEYx.n = area:=area, dialog:=dialog, screen:=screen, forms:=form,
menus:=menu,
action:=menu.action, cmdline:=cmdline
KEYx.n = area:=area, dialog:=dialog, cmdline:=cmdline, action:=
action
x: Number of the hardkey, range of values: 1 - 254
n: Event number - corresponds to the nth actuation of the hardkey, range of values: 0 - 9
Requirement
The PLC user program must fulfill the following requirement:
Only one hardkey is processed. As a consequence, a new request can only be set if the operating
software has acknowledged the previous request. If the PLC user program derives the hardkey
from an MCP key, it must provide sufficient buffer storage of the key(s) to ensure that no fast
keystrokes are lost.
PLC interface
An area to select a hardkey is provided in the PLC interface. The area is in DB19.DBB10. Here, the
PLC can directly specify a key value of between 50 and 254.
Acknowledgment by the operating software takes place in two steps. This procedure is
necessary so that the operating software can correctly identify two separate events if the same
key code is entered twice consecutively. In the first step, control information 255 is written to
byte DB19.DBB10. This defined virtual key stroke enables the HMI to identify every PLC key
sequence uniquely. The control information is of no significance to the PLC user program and
must not be changed. In the second step, the actual acknowledgment takes place with respect
to the PLC by clearing DB19.DBB10. From this point in time, the PLC user program can specify a
new hardkey. In parallel, the actual hardkey request is processed in the operating software.
Example
Configuration file:
; PLC hardkeys (KEY50-KEY254)
[keyconfiguration]
KEY50.0 = name := AreaMachine, dialog := SlMachine
KEY51.0 = name := AreaParameter, dialog := SlParameter
KEY52.0 = name := AreaProgramEdit, dialog := SlProgramEdit
KEY53.0 = name := AreaProgramManager, dialog := SlPmDialog
KEY54.0 = name := AreaDiagnosis, dialog := SlDgDialog
KEY55.0 = name := AreaStartup, dialog := SlSuDialog
KEY56.0 = name := Custom, dialog := SlEsCustomDialog
SINUMERIK Integrate Run MyScreens
Programming Manual, 10/2020, A5E40869575B AD
293
Dialog selection
10.2 Dialog selection using PLC hard keys
The area and dialog identifiers can be found in the "systemconfiguration.ini" from [system
siemens-directory]/cfg.
SINUMERIK Integrate Run MyScreens
294
Programming Manual, 10/2020, A5E40869575B AD
Dialog selection
10.3 Dialog selection via NC
10.3
Dialog selection via NC
MMC command in HMI Operate
You can use MMC commands as described in the following:
1. Definition of MMC commands
The following combinations are available in the standard "systemconfiguration.ini" file:
address:=MCYCLES --> command:=LM
address:=CYCLES --> command:=PICTURE_ON
This distinction is necessary, in order to make a differentiation between measuring cycles and
other cycles. This means that:
- LM is always applicable for measuring cycles, PICTURE_ON always for non-measuring
cycles
- It is not permissible that newly defined MMC commands are designated PICTURE_ON and
LM
2. "Run MyScreens" license
All of the dialogs opened by "Run MyScreen" - with the exception of the measuring cycles -
fall under the "Run MyScreens" license, and therefore without license, only a limited number
of dialogs can be used.
Example call with "test.com" (Run MyScreens):
g0 f50
MMC("CYCLES,PICTURE_ON,test.com,screen form1","A")
m0
MMC("CYCLES,PICTURE_OFF","N")
M30
SINUMERIK Integrate Run MyScreens
Programming Manual, 10/2020, A5E40869575B AD
295
Dialog selection
10.3 Dialog selection via NC
SINUMERIK Integrate Run MyScreens
296
Programming Manual, 10/2020, A5E40869575B AD
Examples for cycle masks
11
11.1
Examples for cycle masks
When installing SINUMERIK Operate, examples for cycle masks created with Run MyScreens are
also saved to the system.
The Run MyScreens examples are available under the following archive paths:
[System siemens-directory]
...\siemens\sinumerik\hmi\template\easyscreen\
standard\
Help screens, PNG
x3d\
Help screens / animations
Milling\
Fräsbearbeitung
Turning\
Drehbearbeitung
deu\
German description
eng\
English description
Examples in the commissioning operating area can be found on the HMI user interface:
Horizontal softkey system data → HMI data → Templates → Examples → Easy Screen → … (see
above).
Brief description of the examples
• Milling
- Drilling example: This is where a position can be added
- Measure workpiece example: This is where a cycle call can be generated and processed
via NC start while the dialog is open
- Workpiece counter example: This shows how GUDs should be handled
• Turning
- Fixtures: this contains a tailstock, bar loader, part catcher
- Measure workpiece example: This is where a cycle call can be generated and processed
via NC start while the dialog is open
- Drilling example: This is where a position can be added
SINUMERIK Integrate Run MyScreens
Programming Manual, 10/2020, A5E40869575B AD
297
Examples for cycle masks
11.1 Examples for cycle masks
SINUMERIK Integrate Run MyScreens
298
Programming Manual, 10/2020, A5E40869575B AD
Configuration in the side screen
12
The following options are available to you for displaying Run MyScreens configurations in the
side screen:
1. Display of a Run MyScreens configuration in a (separate) side screen page:
The Run MyScreens configuration takes up all of the space of the side screen page.
2. Display of several Run MyScreens configurations in a (separate) side screen page:
The individual Run MyScreens configurations are displayed above each other within the side
screen page, in so-called side screen elements. The side screen elements, and thus also the
Run MyScreens configurations, can be scrolled vertically.
3. Adding one or more Run MyScreens configurations to an existing side screen page:
I.e. the Run MyScreens configuration is added to a side screen page contained in the SIEMENS
delivery kit. This case matches point 2 with the exception of the affected side screen page.
4. Adding one or more Run MyScreens configurations to a side screen element:
The individual Run MyScreens configurations are displayed next to each other in so-called
side screen widgets and can be scrolled horizontally.
SINUMERIK Integrate Run MyScreens
Programming Manual, 10/2020, A5E40869575B AD
299
Configuration in the side screen
12.1 Display of a Run MyScreens configuration in a side screen page
12.1
Display of a Run MyScreens configuration in a side screen page
To display a Run MyScreens configuration in a (separate) side screen page, you must add a new
side screen page to the existing side screen configuration ("slsidescreen.ini"). The Run
MyScreens configuration is then displayed or executed in this side screen page.
Figure 12-1
Display of a Run MyScreens configuration in a side screen page
Procedure
Expand the file "slsidescreen.ini" by the following entry:
[Sidescreen]
PAGE100= name:=RMSPage,
implementation:=sleseasyscreen.SlEsSideScreenPage
SINUMERIK Integrate Run MyScreens
300
Programming Manual, 10/2020, A5E40869575B AD
Configuration in the side screen
12.1 Display of a Run MyScreens configuration in a side screen page
• The number of the page, "100" in this case, must be counted up corresponding to existing
side screen pages. The number of the page must be ≥ 100. This avoids conflicts with the
SIEMENS pages.
• You can freely select the name of the page, "RMSPage" in this case.
• You cannot change the specification for implementing the page,
"sleseasyscreen.SlEsSideScreenPage" in this case.
Configure the Run MyScreens configuration that is to be carried out in the next step. To do this,
create a new section with a name that contains the name of the newly created page:
[Page_RMSPage]
Icon=rmspage.png
PROPERTY001= name:=maskPath, type:=QString,
value:="sidescreenmask.com"
PROPERTY002= name:=maskName, type:=QString, value:="Mask"
PROPERTY003= name:=focusable, type:=bool, value:="true"
• The name of the section is formed by appending the name of the page to the prefix "Page_",
in this case "RMSPage".
• Under Icon, specify the file name, "rmspage.png" in this case. The file contains the icon for the
button for selecting the page. Store the file in the directory /user/sinumerik/hmi/ico/ico640
or /oem/sinumerik/hmi/ico/ico640.
• In the property maskPath, specify the name of the file that contains the RunMyScreens
configuration, "sidescreenmask.com" in this case.
• In the property maskName, specify the name of the RunMyScreens mask that is to be
displayed, "sidescreenmask.com" in this case.
• Specify the input focus in the Property focusable. The page can be assigned the input focus
only if this attribute has the value "true". This attribute is required for pages with input
elements.
Store the "slsidescreen.ini" in the directory /oem/sinumerik/hmi/cfg or /user/sinumerik/hmi/cfg.
The Run MyScreens configuration is available after the next HMI power-up.
Example
Example for a complete configuration in "slsidescreen.ini":
[Sidescreen]
PAGE005= name:=RMSPage,
implementation:=sleseasyscreen.SlEsSideScreenPage
[Page_RMSPage]
PROPERTY001= name:=maskPath, type:=QString,
value:="sidescreenmask.com"
PROPERTY002= name:=maskName, type:=QString, value:="Mask"
SINUMERIK Integrate Run MyScreens
Programming Manual, 10/2020, A5E40869575B AD
301
Configuration in the side screen
12.2 Display of several Run MyScreens configurations in a side screen page
12.2
Display of several Run MyScreens configurations in a side screen
page
For the display of several Run MyScreens configurations in a (separate) side screen page, you
must also configure so-called side screen elements, in addition to the side screen page. The side
screen elements are used to display the Run MyScreens configurations.
Figure 12-2
Display of several Run MyScreens configurations in a side screen page
Procedure
Expand the "slsidescreen.ini" by the following entries:
[Sidescreen]
PAGE100= name:=RMSPage, implementation:=SlSideScreenPage
SINUMERIK Integrate Run MyScreens
302
Programming Manual, 10/2020, A5E40869575B AD
Configuration in the side screen
12.2 Display of several Run MyScreens configurations in a side screen page
• The number of the page, "100" in this case, must be counted up corresponding to existing
side screen pages. The number of the page must be ≥ 100. This avoids conflicts with the
SIEMENS pages.
• You can freely select the name of the page, "RMSPage" in this case.
• You cannot change the specification for implementing the page, "SlSideScreenPage" in this
case.
[Page_RMSPage]
ELEMENT001= name:=RMSElement001,
implementation:=sleseasyscreen.SlEsSideScreenElement
ELEMENT002= name:=RMSElement002,
implementation:=sleseasyscreen.SlEsSideScreenElement
• Two side screen elements are assigned to the page - RMSElement001 and RMSElement002.
You can freely select the names of the elements.
• You cannot change the specification for implementing the elements,
"sleseasyscreen.SlEsSideScreenElement" in this case.
Finally, you must assign Run MyScreens configurations that are still to be displayed in these
elements to the side screen elements:
[Element_RMSElement001]
PROPERTY001= name:=maskPath, type:=QString,
value:="sidescreenmask.com"
PROPERTY002= name:=maskName, type:=QString, value:="Mask001"
…
[Element_RMSElement002]
PROPERTY001= name:=maskPath, type:=QString,
value:="sidescreenmask.com"
PROPERTY002= name:=maskName, type:=QString, value:="Mask002"
Store the "slsidescreen.ini" in the directory /oem/sinumerik/hmi/cfg or /user/sinumerik/hmi/cfg.
The Run MyScreens configuration is available after the next HMI power-up.
SINUMERIK Integrate Run MyScreens
Programming Manual, 10/2020, A5E40869575B AD
303
Configuration in the side screen
12.3 Adding Run MyScreens configurations to a side screen page
12.3
Adding Run MyScreens configurations to a side screen page
The procedure for integrating one or several Run MyScreens configurations for an existing side
screen page is identical to the procedure described in Chapter Display of several Run MyScreens
configurations in a side screen page (Page 302). The only difference is that the side screen
elements for displaying the Run MyScreens configurations are added to an existing side screen
page.
Figure 12-3
Adding Run MyScreens configurations to a side screen page
Note
Of the side screen pages contained in the SIEMENS delivery kit, you can only expand the
WidgetsPage (see file "slsidescreen.ini") with Run MyScreens configurations.
SINUMERIK Integrate Run MyScreens
304
Programming Manual, 10/2020, A5E40869575B AD
Configuration in the side screen
12.3 Adding Run MyScreens configurations to a side screen page
Procedure
Expand the "slsidescreen.ini" by the following entries:
In the [Page_WidgetsPage] section, add a corresponding element for receiving the Run
MyScreens configuration.
[Page_WidgetsPage]
ELEMENT100= name:=RMSElement,
implementation:=sleseasyscreen.SlEsSideScreenElement
• Use a number range ≥ 100 for new elements. This avoids conflicts with the SIEMENS display
elements. The RMSElement is inserted in the WidgetsPage under the SIEMENS elements
according to this numbering.
[Element_RMSElement]
PROPERTY001= name:=maskPath, type:=QString,
value:="sidescreenmask.com"
PROPERTY002= name:=maskName, type:=QString, value:="Mask001"
SINUMERIK Integrate Run MyScreens
Programming Manual, 10/2020, A5E40869575B AD
305
Configuration in the side screen
12.4 Adding Run MyScreens configurations to a side screen element
12.4
Adding Run MyScreens configurations to a side screen element
The basis of the procedure that is described in the following as example is a side screen page with
a side screen element. Two Run MyScreens configurations are displayed next to each other in the
side screen element.
Configure a side screen page with a side screen element as described in the following. Assign
two side screen widgets with the respective Run MyScreens configurations to the side screen
element.
Procedure
Expand the "slsidescreen.ini" by the following entries:
[Sidescreen]
PAGE100= name:=RMSPage, implementation:=SlSideScreenPage
• You cannot change the specification for the implementation, "SlSideScreenPage" in this case.
[Page_RMSPage]
ELEMENT001= name:=RMSElement, implementation:= SlSideScreenElement
• You cannot change the specification for the implementation, "SlSideScreenElement" in this
case.
[Element_RMSElement]
TextId=RMS_ELEMENT_TITLE
TextFile=rmstexts
TextContext=rmstexts
TextContext=rmstexts
WIDGET001= name:=RMSWidget001,
implementation:=sleseasyscreen.SlEsSideScreenWidget
WIDGET002= name:=RMSWidget002,
implementation:=sleseasyscreen.SlEsSideScreenWidget
SINUMERIK Integrate Run MyScreens
306
Programming Manual, 10/2020, A5E40869575B AD
Configuration in the side screen
12.4 Adding Run MyScreens configurations to a side screen element
•
When the SlSideScreenElement implementation is used for the side screen element (see
Section [Page_RMSPage]), the side screen element has a title bar in which a text can be
displayed.
This text is configured with the entries TextId, TextFile and TextContext:
- TextId: Text ID of the text to be displayed
- TextFile: File in which the text is saved
- TextContext: Text context, in which the text is located within this file
A separate file must be provided for each language.
The name of these files is formed according to the following diagram:
<TextFile>_<Sprachsuffix>.ts, e.g. rmstexts_deu.ts for the example above.
If you do not specify a file or a context (TextFile=<empty> and TextContext=<empty>), the
text ID is displayed as text. You can specify any string as the text ID.
The text file (e.g. rmstexts_deu.ts) is structured as follows:
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE TS>
<TS>
<context>
<name>rmstexts</name>
<message>
<source>My application</source>
<translation>My Application</translation>
</message>
</context>
</TS>
Store the file in the directory /oem/sinumerik/hmi/lng or /user/sinumerik/hmi/lng. During the
next HMI power-up, the file is converted to the file format that is needed during runtime.
•
You can freely select the names of the widgets assigned to the element, "RMSWidget001" and
"RMSWidget002" in this case.
•
You must not change the widget implementation "sleseasysscreen.SlEsSideScreenWidget".
[Widget_RMSWidget001]
PROPERTY001= name:=maskPath, type:=QString, value:="mymask001.com"
PROPERTY002= name:=maskName, type:=QString, value:="MyMask001"
[Widget_RMSWidget002]
PROPERTY001= name:=maskPath, type:=QString, value:="mymask002.com"
PROPERTY002= name:=maskName, type:=QString, value:="MyMask002"
• The names of the sections are formed for configuring the side screen widgets by appending
the name of the widget that is to be configured in this section to the prefix "Widget_".
• In the Property maskPath, specify the name of the file that contains the RunMyScreens
configuration, "mymask001.com" or "mymask002.com" in this case.
• In the Property maskName, specify the name of the RunMyScreens mask that is to be
displayed, "MyMask001" or "MyMask002" in this case.
SINUMERIK Integrate Run MyScreens
Programming Manual, 10/2020, A5E40869575B AD
307
Configuration in the side screen
12.5 Notes on carrying out Run MyScreens configurations in the side screen
12.5
Notes on carrying out Run MyScreens configurations in the side
screen
Note the following:
• The functions LS, LM, DLGL, EXIT, EXITLS are not available when carrying out Run MyScreens
configurations in the side screen.
• It is not possible to query the mask size in the LOAD block.
• Texts are always displayed using the font that is used in SINUMERIK Operate with a screen
resolution of 640x480 pixels.
• The configured positions of operator controls are implemented without changes (e.g.
extension).
• The dialog size is adapted automatically.
• If Run MyScreens configurations are carried out in a side screen page, the entire area of the
page is available for the configuration. When carrying out in side screen elements or widgets,
the area available for display is specified by the system depending on the context.
• The header and softkeys cannot be configured.
• All of the debugging and error outputs are sequentially written to the text file
"easyscreen_log.txt". There is no specific identification indicating which configuration a
message comes from.
• The status of a Run MyScreens configuration displayed in the side screen is rejected when the
configuration is faded out.
Note
The integration of Run MyScreens configurations into the side screen can lead to more than one
Run MyScreens configuration being carried out simultaneously. To maintain the functional
capability of the overall system, take note of the additional system load caused as a result of the
hardware used.
SINUMERIK Integrate Run MyScreens
308
Programming Manual, 10/2020, A5E40869575B AD
Configuration in the Display Manager
13
13.1
Displaying Run MyScreens configurations in the Display Manager
The SISideScreenDialog dialog is available to you for displaying Run MyScreens configurations in
the Display Manager. Depending on the space available, this dialog can display one or more side
screen pages (see IM9 Chapter 3.13). Several pages are displayed next to each other in column
format. The available space (width) is evenly divided among the individual columns. The
number of pages to be displayed and their content are configured. Each page has its own
configuration file. The names of these configuration files are specified during the dialog
configuration in the "systemconfiguration.ini" file, in the command line parameter "cmdline".
Behind the parameter identifier "-sidescreen1" is the name of the configuration file for the first
column; behind the parameter identifier "-sidescreen2" is the name of the configuration file for
the second column, etc.
Example
[dialogs]
DLG500= name:=RMSApp,
implementation:=sldmsidescreenapp.SlSideScreenDialog,
process:=SlHmiHost1, preload:=false, cmdline:=“-sidescreen1
rmspage1.ini -sidescreen2 rmspage2.ini -spacing 3”
The instance of the SlSideScreenDialog dialog created in this example has the name RMSApp. It
has 2 pages/columns. The two pages/columns are configured in the files "rmspage1.ini" and
"rmspage2.ini". Between the two columns, there is a distance of 3 pixels.
Note
You can freely select the names of the files with the page configurations, "rmspage1.ini" and
"rmspage2.ini" in this case.
The use of Run MyScreens configurations in the Display Manager is done as described in Chapter
Configuration in the side screen (Page 299). The only difference is that the integration of the
configurations is not done in the file "slsidescreen.ini", but in the respective files provided for the
configuration of the existing pages.
2 variants are available to you for the integration of Run MyScreens configurations into the
Display Manager of SINUMERIK Operate. These are described in the following sections.
SINUMERIK Integrate Run MyScreens
Programming Manual, 10/2020, A5E40869575B AD
309
Configuration in the Display Manager
13.2 Integration in SISideScreenDialog
13.2
Integration in SISideScreenDialog
For the integration of the Run MyScreens configuration, you must create the dialog instance of
SlSideScreenDialog in the file "systemconfiguration.ini" and create the file for integrating the Run
MyScreens configuration.
The following example shows the integration of a Run MyScreens configuration. The Run
MyScreens configuration takes up the entire window of the SlSideScreenDialog dialog, i.e. only
one page/column exists.
Procedure
First, create an instance of the SlSideScreenDialog in the "systemconfiguration.ini" file in
the [dialogs] section. The instance is given the name "RMSApp".
[dialogs]
DLG500= name:=RMSApp,
implementation:=sldmsidescreenapp.SlSideScreenDialog,
process:=SlHmiHost1, preload:=false,
cmdline:=“-sidescreen1 rmsapp.ini”
In the next step, you will configure or integrate the RunMyScreens configuration in the
"rmsapp.ini" file:
[Sidescreen]
PAGE001= name:=RMSPage, implementation:=SlSideScreenPage
• Create a page with the name "RMSPage".
[Page_RMSPage]
ELEMENT001= name:=RMSElement,
implementation:=sleseasyscreen.SlEsSideScreenElement
• You create an element with the name RMSElement on the RMSPage. This element is used for
displaying the Run MyScreens configuration.
[Element_RMSElement]
PROPERTY001= name:=maskPath, type:=QString,
value:="sidescreenmask.com"
PROPERTY002= name:=maskName, type:=QString, value:="Mask"
• In the property maskPath, specify the name of the file that contains the RunMyScreens
configuration, "sidescreenmask.com" in this case.
• In the property maskName, specify the name of the RunMyScreens mask that is to be
displayed, "sidescreenmask.com" in this case.
Store the files "rmsapp.ini" and "systemconfiguration.ini" (see above) in the directory /oem/
sinumerik/hmi/cfg or /user/sinumerik/hmi/cfg.
The Run MyScreens configuration is available after the next HMI power-up.
SINUMERIK Integrate Run MyScreens
310
Programming Manual, 10/2020, A5E40869575B AD
Configuration in the Display Manager
13.3 Integration into SIWidgetsApp
13.3
Integration into SIWidgetsApp
The integration of a Run MyScreens configuration into the SlWidgetsApp application, which is
part of the SIEMENS delivery kit, is described in the following.
Depending on which page/column of the SlWidgetsApp application the Run MyScreens
configuration is to be integrated into, you must expand either the "sldmwidgets1.ini" file or the
"sldmwidgets2.ini" file accordingly.
The following example shows the integration of a Run MyScreens configuration into the left
page/column of the SlWidgetsApp application.
Procedure
Expand the "sldmwidgets1.ini" file as follows:
[Sidescreen]
PAGE001= name:=WidgetsPage, implementation:=SlSideScreenPage
[Page_WidgetsPage]
ELEMENT100= name:=RMSElement,
implementation:=sleseasyscreen.SlEsSideScreenElement
• Create an element with the name "RMSElement" for displaying the Run MyScreens
configuration.
Note
Use a number range ≥ 100 for new elements. This avoids conflicts with the SIEMENS display
elements. The RMSElement is inserted in the WidgetsPage under the SIEMENS elements
according to this numbering.
[Element_RMSElement]
PROPERTY001= name:=maskPath, type:=QString,
value:="sidescreenmask.com"
PROPERTY002= name:=maskName, type:=QString, value:="Mask"
• In the property maskPath, specify the name of the file that contains the RunMyScreens
configuration, "sidescreenmask.com" in this case.
• In the Property maskName, specify the name of the RunMyScreens mask that is to be
displayed, "Mask" in this case.
Save the file "sldmwidgets1.ini" in the directory /oem/sinumerik/hmi/cfg or /user/sinumerik/hmi/
cfg .
The Run MyScreens configuration is available after the next HMI power-up.
SINUMERIK Integrate Run MyScreens
Programming Manual, 10/2020, A5E40869575B AD
311
Configuration in the Display Manager
13.4 Notes on carrying out Run MyScreens configurations in the Display Manager
13.4
Notes on carrying out Run MyScreens configurations in the Display
Manager
Note the following:
• The functions LS, LM, DLGL, EXIT, EXITLS are not available when carrying out Run MyScreens
configurations in the Display Manager.
• It is not possible to query the mask size in the LOAD block.
• Texts are always displayed using the font that is used in SINUMERIK Operate with a screen
resolution of 640x480 pixels.
• The configured positions of operator controls are implemented without changes (e.g.
extension).
• If Run MyScreens configurations are carried out in a side screen page, the entire area of the
page is available for the configuration. When carrying out in side screen elements or widgets,
the area available for display is specified by the system depending on the context.
• All of the debugging and error outputs are sequentially written to the text file
easyscreen_log.txt. There is no specific identification indicating which configuration a
message comes from.
• The status of a Run MyScreens configuration displayed in the Display Manager is rejected
when the configuration is faded out.
Note
The integration of Run MyScreens configurations into the Display Manager can lead to more than
one Run MyScreens configuration being carried out simultaneously. To maintain the functional
capability of the overall system, take note of the additional system load caused as a result of the
hardware used.
SINUMERIK Integrate Run MyScreens
312
Programming Manual, 10/2020, A5E40869575B AD
Reference lists
A
A.1
Lists of start softkeys
A.1.1
List of start softkeys for turning
Program operating area for turning
HSK1
HSK2
HSK3
HSK4
HSK5
HSK6
HSK7
HSK8
Edit
Drilling
Turning
Contour
Milling
Miscellane-
Simulation
NC select
turning
ous
HSK9
HSK10
HSK11
HSK12
HSK13
HSK14
HSK15
HSK16
--
Straight-line
--
--
Measure
Measure tool
OEM
--
circle
workpiece
(only for
ShopTurn)
Turning
The following tables list the possible start softkeys for turning technology. Assignments of
individual start softkeys can differ depending on the particular system. The specified OEM
softkeys are permitted for "Run MyScreens".
programGUIDE (G-Code) start softkeys:
Drilling
Turning
Contour turning
Milling
Miscellaneous
HSK2
HSK3
HSK4
HSK5
HSK6
VSK1
Centering
Stock removal
Contour
--
Face mill-
Contour
Settings
High
ing
speed set-
tings
VSK2
Drilling ream-
Groove
Stock removal
--
Pocket
Path
Swivel plane
Parallel
ing
axes
VSK3
Deep-hole drill-
Undercut
Stock removal
--
Multi-edge
Predrilling
Swivel tool
--
ing
residual mate-
spigot
rial
VSK4
Boring
Thread
Grooving
--
Groove
Pocket
--
--
VSK5
Thread
Parting
Grooving re-
--
Thread
Pocket res.
--
--
sidual material
milling
mat.
VSK6
OEM
--
Plunge-turn-
--
Engraving
Spigot
Subprogram
--
ing
SINUMERIK Integrate Run MyScreens
Programming Manual, 10/2020, A5E40869575B AD
313
Reference lists
A.1 Lists of start softkeys
VSK7
Positions
OEM
Plunge turn-
OEM
OEM
Spigot res.
--
OEM
ing residual
mat.
material
VSK8
Repeat posi-
--
>>
<<
Contour
<<
>>
<<
tion.
milling
ShopTurn start softkeys:
Drilling
Turning
Contour turning
Milling
Miscellaneous
HSK2
HSK3
HSK4
HSK5
HSK6
HSK10
VSK1
Drilling
Stock re-
New contour
--
Face milling
New con-
Settings
High
Tool
centered
moval
tour
speed set-
tings
VSK2
Centering
Groove
Stock removal
--
Pocket
Path
Swivel
Parallel ax-
Straight line
plane
es
VSK3
Drilling
Undercut
Stock removal
--
Multi-edge
Predrilling
Swivel tool
Repeat
Circle center
reaming
residual mate-
spigot
progr.
point
rial
VSK4
Deep-hole
Thread
Grooving
--
Groove
Pocket
Counter-
--
Circle radius
drilling
spindle
VSK5
Thread
Parting
Grooving re-
--
Thread mill-
Pocket res.
Transforma-
--
Polar
sidual materi-
ing
mat.
tions
al
VSK6
OEM
--
Plunge-turn-
--
Engraving
Spigot
Subpro-
--
Approach/
ing
gram
retract
VSK7
Positions
OEM
Plunge turn-
OEM
OEM
Spigot res.
--
OEM
--
ing residual
mat.
material
VSK8
Repeat po-
--
>>
<<
Contour
<<
>>
<<
--
sition.
milling
A.1.2
List of start softkeys for milling
Program operating area when milling
HSK1
HSK2
HSK3
HSK4
HSK5
HSK6
HSK7
HSK8
Edit
Drilling
Milling
Contour mill-
Turning
Miscellane-
Simulation
NC select
ing
(only for G
ous
code)
HSK9
HSK10
HSK11
HSK12
HSK13
HSK14
HSK15
HSK16
--
Straight-line
--
--
Measure
Measure tool
OEM
--
circle
workpiece
(only for
ShopMill)
SINUMERIK Integrate Run MyScreens
314
Programming Manual, 10/2020, A5E40869575B AD
Reference lists
A.1 Lists of start softkeys
Milling
The following tables list the possible start softkeys for milling technology. Assignments of
individual start softkeys can differ depending on the particular system. The specified OEM
softkeys are permitted for "Run MyScreens".
programGUIDE (G-Code) start softkeys:
Drilling
Milling
Contour milling
Turning
Miscellaneous
HSK2
HSK3
HSK4
HSK5
HSK6
VSK1
Centering
Face milling
Contour
--
Stock re-
Contour
Settings
--
moval
VSK2
Drilling ream-
Pocket
Path
--
Groove
Stock re-
Swivel plane
Parallel
ing
moval
axes
VSK3
Deep-hole drill-
Multi-edge
Predrilling
--
Undercut
Stock re-
Swivel tool
--
ing
spigot
moval re-
sidual ma-
terial
VSK4
Boring
Groove
Pocket
--
Thread
Grooving
High speed set-
--
tings
VSK5
Thread
Thread mill-
Pocket res.
--
Parting
Grooving
--
--
ing
mat.
residual
material
VSK6
OEM
Engraving
Spigot
--
--
Plunge-
Subprogram
--
turning
VSK7
Positions
OEM
Spigot res.
OEM
OEM
Plunge
--
OEM
mat.
turning re-
sidual ma-
terial
VSK8
Repeat posi-
--
>>
<<
Contour
<<
>>
<<
tion.
turning
ShopMill start softkeys:
Drilling
Milling
Contour milling
Miscellaneous
Straight line cir-
cle
HSK2
HSK3
HSK4
HSK6
HSK10
VSK1
Centering
Face milling
New contour
--
Settings
--
Tool
VSK2
Drilling ream-
Pocket
Path
--
Swivel plane
Parallel axes
Straight line
ing
VSK3
Deep-hole
Multi-edge
Predrilling
--
Swivel tool
Repeat progr.
Circle center point
drilling
spigot
VSK4
Boring
Groove
Pocket
--
High speed set-
--
Circle radius
tings
VSK5
Thread
Thread mill-
Pocket res. mat.
--
Transforma-
--
Helix
ing
tions
VSK6
OEM
Engraving
Spigot
--
Subprogram
--
Polar
VSK7
Positions
OEM
Spigot res. mat.
OEM
--
OEM
--
VSK8
Repeat posi-
--
>>
<<
>>
<<
--
tion.
SINUMERIK Integrate Run MyScreens
Programming Manual, 10/2020, A5E40869575B AD
315
Reference lists
A.2 List of predefined softkeys
A.2
List of predefined softkeys
Table A-1
Predefined softkeys
Name
Softkey
SOFTKEY_OK
SOFTKEY_CANCEL
SOFTKEY_APPLY
SOFTKEY_MORE
SOFTKEY_BACK
SOFTKEY_ASSISTANT_NEXT
SOFTKEY_ASSISTANT_PREVIOUS
SOFTKEY_NAV_BACK
SINUMERIK Integrate Run MyScreens
316
Programming Manual, 10/2020, A5E40869575B AD
Reference lists
A.3 List of access levels
A.3
List of access levels
The meanings of the different access levels are as follows:
Protection level
Locked by
Area
ac0
Reserved for Siemens
ac1
Password
Machine manufacturer
ac2
Password
Service
ac3
Password
User
ac4
Keyswitch position 3
Programmer, machine setter
ac5
Keyswitch position 2
Qualified operator
ac6
Keyswitch position 1
Trained operator
ac7
Keyswitch position 0
Semi-skilled operator
SINUMERIK Integrate Run MyScreens
Programming Manual, 10/2020, A5E40869575B AD
317
Reference lists
A.4 List of colors
A.4
List of colors
System colors
A uniform color table is available for configuring dialogs (subset of the respective standard
colors). The color of an element (text, input field, backg37round, etc.) can be selected from the
following options (between 0 and 133).
As an alternative to the predefined colors, you can also specify colors as RGB values ("#RRGGBB").
Index
Pictogram
Color
Color description
1
Black
2
Orange
3
Dark green
4
Light gray
5
Dark gray
6
Blue
7
Red
8
Brown
9
Yellow
10
White
126
Black
Font color of an input/output field that is currently in
focus
127
Light orange
Background color of an input/output field that is cur-
rently in focus
128
Orange
System color focus
129
Light gray
Background color
130
Blue
Header color (active)
131
Black
Header font color (active)
132
Turquoise
Background color of a toggle field
133
Light blue
Background color of a list box
SINUMERIK Integrate Run MyScreens
318
Programming Manual, 10/2020, A5E40869575B AD
Reference lists
A.5 List of language codes used in file names
A.5
List of language codes used in file names
Supported languages
Standard languages:
Language
Abbreviation in file name
Chinese simplified
chs
German
deu
English
eng
French
fra
Italian
ita
Spanish
esp
Other languages:
Language
Abbreviation in file name
Chinese traditional
cht
Danish
dan
Finnish
fin
Indonesian
ind
Japanese
jpn
Korean
kor
Malay
msl
Dutch
nld
Polish
plk
Portuguese (Brazil)
ptb
Romanian
rom
Russian
rus
Swedish
sve
Slovakian
sky
Slovenian
slv
Thai
tha
Czech
csy
Turkish
trk
Hungarian
hun
Vietnamese
vit
SINUMERIK Integrate Run MyScreens
Programming Manual, 10/2020, A5E40869575B AD
319
|