Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
P
proview
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Esteban Blanc
proview
Commits
5c2ccbaa
Commit
5c2ccbaa
authored
Sep 27, 2019
by
Marcus Nordenberg
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
rt_xtt: Operator window popup placement + show all available function buttons by default
parent
be9d0585
Changes
3
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
745 additions
and
611 deletions
+745
-611
src/wbl/pwrb/src/pwrb_c_opplace.wb_load
src/wbl/pwrb/src/pwrb_c_opplace.wb_load
+47
-35
xtt/lib/xtt/gtk/xtt_op_gtk.cpp
xtt/lib/xtt/gtk/xtt_op_gtk.cpp
+697
-576
xtt/lib/xtt/gtk/xtt_op_gtk.h
xtt/lib/xtt/gtk/xtt_op_gtk.h
+1
-0
No files found.
src/wbl/pwrb/src/pwrb_c_opplace.wb_load
View file @
5c2ccbaa
!
!
! ProviewR Open Source Process Control.
! ProviewR Open Source Process Control.
! Copyright (C) 2005-2019 SSAB EMEA AB.
! Copyright (C) 2005-2019 SSAB EMEA AB.
!
!
! This file is part of ProviewR.
! This file is part of ProviewR.
!
!
! This program is free software; you can redistribute it and/or
! This program is free software; you can redistribute it and/or
! modify it under the terms of the GNU General Public License as
! modify it under the terms of the GNU General Public License as
! published by the Free Software Foundation, either version 2 of
! published by the Free Software Foundation, either version 2 of
! the License, or (at your option) any later version.
! the License, or (at your option) any later version.
!
!
! This program is distributed in the hope that it will be useful
! This program is distributed in the hope that it will be useful
! but WITHOUT ANY WARRANTY; without even the implied warranty of
! but WITHOUT ANY WARRANTY; without even the implied warranty of
! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
! GNU General Public License for more details.
! GNU General Public License for more details.
!
!
! You should have received a copy of the GNU General Public License
! You should have received a copy of the GNU General Public License
! along with ProviewR. If not, see <http://www.gnu.org/licenses/>
! along with ProviewR. If not, see <http://www.gnu.org/licenses/>
!
!
! Linking ProviewR statically or dynamically with other modules is
! Linking ProviewR statically or dynamically with other modules is
! making a combined work based on ProviewR. Thus, the terms and
! making a combined work based on ProviewR. Thus, the terms and
! conditions of the GNU General Public License cover the whole
! conditions of the GNU General Public License cover the whole
! combination.
! combination.
!
!
! In addition, as a special exception, the copyright holders of
! In addition, as a special exception, the copyright holders of
! ProviewR give you permission to, from the build function in the
! ProviewR give you permission to, from the build function in the
! ProviewR Configurator, combine ProviewR with modules generated by the
! ProviewR Configurator, combine ProviewR with modules generated by the
! ProviewR PLC Editor to a PLC program, regardless of the license
! ProviewR PLC Editor to a PLC program, regardless of the license
! terms of these modules. You may copy and distribute the resulting
! terms of these modules. You may copy and distribute the resulting
! combined work under the terms of your choice, provided that every
! combined work under the terms of your choice, provided that every
! copy of the combined work is accompanied by a complete copy of
! copy of the combined work is accompanied by a complete copy of
! the source code of ProviewR (the version used to produce the
! the source code of ProviewR (the version used to produce the
! combined work), being distributed under the terms of the GNU
! combined work), being distributed under the terms of the GNU
! General Public License plus this exception.
! General Public License plus this exception.
!
!
! pwrb_c_opplace.wb_load -- Defines the class OpPlace.
! pwrb_c_opplace.wb_load -- Defines the class OpPlace.
...
@@ -43,28 +43,28 @@ SObject pwrb:Class
...
@@ -43,28 +43,28 @@ SObject pwrb:Class
! Configures a logical operator station for operator
! Configures a logical operator station for operator
! dialogue. A logical operator station represents a work
! dialogue. A logical operator station represents a work
! station, X-terminal etc.
! station, X-terminal etc.
!
!
! The object specifies where files are to be fetched and
! The object specifies where files are to be fetched and
! on which screen they are to be displayed.
! on which screen they are to be displayed.
! Put the object below the actual $Node object in the
! Put the object below the actual $Node object in the
! Node Configuration.
! Node Configuration.
!
!
! There may be one or more OpPlace objects below a $Node
! There may be one or more OpPlace objects below a $Node
! object.
! object.
!*/
!*/
Object OpPlace $ClassDef 164
Object OpPlace $ClassDef 164
Body SysBody
Body SysBody
Attr Editor = pwr_eEditor_AttrEd
Attr Editor = pwr_eEditor_AttrEd
Attr Method = pwr_eMethod_Standard
Attr Method = pwr_eMethod_Standard
EndBody
EndBody
Object RtBody $ObjBodyDef 1
Object RtBody $ObjBodyDef 1
Body SysBody
Body SysBody
Attr StructName = "OpPlace"
Attr StructName = "OpPlace"
EndBody
EndBody
!/**
!/**
! Optional text to describe the user category etc.
! Optional text to describe the user category etc.
!*/
!*/
Object Description $Attribute 1
Object Description $Attribute 1
Body SysBody
Body SysBody
Attr TypeRef = "pwrs:Type-$String80"
Attr TypeRef = "pwrs:Type-$String80"
EndBody
EndBody
...
@@ -79,9 +79,9 @@ SObject pwrb:Class
...
@@ -79,9 +79,9 @@ SObject pwrb:Class
! Note! If XttUseOpsysUser is set in the Security object, this value is
! Note! If XttUseOpsysUser is set in the Security object, this value is
! overrided, and the username is fetched from the current operator system user.
! overrided, and the username is fetched from the current operator system user.
!
!
! The UserName is a constant value and can not be changed in runtime.
! The UserName is a constant value and can not be changed in runtime.
!*/
!*/
Object UserName $Attribute 28
Object UserName $Attribute 28
Body SysBody
Body SysBody
Attr TypeRef = "pwrs:Type-$String32"
Attr TypeRef = "pwrs:Type-$String32"
Attr Flags |= PWR_MASK_CONST
Attr Flags |= PWR_MASK_CONST
...
@@ -92,17 +92,17 @@ SObject pwrb:Class
...
@@ -92,17 +92,17 @@ SObject pwrb:Class
! Only if the user has logged in to the operator system as
! Only if the user has logged in to the operator system as
! one of these user he has authority to start this operator place.
! one of these user he has authority to start this operator place.
!*/
!*/
Object DedicatedOpsysUser $Attribute 29
Object DedicatedOpsysUser $Attribute 29
Body SysBody
Body SysBody
Attr TypeRef = "pwrs:Type-$String256"
Attr TypeRef = "pwrs:Type-$String256"
Attr Flags |= PWR_MASK_CONST
Attr Flags |= PWR_MASK_CONST
EndBody
EndBody
EndObject
EndObject
!/**
!/**
! Specifies on which
monitor
the operator dialogue will
! Specifies on which
display
the operator dialogue will
! take place.
! take place.
! If the operator communication is run on the local node
! If the operator communication is run on the local node
! and the display is to be displayed on the own
monitor
! and the display is to be displayed on the own
display
! ('default display') the Display attribute ought to be
! ('default display') the Display attribute ought to be
! left blank.
! left blank.
!*/
!*/
...
@@ -144,7 +144,7 @@ SObject pwrb:Class
...
@@ -144,7 +144,7 @@ SObject pwrb:Class
! XttGraph object which is to be activated by a function
! XttGraph object which is to be activated by a function
! button in the operator window. The buttons are are ordered
! button in the operator window. The buttons are are ordered
! in five rows with five buttons in each row.
! in five rows with five buttons in each row.
! The first row contains buttons for FastAvail[0] - FastAvail[4],
! The first row contains buttons for FastAvail[0] - FastAvail[4],
! the second for FastAvail[5] - FastAVail[9] etc.
! the second for FastAvail[5] - FastAVail[9] etc.
!*/
!*/
Object FastAvail $Attribute 32
Object FastAvail $Attribute 32
...
@@ -209,7 +209,7 @@ SObject pwrb:Class
...
@@ -209,7 +209,7 @@ SObject pwrb:Class
! Operatorplace options.
! Operatorplace options.
! - OperatorLog will turn on the operator logging when rt_xtt is started.
! - OperatorLog will turn on the operator logging when rt_xtt is started.
! The logging is stored in $pwrp_log/xtt_'opplace'.log
! The logging is stored in $pwrp_log/xtt_'opplace'.log
! - OperatorExendedLog will also store all mouse and motion events in the
! - OperatorExendedLog will also store all mouse and motion events in the
! logfile.
! logfile.
!*/
!*/
Object Options $Attribute 47
Object Options $Attribute 47
...
@@ -228,7 +228,7 @@ SObject pwrb:Class
...
@@ -228,7 +228,7 @@ SObject pwrb:Class
!/**
!/**
! Specifies the maximum number of contemporary alarms in
! Specifies the maximum number of contemporary alarms in
! the user's alarm list.
! the user's alarm list.
! The number should exceed the maximum number of
! The number should exceed the maximum number of
! concurrent alarms in the system.
! concurrent alarms in the system.
! If the limit is exceeded, alarms might be lost.
! If the limit is exceeded, alarms might be lost.
!*/
!*/
...
@@ -246,7 +246,7 @@ SObject pwrb:Class
...
@@ -246,7 +246,7 @@ SObject pwrb:Class
! in respective node. In each node the message handler
! in respective node. In each node the message handler
! has its own skyline of events (also named MaxNoOfEvents)
! has its own skyline of events (also named MaxNoOfEvents)
! defined by a MessageHandler object. In principle, the
! defined by a MessageHandler object. In principle, the
! User object's skyline of events should be selected as
å
! User object's skyline of events should be selected as
�
! MaxNoOfEvents, added up over MaxNoOfEvents in the
! MaxNoOfEvents, added up over MaxNoOfEvents in the
! MessageHandler objects in all nodes throughout the
! MessageHandler objects in all nodes throughout the
! ProviewR system, or make it simple and assign the
! ProviewR system, or make it simple and assign the
...
@@ -275,13 +275,13 @@ SObject pwrb:Class
...
@@ -275,13 +275,13 @@ SObject pwrb:Class
! produced in an application by means of mh_ApplMessage
! produced in an application by means of mh_ApplMessage
! (see ProviewR Programmer's Reference Manual) get an
! (see ProviewR Programmer's Reference Manual) get an
! identity according to the calling parameter EventName.
! identity according to the calling parameter EventName.
!
!
! SelectList specifies the hierarchies from which
! SelectList specifies the hierarchies from which
! messages are to be sent to the user. Up to 40 different
! messages are to be sent to the user. Up to 40 different
! hierarchies can be specified. If messages from e.g. a
! hierarchies can be specified. If messages from e.g. a
! Watchdog object in a node will be received, then the
! Watchdog object in a node will be received, then the
! name of the node will be specified.
! name of the node will be specified.
!
!
! Note! If the SelectList is left blank no message at all is
! Note! If the SelectList is left blank no message at all is
! sent to the user.
! sent to the user.
!*/
!*/
...
@@ -296,7 +296,7 @@ SObject pwrb:Class
...
@@ -296,7 +296,7 @@ SObject pwrb:Class
! Specifies the type of events that are sent to the user.
! Specifies the type of events that are sent to the user.
! If no type is specified, all types av events are sent.
! If no type is specified, all types av events are sent.
!*/
!*/
Object EventSelectType $Attribute 49
Object EventSelectType $Attribute 49
Body SysBody
Body SysBody
Attr TypeRef = "pwrb:Type-EventTypeMask"
Attr TypeRef = "pwrb:Type-EventTypeMask"
EndBody
EndBody
...
@@ -304,7 +304,7 @@ SObject pwrb:Class
...
@@ -304,7 +304,7 @@ SObject pwrb:Class
!/**
!/**
! Specifies the type of events viewed in the eventlist.
! Specifies the type of events viewed in the eventlist.
!*/
!*/
Object EventListEvents $Attribute 43
Object EventListEvents $Attribute 43
Body SysBody
Body SysBody
Attr TypeRef = "pwrb:Type-EventListMask"
Attr TypeRef = "pwrb:Type-EventListMask"
EndBody
EndBody
...
@@ -356,16 +356,28 @@ SObject pwrb:Class
...
@@ -356,16 +356,28 @@ SObject pwrb:Class
Body SysBody
Body SysBody
Attr TypeRef = "pwrs:Type-$String80"
Attr TypeRef = "pwrs:Type-$String80"
EndBody
EndBody
EndObject
!/**
! Override on what monitor the operator panel will show up. Default 0
! will use the primary monitor of the system. A value of 1 selects the first
! monitor and so on and so forth.
!*/
Object Monitor $Attribute 53
Body SysBody
Attr TypeRef = "pwrs:Type-$UInt32"
Attr Flags = 0
EndBody
EndObject
EndObject
EndObject
EndObject
Object Template OpPlace
Object Template OpPlace
Body RtBody
Body RtBody
Attr AlarmBell = 1
Attr AlarmBell = 1
Attr BellDelay = 2
Attr BellDelay = 2
Attr OpWindPop = 3
Attr OpWindPop = 3
Attr OpWindEventNameSegments = 2
Attr OpWindEventNameSegments = 2
Attr MaxNoOfAlarms = 200
Attr MaxNoOfAlarms = 200
Attr MaxNoOfEvents = 500
Attr MaxNoOfEvents = 500
Attr Monitor = 0
EndBody
EndBody
EndObject
EndObject
Object FastAvail $ReferenceList
Object FastAvail $ReferenceList
...
...
xtt/lib/xtt/gtk/xtt_op_gtk.cpp
View file @
5c2ccbaa
This diff is collapsed.
Click to expand it.
xtt/lib/xtt/gtk/xtt_op_gtk.h
View file @
5c2ccbaa
...
@@ -93,6 +93,7 @@ public:
...
@@ -93,6 +93,7 @@ public:
GdkColor
green_color
;
GdkColor
green_color
;
GdkColor
gray_color
;
GdkColor
gray_color
;
GdkColor
white_color
;
GdkColor
white_color
;
GdkRectangle
monitor_geometry
;
int
a_height
;
int
a_height
;
int
a_exist
[
5
];
int
a_exist
[
5
];
int
a_active
[
5
];
int
a_active
[
5
];
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment