easycoder 250825.1__tar.gz → 250826.2__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of easycoder might be problematic. Click here for more details.

Files changed (174) hide show
  1. {easycoder-250825.1 → easycoder-250826.2}/PKG-INFO +1 -1
  2. {easycoder-250825.1 → easycoder-250826.2}/easycoder/__init__.py +1 -1
  3. {easycoder-250825.1 → easycoder-250826.2}/easycoder/ec_handler.py +1 -0
  4. {easycoder-250825.1 → easycoder-250826.2}/easycoder/ec_program.py +5 -0
  5. {easycoder-250825.1 → easycoder-250826.2}/easycoder/ec_pyside.py +29 -18
  6. {easycoder-250825.1 → easycoder-250826.2}/.gitignore +0 -0
  7. {easycoder-250825.1 → easycoder-250826.2}/LICENSE +0 -0
  8. {easycoder-250825.1 → easycoder-250826.2}/README.md +0 -0
  9. {easycoder-250825.1 → easycoder-250826.2}/backdrop.jpg +0 -0
  10. {easycoder-250825.1 → easycoder-250826.2}/doc/README.md +0 -0
  11. {easycoder-250825.1 → easycoder-250826.2}/doc/core/README.md +0 -0
  12. {easycoder-250825.1 → easycoder-250826.2}/doc/core/conditions/boolean.md +0 -0
  13. {easycoder-250825.1 → easycoder-250826.2}/doc/core/conditions/empty.md +0 -0
  14. {easycoder-250825.1 → easycoder-250826.2}/doc/core/conditions/ends.md +0 -0
  15. {easycoder-250825.1 → easycoder-250826.2}/doc/core/conditions/even.md +0 -0
  16. {easycoder-250825.1 → easycoder-250826.2}/doc/core/conditions/exists.md +0 -0
  17. {easycoder-250825.1 → easycoder-250826.2}/doc/core/conditions/greater.md +0 -0
  18. {easycoder-250825.1 → easycoder-250826.2}/doc/core/conditions/hasProperty.md +0 -0
  19. {easycoder-250825.1 → easycoder-250826.2}/doc/core/conditions/includes.md +0 -0
  20. {easycoder-250825.1 → easycoder-250826.2}/doc/core/conditions/is.md +0 -0
  21. {easycoder-250825.1 → easycoder-250826.2}/doc/core/conditions/less.md +0 -0
  22. {easycoder-250825.1 → easycoder-250826.2}/doc/core/conditions/list.md +0 -0
  23. {easycoder-250825.1 → easycoder-250826.2}/doc/core/conditions/none.md +0 -0
  24. {easycoder-250825.1 → easycoder-250826.2}/doc/core/conditions/not.md +0 -0
  25. {easycoder-250825.1 → easycoder-250826.2}/doc/core/conditions/numeric.md +0 -0
  26. {easycoder-250825.1 → easycoder-250826.2}/doc/core/conditions/object.md +0 -0
  27. {easycoder-250825.1 → easycoder-250826.2}/doc/core/conditions/odd.md +0 -0
  28. {easycoder-250825.1 → easycoder-250826.2}/doc/core/conditions/starts.md +0 -0
  29. {easycoder-250825.1 → easycoder-250826.2}/doc/core/conditions/string.md +0 -0
  30. {easycoder-250825.1 → easycoder-250826.2}/doc/core/keywords/add.md +0 -0
  31. {easycoder-250825.1 → easycoder-250826.2}/doc/core/keywords/append.md +0 -0
  32. {easycoder-250825.1 → easycoder-250826.2}/doc/core/keywords/assert.md +0 -0
  33. {easycoder-250825.1 → easycoder-250826.2}/doc/core/keywords/begin.md +0 -0
  34. {easycoder-250825.1 → easycoder-250826.2}/doc/core/keywords/clear.md +0 -0
  35. {easycoder-250825.1 → easycoder-250826.2}/doc/core/keywords/close.md +0 -0
  36. {easycoder-250825.1 → easycoder-250826.2}/doc/core/keywords/create.md +0 -0
  37. {easycoder-250825.1 → easycoder-250826.2}/doc/core/keywords/debug.md +0 -0
  38. {easycoder-250825.1 → easycoder-250826.2}/doc/core/keywords/decrement.md +0 -0
  39. {easycoder-250825.1 → easycoder-250826.2}/doc/core/keywords/delete.md +0 -0
  40. {easycoder-250825.1 → easycoder-250826.2}/doc/core/keywords/divide.md +0 -0
  41. {easycoder-250825.1 → easycoder-250826.2}/doc/core/keywords/exit.md +0 -0
  42. {easycoder-250825.1 → easycoder-250826.2}/doc/core/keywords/file.md +0 -0
  43. {easycoder-250825.1 → easycoder-250826.2}/doc/core/keywords/fork.md +0 -0
  44. {easycoder-250825.1 → easycoder-250826.2}/doc/core/keywords/get.md +0 -0
  45. {easycoder-250825.1 → easycoder-250826.2}/doc/core/keywords/go.md +0 -0
  46. {easycoder-250825.1 → easycoder-250826.2}/doc/core/keywords/gosub.md +0 -0
  47. {easycoder-250825.1 → easycoder-250826.2}/doc/core/keywords/if.md +0 -0
  48. {easycoder-250825.1 → easycoder-250826.2}/doc/core/keywords/import.md +0 -0
  49. {easycoder-250825.1 → easycoder-250826.2}/doc/core/keywords/increment.md +0 -0
  50. {easycoder-250825.1 → easycoder-250826.2}/doc/core/keywords/index.md +0 -0
  51. {easycoder-250825.1 → easycoder-250826.2}/doc/core/keywords/init.md +0 -0
  52. {easycoder-250825.1 → easycoder-250826.2}/doc/core/keywords/input.md +0 -0
  53. {easycoder-250825.1 → easycoder-250826.2}/doc/core/keywords/load.md +0 -0
  54. {easycoder-250825.1 → easycoder-250826.2}/doc/core/keywords/lock.md +0 -0
  55. {easycoder-250825.1 → easycoder-250826.2}/doc/core/keywords/log.md +0 -0
  56. {easycoder-250825.1 → easycoder-250826.2}/doc/core/keywords/module.md +0 -0
  57. {easycoder-250825.1 → easycoder-250826.2}/doc/core/keywords/multiply.md +0 -0
  58. {easycoder-250825.1 → easycoder-250826.2}/doc/core/keywords/negate.md +0 -0
  59. {easycoder-250825.1 → easycoder-250826.2}/doc/core/keywords/on.md +0 -0
  60. {easycoder-250825.1 → easycoder-250826.2}/doc/core/keywords/open.md +0 -0
  61. {easycoder-250825.1 → easycoder-250826.2}/doc/core/keywords/pop.md +0 -0
  62. {easycoder-250825.1 → easycoder-250826.2}/doc/core/keywords/post.md +0 -0
  63. {easycoder-250825.1 → easycoder-250826.2}/doc/core/keywords/print.md +0 -0
  64. {easycoder-250825.1 → easycoder-250826.2}/doc/core/keywords/push.md +0 -0
  65. {easycoder-250825.1 → easycoder-250826.2}/doc/core/keywords/put.md +0 -0
  66. {easycoder-250825.1 → easycoder-250826.2}/doc/core/keywords/read.md +0 -0
  67. {easycoder-250825.1 → easycoder-250826.2}/doc/core/keywords/release.md +0 -0
  68. {easycoder-250825.1 → easycoder-250826.2}/doc/core/keywords/replace.md +0 -0
  69. {easycoder-250825.1 → easycoder-250826.2}/doc/core/keywords/return.md +0 -0
  70. {easycoder-250825.1 → easycoder-250826.2}/doc/core/keywords/run.md +0 -0
  71. {easycoder-250825.1 → easycoder-250826.2}/doc/core/keywords/save.md +0 -0
  72. {easycoder-250825.1 → easycoder-250826.2}/doc/core/keywords/script.md +0 -0
  73. {easycoder-250825.1 → easycoder-250826.2}/doc/core/keywords/send.md +0 -0
  74. {easycoder-250825.1 → easycoder-250826.2}/doc/core/keywords/set.md +0 -0
  75. {easycoder-250825.1 → easycoder-250826.2}/doc/core/keywords/shuffle.md +0 -0
  76. {easycoder-250825.1 → easycoder-250826.2}/doc/core/keywords/split.md +0 -0
  77. {easycoder-250825.1 → easycoder-250826.2}/doc/core/keywords/stack.md +0 -0
  78. {easycoder-250825.1 → easycoder-250826.2}/doc/core/keywords/stop.md +0 -0
  79. {easycoder-250825.1 → easycoder-250826.2}/doc/core/keywords/system.md +0 -0
  80. {easycoder-250825.1 → easycoder-250826.2}/doc/core/keywords/take.md +0 -0
  81. {easycoder-250825.1 → easycoder-250826.2}/doc/core/keywords/toggle.md +0 -0
  82. {easycoder-250825.1 → easycoder-250826.2}/doc/core/keywords/truncate.md +0 -0
  83. {easycoder-250825.1 → easycoder-250826.2}/doc/core/keywords/unlock.md +0 -0
  84. {easycoder-250825.1 → easycoder-250826.2}/doc/core/keywords/use.md +0 -0
  85. {easycoder-250825.1 → easycoder-250826.2}/doc/core/keywords/variable.md +0 -0
  86. {easycoder-250825.1 → easycoder-250826.2}/doc/core/keywords/wait.md +0 -0
  87. {easycoder-250825.1 → easycoder-250826.2}/doc/core/keywords/while.md +0 -0
  88. {easycoder-250825.1 → easycoder-250826.2}/doc/core/keywords/write.md +0 -0
  89. {easycoder-250825.1 → easycoder-250826.2}/doc/core/values/arg.md +0 -0
  90. {easycoder-250825.1 → easycoder-250826.2}/doc/core/values/args.md +0 -0
  91. {easycoder-250825.1 → easycoder-250826.2}/doc/core/values/cos.md +0 -0
  92. {easycoder-250825.1 → easycoder-250826.2}/doc/core/values/datime.md +0 -0
  93. {easycoder-250825.1 → easycoder-250826.2}/doc/core/values/decode.md +0 -0
  94. {easycoder-250825.1 → easycoder-250826.2}/doc/core/values/element.md +0 -0
  95. {easycoder-250825.1 → easycoder-250826.2}/doc/core/values/elements.md +0 -0
  96. {easycoder-250825.1 → easycoder-250826.2}/doc/core/values/empty.md +0 -0
  97. {easycoder-250825.1 → easycoder-250826.2}/doc/core/values/encode.md +0 -0
  98. {easycoder-250825.1 → easycoder-250826.2}/doc/core/values/error.md +0 -0
  99. {easycoder-250825.1 → easycoder-250826.2}/doc/core/values/files.md +0 -0
  100. {easycoder-250825.1 → easycoder-250826.2}/doc/core/values/float.md +0 -0
  101. {easycoder-250825.1 → easycoder-250826.2}/doc/core/values/from.md +0 -0
  102. {easycoder-250825.1 → easycoder-250826.2}/doc/core/values/hash.md +0 -0
  103. {easycoder-250825.1 → easycoder-250826.2}/doc/core/values/index.md +0 -0
  104. {easycoder-250825.1 → easycoder-250826.2}/doc/core/values/integer.md +0 -0
  105. {easycoder-250825.1 → easycoder-250826.2}/doc/core/values/json.md +0 -0
  106. {easycoder-250825.1 → easycoder-250826.2}/doc/core/values/keys.md +0 -0
  107. {easycoder-250825.1 → easycoder-250826.2}/doc/core/values/left.md +0 -0
  108. {easycoder-250825.1 → easycoder-250826.2}/doc/core/values/length.md +0 -0
  109. {easycoder-250825.1 → easycoder-250826.2}/doc/core/values/lowercase.md +0 -0
  110. {easycoder-250825.1 → easycoder-250826.2}/doc/core/values/memory.md +0 -0
  111. {easycoder-250825.1 → easycoder-250826.2}/doc/core/values/modification.md +0 -0
  112. {easycoder-250825.1 → easycoder-250826.2}/doc/core/values/modulo.md +0 -0
  113. {easycoder-250825.1 → easycoder-250826.2}/doc/core/values/newline.md +0 -0
  114. {easycoder-250825.1 → easycoder-250826.2}/doc/core/values/now.md +0 -0
  115. {easycoder-250825.1 → easycoder-250826.2}/doc/core/values/position.md +0 -0
  116. {easycoder-250825.1 → easycoder-250826.2}/doc/core/values/property.md +0 -0
  117. {easycoder-250825.1 → easycoder-250826.2}/doc/core/values/random.md +0 -0
  118. {easycoder-250825.1 → easycoder-250826.2}/doc/core/values/right.md +0 -0
  119. {easycoder-250825.1 → easycoder-250826.2}/doc/core/values/sin.md +0 -0
  120. {easycoder-250825.1 → easycoder-250826.2}/doc/core/values/stringify.md +0 -0
  121. {easycoder-250825.1 → easycoder-250826.2}/doc/core/values/tab.md +0 -0
  122. {easycoder-250825.1 → easycoder-250826.2}/doc/core/values/tan.md +0 -0
  123. {easycoder-250825.1 → easycoder-250826.2}/doc/core/values/timestamp.md +0 -0
  124. {easycoder-250825.1 → easycoder-250826.2}/doc/core/values/today.md +0 -0
  125. {easycoder-250825.1 → easycoder-250826.2}/doc/core/values/trim.md +0 -0
  126. {easycoder-250825.1 → easycoder-250826.2}/doc/core/values/type.md +0 -0
  127. {easycoder-250825.1 → easycoder-250826.2}/doc/core/values/uppercase.md +0 -0
  128. {easycoder-250825.1 → easycoder-250826.2}/doc/core/values/value.md +0 -0
  129. {easycoder-250825.1 → easycoder-250826.2}/doc/core/values/weekday.md +0 -0
  130. {easycoder-250825.1 → easycoder-250826.2}/doc/graphics/README.md +0 -0
  131. {easycoder-250825.1 → easycoder-250826.2}/doc/graphics/keywords/attach.md +0 -0
  132. {easycoder-250825.1 → easycoder-250826.2}/doc/graphics/keywords/close.md +0 -0
  133. {easycoder-250825.1 → easycoder-250826.2}/doc/graphics/keywords/create.md +0 -0
  134. {easycoder-250825.1 → easycoder-250826.2}/doc/graphics/keywords/ellipse.md +0 -0
  135. {easycoder-250825.1 → easycoder-250826.2}/doc/graphics/keywords/image.md +0 -0
  136. {easycoder-250825.1 → easycoder-250826.2}/doc/graphics/keywords/move.md +0 -0
  137. {easycoder-250825.1 → easycoder-250826.2}/doc/graphics/keywords/on.md +0 -0
  138. {easycoder-250825.1 → easycoder-250826.2}/doc/graphics/keywords/rectangle.md +0 -0
  139. {easycoder-250825.1 → easycoder-250826.2}/doc/graphics/keywords/render.md +0 -0
  140. {easycoder-250825.1 → easycoder-250826.2}/doc/graphics/keywords/run.md +0 -0
  141. {easycoder-250825.1 → easycoder-250826.2}/doc/graphics/keywords/set.md +0 -0
  142. {easycoder-250825.1 → easycoder-250826.2}/doc/graphics/keywords/text.md +0 -0
  143. {easycoder-250825.1 → easycoder-250826.2}/doc/graphics/values/attribute.md +0 -0
  144. {easycoder-250825.1 → easycoder-250826.2}/doc/graphics/values/window.md +0 -0
  145. {easycoder-250825.1 → easycoder-250826.2}/easycoder/close.png +0 -0
  146. {easycoder-250825.1 → easycoder-250826.2}/easycoder/ec_border.py +0 -0
  147. {easycoder-250825.1 → easycoder-250826.2}/easycoder/ec_classes.py +0 -0
  148. {easycoder-250825.1 → easycoder-250826.2}/easycoder/ec_compiler.py +0 -0
  149. {easycoder-250825.1 → easycoder-250826.2}/easycoder/ec_condition.py +0 -0
  150. {easycoder-250825.1 → easycoder-250826.2}/easycoder/ec_core.py +0 -0
  151. {easycoder-250825.1 → easycoder-250826.2}/easycoder/ec_keyboard.py +0 -0
  152. {easycoder-250825.1 → easycoder-250826.2}/easycoder/ec_timestamp.py +0 -0
  153. {easycoder-250825.1 → easycoder-250826.2}/easycoder/ec_value.py +0 -0
  154. {easycoder-250825.1 → easycoder-250826.2}/easycoder/tick.png +0 -0
  155. {easycoder-250825.1 → easycoder-250826.2}/images/Semoigo Dawn.jpg +0 -0
  156. {easycoder-250825.1 → easycoder-250826.2}/json/graphics-demo.json +0 -0
  157. {easycoder-250825.1 → easycoder-250826.2}/plugins/ec_keyboard.py +0 -0
  158. {easycoder-250825.1 → easycoder-250826.2}/plugins/ec_p100.py +0 -0
  159. {easycoder-250825.1 → easycoder-250826.2}/plugins/ec_pyside6.py +0 -0
  160. {easycoder-250825.1 → easycoder-250826.2}/plugins/points.py +0 -0
  161. {easycoder-250825.1 → easycoder-250826.2}/plugins/sql.py +0 -0
  162. {easycoder-250825.1 → easycoder-250826.2}/pyproject.toml +0 -0
  163. {easycoder-250825.1 → easycoder-250826.2}/scripts/benchmark.ecs +0 -0
  164. {easycoder-250825.1 → easycoder-250826.2}/scripts/config.ecg +0 -0
  165. {easycoder-250825.1 → easycoder-250826.2}/scripts/ec_keyboard.py +0 -0
  166. {easycoder-250825.1 → easycoder-250826.2}/scripts/fizzbuzz.ecs +0 -0
  167. {easycoder-250825.1 → easycoder-250826.2}/scripts/hello.ecs +0 -0
  168. {easycoder-250825.1 → easycoder-250826.2}/scripts/points.ecs +0 -0
  169. {easycoder-250825.1 → easycoder-250826.2}/scripts/test.ecs +0 -0
  170. {easycoder-250825.1 → easycoder-250826.2}/scripts/tests.ecs +0 -0
  171. {easycoder-250825.1 → easycoder-250826.2}/test.py +0 -0
  172. {easycoder-250825.1 → easycoder-250826.2}/testrc.py +0 -0
  173. {easycoder-250825.1 → easycoder-250826.2}/testsql.py +0 -0
  174. {easycoder-250825.1 → easycoder-250826.2}/testui.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: easycoder
3
- Version: 250825.1
3
+ Version: 250826.2
4
4
  Summary: Rapid scripting in English
5
5
  Keywords: compiler,scripting,prototyping,programming,coding,python,low code,hypertalk,computer language,learn to code
6
6
  Author-email: Graham Trott <gtanyware@gmail.com>
@@ -12,4 +12,4 @@ from .ec_pyside import *
12
12
  from .ec_timestamp import *
13
13
  from .ec_value import *
14
14
 
15
- __version__ = "250825.1"
15
+ __version__ = "250826.2"
@@ -36,6 +36,7 @@ class Handler:
36
36
  self.testCondition = self.program.condition.testCondition
37
37
  self.symbols = self.program.symbols
38
38
  self.stack = self.program.stack
39
+ self.getSymbolContent = self.program.getSymbolContent
39
40
  self.getSymbolValue = self.program.getSymbolValue
40
41
  self.putSymbolValue = self.program.putSymbolValue
41
42
  self.run = self.program.run
@@ -197,6 +197,11 @@ class Program:
197
197
  return ''
198
198
  return None
199
199
 
200
+ def getSymbolContent(self, symbolRecord):
201
+ if len(symbolRecord['value']) == 0:
202
+ return None
203
+ return symbolRecord['value'][symbolRecord['index']]
204
+
200
205
  def getSymbolValue(self, symbolRecord):
201
206
  if len(symbolRecord['value']) == 0:
202
207
  return None
@@ -70,6 +70,10 @@ class Graphics(Handler):
70
70
 
71
71
  def dialogTypes(self):
72
72
  return ['confirm', 'lineedit', 'multiline', 'generic']
73
+
74
+ def getWidget(self, record):
75
+ if record['keyword'] in ['pushbutton']: return self.getSymbolContent(record)
76
+ else: return record['widget']
73
77
 
74
78
  class ClickableLineEdit(QLineEdit):
75
79
  clicked = Signal()
@@ -200,13 +204,13 @@ class Graphics(Handler):
200
204
  layoutRecord = self.getVariable(command['layout'])
201
205
  widget = command['widget']
202
206
  if widget == 'stretch':
203
- layoutRecord['widget'].addStretch()
207
+ self.getWidget(layoutRecord).addStretch()
204
208
  elif widget == 'spacer':
205
- layoutRecord['widget'].addSpacing(self.getRuntimeValue(command['size']))
209
+ self.getWidget(layoutRecord).addSpacing(self.getRuntimeValue(command['size']))
206
210
  else:
207
211
  widgetRecord = self.getVariable(widget)
208
212
  layoutRecord = self.getVariable(command['layout'])
209
- widget = widgetRecord['widget']
213
+ widget = self.getWidget(widgetRecord)
210
214
  layout = layoutRecord['widget']
211
215
  stretch = 'stretch' in command
212
216
  if widgetRecord['keyword'] == 'layout':
@@ -569,7 +573,6 @@ class Graphics(Handler):
569
573
  w = fm.horizontalAdvance('m') * self.getRuntimeValue(command['size']) + c.left()+c.right()
570
574
  pushbutton.setMaximumWidth(w)
571
575
  self.putSymbolValue(record, pushbutton)
572
- record['widget'] = pushbutton
573
576
  return self.nextPC()
574
577
 
575
578
  def r_createCheckBox(self, command, record):
@@ -730,7 +733,7 @@ class Graphics(Handler):
730
733
  return False
731
734
 
732
735
  def r_disable(self, command):
733
- self.getVariable(command['name'])['widget'].setEnabled(False)
736
+ self.getWidget(self.getVariable(command['name'])).setEnabled(False)
734
737
  return self.nextPC()
735
738
 
736
739
  # Enable a widget
@@ -742,7 +745,7 @@ class Graphics(Handler):
742
745
  return False
743
746
 
744
747
  def r_enable(self, command):
745
- self.getVariable(command['name'])['widget'].setEnabled(True)
748
+ self.getWidget(self.getVariable(command['name'])).setEnabled(True)
746
749
  return self.nextPC()
747
750
 
748
751
  # Create a group box
@@ -881,18 +884,21 @@ class Graphics(Handler):
881
884
  return False
882
885
 
883
886
  def r_on(self, command):
884
- def run(widget):
885
- print(f"Widget {widget} was clicked")
886
- self.run(command['goto'])
887
+ def run(widget, record):
888
+ for i, w in enumerate(record['value']):
889
+ if w == widget:
890
+ record['index'] = i
891
+ self.run(command['goto'])
892
+ return
887
893
 
888
894
  if command['type'] == 'tick':
889
895
  self.runOnTick = command['runOnTick']
890
896
  else:
891
897
  record = self.getVariable(command['name'])
892
- widget = record['widget']
898
+ widget = self.getWidget(record)
893
899
  keyword = record['keyword']
894
900
  if keyword == 'pushbutton':
895
- handler = partial(run, widget)
901
+ handler = partial(run, widget, record)
896
902
  widget.clicked.connect(handler)
897
903
  elif keyword == 'combobox':
898
904
  widget.currentIndexChanged.connect(lambda: self.run(command['goto']))
@@ -1124,7 +1130,7 @@ class Graphics(Handler):
1124
1130
  record = self.getVariable(command['name'])
1125
1131
  keyword = record['keyword']
1126
1132
  if keyword == 'window':
1127
- window = record['widget']
1133
+ window = record['window']
1128
1134
  container = QWidget()
1129
1135
  container.setLayout(content)
1130
1136
  window.setCentralWidget(container)
@@ -1135,7 +1141,8 @@ class Graphics(Handler):
1135
1141
  layout = self.getVariable(command['name'])['widget']
1136
1142
  layout.setSpacing(self.getRuntimeValue(command['value']))
1137
1143
  elif what == 'text':
1138
- widget = self.getVariable(command['name'])['widget']
1144
+ record = self.getVariable(command['name'])
1145
+ widget = self.getWidget(record)
1139
1146
  text = self.getRuntimeValue(command['value'])
1140
1147
  keyword = record['keyword']
1141
1148
  setText = getattr(widget, "setText", None)
@@ -1164,19 +1171,23 @@ class Graphics(Handler):
1164
1171
  elif flag == 'center': alignment |= Qt.AlignCenter
1165
1172
  widget.setAlignment(alignment)
1166
1173
  elif what == 'style':
1167
- widget = self.getVariable(command['name'])['widget']
1174
+ record = self.getVariable(command['name'])
1175
+ widget = self.getWidget(record)
1168
1176
  styles = self.getRuntimeValue(command['value'])
1169
1177
  widget.setStyleSheet(styles)
1170
1178
  elif what == 'color':
1171
- widget = self.getVariable(command['name'])['widget']
1179
+ record = self.getVariable(command['name'])
1180
+ widget = self.getWidget(record)
1172
1181
  color = self.getRuntimeValue(command['value'])
1173
1182
  widget.setStyleSheet(f"color: {color};")
1174
1183
  elif what == 'background-color':
1175
- widget = self.getVariable(command['name'])['widget']
1184
+ record = self.getVariable(command['name'])
1185
+ widget = self.getWidget(record)
1176
1186
  bg_color = self.getRuntimeValue(command['value'])
1177
1187
  widget.setStyleSheet(f"background-color: {bg_color};")
1178
1188
  elif what == 'listbox':
1179
- widget = self.getVariable(command['name'])['widget']
1189
+ record = self.getVariable(command['name'])
1190
+ widget = self.getWidget(record)
1180
1191
  value = self.getRuntimeValue(command['value'])
1181
1192
  widget.clear()
1182
1193
  widget.addItems(value)
@@ -1351,7 +1362,7 @@ class Graphics(Handler):
1351
1362
  symbolRecord = self.getVariable(symbolRecord['name'])
1352
1363
  keyword = symbolRecord['keyword']
1353
1364
  if keyword == 'pushbutton':
1354
- pushbutton = symbolRecord['widget']
1365
+ pushbutton = self.getSymbolContent(symbolRecord) # symbolRecord['widget']
1355
1366
  v = {}
1356
1367
  v['type'] = 'text'
1357
1368
  v['content'] = pushbutton.accessibleName()
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes