pyqttoolkit 0.7.17__tar.gz → 0.7.19__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.
Files changed (136) hide show
  1. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/PKG-INFO +1 -1
  2. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/_version.py +3 -3
  3. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/logs/__init__.py +29 -0
  4. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/models/code_text.py +7 -3
  5. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/services/task_runner.py +2 -2
  6. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/code/code_edit.py +2 -1
  7. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit.egg-info/PKG-INFO +1 -1
  8. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/MANIFEST.in +0 -0
  9. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/README.md +0 -0
  10. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/__init__.py +0 -0
  11. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/application/__init__.py +0 -0
  12. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/application/application.py +0 -0
  13. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/application/garbage_collector.py +0 -0
  14. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/colors/__init__.py +0 -0
  15. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/config/__init__.py +0 -0
  16. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/config/base.py +0 -0
  17. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/config/composite.py +0 -0
  18. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/config/default.py +0 -0
  19. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/config/environment.py +0 -0
  20. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/config/multi_json_file.py +0 -0
  21. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/config/with_signal.py +0 -0
  22. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/config/with_value_changed.py +0 -0
  23. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/data/__init__.py +0 -0
  24. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/data/bits.py +0 -0
  25. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/data/cache.py +0 -0
  26. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/data/interval.py +0 -0
  27. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/data/names.py +0 -0
  28. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/datetime/__init__.py +0 -0
  29. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/datetime/datetime.py +0 -0
  30. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/datetime/qdatetime.py +0 -0
  31. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/dependencies/__init__.py +0 -0
  32. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/errors/__init__.py +0 -0
  33. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/filesystem/__init__.py +0 -0
  34. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/metadata/__init__.py +0 -0
  35. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/metadata/dataframe_metadata_manager.py +0 -0
  36. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/metadata/dict_metadata_manager.py +0 -0
  37. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/metadata/id_generator.py +0 -0
  38. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/metadata/metadata_manager_base.py +0 -0
  39. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/models/__init__.py +0 -0
  40. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/models/dataframetable.py +0 -0
  41. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/models/dictpropertytree.py +0 -0
  42. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/models/dicttable.py +0 -0
  43. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/models/json_text.py +0 -0
  44. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/models/list_model.py +0 -0
  45. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/models/module.py +0 -0
  46. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/models/roles.py +0 -0
  47. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/models/series_data.py +0 -0
  48. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/models/span.py +0 -0
  49. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/models/validation.py +0 -0
  50. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/modules/__init__.py +0 -0
  51. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/modules/events/__init__.py +0 -0
  52. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/modules/events/add_signal.py +0 -0
  53. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/modules/events/module_opening.py +0 -0
  54. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/modules/events/rejectable.py +0 -0
  55. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/modules/launcher_config.py +0 -0
  56. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/modules/module.py +0 -0
  57. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/properties/__init__.py +0 -0
  58. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/properties/auto.py +0 -0
  59. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/properties/throttled.py +0 -0
  60. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/scripting/__init__.py +0 -0
  61. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/scripting/script_context.py +0 -0
  62. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/scripting/script_runner.py +0 -0
  63. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/scripting/script_template.py +0 -0
  64. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/services/__init__.py +0 -0
  65. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/services/autosave.py +0 -0
  66. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/services/email.py +0 -0
  67. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/services/event_registry.py +0 -0
  68. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/services/file_dialog.py +0 -0
  69. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/services/hotkey_manager.py +0 -0
  70. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/services/link_manager.py +0 -0
  71. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/services/message_board.py +0 -0
  72. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/services/module_service.py +0 -0
  73. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/services/object_converter.py +0 -0
  74. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/services/project_updater.py +0 -0
  75. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/services/theme_manager.py +0 -0
  76. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/services/tool_window_service.py +0 -0
  77. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/viewmanagers/__init__.py +0 -0
  78. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/viewmanagers/tool.py +0 -0
  79. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/__init__.py +0 -0
  80. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/bulk_value_selector.py +0 -0
  81. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/check_box.py +0 -0
  82. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/code/__init__.py +0 -0
  83. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/code/python_syntax.py +0 -0
  84. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/combo_box.py +0 -0
  85. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/count_selector.py +0 -0
  86. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/datetime.py +0 -0
  87. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/datetime_range_selector.py +0 -0
  88. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/default_text_line_edit.py +0 -0
  89. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/delegates.py +0 -0
  90. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/dtype_edit.py +0 -0
  91. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/editable_combo_box.py +0 -0
  92. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/file_selector.py +0 -0
  93. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/icon.py +0 -0
  94. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/icon_button.py +0 -0
  95. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/json_edit.py +0 -0
  96. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/labelled.py +0 -0
  97. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/layout/__init__.py +0 -0
  98. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/layout/collabsible.py +0 -0
  99. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/layout/group_box.py +0 -0
  100. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/layout/group_panel.py +0 -0
  101. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/layout/lines.py +0 -0
  102. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/layout/link.py +0 -0
  103. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/line_edit.py +0 -0
  104. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/linkable.py +0 -0
  105. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/list_view.py +0 -0
  106. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/main_window.py +0 -0
  107. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/metadata_selector.py +0 -0
  108. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/modulewindow.py +0 -0
  109. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/plot/__init__.py +0 -0
  110. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/plot/legend_control.py +0 -0
  111. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/plot/matplotlib/__init__.py +0 -0
  112. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/plot/matplotlib/base.py +0 -0
  113. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/plot/matplotlib/colorbar.py +0 -0
  114. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/plot/matplotlib/colormap.py +0 -0
  115. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/plot/matplotlib/font.py +0 -0
  116. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/plot/plot_options.py +0 -0
  117. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/plot/plot_toolbar_options.py +0 -0
  118. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/plot/size.py +0 -0
  119. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/plot/tool_type.py +0 -0
  120. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/plot/toolbar.py +0 -0
  121. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/popout.py +0 -0
  122. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/popup.py +0 -0
  123. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/property_tree.py +0 -0
  124. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/shrunk_push_button.py +0 -0
  125. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/steppable_combo_box.py +0 -0
  126. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/styleable.py +0 -0
  127. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/table.py +0 -0
  128. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/text_edit.py +0 -0
  129. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/tool_window.py +0 -0
  130. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit.egg-info/SOURCES.txt +0 -0
  131. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit.egg-info/dependency_links.txt +0 -0
  132. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit.egg-info/requires.txt +0 -0
  133. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit.egg-info/top_level.txt +0 -0
  134. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/setup.cfg +0 -0
  135. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/setup.py +0 -0
  136. {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/versioneer.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: pyqttoolkit
3
- Version: 0.7.17
3
+ Version: 0.7.19
4
4
  Summary: A toolkit for PyQt 5
5
5
  Home-page: https://github.com/Simmovation/pyqttoolkit
6
6
  Author: Simmovation Ltd
@@ -8,11 +8,11 @@ import json
8
8
 
9
9
  version_json = '''
10
10
  {
11
- "date": "2023-11-14T16:08:41+0000",
11
+ "date": "2023-11-30T14:17:40+0000",
12
12
  "dirty": false,
13
13
  "error": null,
14
- "full-revisionid": "6ea766f9669e1f37295ab7d55240d2da4f6f521a",
15
- "version": "0.7.17"
14
+ "full-revisionid": "d6e6bf0240ca9ca38bab15aee03585197d0020a7",
15
+ "version": "0.7.19"
16
16
  }
17
17
  ''' # END VERSION_JSON
18
18
 
@@ -14,6 +14,8 @@
14
14
  # You should have received a copy of the GNU General Public License
15
15
  # along with this program; if not, write to the Free Software Foundation,
16
16
  # Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
17
+ from typing import Callable
18
+ from io import StringIO
17
19
  import logging
18
20
  from logging import handlers
19
21
  from functools import wraps
@@ -109,3 +111,30 @@ def logf(level, log_args=True):
109
111
  return result
110
112
  return _
111
113
  return logf_decorator
114
+
115
+
116
+ class LogStream:
117
+ def __init__(self, notify_update: Callable = None):
118
+ self._buffer = StringIO()
119
+ self._notify_update = notify_update
120
+
121
+ def __iadd__(self, other):
122
+ self.write(other)
123
+ return self
124
+
125
+ def write(self, message):
126
+ self._buffer.write(message)
127
+ if self._notify_update:
128
+ self._notify_update()
129
+
130
+ def flush(self):
131
+ self._buffer.flush()
132
+
133
+ def getvalue(self):
134
+ return self._buffer.getvalue()
135
+
136
+ def clear(self):
137
+ self._buffer.close()
138
+ self._buffer = StringIO()
139
+ if self._notify_update:
140
+ self._notify_update()
@@ -17,6 +17,7 @@
17
17
  from PyQt5.QtCore import QObject, pyqtSignal
18
18
 
19
19
  from pyqttoolkit.properties import AutoProperty
20
+ from pyqttoolkit.logs import LogStream
20
21
 
21
22
  class CodeTextModel(QObject):
22
23
  def __init__(self, parent, validator):
@@ -24,16 +25,19 @@ class CodeTextModel(QObject):
24
25
  self.textChanged.connect(self._validate)
25
26
  self._validator = validator
26
27
  self.text = ''
27
- self.output = ''
28
+ self.output = LogStream(self._handle_output_buffer_changed)
28
29
 
29
30
  textChanged = pyqtSignal(str)
30
- outputChanged = pyqtSignal(str)
31
+ outputChanged = pyqtSignal(LogStream)
31
32
  validationMessageChanged = pyqtSignal(str)
32
33
 
33
34
  text = AutoProperty(str)
34
- output = AutoProperty(str)
35
+ output = AutoProperty(LogStream)
35
36
  validationMessage = AutoProperty(str)
36
37
 
37
38
  def _validate(self, value):
38
39
  validation_model = self._validator(value)
39
40
  self.validationMessage = validation_model.error if validation_model else ''
41
+
42
+ def _handle_output_buffer_changed(self):
43
+ self.outputChanged.emit(self.output)
@@ -178,7 +178,7 @@ class TaskRunner(QObject):
178
178
  self._is_cancelled = False
179
179
  self._executor = ThreadPoolExecutor(max_workers=1, thread_name_prefix='TaskRunner_Thread')
180
180
 
181
- def run_task(self, task_function, task_args=None, on_completed=None, on_cancelled=None, on_error=None, description=None, error_description=None, show_progress=True, cancellable=False, **kwargs):
181
+ def run_task(self, task_function, task_args=None, on_completed=None, on_cancelled=None, on_error=None, description=None, error_description=None, show_progress=True, cancellable=False, force_indeterminate_start=False, **kwargs):
182
182
  """function::runTask(self, task_function, task_args, on_completed, on_error)
183
183
  :param task_function: The function to execute
184
184
  :param task_args: The arguments to pass to the function
@@ -194,7 +194,7 @@ class TaskRunner(QObject):
194
194
 
195
195
  if 'update_progress' in parameters:
196
196
  kwargs['update_progress'] = self.update_progress
197
- indeterminate = False
197
+ indeterminate = force_indeterminate_start
198
198
  else:
199
199
  indeterminate = True
200
200
 
@@ -194,7 +194,7 @@ class CodeEdit(QWidget):
194
194
  self._text_edit.setPlainText(model.text)
195
195
  model.textChanged.connect(self._set_text(self._text_edit))
196
196
  if hasattr(model, 'output'):
197
- self._output_pane.setPlainText(model.output)
197
+ self._output_pane.setPlainText(model.output.getvalue())
198
198
  model.outputChanged.connect(self._set_text(self._output_pane, True))
199
199
  self._output_pane.setVisible(True)
200
200
  else:
@@ -207,6 +207,7 @@ class CodeEdit(QWidget):
207
207
  def _(text):
208
208
  widget_inst = widget_ref()
209
209
  if widget_inst:
210
+ text = text if isinstance(text, str) else text.getvalue()
210
211
  if widget_inst.toPlainText() != text:
211
212
  widget_inst.setPlainText(text)
212
213
  if scroll_to_end:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: pyqttoolkit
3
- Version: 0.7.17
3
+ Version: 0.7.19
4
4
  Summary: A toolkit for PyQt 5
5
5
  Home-page: https://github.com/Simmovation/pyqttoolkit
6
6
  Author: Simmovation Ltd
File without changes
File without changes
File without changes
File without changes
File without changes