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.
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/PKG-INFO +1 -1
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/_version.py +3 -3
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/logs/__init__.py +29 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/models/code_text.py +7 -3
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/services/task_runner.py +2 -2
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/code/code_edit.py +2 -1
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit.egg-info/PKG-INFO +1 -1
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/MANIFEST.in +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/README.md +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/__init__.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/application/__init__.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/application/application.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/application/garbage_collector.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/colors/__init__.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/config/__init__.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/config/base.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/config/composite.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/config/default.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/config/environment.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/config/multi_json_file.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/config/with_signal.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/config/with_value_changed.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/data/__init__.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/data/bits.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/data/cache.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/data/interval.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/data/names.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/datetime/__init__.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/datetime/datetime.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/datetime/qdatetime.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/dependencies/__init__.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/errors/__init__.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/filesystem/__init__.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/metadata/__init__.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/metadata/dataframe_metadata_manager.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/metadata/dict_metadata_manager.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/metadata/id_generator.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/metadata/metadata_manager_base.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/models/__init__.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/models/dataframetable.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/models/dictpropertytree.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/models/dicttable.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/models/json_text.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/models/list_model.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/models/module.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/models/roles.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/models/series_data.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/models/span.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/models/validation.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/modules/__init__.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/modules/events/__init__.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/modules/events/add_signal.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/modules/events/module_opening.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/modules/events/rejectable.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/modules/launcher_config.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/modules/module.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/properties/__init__.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/properties/auto.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/properties/throttled.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/scripting/__init__.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/scripting/script_context.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/scripting/script_runner.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/scripting/script_template.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/services/__init__.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/services/autosave.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/services/email.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/services/event_registry.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/services/file_dialog.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/services/hotkey_manager.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/services/link_manager.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/services/message_board.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/services/module_service.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/services/object_converter.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/services/project_updater.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/services/theme_manager.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/services/tool_window_service.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/viewmanagers/__init__.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/viewmanagers/tool.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/__init__.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/bulk_value_selector.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/check_box.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/code/__init__.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/code/python_syntax.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/combo_box.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/count_selector.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/datetime.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/datetime_range_selector.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/default_text_line_edit.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/delegates.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/dtype_edit.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/editable_combo_box.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/file_selector.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/icon.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/icon_button.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/json_edit.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/labelled.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/layout/__init__.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/layout/collabsible.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/layout/group_box.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/layout/group_panel.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/layout/lines.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/layout/link.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/line_edit.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/linkable.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/list_view.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/main_window.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/metadata_selector.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/modulewindow.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/plot/__init__.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/plot/legend_control.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/plot/matplotlib/__init__.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/plot/matplotlib/base.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/plot/matplotlib/colorbar.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/plot/matplotlib/colormap.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/plot/matplotlib/font.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/plot/plot_options.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/plot/plot_toolbar_options.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/plot/size.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/plot/tool_type.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/plot/toolbar.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/popout.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/popup.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/property_tree.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/shrunk_push_button.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/steppable_combo_box.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/styleable.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/table.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/text_edit.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/views/tool_window.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit.egg-info/SOURCES.txt +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit.egg-info/dependency_links.txt +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit.egg-info/requires.txt +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit.egg-info/top_level.txt +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/setup.cfg +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/setup.py +0 -0
- {pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/versioneer.py +0 -0
|
@@ -8,11 +8,11 @@ import json
|
|
|
8
8
|
|
|
9
9
|
version_json = '''
|
|
10
10
|
{
|
|
11
|
-
"date": "2023-11-
|
|
11
|
+
"date": "2023-11-30T14:17:40+0000",
|
|
12
12
|
"dirty": false,
|
|
13
13
|
"error": null,
|
|
14
|
-
"full-revisionid": "
|
|
15
|
-
"version": "0.7.
|
|
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(
|
|
31
|
+
outputChanged = pyqtSignal(LogStream)
|
|
31
32
|
validationMessageChanged = pyqtSignal(str)
|
|
32
33
|
|
|
33
34
|
text = AutoProperty(str)
|
|
34
|
-
output = AutoProperty(
|
|
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 =
|
|
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:
|
|
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
|
|
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
|
|
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
|
{pyqttoolkit-0.7.17 → pyqttoolkit-0.7.19}/pyqttoolkit/metadata/dataframe_metadata_manager.py
RENAMED
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
File without changes
|
|
File without changes
|
|
File without changes
|