PyBreeze 1.0.7__tar.gz → 1.0.9__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.
- {pybreeze-1.0.7 → pybreeze-1.0.9}/PKG-INFO +3 -2
- {pybreeze-1.0.7 → pybreeze-1.0.9}/pybreeze/__init__.py +2 -2
- {pybreeze-1.0.7 → pybreeze-1.0.9}/pybreeze/extend/process_executor/api_testka/api_testka_process.py +5 -5
- {pybreeze-1.0.7 → pybreeze-1.0.9}/pybreeze/extend/process_executor/auto_control/auto_control_process.py +5 -5
- {pybreeze-1.0.7 → pybreeze-1.0.9}/pybreeze/extend/process_executor/file_automation/file_automation_process.py +5 -5
- {pybreeze-1.0.7 → pybreeze-1.0.9}/pybreeze/extend/process_executor/load_density/load_density_process.py +5 -5
- {pybreeze-1.0.7 → pybreeze-1.0.9}/pybreeze/extend/process_executor/mail_thunder/mail_thunder_process.py +2 -2
- {pybreeze-1.0.7 → pybreeze-1.0.9}/pybreeze/extend/process_executor/process_executor_utils.py +3 -3
- {pybreeze-1.0.7 → pybreeze-1.0.9}/pybreeze/extend/process_executor/test_pioneer/test_pioneer_process_manager.py +4 -4
- {pybreeze-1.0.7 → pybreeze-1.0.9}/pybreeze/extend/process_executor/web_runner/web_runner_process.py +5 -5
- {pybreeze-1.0.7/pybreeze/pybreeze_ui → pybreeze-1.0.9/pybreeze}/extend_multi_language/extend_english.py +6 -0
- {pybreeze-1.0.7/pybreeze/pybreeze_ui → pybreeze-1.0.9/pybreeze}/extend_multi_language/extend_traditional_chinese.py +6 -0
- pybreeze-1.0.9/pybreeze/extend_multi_language/update_language_dict.py +8 -0
- {pybreeze-1.0.7 → pybreeze-1.0.9}/pybreeze/pybreeze_ui/editor_main/main_ui.py +4 -6
- pybreeze-1.0.9/pybreeze/pybreeze_ui/jupyter_lab_gui/jupyer_lab_thread.py +95 -0
- pybreeze-1.0.9/pybreeze/pybreeze_ui/jupyter_lab_gui/jupyter_lab_widget.py +56 -0
- {pybreeze-1.0.7 → pybreeze-1.0.9}/pybreeze/pybreeze_ui/menu/automation_menu/api_testka_menu/build_api_testka_menu.py +3 -3
- {pybreeze-1.0.7 → pybreeze-1.0.9}/pybreeze/pybreeze_ui/menu/automation_menu/auto_control_menu/build_autocontrol_menu.py +4 -4
- {pybreeze-1.0.7 → pybreeze-1.0.9}/pybreeze/pybreeze_ui/menu/automation_menu/automation_file_menu/build_automation_file_menu.py +2 -2
- {pybreeze-1.0.7 → pybreeze-1.0.9}/pybreeze/pybreeze_ui/menu/automation_menu/load_density_menu/build_load_density_menu.py +3 -3
- {pybreeze-1.0.7 → pybreeze-1.0.9}/pybreeze/pybreeze_ui/menu/automation_menu/mail_thunder_menu/build_mail_thunder_menu.py +2 -2
- {pybreeze-1.0.7 → pybreeze-1.0.9}/pybreeze/pybreeze_ui/menu/automation_menu/test_pioneer_menu/build_test_pioneer_menu.py +3 -3
- {pybreeze-1.0.7 → pybreeze-1.0.9}/pybreeze/pybreeze_ui/menu/automation_menu/web_runner_menu/build_webrunner_menu.py +2 -2
- {pybreeze-1.0.7 → pybreeze-1.0.9}/pybreeze/pybreeze_ui/menu/build_menubar.py +15 -13
- pybreeze-1.0.9/pybreeze/pybreeze_ui/menu/extend_jeditor_tab_menu/jupyter_lab_tab.py +31 -0
- {pybreeze-1.0.7 → pybreeze-1.0.9}/pybreeze/pybreeze_ui/menu/install_menu/automation_menu/build_automation_install_menu.py +8 -8
- {pybreeze-1.0.7 → pybreeze-1.0.9}/pybreeze/pybreeze_ui/menu/install_menu/install_utils.py +2 -2
- {pybreeze-1.0.7 → pybreeze-1.0.9}/pybreeze/pybreeze_ui/menu/install_menu/tools_menu/build_tool_install_menu.py +3 -3
- {pybreeze-1.0.7 → pybreeze-1.0.9}/pybreeze/pybreeze_ui/menu/menu_utils.py +2 -2
- {pybreeze-1.0.7 → pybreeze-1.0.9}/pybreeze/pybreeze_ui/menu/tools/tools_menu.py +4 -4
- {pybreeze-1.0.7 → pybreeze-1.0.9}/pybreeze/pybreeze_ui/syntax/syntax_extend.py +2 -2
- {pybreeze-1.0.7 → pybreeze-1.0.9}/pybreeze/utils/logging/logger.py +6 -4
- pybreeze-1.0.9/pybreeze/utils/manager/__init__.py +0 -0
- pybreeze-1.0.9/pybreeze/utils/manager/package_manager/__init__.py +0 -0
- {pybreeze-1.0.7 → pybreeze-1.0.9}/pybreeze.egg-info/PKG-INFO +3 -2
- {pybreeze-1.0.7 → pybreeze-1.0.9}/pybreeze.egg-info/SOURCES.txt +9 -4
- {pybreeze-1.0.7 → pybreeze-1.0.9}/pybreeze.egg-info/requires.txt +2 -1
- {pybreeze-1.0.7 → pybreeze-1.0.9}/pyproject.toml +3 -2
- pybreeze-1.0.7/pybreeze/pybreeze_ui/extend_multi_language/update_language_dict.py +0 -8
- {pybreeze-1.0.7 → pybreeze-1.0.9}/LICENSE +0 -0
- {pybreeze-1.0.7 → pybreeze-1.0.9}/README.md +0 -0
- {pybreeze-1.0.7 → pybreeze-1.0.9}/pybreeze/__main__.py +0 -0
- {pybreeze-1.0.7 → pybreeze-1.0.9}/pybreeze/extend/__init__.py +0 -0
- {pybreeze-1.0.7 → pybreeze-1.0.9}/pybreeze/extend/mail_thunder_extend/__init__.py +0 -0
- {pybreeze-1.0.7 → pybreeze-1.0.9}/pybreeze/extend/mail_thunder_extend/mail_thunder_setting.py +0 -0
- {pybreeze-1.0.7 → pybreeze-1.0.9}/pybreeze/extend/process_executor/__init__.py +0 -0
- {pybreeze-1.0.7 → pybreeze-1.0.9}/pybreeze/extend/process_executor/api_testka/__init__.py +0 -0
- {pybreeze-1.0.7 → pybreeze-1.0.9}/pybreeze/extend/process_executor/auto_control/__init__.py +0 -0
- {pybreeze-1.0.7 → pybreeze-1.0.9}/pybreeze/extend/process_executor/file_automation/__init__.py +0 -0
- {pybreeze-1.0.7 → pybreeze-1.0.9}/pybreeze/extend/process_executor/load_density/__init__.py +0 -0
- {pybreeze-1.0.7 → pybreeze-1.0.9}/pybreeze/extend/process_executor/mail_thunder/__init__.py +0 -0
- {pybreeze-1.0.7 → pybreeze-1.0.9}/pybreeze/extend/process_executor/python_task_process_manager.py +0 -0
- {pybreeze-1.0.7 → pybreeze-1.0.9}/pybreeze/extend/process_executor/test_pioneer/__init__.py +0 -0
- {pybreeze-1.0.7 → pybreeze-1.0.9}/pybreeze/extend/process_executor/web_runner/__init__.py +0 -0
- {pybreeze-1.0.7/pybreeze/pybreeze_ui → pybreeze-1.0.9/pybreeze/extend_multi_language}/__init__.py +0 -0
- {pybreeze-1.0.7/pybreeze/pybreeze_ui/connect_gui → pybreeze-1.0.9/pybreeze/pybreeze_ui}/__init__.py +0 -0
- {pybreeze-1.0.7/pybreeze/pybreeze_ui/connect_gui/ssh → pybreeze-1.0.9/pybreeze/pybreeze_ui/connect_gui}/__init__.py +0 -0
- {pybreeze-1.0.7/pybreeze/pybreeze_ui/connect_gui/url → pybreeze-1.0.9/pybreeze/pybreeze_ui/connect_gui/ssh}/__init__.py +0 -0
- {pybreeze-1.0.7 → pybreeze-1.0.9}/pybreeze/pybreeze_ui/connect_gui/ssh/ssh_command_widget.py +0 -0
- {pybreeze-1.0.7 → pybreeze-1.0.9}/pybreeze/pybreeze_ui/connect_gui/ssh/ssh_file_viewer_widget.py +0 -0
- {pybreeze-1.0.7 → pybreeze-1.0.9}/pybreeze/pybreeze_ui/connect_gui/ssh/ssh_login_widget.py +0 -0
- {pybreeze-1.0.7 → pybreeze-1.0.9}/pybreeze/pybreeze_ui/connect_gui/ssh/ssh_main_widget.py +0 -0
- {pybreeze-1.0.7/pybreeze/pybreeze_ui/editor_main → pybreeze-1.0.9/pybreeze/pybreeze_ui/connect_gui/url}/__init__.py +0 -0
- {pybreeze-1.0.7 → pybreeze-1.0.9}/pybreeze/pybreeze_ui/connect_gui/url/ai_code_review_gui.py +0 -0
- {pybreeze-1.0.7/pybreeze/pybreeze_ui/extend_ai_gui → pybreeze-1.0.9/pybreeze/pybreeze_ui/editor_main}/__init__.py +0 -0
- {pybreeze-1.0.7/pybreeze/pybreeze_ui/extend_ai_gui/code_review → pybreeze-1.0.9/pybreeze/pybreeze_ui/extend_ai_gui}/__init__.py +0 -0
- {pybreeze-1.0.7 → pybreeze-1.0.9}/pybreeze/pybreeze_ui/extend_ai_gui/ai_gui_global_variable.py +0 -0
- {pybreeze-1.0.7/pybreeze/pybreeze_ui/extend_ai_gui/prompt_edit_gui → pybreeze-1.0.9/pybreeze/pybreeze_ui/extend_ai_gui/code_review}/__init__.py +0 -0
- {pybreeze-1.0.7 → pybreeze-1.0.9}/pybreeze/pybreeze_ui/extend_ai_gui/code_review/code_review_thread.py +0 -0
- {pybreeze-1.0.7 → pybreeze-1.0.9}/pybreeze/pybreeze_ui/extend_ai_gui/code_review/cot_code_review_gui.py +0 -0
- {pybreeze-1.0.7/pybreeze/pybreeze_ui/extend_ai_gui/prompt_edit_gui/cot_code_review_prompt_templates → pybreeze-1.0.9/pybreeze/pybreeze_ui/extend_ai_gui/prompt_edit_gui}/__init__.py +0 -0
- {pybreeze-1.0.7/pybreeze/pybreeze_ui/extend_ai_gui/prompt_edit_gui/skills_prompt_templates → pybreeze-1.0.9/pybreeze/pybreeze_ui/extend_ai_gui/prompt_edit_gui/cot_code_review_prompt_templates}/__init__.py +0 -0
- {pybreeze-1.0.7 → pybreeze-1.0.9}/pybreeze/pybreeze_ui/extend_ai_gui/prompt_edit_gui/cot_code_review_prompt_templates/code_smell_detector.py +0 -0
- {pybreeze-1.0.7 → pybreeze-1.0.9}/pybreeze/pybreeze_ui/extend_ai_gui/prompt_edit_gui/cot_code_review_prompt_templates/first_code_review.py +0 -0
- {pybreeze-1.0.7 → pybreeze-1.0.9}/pybreeze/pybreeze_ui/extend_ai_gui/prompt_edit_gui/cot_code_review_prompt_templates/first_summary_prompt.py +0 -0
- {pybreeze-1.0.7 → pybreeze-1.0.9}/pybreeze/pybreeze_ui/extend_ai_gui/prompt_edit_gui/cot_code_review_prompt_templates/global_rule.py +0 -0
- {pybreeze-1.0.7 → pybreeze-1.0.9}/pybreeze/pybreeze_ui/extend_ai_gui/prompt_edit_gui/cot_code_review_prompt_templates/judge.py +0 -0
- {pybreeze-1.0.7 → pybreeze-1.0.9}/pybreeze/pybreeze_ui/extend_ai_gui/prompt_edit_gui/cot_code_review_prompt_templates/judge_single_review.py +0 -0
- {pybreeze-1.0.7 → pybreeze-1.0.9}/pybreeze/pybreeze_ui/extend_ai_gui/prompt_edit_gui/cot_code_review_prompt_templates/linter.py +0 -0
- {pybreeze-1.0.7 → pybreeze-1.0.9}/pybreeze/pybreeze_ui/extend_ai_gui/prompt_edit_gui/cot_code_review_prompt_templates/step_by_step_analysis.py +0 -0
- {pybreeze-1.0.7 → pybreeze-1.0.9}/pybreeze/pybreeze_ui/extend_ai_gui/prompt_edit_gui/cot_code_review_prompt_templates/total_summary.py +0 -0
- {pybreeze-1.0.7 → pybreeze-1.0.9}/pybreeze/pybreeze_ui/extend_ai_gui/prompt_edit_gui/cot_prompt_editor_widget.py +0 -0
- {pybreeze-1.0.7 → pybreeze-1.0.9}/pybreeze/pybreeze_ui/extend_ai_gui/prompt_edit_gui/skills_prompt_editor_widget.py +0 -0
- {pybreeze-1.0.7/pybreeze/pybreeze_ui/extend_ai_gui/skills → pybreeze-1.0.9/pybreeze/pybreeze_ui/extend_ai_gui/prompt_edit_gui/skills_prompt_templates}/__init__.py +0 -0
- {pybreeze-1.0.7 → pybreeze-1.0.9}/pybreeze/pybreeze_ui/extend_ai_gui/prompt_edit_gui/skills_prompt_templates/code_explainer.py +0 -0
- {pybreeze-1.0.7 → pybreeze-1.0.9}/pybreeze/pybreeze_ui/extend_ai_gui/prompt_edit_gui/skills_prompt_templates/code_review.py +0 -0
- {pybreeze-1.0.7/pybreeze/pybreeze_ui/extend_multi_language → pybreeze-1.0.9/pybreeze/pybreeze_ui/extend_ai_gui/skills}/__init__.py +0 -0
- {pybreeze-1.0.7 → pybreeze-1.0.9}/pybreeze/pybreeze_ui/extend_ai_gui/skills/skills_send_gui.py +0 -0
- {pybreeze-1.0.7/pybreeze/pybreeze_ui/menu → pybreeze-1.0.9/pybreeze/pybreeze_ui/jupyter_lab_gui}/__init__.py +0 -0
- {pybreeze-1.0.7/pybreeze/pybreeze_ui/menu/automation_menu → pybreeze-1.0.9/pybreeze/pybreeze_ui/menu}/__init__.py +0 -0
- {pybreeze-1.0.7/pybreeze/pybreeze_ui/menu/automation_menu/api_testka_menu → pybreeze-1.0.9/pybreeze/pybreeze_ui/menu/automation_menu}/__init__.py +0 -0
- {pybreeze-1.0.7/pybreeze/pybreeze_ui/menu/automation_menu/auto_control_menu → pybreeze-1.0.9/pybreeze/pybreeze_ui/menu/automation_menu/api_testka_menu}/__init__.py +0 -0
- {pybreeze-1.0.7/pybreeze/pybreeze_ui/menu/automation_menu/automation_file_menu → pybreeze-1.0.9/pybreeze/pybreeze_ui/menu/automation_menu/auto_control_menu}/__init__.py +0 -0
- {pybreeze-1.0.7/pybreeze/pybreeze_ui/menu/automation_menu/load_density_menu → pybreeze-1.0.9/pybreeze/pybreeze_ui/menu/automation_menu/automation_file_menu}/__init__.py +0 -0
- {pybreeze-1.0.7/pybreeze/pybreeze_ui/menu/automation_menu/mail_thunder_menu → pybreeze-1.0.9/pybreeze/pybreeze_ui/menu/automation_menu/load_density_menu}/__init__.py +0 -0
- {pybreeze-1.0.7/pybreeze/pybreeze_ui/menu/automation_menu/test_pioneer_menu → pybreeze-1.0.9/pybreeze/pybreeze_ui/menu/automation_menu/mail_thunder_menu}/__init__.py +0 -0
- {pybreeze-1.0.7/pybreeze/pybreeze_ui/menu/automation_menu/web_runner_menu → pybreeze-1.0.9/pybreeze/pybreeze_ui/menu/automation_menu/test_pioneer_menu}/__init__.py +0 -0
- {pybreeze-1.0.7/pybreeze/pybreeze_ui/menu/install_menu → pybreeze-1.0.9/pybreeze/pybreeze_ui/menu/automation_menu/web_runner_menu}/__init__.py +0 -0
- {pybreeze-1.0.7/pybreeze/pybreeze_ui/menu/install_menu/automation_menu → pybreeze-1.0.9/pybreeze/pybreeze_ui/menu/extend_jeditor_tab_menu}/__init__.py +0 -0
- {pybreeze-1.0.7/pybreeze/pybreeze_ui/menu/install_menu/tools_menu → pybreeze-1.0.9/pybreeze/pybreeze_ui/menu/install_menu}/__init__.py +0 -0
- {pybreeze-1.0.7/pybreeze/pybreeze_ui/menu/tools → pybreeze-1.0.9/pybreeze/pybreeze_ui/menu/install_menu/automation_menu}/__init__.py +0 -0
- {pybreeze-1.0.7/pybreeze/pybreeze_ui/show_code_window → pybreeze-1.0.9/pybreeze/pybreeze_ui/menu/install_menu/tools_menu}/__init__.py +0 -0
- {pybreeze-1.0.7/pybreeze/pybreeze_ui/syntax → pybreeze-1.0.9/pybreeze/pybreeze_ui/menu/tools}/__init__.py +0 -0
- {pybreeze-1.0.7/pybreeze/utils → pybreeze-1.0.9/pybreeze/pybreeze_ui/show_code_window}/__init__.py +0 -0
- {pybreeze-1.0.7 → pybreeze-1.0.9}/pybreeze/pybreeze_ui/show_code_window/code_window.py +0 -0
- {pybreeze-1.0.7/pybreeze/utils/exception → pybreeze-1.0.9/pybreeze/pybreeze_ui/syntax}/__init__.py +0 -0
- {pybreeze-1.0.7 → pybreeze-1.0.9}/pybreeze/pybreeze_ui/syntax/syntax_keyword.py +0 -0
- {pybreeze-1.0.7/pybreeze/utils/file_process → pybreeze-1.0.9/pybreeze/utils}/__init__.py +0 -0
- {pybreeze-1.0.7/pybreeze/utils/logging → pybreeze-1.0.9/pybreeze/utils/exception}/__init__.py +0 -0
- {pybreeze-1.0.7 → pybreeze-1.0.9}/pybreeze/utils/exception/exception_tags.py +0 -0
- {pybreeze-1.0.7 → pybreeze-1.0.9}/pybreeze/utils/exception/exceptions.py +0 -0
- {pybreeze-1.0.7/pybreeze/utils/manager → pybreeze-1.0.9/pybreeze/utils/file_process}/__init__.py +0 -0
- {pybreeze-1.0.7 → pybreeze-1.0.9}/pybreeze/utils/file_process/get_dir_file_list.py +0 -0
- {pybreeze-1.0.7 → pybreeze-1.0.9}/pybreeze/utils/json_format/__init__.py +0 -0
- {pybreeze-1.0.7 → pybreeze-1.0.9}/pybreeze/utils/json_format/json_process.py +0 -0
- {pybreeze-1.0.7/pybreeze/utils/manager/package_manager → pybreeze-1.0.9/pybreeze/utils/logging}/__init__.py +0 -0
- {pybreeze-1.0.7 → pybreeze-1.0.9}/pybreeze/utils/manager/package_manager/package_manager_class.py +0 -0
- {pybreeze-1.0.7 → pybreeze-1.0.9}/pybreeze.egg-info/dependency_links.txt +0 -0
- {pybreeze-1.0.7 → pybreeze-1.0.9}/pybreeze.egg-info/top_level.txt +0 -0
- {pybreeze-1.0.7 → pybreeze-1.0.9}/setup.cfg +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: pybreeze
|
|
3
|
-
Version: 1.0.
|
|
3
|
+
Version: 1.0.9
|
|
4
4
|
Summary: IDE for multi automation
|
|
5
5
|
Author-email: JE-Chen <jechenmailman@gmail.com>
|
|
6
6
|
Project-URL: Homepage, https://github.com/Intergration-Automation-Testing/AutomationEditor
|
|
@@ -21,9 +21,10 @@ Requires-Dist: je_load_density
|
|
|
21
21
|
Requires-Dist: je_api_testka
|
|
22
22
|
Requires-Dist: je-mail-thunder
|
|
23
23
|
Requires-Dist: automation-file
|
|
24
|
-
Requires-Dist: PySide6==6.
|
|
24
|
+
Requires-Dist: PySide6==6.11.0
|
|
25
25
|
Requires-Dist: test_pioneer
|
|
26
26
|
Requires-Dist: paramiko
|
|
27
|
+
Requires-Dist: jupyterlab
|
|
27
28
|
Dynamic: license-file
|
|
28
29
|
|
|
29
30
|
# PyBreeze: The Automation-First IDE
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
from pybreeze.pybreeze_ui.editor_main.main_ui import
|
|
1
|
+
from pybreeze.pybreeze_ui.editor_main.main_ui import PyBreezeMainWindow
|
|
2
2
|
from pybreeze.pybreeze_ui.editor_main.main_ui import EDITOR_EXTEND_TAB
|
|
3
3
|
from pybreeze.pybreeze_ui.editor_main.main_ui import start_editor
|
|
4
4
|
|
|
5
5
|
__all__ = [
|
|
6
|
-
"start_editor", "
|
|
6
|
+
"start_editor", "PyBreezeMainWindow", "EDITOR_EXTEND_TAB"
|
|
7
7
|
]
|
{pybreeze-1.0.7 → pybreeze-1.0.9}/pybreeze/extend/process_executor/api_testka/api_testka_process.py
RENAMED
|
@@ -5,14 +5,14 @@ from typing import TYPE_CHECKING, Union
|
|
|
5
5
|
from pybreeze.extend.process_executor.process_executor_utils import build_process
|
|
6
6
|
|
|
7
7
|
if TYPE_CHECKING:
|
|
8
|
-
from pybreeze.pybreeze_ui.editor_main.main_ui import
|
|
8
|
+
from pybreeze.pybreeze_ui.editor_main.main_ui import PyBreezeMainWindow
|
|
9
9
|
import sys
|
|
10
10
|
|
|
11
11
|
from pybreeze.utils.file_process.get_dir_file_list import ask_and_get_dir_files_as_list
|
|
12
12
|
|
|
13
13
|
|
|
14
14
|
def call_api_testka(
|
|
15
|
-
main_window:
|
|
15
|
+
main_window: PyBreezeMainWindow,
|
|
16
16
|
exec_str: Union[str, None] = None,
|
|
17
17
|
program_buffer: int = 1024000
|
|
18
18
|
):
|
|
@@ -20,7 +20,7 @@ def call_api_testka(
|
|
|
20
20
|
|
|
21
21
|
|
|
22
22
|
def call_api_testka_with_send(
|
|
23
|
-
main_window:
|
|
23
|
+
main_window: PyBreezeMainWindow,
|
|
24
24
|
exec_str: Union[str, None] = None,
|
|
25
25
|
program_buffer: int = 1024000
|
|
26
26
|
):
|
|
@@ -28,7 +28,7 @@ def call_api_testka_with_send(
|
|
|
28
28
|
|
|
29
29
|
|
|
30
30
|
def call_api_testka_multi_file(
|
|
31
|
-
main_window:
|
|
31
|
+
main_window: PyBreezeMainWindow,
|
|
32
32
|
program_buffer: int = 1024000
|
|
33
33
|
):
|
|
34
34
|
try:
|
|
@@ -47,7 +47,7 @@ def call_api_testka_multi_file(
|
|
|
47
47
|
|
|
48
48
|
|
|
49
49
|
def call_api_testka_multi_file_and_send(
|
|
50
|
-
main_window:
|
|
50
|
+
main_window: PyBreezeMainWindow,
|
|
51
51
|
program_buffer: int = 1024000
|
|
52
52
|
):
|
|
53
53
|
try:
|
|
@@ -5,14 +5,14 @@ from typing import TYPE_CHECKING, Union
|
|
|
5
5
|
from pybreeze.extend.process_executor.process_executor_utils import build_process
|
|
6
6
|
|
|
7
7
|
if TYPE_CHECKING:
|
|
8
|
-
from pybreeze.pybreeze_ui.editor_main.main_ui import
|
|
8
|
+
from pybreeze.pybreeze_ui.editor_main.main_ui import PyBreezeMainWindow
|
|
9
9
|
import sys
|
|
10
10
|
|
|
11
11
|
from pybreeze.utils.file_process.get_dir_file_list import ask_and_get_dir_files_as_list
|
|
12
12
|
|
|
13
13
|
|
|
14
14
|
def call_auto_control(
|
|
15
|
-
main_window:
|
|
15
|
+
main_window: PyBreezeMainWindow,
|
|
16
16
|
exec_str: Union[str, None] = None,
|
|
17
17
|
program_buffer: int = 1024000
|
|
18
18
|
):
|
|
@@ -20,7 +20,7 @@ def call_auto_control(
|
|
|
20
20
|
|
|
21
21
|
|
|
22
22
|
def call_auto_control_with_send(
|
|
23
|
-
main_window:
|
|
23
|
+
main_window: PyBreezeMainWindow,
|
|
24
24
|
exec_str: Union[str, None] = None,
|
|
25
25
|
program_buffer: int = 1024000
|
|
26
26
|
):
|
|
@@ -28,7 +28,7 @@ def call_auto_control_with_send(
|
|
|
28
28
|
|
|
29
29
|
|
|
30
30
|
def call_auto_control_multi_file(
|
|
31
|
-
main_window:
|
|
31
|
+
main_window: PyBreezeMainWindow,
|
|
32
32
|
program_buffer: int = 1024000
|
|
33
33
|
):
|
|
34
34
|
need_to_execute_list: list = ask_and_get_dir_files_as_list(main_window)
|
|
@@ -44,7 +44,7 @@ def call_auto_control_multi_file(
|
|
|
44
44
|
|
|
45
45
|
|
|
46
46
|
def call_auto_control_multi_file_and_send(
|
|
47
|
-
main_window:
|
|
47
|
+
main_window: PyBreezeMainWindow,
|
|
48
48
|
program_buffer: int = 1024000
|
|
49
49
|
):
|
|
50
50
|
try:
|
|
@@ -5,14 +5,14 @@ from typing import TYPE_CHECKING, Union
|
|
|
5
5
|
from pybreeze.extend.process_executor.process_executor_utils import build_process
|
|
6
6
|
|
|
7
7
|
if TYPE_CHECKING:
|
|
8
|
-
from pybreeze.pybreeze_ui.editor_main.main_ui import
|
|
8
|
+
from pybreeze.pybreeze_ui.editor_main.main_ui import PyBreezeMainWindow
|
|
9
9
|
import sys
|
|
10
10
|
|
|
11
11
|
from pybreeze.utils.file_process.get_dir_file_list import ask_and_get_dir_files_as_list
|
|
12
12
|
|
|
13
13
|
|
|
14
14
|
def call_file_automation_test(
|
|
15
|
-
main_window:
|
|
15
|
+
main_window: PyBreezeMainWindow,
|
|
16
16
|
exec_str: Union[str, None] = None,
|
|
17
17
|
program_buffer: int = 1024000
|
|
18
18
|
):
|
|
@@ -20,7 +20,7 @@ def call_file_automation_test(
|
|
|
20
20
|
|
|
21
21
|
|
|
22
22
|
def call_file_automation_test_with_send(
|
|
23
|
-
main_window:
|
|
23
|
+
main_window: PyBreezeMainWindow,
|
|
24
24
|
exec_str: Union[str, None] = None,
|
|
25
25
|
program_buffer: int = 1024000
|
|
26
26
|
):
|
|
@@ -28,7 +28,7 @@ def call_file_automation_test_with_send(
|
|
|
28
28
|
|
|
29
29
|
|
|
30
30
|
def call_file_automation_test_multi_file(
|
|
31
|
-
main_window:
|
|
31
|
+
main_window: PyBreezeMainWindow,
|
|
32
32
|
program_buffer: int = 1024000
|
|
33
33
|
):
|
|
34
34
|
try:
|
|
@@ -47,7 +47,7 @@ def call_file_automation_test_multi_file(
|
|
|
47
47
|
|
|
48
48
|
|
|
49
49
|
def call_file_automation_test_multi_file_and_send(
|
|
50
|
-
main_window:
|
|
50
|
+
main_window: PyBreezeMainWindow,
|
|
51
51
|
program_buffer: int = 1024000
|
|
52
52
|
):
|
|
53
53
|
try:
|
|
@@ -5,14 +5,14 @@ from typing import TYPE_CHECKING, Union
|
|
|
5
5
|
from pybreeze.extend.process_executor.process_executor_utils import build_process
|
|
6
6
|
|
|
7
7
|
if TYPE_CHECKING:
|
|
8
|
-
from pybreeze.pybreeze_ui.editor_main.main_ui import
|
|
8
|
+
from pybreeze.pybreeze_ui.editor_main.main_ui import PyBreezeMainWindow
|
|
9
9
|
import sys
|
|
10
10
|
|
|
11
11
|
from pybreeze.utils.file_process.get_dir_file_list import ask_and_get_dir_files_as_list
|
|
12
12
|
|
|
13
13
|
|
|
14
14
|
def call_load_density(
|
|
15
|
-
main_window:
|
|
15
|
+
main_window: PyBreezeMainWindow,
|
|
16
16
|
exec_str: Union[str, None] = None,
|
|
17
17
|
program_buffer: int = 1024000
|
|
18
18
|
):
|
|
@@ -20,7 +20,7 @@ def call_load_density(
|
|
|
20
20
|
|
|
21
21
|
|
|
22
22
|
def call_load_density_with_send(
|
|
23
|
-
main_window:
|
|
23
|
+
main_window: PyBreezeMainWindow,
|
|
24
24
|
exec_str: Union[str, None] = None,
|
|
25
25
|
program_buffer: int = 1024000
|
|
26
26
|
):
|
|
@@ -28,7 +28,7 @@ def call_load_density_with_send(
|
|
|
28
28
|
|
|
29
29
|
|
|
30
30
|
def call_load_density_multi_file(
|
|
31
|
-
main_window:
|
|
31
|
+
main_window: PyBreezeMainWindow,
|
|
32
32
|
program_buffer: int = 1024000
|
|
33
33
|
):
|
|
34
34
|
try:
|
|
@@ -47,7 +47,7 @@ def call_load_density_multi_file(
|
|
|
47
47
|
|
|
48
48
|
|
|
49
49
|
def call_load_density_multi_file_and_send(
|
|
50
|
-
main_window:
|
|
50
|
+
main_window: PyBreezeMainWindow,
|
|
51
51
|
program_buffer: int = 1024000
|
|
52
52
|
):
|
|
53
53
|
try:
|
|
@@ -5,11 +5,11 @@ from typing import TYPE_CHECKING, Union
|
|
|
5
5
|
from pybreeze.extend.process_executor.process_executor_utils import build_process
|
|
6
6
|
|
|
7
7
|
if TYPE_CHECKING:
|
|
8
|
-
from pybreeze.pybreeze_ui.editor_main.main_ui import
|
|
8
|
+
from pybreeze.pybreeze_ui.editor_main.main_ui import PyBreezeMainWindow
|
|
9
9
|
|
|
10
10
|
|
|
11
11
|
def call_mail_thunder(
|
|
12
|
-
main_window:
|
|
12
|
+
main_window: PyBreezeMainWindow,
|
|
13
13
|
exec_str: Union[str, None] = None,
|
|
14
14
|
program_buffer: int = 1024000
|
|
15
15
|
):
|
{pybreeze-1.0.7 → pybreeze-1.0.9}/pybreeze/extend/process_executor/process_executor_utils.py
RENAMED
|
@@ -13,11 +13,11 @@ from pybreeze.utils.exception.exception_tags import wrong_test_data_format_excep
|
|
|
13
13
|
from pybreeze.utils.exception.exceptions import ITETestExecutorException
|
|
14
14
|
|
|
15
15
|
if TYPE_CHECKING:
|
|
16
|
-
from pybreeze.pybreeze_ui.editor_main.main_ui import
|
|
16
|
+
from pybreeze.pybreeze_ui.editor_main.main_ui import PyBreezeMainWindow
|
|
17
17
|
|
|
18
18
|
|
|
19
19
|
def build_process(
|
|
20
|
-
main_window:
|
|
20
|
+
main_window: PyBreezeMainWindow,
|
|
21
21
|
package: str,
|
|
22
22
|
exec_str: Union[str, None] = None,
|
|
23
23
|
send_mail: bool = False,
|
|
@@ -42,7 +42,7 @@ def build_process(
|
|
|
42
42
|
|
|
43
43
|
|
|
44
44
|
def start_process(
|
|
45
|
-
main_window:
|
|
45
|
+
main_window: PyBreezeMainWindow,
|
|
46
46
|
package: str,
|
|
47
47
|
test_format_code: str,
|
|
48
48
|
send_mail: bool = False,
|
|
@@ -17,19 +17,19 @@ from je_editor.utils.venv_check.check_venv import check_and_choose_venv
|
|
|
17
17
|
from pybreeze.pybreeze_ui.show_code_window.code_window import CodeWindow
|
|
18
18
|
|
|
19
19
|
if TYPE_CHECKING:
|
|
20
|
-
from pybreeze.pybreeze_ui.editor_main.main_ui import
|
|
20
|
+
from pybreeze.pybreeze_ui.editor_main.main_ui import PyBreezeMainWindow
|
|
21
21
|
|
|
22
22
|
|
|
23
23
|
class TestPioneerProcess(object):
|
|
24
24
|
|
|
25
25
|
def __init__(
|
|
26
26
|
self,
|
|
27
|
-
main_window:
|
|
27
|
+
main_window: PyBreezeMainWindow,
|
|
28
28
|
executable_path: str,
|
|
29
29
|
program_buffer: int = 1024000,
|
|
30
30
|
encoding: str = "utf-8",
|
|
31
31
|
):
|
|
32
|
-
self._main_window:
|
|
32
|
+
self._main_window: PyBreezeMainWindow = main_window
|
|
33
33
|
self._widget: QWidget = main_window.tab_widget.currentWidget()
|
|
34
34
|
# Code window init
|
|
35
35
|
self._code_window = CodeWindow()
|
|
@@ -175,7 +175,7 @@ class TestPioneerProcess(object):
|
|
|
175
175
|
self._timer.start()
|
|
176
176
|
|
|
177
177
|
|
|
178
|
-
def init_and_start_test_pioneer_process(ui_we_want_to_set:
|
|
178
|
+
def init_and_start_test_pioneer_process(ui_we_want_to_set: PyBreezeMainWindow, file_path: str):
|
|
179
179
|
test_pioneer_process_manager = TestPioneerProcess(
|
|
180
180
|
main_window=ui_we_want_to_set, executable_path=file_path)
|
|
181
181
|
test_pioneer_process_manager.start_test_pioneer_process()
|
{pybreeze-1.0.7 → pybreeze-1.0.9}/pybreeze/extend/process_executor/web_runner/web_runner_process.py
RENAMED
|
@@ -5,14 +5,14 @@ from typing import TYPE_CHECKING, Union
|
|
|
5
5
|
from pybreeze.extend.process_executor.process_executor_utils import build_process
|
|
6
6
|
|
|
7
7
|
if TYPE_CHECKING:
|
|
8
|
-
from pybreeze.pybreeze_ui.editor_main.main_ui import
|
|
8
|
+
from pybreeze.pybreeze_ui.editor_main.main_ui import PyBreezeMainWindow
|
|
9
9
|
import sys
|
|
10
10
|
|
|
11
11
|
from pybreeze.utils.file_process.get_dir_file_list import ask_and_get_dir_files_as_list
|
|
12
12
|
|
|
13
13
|
|
|
14
14
|
def call_web_runner_test(
|
|
15
|
-
main_window:
|
|
15
|
+
main_window: PyBreezeMainWindow,
|
|
16
16
|
exec_str: Union[str, None] = None,
|
|
17
17
|
program_buffer: int = 1024000
|
|
18
18
|
):
|
|
@@ -20,7 +20,7 @@ def call_web_runner_test(
|
|
|
20
20
|
|
|
21
21
|
|
|
22
22
|
def call_web_runner_test_with_send(
|
|
23
|
-
main_window:
|
|
23
|
+
main_window: PyBreezeMainWindow,
|
|
24
24
|
exec_str: Union[str, None] = None,
|
|
25
25
|
program_buffer: int = 1024000
|
|
26
26
|
):
|
|
@@ -28,7 +28,7 @@ def call_web_runner_test_with_send(
|
|
|
28
28
|
|
|
29
29
|
|
|
30
30
|
def call_web_runner_test_multi_file(
|
|
31
|
-
main_window:
|
|
31
|
+
main_window: PyBreezeMainWindow,
|
|
32
32
|
program_buffer: int = 1024000
|
|
33
33
|
):
|
|
34
34
|
try:
|
|
@@ -47,7 +47,7 @@ def call_web_runner_test_multi_file(
|
|
|
47
47
|
|
|
48
48
|
|
|
49
49
|
def call_web_runner_test_multi_file_and_send(
|
|
50
|
-
main_window:
|
|
50
|
+
main_window: PyBreezeMainWindow,
|
|
51
51
|
program_buffer: int = 1024000
|
|
52
52
|
):
|
|
53
53
|
try:
|
|
@@ -13,6 +13,8 @@ def update_english_word_dict():
|
|
|
13
13
|
"run_label": "Run",
|
|
14
14
|
"help_label": "HELP",
|
|
15
15
|
"project_label": "Project",
|
|
16
|
+
# Tab tools menu
|
|
17
|
+
"tab_menu_jupyterlab_tab_name": "JupyterLab",
|
|
16
18
|
# APITestka Menu
|
|
17
19
|
"apitestka_menu_label": "APITestka",
|
|
18
20
|
"apitestka_run_script_label": "Run APITestka Script",
|
|
@@ -268,5 +270,9 @@ def update_english_word_dict():
|
|
|
268
270
|
"skills_response_label": "Response:",
|
|
269
271
|
"skills_missing_input": "Please enter API URL and Prompt",
|
|
270
272
|
"skills_generating": "Generating...",
|
|
273
|
+
# JupyterLab GUI
|
|
274
|
+
"jupyterlab_init": "Initializing...",
|
|
275
|
+
"jupyterlab_downloading": "Downloading...",
|
|
276
|
+
"jupyterlab_loading": "Loading..."
|
|
271
277
|
}
|
|
272
278
|
)
|
|
@@ -13,6 +13,8 @@ def update_traditional_chinese_word_dict():
|
|
|
13
13
|
"run_label": "運行",
|
|
14
14
|
"help_label": "幫助",
|
|
15
15
|
"project_label": "專案",
|
|
16
|
+
# Tab tools menu
|
|
17
|
+
"tab_menu_jupyterlab_tab_name": "JupyterLab",
|
|
16
18
|
# APITestka Menu
|
|
17
19
|
"apitestka_menu_label": "APITestka",
|
|
18
20
|
"apitestka_run_script_label": "運行 APITestka 腳本",
|
|
@@ -268,5 +270,9 @@ def update_traditional_chinese_word_dict():
|
|
|
268
270
|
"skills_response_label": "回傳結果:",
|
|
269
271
|
"skills_missing_input": "請輸入 API URL 和 Prompt",
|
|
270
272
|
"skills_generating": "產生中...",
|
|
273
|
+
# JupyterLab GUI
|
|
274
|
+
"jupyterlab_init": "初始化中...",
|
|
275
|
+
"jupyterlab_downloading": "下載中...",
|
|
276
|
+
"jupyterlab_loading": "載入中...",
|
|
271
277
|
}
|
|
272
278
|
)
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
from pybreeze.extend_multi_language.extend_english import update_english_word_dict
|
|
2
|
+
from pybreeze.extend_multi_language.extend_traditional_chinese import \
|
|
3
|
+
update_traditional_chinese_word_dict
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
def update_language_dict():
|
|
7
|
+
update_traditional_chinese_word_dict()
|
|
8
|
+
update_english_word_dict()
|
|
@@ -4,17 +4,15 @@ from os import environ
|
|
|
4
4
|
from pathlib import Path
|
|
5
5
|
from typing import List, Dict, Type
|
|
6
6
|
|
|
7
|
-
from pybreeze.utils.logging.logger import automation_ide_logger
|
|
8
|
-
|
|
9
7
|
environ["LOCUST_SKIP_MONKEY_PATCH"] = "1"
|
|
10
8
|
|
|
11
9
|
from PySide6.QtCore import QTimer, QCoreApplication
|
|
12
10
|
from PySide6.QtGui import QIcon
|
|
13
|
-
from PySide6.QtWidgets import QApplication, QWidget
|
|
11
|
+
from PySide6.QtWidgets import QApplication, QWidget
|
|
14
12
|
from je_editor import EditorMain, language_wrapper
|
|
15
13
|
from qt_material import apply_stylesheet
|
|
16
14
|
|
|
17
|
-
from pybreeze.
|
|
15
|
+
from pybreeze.extend_multi_language import update_language_dict
|
|
18
16
|
from pybreeze.pybreeze_ui.menu.build_menubar import add_menu_to_menubar
|
|
19
17
|
from pybreeze.pybreeze_ui.syntax.syntax_extend import \
|
|
20
18
|
syntax_extend_package
|
|
@@ -24,7 +22,7 @@ EDITOR_EXTEND_TAB: Dict[str, Type[QWidget]] = {
|
|
|
24
22
|
}
|
|
25
23
|
|
|
26
24
|
|
|
27
|
-
class
|
|
25
|
+
class PyBreezeMainWindow(EditorMain):
|
|
28
26
|
|
|
29
27
|
def __init__(self, debug_mode: bool = False, show_system_tray_ray: bool = False, extend: bool = False) -> None:
|
|
30
28
|
super().__init__(debug_mode, show_system_tray_ray, extend=True)
|
|
@@ -94,7 +92,7 @@ def start_editor(debug_mode: bool = False, **kwargs) -> None:
|
|
|
94
92
|
new_ide = QCoreApplication.instance()
|
|
95
93
|
if new_ide is None:
|
|
96
94
|
new_ide = QApplication(sys.argv)
|
|
97
|
-
window =
|
|
95
|
+
window = PyBreezeMainWindow(debug_mode=debug_mode, **kwargs)
|
|
98
96
|
apply_stylesheet(new_ide, theme="dark_amber.xml")
|
|
99
97
|
window.showMaximized()
|
|
100
98
|
try:
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
import os
|
|
2
|
+
import socket
|
|
3
|
+
import subprocess
|
|
4
|
+
import sys
|
|
5
|
+
from PySide6.QtCore import QThread, Signal
|
|
6
|
+
import time
|
|
7
|
+
|
|
8
|
+
from je_editor import language_wrapper
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
def find_free_port():
|
|
12
|
+
s = socket.socket()
|
|
13
|
+
s.bind(("", 0))
|
|
14
|
+
port = s.getsockname()[1]
|
|
15
|
+
s.close()
|
|
16
|
+
return port
|
|
17
|
+
|
|
18
|
+
def get_venv_python():
|
|
19
|
+
# 如果在 venv 中
|
|
20
|
+
if hasattr(sys, 'real_prefix') or (hasattr(sys, 'base_prefix') and sys.base_prefix != sys.prefix):
|
|
21
|
+
return sys.executable
|
|
22
|
+
|
|
23
|
+
# 嘗試從常見位置找 venv
|
|
24
|
+
possible_paths = [
|
|
25
|
+
os.path.join(os.getcwd(), "venv", "Scripts", "python.exe"),
|
|
26
|
+
os.path.join(os.getcwd(), ".venv", "Scripts", "python.exe"),
|
|
27
|
+
]
|
|
28
|
+
|
|
29
|
+
for path in possible_paths:
|
|
30
|
+
if os.path.exists(path):
|
|
31
|
+
return path
|
|
32
|
+
|
|
33
|
+
raise RuntimeError("找不到 venv 的 python.exe")
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
def is_jupyter_installed(python_exe):
|
|
37
|
+
result = subprocess.run(
|
|
38
|
+
[python_exe, "-m", "pip", "show", "jupyterlab"],
|
|
39
|
+
stdout=subprocess.PIPE,
|
|
40
|
+
stderr=subprocess.PIPE
|
|
41
|
+
)
|
|
42
|
+
return result.returncode == 0
|
|
43
|
+
|
|
44
|
+
|
|
45
|
+
class JupyterLauncherThread(QThread):
|
|
46
|
+
server_ready = Signal(str)
|
|
47
|
+
status_update = Signal(str)
|
|
48
|
+
|
|
49
|
+
def __init__(self):
|
|
50
|
+
super().__init__()
|
|
51
|
+
self.process = None
|
|
52
|
+
|
|
53
|
+
def run(self):
|
|
54
|
+
python_exe = get_venv_python()
|
|
55
|
+
|
|
56
|
+
if not is_jupyter_installed(python_exe):
|
|
57
|
+
self.status_update.emit(language_wrapper.language_word_dict.get("jupyterlab_downloading"))
|
|
58
|
+
subprocess.run([
|
|
59
|
+
python_exe,
|
|
60
|
+
"-m",
|
|
61
|
+
"pip",
|
|
62
|
+
"install",
|
|
63
|
+
"jupyterlab",
|
|
64
|
+
"-U"
|
|
65
|
+
])
|
|
66
|
+
|
|
67
|
+
self.status_update.emit(language_wrapper.language_word_dict.get("jupyterlab_loading"))
|
|
68
|
+
|
|
69
|
+
port = find_free_port()
|
|
70
|
+
|
|
71
|
+
self.process = subprocess.Popen([
|
|
72
|
+
python_exe,
|
|
73
|
+
"-m",
|
|
74
|
+
"jupyterlab",
|
|
75
|
+
"--no-browser",
|
|
76
|
+
f"--ServerApp.port={port}",
|
|
77
|
+
"--ServerApp.token=",
|
|
78
|
+
"--ServerApp.password=",
|
|
79
|
+
"--ServerApp.allow_origin=*",
|
|
80
|
+
"--ServerApp.disable_check_xsrf=True",
|
|
81
|
+
])
|
|
82
|
+
|
|
83
|
+
while True:
|
|
84
|
+
try:
|
|
85
|
+
s = socket.create_connection(("localhost", port), timeout=0.5)
|
|
86
|
+
s.close()
|
|
87
|
+
break
|
|
88
|
+
except OSError:
|
|
89
|
+
time.sleep(0.2)
|
|
90
|
+
|
|
91
|
+
self.server_ready.emit(f"http://localhost:{port}/lab")
|
|
92
|
+
|
|
93
|
+
def stop(self):
|
|
94
|
+
if self.process:
|
|
95
|
+
self.process.terminate()
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import sys
|
|
2
|
+
|
|
3
|
+
from PySide6.QtCore import QUrl
|
|
4
|
+
from PySide6.QtWebEngineWidgets import QWebEngineView
|
|
5
|
+
from PySide6.QtWidgets import QApplication, QVBoxLayout, QWidget, QLabel
|
|
6
|
+
from je_editor import language_wrapper
|
|
7
|
+
|
|
8
|
+
from pybreeze.pybreeze_ui.jupyter_lab_gui.jupyer_lab_thread import JupyterLauncherThread
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
class JupyterLabWidget(QWidget):
|
|
12
|
+
|
|
13
|
+
def __init__(self):
|
|
14
|
+
super().__init__()
|
|
15
|
+
|
|
16
|
+
layout = QVBoxLayout(self)
|
|
17
|
+
|
|
18
|
+
self.status_label = QLabel(language_wrapper.language_word_dict.get("jupyterlab_init"))
|
|
19
|
+
layout.addWidget(self.status_label)
|
|
20
|
+
|
|
21
|
+
self.browser = QWebEngineView()
|
|
22
|
+
self.browser.hide()
|
|
23
|
+
layout.addWidget(self.browser)
|
|
24
|
+
|
|
25
|
+
self.thread = JupyterLauncherThread()
|
|
26
|
+
self.thread.status_update.connect(self.update_status)
|
|
27
|
+
self.thread.server_ready.connect(self.load_lab)
|
|
28
|
+
self.thread.start()
|
|
29
|
+
|
|
30
|
+
def update_status(self, text):
|
|
31
|
+
self.status_label.setText(text)
|
|
32
|
+
|
|
33
|
+
def load_lab(self, url):
|
|
34
|
+
if self.status_label:
|
|
35
|
+
self.status_label.setParent(None)
|
|
36
|
+
self.status_label.deleteLater()
|
|
37
|
+
self.status_label = None
|
|
38
|
+
|
|
39
|
+
self.browser.setUrl(QUrl(url))
|
|
40
|
+
self.browser.show()
|
|
41
|
+
|
|
42
|
+
def closeEvent(self, event):
|
|
43
|
+
if self.thread.isRunning():
|
|
44
|
+
self.thread.stop()
|
|
45
|
+
self.thread.quit()
|
|
46
|
+
self.thread.wait()
|
|
47
|
+
event.accept()
|
|
48
|
+
|
|
49
|
+
|
|
50
|
+
if __name__ == "__main__":
|
|
51
|
+
app = QApplication(sys.argv)
|
|
52
|
+
|
|
53
|
+
win = JupyterLabWidget()
|
|
54
|
+
win.showMaximized()
|
|
55
|
+
|
|
56
|
+
sys.exit(app.exec())
|
|
@@ -8,7 +8,7 @@ from je_editor import language_wrapper
|
|
|
8
8
|
from pybreeze.pybreeze_ui.menu.menu_utils import open_web_browser
|
|
9
9
|
|
|
10
10
|
if TYPE_CHECKING:
|
|
11
|
-
from pybreeze.pybreeze_ui.editor_main.main_ui import
|
|
11
|
+
from pybreeze.pybreeze_ui.editor_main.main_ui import PyBreezeMainWindow
|
|
12
12
|
import sys
|
|
13
13
|
|
|
14
14
|
from PySide6.QtGui import QAction
|
|
@@ -17,7 +17,7 @@ from pybreeze.extend.process_executor.api_testka.api_testka_process import call_
|
|
|
17
17
|
call_api_testka_with_send, call_api_testka_multi_file, call_api_testka_multi_file_and_send
|
|
18
18
|
|
|
19
19
|
|
|
20
|
-
def set_apitestka_menu(ui_we_want_to_set:
|
|
20
|
+
def set_apitestka_menu(ui_we_want_to_set: PyBreezeMainWindow):
|
|
21
21
|
"""
|
|
22
22
|
Build menu include APITestka feature.
|
|
23
23
|
:param ui_we_want_to_set: main window to add menu.
|
|
@@ -131,7 +131,7 @@ def create_project() -> None:
|
|
|
131
131
|
print(repr(error), file=sys.stderr)
|
|
132
132
|
|
|
133
133
|
|
|
134
|
-
def add_api_testka_gui(ui_we_want_to_set:
|
|
134
|
+
def add_api_testka_gui(ui_we_want_to_set: PyBreezeMainWindow) -> None:
|
|
135
135
|
ui_we_want_to_set.tab_widget.addTab(
|
|
136
136
|
APITestkaWidget(), "APITestka GUI"
|
|
137
137
|
)
|
|
@@ -9,7 +9,7 @@ from je_editor.pyside_ui.main_ui.save_settings.user_color_setting_file import ac
|
|
|
9
9
|
from pybreeze.pybreeze_ui.menu.menu_utils import open_web_browser
|
|
10
10
|
|
|
11
11
|
if TYPE_CHECKING:
|
|
12
|
-
from pybreeze.pybreeze_ui.editor_main.main_ui import
|
|
12
|
+
from pybreeze.pybreeze_ui.editor_main.main_ui import PyBreezeMainWindow
|
|
13
13
|
import sys
|
|
14
14
|
|
|
15
15
|
import je_auto_control
|
|
@@ -20,7 +20,7 @@ from pybreeze.extend.process_executor.auto_control.auto_control_process import \
|
|
|
20
20
|
call_auto_control_multi_file_and_send
|
|
21
21
|
|
|
22
22
|
|
|
23
|
-
def set_autocontrol_menu(ui_we_want_to_set:
|
|
23
|
+
def set_autocontrol_menu(ui_we_want_to_set: PyBreezeMainWindow):
|
|
24
24
|
"""
|
|
25
25
|
Build menu include AutoControl feature.
|
|
26
26
|
:param ui_we_want_to_set: main window to add menu.
|
|
@@ -153,7 +153,7 @@ def create_project() -> None:
|
|
|
153
153
|
print(repr(error), file=sys.stderr)
|
|
154
154
|
|
|
155
155
|
|
|
156
|
-
def stop_record(editor_instance:
|
|
156
|
+
def stop_record(editor_instance: PyBreezeMainWindow):
|
|
157
157
|
widget = editor_instance.tab_widget.currentWidget()
|
|
158
158
|
if isinstance(widget, EditorWidget):
|
|
159
159
|
text_cursor = widget.code_edit.textCursor()
|
|
@@ -163,7 +163,7 @@ def stop_record(editor_instance: AutomationEditor):
|
|
|
163
163
|
text_cursor.insertBlock()
|
|
164
164
|
|
|
165
165
|
|
|
166
|
-
def add_autocontrol_gui(ui_we_want_to_set:
|
|
166
|
+
def add_autocontrol_gui(ui_we_want_to_set: PyBreezeMainWindow) -> None:
|
|
167
167
|
ui_we_want_to_set.tab_widget.addTab(
|
|
168
168
|
AutoControlGUIWidget(), "AutoControl GUI"
|
|
169
169
|
)
|
|
@@ -7,7 +7,7 @@ from je_editor import language_wrapper
|
|
|
7
7
|
from pybreeze.pybreeze_ui.menu.menu_utils import open_web_browser
|
|
8
8
|
|
|
9
9
|
if TYPE_CHECKING:
|
|
10
|
-
from pybreeze.pybreeze_ui.editor_main.main_ui import
|
|
10
|
+
from pybreeze.pybreeze_ui.editor_main.main_ui import PyBreezeMainWindow
|
|
11
11
|
import sys
|
|
12
12
|
|
|
13
13
|
from PySide6.QtGui import QAction
|
|
@@ -17,7 +17,7 @@ from pybreeze.extend.process_executor.file_automation.file_automation_process im
|
|
|
17
17
|
call_file_automation_test_multi_file_and_send
|
|
18
18
|
|
|
19
19
|
|
|
20
|
-
def set_automation_file_menu(ui_we_want_to_set:
|
|
20
|
+
def set_automation_file_menu(ui_we_want_to_set: PyBreezeMainWindow):
|
|
21
21
|
"""
|
|
22
22
|
Build menu include WebRunner feature.
|
|
23
23
|
:param ui_we_want_to_set: main window to add menu.
|
|
@@ -8,7 +8,7 @@ from je_load_density.gui.main_widget import LoadDensityWidget
|
|
|
8
8
|
from pybreeze.pybreeze_ui.menu.menu_utils import open_web_browser
|
|
9
9
|
|
|
10
10
|
if TYPE_CHECKING:
|
|
11
|
-
from pybreeze.pybreeze_ui.editor_main.main_ui import
|
|
11
|
+
from pybreeze.pybreeze_ui.editor_main.main_ui import PyBreezeMainWindow
|
|
12
12
|
import sys
|
|
13
13
|
|
|
14
14
|
from PySide6.QtGui import QAction
|
|
@@ -18,7 +18,7 @@ from pybreeze.extend.process_executor.load_density.load_density_process import \
|
|
|
18
18
|
call_load_density_multi_file_and_send
|
|
19
19
|
|
|
20
20
|
|
|
21
|
-
def set_load_density_menu(ui_we_want_to_set:
|
|
21
|
+
def set_load_density_menu(ui_we_want_to_set: PyBreezeMainWindow):
|
|
22
22
|
"""
|
|
23
23
|
Build menu include LoadDensity feature.
|
|
24
24
|
:param ui_we_want_to_set: main window to add menu.
|
|
@@ -131,7 +131,7 @@ def create_project() -> None:
|
|
|
131
131
|
print(repr(error), file=sys.stderr)
|
|
132
132
|
|
|
133
133
|
|
|
134
|
-
def add_load_density_gui(ui_we_want_to_set:
|
|
134
|
+
def add_load_density_gui(ui_we_want_to_set: PyBreezeMainWindow) -> None:
|
|
135
135
|
ui_we_want_to_set.tab_widget.addTab(
|
|
136
136
|
LoadDensityWidget(), "LoadDensity GUI"
|
|
137
137
|
)
|