Skip to content

Commit d0d0b71

Browse files
authored
Merge pull request #153 from Integration-Automation/dev
Edit QTimer setInterval time
2 parents b604157 + 4d6da75 commit d0d0b71

File tree

11 files changed

+57
-33
lines changed

11 files changed

+57
-33
lines changed

stable.toml renamed to dev.toml

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
1-
# Rename to build stable version
2-
# This is stable version
1+
# Rename to build dev version
2+
# This is dev version
33
[build-system]
4-
requires = ["setuptools>=61.0"]
4+
requires = ["setuptools"]
55
build-backend = "setuptools.build_meta"
66

77
[project]
8-
name = "je_editor"
9-
version = "0.0.193"
8+
name = "je_editor_dev"
9+
version = "0.0.214"
1010
authors = [
1111
{ name = "JE-Chen", email = "[email protected]" },
1212
]
@@ -26,7 +26,6 @@ classifiers = [
2626
"Operating System :: OS Independent"
2727
]
2828

29-
3029
[project.urls]
3130
Homepage = "https://github.com/JE-Chen/je_editor"
3231
Documentation = "https://je-editor.readthedocs.io/en/latest/"

exe/a.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
print("你好")
1+
print("Hello World")

je_editor/pyside_ui/code/auto_save/auto_save_thread.py

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@ def __init__(
2626
self.still_run: bool = True
2727
# set daemon
2828
self.daemon = True
29+
self.skip_this_round: bool = False
2930

3031
def run(self) -> None:
3132
"""
@@ -37,6 +38,9 @@ def run(self) -> None:
3738
while path.is_file() and self.editor is not None:
3839
time.sleep(5)
3940
if self.still_run:
40-
write_file(self.file, self.editor.toPlainText())
41+
if self.skip_this_round:
42+
pass
43+
else:
44+
write_file(self.file, self.editor.toPlainText())
4145
else:
4246
break

je_editor/pyside_ui/code/code_process/code_exec.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -131,7 +131,7 @@ def exec_code(self, exec_file_name, exec_prefix: Union[str, list] = None) -> Non
131131
# start tkinter_ui update
132132
# start timer
133133
self.timer = QTimer(self.main_window)
134-
self.timer.setInterval(50)
134+
self.timer.setInterval(10)
135135
self.timer.timeout.connect(self.pull_text)
136136
self.timer.start()
137137
except Exception as error:

je_editor/pyside_ui/code/shell_process/shell_exec.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -112,7 +112,7 @@ def exec_shell(self, shell_command: [str, list]) -> None:
112112
self.read_program_error_output_from_thread.start()
113113
# start timer
114114
self.timer = QTimer(self.main_window)
115-
self.timer.setInterval(50)
115+
self.timer.setInterval(10)
116116
self.timer.timeout.connect(self.pull_text)
117117
self.timer.start()
118118
except Exception as error:

je_editor/pyside_ui/main_ui/editor/editor_widget.py

Lines changed: 15 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -14,8 +14,9 @@
1414
from pathlib import Path
1515
from typing import Union
1616

17-
from PySide6.QtCore import Qt, QFileInfo, QDir, QTimer
18-
from PySide6.QtWidgets import QWidget, QGridLayout, QSplitter, QScrollArea, QFileSystemModel, QTreeView, QTabWidget
17+
from PySide6.QtCore import Qt, QFileInfo, QDir
18+
from PySide6.QtWidgets import QWidget, QGridLayout, QSplitter, QScrollArea, QFileSystemModel, QTreeView, QTabWidget, \
19+
QMessageBox
1920

2021
from je_editor.pyside_ui.code.auto_save.auto_save_manager import auto_save_manager_dict, init_new_auto_save_thread, \
2122
file_is_open_manager_dict
@@ -106,11 +107,6 @@ def __init__(self, main_window: EditorMain):
106107
)
107108
# Add to layout
108109
self.grid_layout.addWidget(self.full_splitter)
109-
# Check format time
110-
self.check_format_timer = QTimer()
111-
self.check_format_timer.setInterval(50)
112-
self.check_format_timer.timeout.connect(self.check_file_format)
113-
self.check_format_timer.start()
114110

115111
def set_project_treeview(self) -> None:
116112
jeditor_logger.info("EditorWidget set_project_treeview")
@@ -154,6 +150,7 @@ def open_an_file(self, path: Path) -> bool:
154150
jeditor_logger.info(f"EditorWidget open_an_file path: {path}")
155151
if not self.check_is_open(path):
156152
return False
153+
self.code_save_thread.skip_this_round = True
157154
file, file_content = read_file(str(path))
158155
self.code_edit.setPlainText(
159156
file_content
@@ -166,6 +163,7 @@ def open_an_file(self, path: Path) -> bool:
166163
init_new_auto_save_thread(self.current_file, self)
167164
else:
168165
self.code_save_thread.file = self.current_file
166+
self.code_save_thread.skip_this_round = False
169167
self.rename_self_tab()
170168
return True
171169

@@ -185,21 +183,24 @@ def rename_self_tab(self):
185183
self.setObjectName(str(Path(self.current_file)))
186184

187185
def check_file_format(self):
188-
jeditor_logger.info("EditorWidget check_file_format")
189186
if self.current_file:
190-
if self.checker is None:
187+
jeditor_logger.info("EditorWidget check_file_format")
188+
suffix_checker = Path(self.current_file).suffix
189+
if suffix_checker == ".py":
191190
self.checker = PEP8FormatChecker(self.current_file)
192-
elif self.checker.current_file != self.current_file:
193-
self.checker = PEP8FormatChecker(self.current_file)
194-
else:
195191
self.checker.check_all_format()
196-
self.format_check_result.clear()
192+
self.format_check_result.setPlainText("")
197193
for error in self.checker.error_list:
198194
self.format_check_result.append(error)
195+
self.checker.error_list.clear()
196+
else:
197+
message_box = QMessageBox()
198+
message_box.setText(
199+
language_wrapper.language_word_dict.get("python_format_checker_only_support_python_message"))
200+
message_box.exec_()
199201

200202
def close(self) -> bool:
201203
jeditor_logger.info("EditorWidget close")
202-
self.check_format_timer.stop()
203204
if self.code_save_thread is not None:
204205
self.code_save_thread.still_run = False
205206
self.code_save_thread = None

je_editor/pyside_ui/main_ui/main_editor.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -79,7 +79,7 @@ def __init__(self, debug_mode: bool = False, show_system_tray_ray: bool = False)
7979
self.tab_widget.tabCloseRequested.connect(self.close_tab)
8080
# Timer to redirect error or message
8181
self.redirect_timer = QTimer(self)
82-
self.redirect_timer.setInterval(50)
82+
self.redirect_timer.setInterval(10)
8383
self.redirect_timer.start()
8484
self.setWindowTitle(language_wrapper.language_word_dict.get("application_name"))
8585
self.setToolTip(language_wrapper.language_word_dict.get("application_name"))
@@ -100,7 +100,7 @@ def __init__(self, debug_mode: bool = False, show_system_tray_ray: bool = False)
100100
redirect_manager_instance.set_redirect()
101101
# Timer to redirect error or message
102102
self.redirect_timer = QTimer(self)
103-
self.redirect_timer.setInterval(50)
103+
self.redirect_timer.setInterval(10)
104104
self.redirect_timer.timeout.connect(self.redirect)
105105
self.redirect_timer.start()
106106
# TAB Add

je_editor/pyside_ui/main_ui/menu/check_style_menu/build_check_style_menu.py

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,16 @@ def set_check_menu(ui_we_want_to_set: EditorMain) -> None:
3939
)
4040
)
4141
ui_we_want_to_set.check_menu.addAction(ui_we_want_to_set.check_menu.reformat_json_action)
42+
# Python formate check
43+
ui_we_want_to_set.check_menu.check_python_format = QAction(
44+
language_wrapper.language_word_dict.get("python_format_checker"))
45+
ui_we_want_to_set.check_menu.check_python_format.setShortcut("Ctrl+Alt+p")
46+
ui_we_want_to_set.check_menu.check_python_format.triggered.connect(
47+
lambda: check_python_format(
48+
ui_we_want_to_set
49+
)
50+
)
51+
ui_we_want_to_set.check_menu.addAction(ui_we_want_to_set.check_menu.check_python_format)
4252

4353

4454
def yapf_check_python_code(ui_we_want_to_set: EditorMain) -> None:
@@ -62,3 +72,10 @@ def reformat_json_text(ui_we_want_to_set: EditorMain) -> None:
6272
code_text = widget.code_edit.toPlainText()
6373
widget.code_result.setPlainText("")
6474
widget.code_edit.setPlainText(reformat_json(code_text))
75+
76+
77+
def check_python_format(ui_we_want_to_set: EditorMain) -> None:
78+
jeditor_logger.info(f"build_check_style_menu.py check_python_format ui_we_want_to_set: {ui_we_want_to_set}")
79+
widget = ui_we_want_to_set.tab_widget.currentWidget()
80+
if isinstance(widget, EditorWidget):
81+
widget.check_file_format()

je_editor/utils/multi_language/english.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,8 +25,9 @@
2525
# Check Code Style Menu
2626
"check_code_style_menu_label": "Check Code Style",
2727
"yapf_reformat_label": "yapf",
28-
"black_reformat_label": "Black",
28+
"python_format_checker": "Python format check",
2929
"reformat_json_label": "Reformat JSON",
30+
"python_format_checker_only_support_python_message": "Only support python file",
3031
# Dock Menu
3132
"dock_menu_label": "Dock",
3233
"dock_browser_label": "New Dock Browser",

je_editor/utils/multi_language/traditional_chinese.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,8 @@
2525
# Check Code Style Menu
2626
"check_code_style_menu_label": "程式碼格式檢查器",
2727
"yapf_reformat_label": "yapf",
28-
"black_reformat_label": "Black",
28+
"python_format_checker": "Python 格式檢查",
29+
"python_format_checker_only_support_python_message": "只支援 Python 檔案",
2930
"reformat_json_label": "重新格式化 JSON",
3031
# Dock Menu
3132
"dock_menu_label": "區域",

0 commit comments

Comments
 (0)