easycoder 250706.1__tar.gz → 250718.1__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 (168) hide show
  1. {easycoder-250706.1 → easycoder-250718.1}/PKG-INFO +1 -1
  2. {easycoder-250706.1 → easycoder-250718.1}/easycoder/__init__.py +1 -1
  3. {easycoder-250706.1 → easycoder-250718.1}/easycoder/ec_core.py +1 -4
  4. {easycoder-250706.1 → easycoder-250718.1}/easycoder/ec_program.py +8 -8
  5. {easycoder-250706.1 → easycoder-250718.1}/easycoder/ec_pyside.py +23 -12
  6. {easycoder-250706.1 → easycoder-250718.1}/.gitignore +0 -0
  7. {easycoder-250706.1 → easycoder-250718.1}/LICENSE +0 -0
  8. {easycoder-250706.1 → easycoder-250718.1}/README.md +0 -0
  9. {easycoder-250706.1 → easycoder-250718.1}/backdrop.jpg +0 -0
  10. {easycoder-250706.1 → easycoder-250718.1}/doc/README.md +0 -0
  11. {easycoder-250706.1 → easycoder-250718.1}/doc/core/README.md +0 -0
  12. {easycoder-250706.1 → easycoder-250718.1}/doc/core/conditions/boolean.md +0 -0
  13. {easycoder-250706.1 → easycoder-250718.1}/doc/core/conditions/empty.md +0 -0
  14. {easycoder-250706.1 → easycoder-250718.1}/doc/core/conditions/ends.md +0 -0
  15. {easycoder-250706.1 → easycoder-250718.1}/doc/core/conditions/even.md +0 -0
  16. {easycoder-250706.1 → easycoder-250718.1}/doc/core/conditions/exists.md +0 -0
  17. {easycoder-250706.1 → easycoder-250718.1}/doc/core/conditions/greater.md +0 -0
  18. {easycoder-250706.1 → easycoder-250718.1}/doc/core/conditions/hasProperty.md +0 -0
  19. {easycoder-250706.1 → easycoder-250718.1}/doc/core/conditions/includes.md +0 -0
  20. {easycoder-250706.1 → easycoder-250718.1}/doc/core/conditions/is.md +0 -0
  21. {easycoder-250706.1 → easycoder-250718.1}/doc/core/conditions/less.md +0 -0
  22. {easycoder-250706.1 → easycoder-250718.1}/doc/core/conditions/list.md +0 -0
  23. {easycoder-250706.1 → easycoder-250718.1}/doc/core/conditions/none.md +0 -0
  24. {easycoder-250706.1 → easycoder-250718.1}/doc/core/conditions/not.md +0 -0
  25. {easycoder-250706.1 → easycoder-250718.1}/doc/core/conditions/numeric.md +0 -0
  26. {easycoder-250706.1 → easycoder-250718.1}/doc/core/conditions/object.md +0 -0
  27. {easycoder-250706.1 → easycoder-250718.1}/doc/core/conditions/odd.md +0 -0
  28. {easycoder-250706.1 → easycoder-250718.1}/doc/core/conditions/starts.md +0 -0
  29. {easycoder-250706.1 → easycoder-250718.1}/doc/core/conditions/string.md +0 -0
  30. {easycoder-250706.1 → easycoder-250718.1}/doc/core/keywords/add.md +0 -0
  31. {easycoder-250706.1 → easycoder-250718.1}/doc/core/keywords/append.md +0 -0
  32. {easycoder-250706.1 → easycoder-250718.1}/doc/core/keywords/assert.md +0 -0
  33. {easycoder-250706.1 → easycoder-250718.1}/doc/core/keywords/begin.md +0 -0
  34. {easycoder-250706.1 → easycoder-250718.1}/doc/core/keywords/clear.md +0 -0
  35. {easycoder-250706.1 → easycoder-250718.1}/doc/core/keywords/close.md +0 -0
  36. {easycoder-250706.1 → easycoder-250718.1}/doc/core/keywords/create.md +0 -0
  37. {easycoder-250706.1 → easycoder-250718.1}/doc/core/keywords/debug.md +0 -0
  38. {easycoder-250706.1 → easycoder-250718.1}/doc/core/keywords/decrement.md +0 -0
  39. {easycoder-250706.1 → easycoder-250718.1}/doc/core/keywords/delete.md +0 -0
  40. {easycoder-250706.1 → easycoder-250718.1}/doc/core/keywords/divide.md +0 -0
  41. {easycoder-250706.1 → easycoder-250718.1}/doc/core/keywords/exit.md +0 -0
  42. {easycoder-250706.1 → easycoder-250718.1}/doc/core/keywords/file.md +0 -0
  43. {easycoder-250706.1 → easycoder-250718.1}/doc/core/keywords/fork.md +0 -0
  44. {easycoder-250706.1 → easycoder-250718.1}/doc/core/keywords/get.md +0 -0
  45. {easycoder-250706.1 → easycoder-250718.1}/doc/core/keywords/go.md +0 -0
  46. {easycoder-250706.1 → easycoder-250718.1}/doc/core/keywords/gosub.md +0 -0
  47. {easycoder-250706.1 → easycoder-250718.1}/doc/core/keywords/if.md +0 -0
  48. {easycoder-250706.1 → easycoder-250718.1}/doc/core/keywords/import.md +0 -0
  49. {easycoder-250706.1 → easycoder-250718.1}/doc/core/keywords/increment.md +0 -0
  50. {easycoder-250706.1 → easycoder-250718.1}/doc/core/keywords/index.md +0 -0
  51. {easycoder-250706.1 → easycoder-250718.1}/doc/core/keywords/init.md +0 -0
  52. {easycoder-250706.1 → easycoder-250718.1}/doc/core/keywords/input.md +0 -0
  53. {easycoder-250706.1 → easycoder-250718.1}/doc/core/keywords/load.md +0 -0
  54. {easycoder-250706.1 → easycoder-250718.1}/doc/core/keywords/lock.md +0 -0
  55. {easycoder-250706.1 → easycoder-250718.1}/doc/core/keywords/log.md +0 -0
  56. {easycoder-250706.1 → easycoder-250718.1}/doc/core/keywords/module.md +0 -0
  57. {easycoder-250706.1 → easycoder-250718.1}/doc/core/keywords/multiply.md +0 -0
  58. {easycoder-250706.1 → easycoder-250718.1}/doc/core/keywords/negate.md +0 -0
  59. {easycoder-250706.1 → easycoder-250718.1}/doc/core/keywords/on.md +0 -0
  60. {easycoder-250706.1 → easycoder-250718.1}/doc/core/keywords/open.md +0 -0
  61. {easycoder-250706.1 → easycoder-250718.1}/doc/core/keywords/pop.md +0 -0
  62. {easycoder-250706.1 → easycoder-250718.1}/doc/core/keywords/post.md +0 -0
  63. {easycoder-250706.1 → easycoder-250718.1}/doc/core/keywords/print.md +0 -0
  64. {easycoder-250706.1 → easycoder-250718.1}/doc/core/keywords/push.md +0 -0
  65. {easycoder-250706.1 → easycoder-250718.1}/doc/core/keywords/put.md +0 -0
  66. {easycoder-250706.1 → easycoder-250718.1}/doc/core/keywords/read.md +0 -0
  67. {easycoder-250706.1 → easycoder-250718.1}/doc/core/keywords/release.md +0 -0
  68. {easycoder-250706.1 → easycoder-250718.1}/doc/core/keywords/replace.md +0 -0
  69. {easycoder-250706.1 → easycoder-250718.1}/doc/core/keywords/return.md +0 -0
  70. {easycoder-250706.1 → easycoder-250718.1}/doc/core/keywords/run.md +0 -0
  71. {easycoder-250706.1 → easycoder-250718.1}/doc/core/keywords/save.md +0 -0
  72. {easycoder-250706.1 → easycoder-250718.1}/doc/core/keywords/script.md +0 -0
  73. {easycoder-250706.1 → easycoder-250718.1}/doc/core/keywords/send.md +0 -0
  74. {easycoder-250706.1 → easycoder-250718.1}/doc/core/keywords/set.md +0 -0
  75. {easycoder-250706.1 → easycoder-250718.1}/doc/core/keywords/shuffle.md +0 -0
  76. {easycoder-250706.1 → easycoder-250718.1}/doc/core/keywords/split.md +0 -0
  77. {easycoder-250706.1 → easycoder-250718.1}/doc/core/keywords/stack.md +0 -0
  78. {easycoder-250706.1 → easycoder-250718.1}/doc/core/keywords/stop.md +0 -0
  79. {easycoder-250706.1 → easycoder-250718.1}/doc/core/keywords/system.md +0 -0
  80. {easycoder-250706.1 → easycoder-250718.1}/doc/core/keywords/take.md +0 -0
  81. {easycoder-250706.1 → easycoder-250718.1}/doc/core/keywords/toggle.md +0 -0
  82. {easycoder-250706.1 → easycoder-250718.1}/doc/core/keywords/truncate.md +0 -0
  83. {easycoder-250706.1 → easycoder-250718.1}/doc/core/keywords/unlock.md +0 -0
  84. {easycoder-250706.1 → easycoder-250718.1}/doc/core/keywords/use.md +0 -0
  85. {easycoder-250706.1 → easycoder-250718.1}/doc/core/keywords/variable.md +0 -0
  86. {easycoder-250706.1 → easycoder-250718.1}/doc/core/keywords/wait.md +0 -0
  87. {easycoder-250706.1 → easycoder-250718.1}/doc/core/keywords/while.md +0 -0
  88. {easycoder-250706.1 → easycoder-250718.1}/doc/core/keywords/write.md +0 -0
  89. {easycoder-250706.1 → easycoder-250718.1}/doc/core/values/arg.md +0 -0
  90. {easycoder-250706.1 → easycoder-250718.1}/doc/core/values/args.md +0 -0
  91. {easycoder-250706.1 → easycoder-250718.1}/doc/core/values/cos.md +0 -0
  92. {easycoder-250706.1 → easycoder-250718.1}/doc/core/values/datime.md +0 -0
  93. {easycoder-250706.1 → easycoder-250718.1}/doc/core/values/decode.md +0 -0
  94. {easycoder-250706.1 → easycoder-250718.1}/doc/core/values/element.md +0 -0
  95. {easycoder-250706.1 → easycoder-250718.1}/doc/core/values/elements.md +0 -0
  96. {easycoder-250706.1 → easycoder-250718.1}/doc/core/values/empty.md +0 -0
  97. {easycoder-250706.1 → easycoder-250718.1}/doc/core/values/encode.md +0 -0
  98. {easycoder-250706.1 → easycoder-250718.1}/doc/core/values/error.md +0 -0
  99. {easycoder-250706.1 → easycoder-250718.1}/doc/core/values/files.md +0 -0
  100. {easycoder-250706.1 → easycoder-250718.1}/doc/core/values/float.md +0 -0
  101. {easycoder-250706.1 → easycoder-250718.1}/doc/core/values/from.md +0 -0
  102. {easycoder-250706.1 → easycoder-250718.1}/doc/core/values/hash.md +0 -0
  103. {easycoder-250706.1 → easycoder-250718.1}/doc/core/values/index.md +0 -0
  104. {easycoder-250706.1 → easycoder-250718.1}/doc/core/values/integer.md +0 -0
  105. {easycoder-250706.1 → easycoder-250718.1}/doc/core/values/json.md +0 -0
  106. {easycoder-250706.1 → easycoder-250718.1}/doc/core/values/keys.md +0 -0
  107. {easycoder-250706.1 → easycoder-250718.1}/doc/core/values/left.md +0 -0
  108. {easycoder-250706.1 → easycoder-250718.1}/doc/core/values/length.md +0 -0
  109. {easycoder-250706.1 → easycoder-250718.1}/doc/core/values/lowercase.md +0 -0
  110. {easycoder-250706.1 → easycoder-250718.1}/doc/core/values/memory.md +0 -0
  111. {easycoder-250706.1 → easycoder-250718.1}/doc/core/values/modification.md +0 -0
  112. {easycoder-250706.1 → easycoder-250718.1}/doc/core/values/modulo.md +0 -0
  113. {easycoder-250706.1 → easycoder-250718.1}/doc/core/values/newline.md +0 -0
  114. {easycoder-250706.1 → easycoder-250718.1}/doc/core/values/now.md +0 -0
  115. {easycoder-250706.1 → easycoder-250718.1}/doc/core/values/position.md +0 -0
  116. {easycoder-250706.1 → easycoder-250718.1}/doc/core/values/property.md +0 -0
  117. {easycoder-250706.1 → easycoder-250718.1}/doc/core/values/random.md +0 -0
  118. {easycoder-250706.1 → easycoder-250718.1}/doc/core/values/right.md +0 -0
  119. {easycoder-250706.1 → easycoder-250718.1}/doc/core/values/sin.md +0 -0
  120. {easycoder-250706.1 → easycoder-250718.1}/doc/core/values/stringify.md +0 -0
  121. {easycoder-250706.1 → easycoder-250718.1}/doc/core/values/tab.md +0 -0
  122. {easycoder-250706.1 → easycoder-250718.1}/doc/core/values/tan.md +0 -0
  123. {easycoder-250706.1 → easycoder-250718.1}/doc/core/values/timestamp.md +0 -0
  124. {easycoder-250706.1 → easycoder-250718.1}/doc/core/values/today.md +0 -0
  125. {easycoder-250706.1 → easycoder-250718.1}/doc/core/values/trim.md +0 -0
  126. {easycoder-250706.1 → easycoder-250718.1}/doc/core/values/type.md +0 -0
  127. {easycoder-250706.1 → easycoder-250718.1}/doc/core/values/uppercase.md +0 -0
  128. {easycoder-250706.1 → easycoder-250718.1}/doc/core/values/value.md +0 -0
  129. {easycoder-250706.1 → easycoder-250718.1}/doc/core/values/weekday.md +0 -0
  130. {easycoder-250706.1 → easycoder-250718.1}/doc/graphics/README.md +0 -0
  131. {easycoder-250706.1 → easycoder-250718.1}/doc/graphics/keywords/attach.md +0 -0
  132. {easycoder-250706.1 → easycoder-250718.1}/doc/graphics/keywords/close.md +0 -0
  133. {easycoder-250706.1 → easycoder-250718.1}/doc/graphics/keywords/create.md +0 -0
  134. {easycoder-250706.1 → easycoder-250718.1}/doc/graphics/keywords/ellipse.md +0 -0
  135. {easycoder-250706.1 → easycoder-250718.1}/doc/graphics/keywords/image.md +0 -0
  136. {easycoder-250706.1 → easycoder-250718.1}/doc/graphics/keywords/move.md +0 -0
  137. {easycoder-250706.1 → easycoder-250718.1}/doc/graphics/keywords/on.md +0 -0
  138. {easycoder-250706.1 → easycoder-250718.1}/doc/graphics/keywords/rectangle.md +0 -0
  139. {easycoder-250706.1 → easycoder-250718.1}/doc/graphics/keywords/render.md +0 -0
  140. {easycoder-250706.1 → easycoder-250718.1}/doc/graphics/keywords/run.md +0 -0
  141. {easycoder-250706.1 → easycoder-250718.1}/doc/graphics/keywords/set.md +0 -0
  142. {easycoder-250706.1 → easycoder-250718.1}/doc/graphics/keywords/text.md +0 -0
  143. {easycoder-250706.1 → easycoder-250718.1}/doc/graphics/values/attribute.md +0 -0
  144. {easycoder-250706.1 → easycoder-250718.1}/doc/graphics/values/window.md +0 -0
  145. {easycoder-250706.1 → easycoder-250718.1}/easycoder/README.md +0 -0
  146. {easycoder-250706.1 → easycoder-250718.1}/easycoder/ec_classes.py +0 -0
  147. {easycoder-250706.1 → easycoder-250718.1}/easycoder/ec_compiler.py +0 -0
  148. {easycoder-250706.1 → easycoder-250718.1}/easycoder/ec_condition.py +0 -0
  149. {easycoder-250706.1 → easycoder-250718.1}/easycoder/ec_handler.py +0 -0
  150. {easycoder-250706.1 → easycoder-250718.1}/easycoder/ec_timestamp.py +0 -0
  151. {easycoder-250706.1 → easycoder-250718.1}/easycoder/ec_value.py +0 -0
  152. {easycoder-250706.1 → easycoder-250718.1}/images/Semoigo Dawn.jpg +0 -0
  153. {easycoder-250706.1 → easycoder-250718.1}/json/graphics-demo.json +0 -0
  154. {easycoder-250706.1 → easycoder-250718.1}/plugins/ec_keyboard.py +0 -0
  155. {easycoder-250706.1 → easycoder-250718.1}/plugins/ec_p100.py +0 -0
  156. {easycoder-250706.1 → easycoder-250718.1}/plugins/ec_pyside6.py +0 -0
  157. {easycoder-250706.1 → easycoder-250718.1}/plugins/points.py +0 -0
  158. {easycoder-250706.1 → easycoder-250718.1}/pyproject.toml +0 -0
  159. {easycoder-250706.1 → easycoder-250718.1}/scripts/benchmark.ecs +0 -0
  160. {easycoder-250706.1 → easycoder-250718.1}/scripts/config.ecg +0 -0
  161. {easycoder-250706.1 → easycoder-250718.1}/scripts/ec_keyboard.py +0 -0
  162. {easycoder-250706.1 → easycoder-250718.1}/scripts/findxr.ecs +0 -0
  163. {easycoder-250706.1 → easycoder-250718.1}/scripts/fizzbuzz.ecs +0 -0
  164. {easycoder-250706.1 → easycoder-250718.1}/scripts/hello.ecs +0 -0
  165. {easycoder-250706.1 → easycoder-250718.1}/scripts/points.ecs +0 -0
  166. {easycoder-250706.1 → easycoder-250718.1}/scripts/test.ecs +0 -0
  167. {easycoder-250706.1 → easycoder-250718.1}/scripts/tests.ecs +0 -0
  168. {easycoder-250706.1 → easycoder-250718.1}/testrc.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: easycoder
3
- Version: 250706.1
3
+ Version: 250718.1
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>
@@ -9,4 +9,4 @@ from .ec_program import *
9
9
  from .ec_timestamp import *
10
10
  from .ec_value import *
11
11
 
12
- __version__ = "250706.1"
12
+ __version__ = "250718.1"
@@ -1941,9 +1941,6 @@ class Core(Handler):
1941
1941
  if keyword == 'module':
1942
1942
  value['type'] = 'module'
1943
1943
  return value
1944
-
1945
- if keyword == 'ssh':
1946
- pass
1947
1944
 
1948
1945
  if keyword in ['ssh', 'variable']:
1949
1946
  value['type'] = 'symbol'
@@ -2638,7 +2635,7 @@ class Core(Handler):
2638
2635
  v = self.getRuntimeValue(v['content'])
2639
2636
  value = {}
2640
2637
  value['type'] = 'int'
2641
- value['content'] = int(v)
2638
+ value['content'] = int(v) if v != '' else 0
2642
2639
  return value
2643
2640
 
2644
2641
  def v_weekday(self, v):
@@ -149,14 +149,14 @@ class Program:
149
149
  elif valType == 'symbol':
150
150
  name = value['name']
151
151
  symbolRecord = self.getSymbolRecord(name)
152
- if symbolRecord['hasValue']:
153
- handler = self.domainIndex[symbolRecord['domain']].valueHandler('symbol')
154
- result = handler(symbolRecord)
155
- else:
156
- # Call the given domain to handle a value
157
- domain = self.domainIndex[value['domain']]
158
- handler = domain.valueHandler(value['type'])
159
- if handler: result = handler(value)
152
+ # if symbolRecord['hasValue']:
153
+ handler = self.domainIndex[symbolRecord['domain']].valueHandler('symbol')
154
+ result = handler(symbolRecord)
155
+ # else:
156
+ # # Call the given domain to handle a value
157
+ # # domain = self.domainIndex[value['domain']]
158
+ # handler = domain.valueHandler(value['type'])
159
+ # if handler: result = handler(value)
160
160
  else:
161
161
  # Call the given domain to handle a value
162
162
  domain = self.domainIndex[value['domain']]
@@ -326,10 +326,9 @@ class Graphics(Handler):
326
326
  if self.peek() == 'title':
327
327
  self.nextToken()
328
328
  title = self.nextValue()
329
- elif self.peek() == 'layout':
329
+ elif self.peek() == 'type':
330
330
  self.nextToken()
331
- if self.nextIsSymbol():
332
- command['layout'] = self.getSymbolRecord()['name']
331
+ command['type'] = self.nextToken()
333
332
  else: break
334
333
  command['title'] = title
335
334
  self.add(command)
@@ -462,14 +461,18 @@ class Graphics(Handler):
462
461
  return self.nextPC()
463
462
 
464
463
  def r_createDialog(self, command, record):
465
- layout = self.getVariable(command['layout'])['widget']
466
464
  dialog = QDialog()
465
+ mainLayout = QVBoxLayout(dialog)
467
466
  dialog.setWindowTitle(self.getRuntimeValue(command['title']))
468
- dialog.buttonBox = QDialogButtonBox((QDialogButtonBox.Ok | QDialogButtonBox.Cancel))
469
- dialog.buttonBox.accepted.connect(dialog.accept)
470
- dialog.buttonBox.rejected.connect(dialog.reject)
471
- layout.addWidget(dialog.buttonBox)
472
- dialog.setLayout(layout)
467
+ dialogType = command['type']
468
+ if dialogType in ['lineinput']:
469
+ if dialogType == 'lineinput':
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)
473
476
  record['dialog'] = dialog
474
477
  return self.nextPC()
475
478
 
@@ -501,7 +504,7 @@ class Graphics(Handler):
501
504
 
502
505
  # Declare a dialog variable
503
506
  def k_dialog(self, command):
504
- return self.compileVariable(command)
507
+ return self.compileVariable(command, 'gui')
505
508
 
506
509
  def r_dialog(self, command):
507
510
  return self.nextPC()
@@ -947,8 +950,9 @@ class Graphics(Handler):
947
950
  window = self.getVariable(command['window'])['window']
948
951
  window.show()
949
952
  elif 'dialog' in command:
950
- dialog = self.getVariable(command['dialog'])['dialog']
951
- dialog.exec()
953
+ record = self.getVariable(command['dialog'])
954
+ dialog = record['dialog']
955
+ record['result'] = dialog.exec()
952
956
  return self.nextPC()
953
957
 
954
958
  # Start the graphics
@@ -1067,6 +1071,13 @@ class Graphics(Handler):
1067
1071
  v['type'] = 'boolean'
1068
1072
  v['content'] = content
1069
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
1070
1081
  return None
1071
1082
 
1072
1083
  def v_count(self, v):
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes