@@ -467,12 +467,12 @@ def r_createDialog(self, command, record):
467
467
dialogType = command ['type' ]
468
468
if dialogType in ['lineinput' ]:
469
469
if dialogType == 'lineinput' :
470
- input = QLineEdit ()
471
- mainLayout .addWidget (input )
472
- dialog . buttonBox = QDialogButtonBox (( QDialogButtonBox .Ok | QDialogButtonBox .Cancel ) )
473
- dialog . buttonBox .accepted .connect (dialog .accept )
474
- dialog . buttonBox .rejected .connect (dialog .reject )
475
- mainLayout .addWidget (dialog . buttonBox , alignment = Qt .AlignHCenter )
470
+ dialog . lineEdit = QLineEdit (dialog )
471
+ mainLayout .addWidget (dialog . lineEdit )
472
+ buttonBox = QDialogButtonBox (QDialogButtonBox .Ok | QDialogButtonBox .Cancel , dialog )
473
+ buttonBox .accepted .connect (dialog .accept )
474
+ buttonBox .rejected .connect (dialog .reject )
475
+ mainLayout .addWidget (buttonBox , alignment = Qt .AlignHCenter )
476
476
record ['dialog' ] = dialog
477
477
return self .nextPC ()
478
478
@@ -504,7 +504,7 @@ def r_create(self, command):
504
504
505
505
# Declare a dialog variable
506
506
def k_dialog (self , command ):
507
- return self .compileVariable (command )
507
+ return self .compileVariable (command , 'gui' )
508
508
509
509
def r_dialog (self , command ):
510
510
return self .nextPC ()
@@ -950,9 +950,9 @@ def r_show(self, command):
950
950
window = self .getVariable (command ['window' ])['window' ]
951
951
window .show ()
952
952
elif 'dialog' in command :
953
- dialog = self .getVariable (command ['dialog' ])[ 'dialog' ]
954
- result = dialog . exec ()
955
- # TODO: Finish the dialog box for getting the request relay name
953
+ record = self .getVariable (command ['dialog' ])
954
+ dialog = record [ ' dialog' ]
955
+ record [ 'result' ] = dialog . exec ()
956
956
return self .nextPC ()
957
957
958
958
# Start the graphics
@@ -1071,6 +1071,13 @@ def v_symbol(self, symbolRecord):
1071
1071
v ['type' ] = 'boolean'
1072
1072
v ['content' ] = content
1073
1073
return v
1074
+ elif keyword == 'dialog' :
1075
+ dialog = symbolRecord ['dialog' ]
1076
+ content = dialog .lineEdit .text () if symbolRecord ['result' ] == QDialog .Accepted else ''
1077
+ v = {}
1078
+ v ['type' ] = 'text'
1079
+ v ['content' ] = content
1080
+ return v
1074
1081
return None
1075
1082
1076
1083
def v_count (self , v ):
0 commit comments