summaryrefslogtreecommitdiffstats
path: root/ui/main_window.py
diff options
context:
space:
mode:
authorDanilo M. <danix@danix.xyz>2026-05-03 10:41:41 +0200
committerDanilo M. <danix@danix.xyz>2026-05-03 10:41:41 +0200
commit1786c672753a74b876f415dd5f32742c0e24f8c9 (patch)
tree0e62733141f2a2c12d28ce62199492869ff63e87 /ui/main_window.py
parent5ac2f470c18a9eda17c1f2f8489c07e2eed2cd04 (diff)
downloadpublisher-1786c672753a74b876f415dd5f32742c0e24f8c9.tar.gz
publisher-1786c672753a74b876f415dd5f32742c0e24f8c9.zip
feat: translation view with QProcess streaming and post-translation preview
Diffstat (limited to 'ui/main_window.py')
-rw-r--r--ui/main_window.py17
1 files changed, 15 insertions, 2 deletions
diff --git a/ui/main_window.py b/ui/main_window.py
index 001b03a..4073591 100644
--- a/ui/main_window.py
+++ b/ui/main_window.py
@@ -79,8 +79,20 @@ class MainWindow(QMainWindow):
self._stack.addWidget(self._detail_view)
self._page_detail = self._stack.count() - 1
+ from ui.translation_view import TranslationView
+
+ self._translation_view = TranslationView(
+ self.config.transart_script,
+ self.config.typora_bin,
+ parent=self,
+ )
+ self._translation_view.push_master.connect(lambda: self._do_git_push("master"))
+ self._translation_view.publish.connect(lambda: self._do_git_push("production"))
+ self._stack.addWidget(self._translation_view)
+ self._page_translations = self._stack.count() - 1
+
# Remaining placeholders
- for name in ["taxonomy", "media", "translations", "git", "hugo"]:
+ for name in ["taxonomy", "media", "git", "hugo"]:
w = QLabel(f"[{name}]")
w.setAlignment(Qt.AlignmentFlag.AlignCenter)
self._stack.addWidget(w)
@@ -189,7 +201,8 @@ class MainWindow(QMainWindow):
subprocess.Popen([self.config.typora_bin, str(dlg.created_path)])
def _do_translate(self, article: Article):
- pass # implemented in Task 15
+ self._translation_view.start_translation(article)
+ self._stack.setCurrentIndex(self._page_translations)
def _do_git_push(self, branch: str):
pass # implemented in Task 16