Loading README.md +1 −1 Original line number Diff line number Diff line Loading @@ -146,7 +146,7 @@ OCR并翻译选中文本框 * 0-9调整嵌字/原图透明度 * 文本编辑下 ```Ctrl+B``` 加粗,```Ctrl+U``` 下划线,```Ctrl+I``` 斜体 * 字体样式面板-"特效"修改透明度添加阴影 * ```Alt+Arrow Keys``` 或 ```Alt+WASD``` 在文本块间切换 * ```Alt+Arrow Keys``` 或 ```Alt+WASD``` (正在编辑文本块时 ```pageDown``` 或 ```pageUp```) 在文本块间切换 <img src="doc/src/configpanel.png"> Loading README_EN.md +1 −1 Original line number Diff line number Diff line Loading @@ -181,7 +181,7 @@ OCR & Translate Selected Area * ```0-9``` to adjust opacity of text layer * For text editing: bold - ```Ctrl+B```, underline - ```Ctrl+U```, Italics - ```Ctrl+I``` * Set text shadow and transparency in the text style panel -> Effect. * ```Alt+Arrow Keys``` or ```Alt+WASD``` to switch between text blocks. * ```Alt+Arrow Keys``` or ```Alt+WASD``` (```pageDown``` or ```pageUp``` while in text editing mode) to switch between text blocks. <img src="doc/src/configpanel.png"> Loading ui/canvas.py +4 −2 Original line number Diff line number Diff line Loading @@ -296,7 +296,7 @@ class Canvas(QGraphicsScene): self.originallayer_trans_slider: QSlider = None def on_switch_item(self, switch_delta: int, key_event: QKeyEvent = None): if self.textEditMode() and self.editing_textblkitem is None: if self.textEditMode(): self.switch_text_item.emit(switch_delta, key_event) def img_window_size(self): Loading Loading @@ -487,7 +487,9 @@ class Canvas(QGraphicsScene): self.alt_pressed = True modifiers = event.modifiers() if (modifiers == Qt.KeyboardModifier.AltModifier or self.alt_pressed) and not key == QKEY.Key_Alt: if (modifiers == Qt.KeyboardModifier.AltModifier or self.alt_pressed) and \ not key == QKEY.Key_Alt and \ self.editing_textblkitem is None: if key in {QKEY.Key_W, QKEY.Key_A, QKEY.Key_Left, QKEY.Key_Up}: self.on_switch_item(-1, event) return Loading ui/mainwindow.py +28 −2 Original line number Diff line number Diff line Loading @@ -15,14 +15,14 @@ from utils.textblock import TextBlock from utils import shared from utils import create_error_dialog from modules.translators.trans_chatgpt import GPTTranslator from .misc import parse_stylesheet, set_html_family from .misc import parse_stylesheet, set_html_family, QKEY from utils.config import ProgramConfig, pcfg, save_config, text_styles, save_text_styles, load_textstyle_from, FontFormat from utils.fontformat import pt2px from .config_proj import ProjImgTrans from .canvas import Canvas from .configpanel import ConfigPanel from .module_manager import ModuleManager from .textedit_area import SourceTextEdit, SelectTextMiniMenu from .textedit_area import SourceTextEdit, SelectTextMiniMenu, TransTextEdit from .drawingpanel import DrawingPanel from .scenetext_manager import SceneTextManager, TextPanel, PasteSrcItemsCommand from .mainwindowbars import TitleBar, LeftBar, BottomBar Loading Loading @@ -500,6 +500,16 @@ class MainWindow(mainwindow_cls): self.titleBar.exporttstyle_trigger.connect(self.export_tstyles) self.titleBar.darkmode_trigger.connect(self.on_darkmode_triggered) shortcutA = QShortcut(QKeySequence("A"), self) shortcutA.activated.connect(self.shortcutBefore) shortcutPageUp = QShortcut(QKeySequence(QKeySequence.StandardKey.MoveToPreviousPage), self) shortcutPageUp.activated.connect(self.shortcutBefore) shortcutD = QShortcut(QKeySequence("D"), self) shortcutD.activated.connect(self.shortcutNext) shortcutPageDown = QShortcut(QKeySequence(QKeySequence.StandardKey.MoveToNextPage), self) shortcutPageDown.activated.connect(self.shortcutNext) shortcutTextblock = QShortcut(QKeySequence("W"), self) shortcutTextblock.activated.connect(self.shortcutTextblock) shortcutZoomIn = QShortcut(QKeySequence.StandardKey.ZoomIn, self) Loading Loading @@ -533,9 +543,17 @@ class MainWindow(mainwindow_cls): self.drawingPanel.setShortcutTip(tool_name, shortcut_key) def shortcutNext(self): sender: QShortcut = self.sender() if isinstance(sender, QShortcut): if sender.key() == QKEY.Key_D: if self.canvas.editing_textblkitem is not None: return if self.centralStackWidget.currentIndex() == 0: focus_widget = self.app.focusWidget() if self.st_manager.is_editting(): self.st_manager.on_switch_textitem(1) elif isinstance(focus_widget, (SourceTextEdit, TransTextEdit)): self.st_manager.on_switch_textitem(1, current_editing_widget=focus_widget) else: index = self.pageList.currentIndex() page_count = self.pageList.count() Loading @@ -545,9 +563,17 @@ class MainWindow(mainwindow_cls): self.pageList.setCurrentRow(row) def shortcutBefore(self): sender: QShortcut = self.sender() if isinstance(sender, QShortcut): if sender.key() == QKEY.Key_A: if self.canvas.editing_textblkitem is not None: return if self.centralStackWidget.currentIndex() == 0: focus_widget = self.app.focusWidget() if self.st_manager.is_editting(): self.st_manager.on_switch_textitem(-1) elif isinstance(focus_widget, (SourceTextEdit, TransTextEdit)): self.st_manager.on_switch_textitem(-1, current_editing_widget=focus_widget) else: index = self.pageList.currentIndex() page_count = self.pageList.count() Loading ui/mainwindowbars.py +2 −2 Original line number Diff line number Diff line Loading @@ -387,9 +387,9 @@ class TitleBar(Widget): self.goToolBtn = TitleBarToolBtn(self) self.goToolBtn.setText(self.tr('Go')) prevPageAction = QAction(self.tr('Previous Page'), self) prevPageAction.setShortcuts([QKeySequence.StandardKey.MoveToPreviousPage, QKeySequence('A')]) # prevPageAction.setShortcuts([QKeySequence.StandardKey.MoveToPreviousPage, QKeySequence('A')]) nextPageAction = QAction(self.tr('Next Page'), self) nextPageAction.setShortcuts([QKeySequence.StandardKey.MoveToNextPage, QKeySequence('D')]) # nextPageAction.setShortcuts([QKeySequence.StandardKey.MoveToNextPage, QKeySequence('D')]) goMenu = QMenu(self.goToolBtn) goMenu.addActions([prevPageAction, nextPageAction]) self.goToolBtn.setMenu(goMenu) Loading Loading
README.md +1 −1 Original line number Diff line number Diff line Loading @@ -146,7 +146,7 @@ OCR并翻译选中文本框 * 0-9调整嵌字/原图透明度 * 文本编辑下 ```Ctrl+B``` 加粗,```Ctrl+U``` 下划线,```Ctrl+I``` 斜体 * 字体样式面板-"特效"修改透明度添加阴影 * ```Alt+Arrow Keys``` 或 ```Alt+WASD``` 在文本块间切换 * ```Alt+Arrow Keys``` 或 ```Alt+WASD``` (正在编辑文本块时 ```pageDown``` 或 ```pageUp```) 在文本块间切换 <img src="doc/src/configpanel.png"> Loading
README_EN.md +1 −1 Original line number Diff line number Diff line Loading @@ -181,7 +181,7 @@ OCR & Translate Selected Area * ```0-9``` to adjust opacity of text layer * For text editing: bold - ```Ctrl+B```, underline - ```Ctrl+U```, Italics - ```Ctrl+I``` * Set text shadow and transparency in the text style panel -> Effect. * ```Alt+Arrow Keys``` or ```Alt+WASD``` to switch between text blocks. * ```Alt+Arrow Keys``` or ```Alt+WASD``` (```pageDown``` or ```pageUp``` while in text editing mode) to switch between text blocks. <img src="doc/src/configpanel.png"> Loading
ui/canvas.py +4 −2 Original line number Diff line number Diff line Loading @@ -296,7 +296,7 @@ class Canvas(QGraphicsScene): self.originallayer_trans_slider: QSlider = None def on_switch_item(self, switch_delta: int, key_event: QKeyEvent = None): if self.textEditMode() and self.editing_textblkitem is None: if self.textEditMode(): self.switch_text_item.emit(switch_delta, key_event) def img_window_size(self): Loading Loading @@ -487,7 +487,9 @@ class Canvas(QGraphicsScene): self.alt_pressed = True modifiers = event.modifiers() if (modifiers == Qt.KeyboardModifier.AltModifier or self.alt_pressed) and not key == QKEY.Key_Alt: if (modifiers == Qt.KeyboardModifier.AltModifier or self.alt_pressed) and \ not key == QKEY.Key_Alt and \ self.editing_textblkitem is None: if key in {QKEY.Key_W, QKEY.Key_A, QKEY.Key_Left, QKEY.Key_Up}: self.on_switch_item(-1, event) return Loading
ui/mainwindow.py +28 −2 Original line number Diff line number Diff line Loading @@ -15,14 +15,14 @@ from utils.textblock import TextBlock from utils import shared from utils import create_error_dialog from modules.translators.trans_chatgpt import GPTTranslator from .misc import parse_stylesheet, set_html_family from .misc import parse_stylesheet, set_html_family, QKEY from utils.config import ProgramConfig, pcfg, save_config, text_styles, save_text_styles, load_textstyle_from, FontFormat from utils.fontformat import pt2px from .config_proj import ProjImgTrans from .canvas import Canvas from .configpanel import ConfigPanel from .module_manager import ModuleManager from .textedit_area import SourceTextEdit, SelectTextMiniMenu from .textedit_area import SourceTextEdit, SelectTextMiniMenu, TransTextEdit from .drawingpanel import DrawingPanel from .scenetext_manager import SceneTextManager, TextPanel, PasteSrcItemsCommand from .mainwindowbars import TitleBar, LeftBar, BottomBar Loading Loading @@ -500,6 +500,16 @@ class MainWindow(mainwindow_cls): self.titleBar.exporttstyle_trigger.connect(self.export_tstyles) self.titleBar.darkmode_trigger.connect(self.on_darkmode_triggered) shortcutA = QShortcut(QKeySequence("A"), self) shortcutA.activated.connect(self.shortcutBefore) shortcutPageUp = QShortcut(QKeySequence(QKeySequence.StandardKey.MoveToPreviousPage), self) shortcutPageUp.activated.connect(self.shortcutBefore) shortcutD = QShortcut(QKeySequence("D"), self) shortcutD.activated.connect(self.shortcutNext) shortcutPageDown = QShortcut(QKeySequence(QKeySequence.StandardKey.MoveToNextPage), self) shortcutPageDown.activated.connect(self.shortcutNext) shortcutTextblock = QShortcut(QKeySequence("W"), self) shortcutTextblock.activated.connect(self.shortcutTextblock) shortcutZoomIn = QShortcut(QKeySequence.StandardKey.ZoomIn, self) Loading Loading @@ -533,9 +543,17 @@ class MainWindow(mainwindow_cls): self.drawingPanel.setShortcutTip(tool_name, shortcut_key) def shortcutNext(self): sender: QShortcut = self.sender() if isinstance(sender, QShortcut): if sender.key() == QKEY.Key_D: if self.canvas.editing_textblkitem is not None: return if self.centralStackWidget.currentIndex() == 0: focus_widget = self.app.focusWidget() if self.st_manager.is_editting(): self.st_manager.on_switch_textitem(1) elif isinstance(focus_widget, (SourceTextEdit, TransTextEdit)): self.st_manager.on_switch_textitem(1, current_editing_widget=focus_widget) else: index = self.pageList.currentIndex() page_count = self.pageList.count() Loading @@ -545,9 +563,17 @@ class MainWindow(mainwindow_cls): self.pageList.setCurrentRow(row) def shortcutBefore(self): sender: QShortcut = self.sender() if isinstance(sender, QShortcut): if sender.key() == QKEY.Key_A: if self.canvas.editing_textblkitem is not None: return if self.centralStackWidget.currentIndex() == 0: focus_widget = self.app.focusWidget() if self.st_manager.is_editting(): self.st_manager.on_switch_textitem(-1) elif isinstance(focus_widget, (SourceTextEdit, TransTextEdit)): self.st_manager.on_switch_textitem(-1, current_editing_widget=focus_widget) else: index = self.pageList.currentIndex() page_count = self.pageList.count() Loading
ui/mainwindowbars.py +2 −2 Original line number Diff line number Diff line Loading @@ -387,9 +387,9 @@ class TitleBar(Widget): self.goToolBtn = TitleBarToolBtn(self) self.goToolBtn.setText(self.tr('Go')) prevPageAction = QAction(self.tr('Previous Page'), self) prevPageAction.setShortcuts([QKeySequence.StandardKey.MoveToPreviousPage, QKeySequence('A')]) # prevPageAction.setShortcuts([QKeySequence.StandardKey.MoveToPreviousPage, QKeySequence('A')]) nextPageAction = QAction(self.tr('Next Page'), self) nextPageAction.setShortcuts([QKeySequence.StandardKey.MoveToNextPage, QKeySequence('D')]) # nextPageAction.setShortcuts([QKeySequence.StandardKey.MoveToNextPage, QKeySequence('D')]) goMenu = QMenu(self.goToolBtn) goMenu.addActions([prevPageAction, nextPageAction]) self.goToolBtn.setMenu(goMenu) Loading