Loading ballontranslator/ui/canvas.py +7 −1 Original line number Diff line number Diff line Loading @@ -141,13 +141,16 @@ class Canvas(QGraphicsScene): self.maskLayer.setTransformationMode(Qt.TransformationMode.SmoothTransformation) self.drawingLayer = QGraphicsPixmapItem() self.drawingLayer.setTransformationMode(Qt.TransformationMode.SmoothTransformation) self.textLayer = QGraphicsPixmapItem() self.textLayer.setTransformationMode(Qt.TransformationMode.SmoothTransformation) self.addItem(self.baseLayer) self.inpaintLayer.setParentItem(self.baseLayer) self.imgLayer.setParentItem(self.baseLayer) self.maskLayer.setParentItem(self.baseLayer) self.drawingLayer.setParentItem(self.baseLayer) self.txtblkShapeControl.setParentItem(self.inpaintLayer) self.textLayer.setParentItem(self.baseLayer) self.txtblkShapeControl.setParentItem(self.textLayer) self.scalefactor_changed.connect(self.onScaleFactorChanged) self.selectionChanged.connect(self.on_selection_changed) Loading Loading @@ -364,6 +367,9 @@ class Canvas(QGraphicsScene): pixmap = ndarray2pixmap(self.imgtrans_proj.inpainted_array) self.inpaintLayer.setPixmap(pixmap) pixmap.fill(Qt.GlobalColor.transparent) self.textLayer.setPixmap(pixmap) def setDrawingLayer(self, img: Union[QPixmap, np.ndarray] = None): ditems = self.get_drawings(visible=False) Loading ballontranslator/ui/mainwindow.py +20 −2 Original line number Diff line number Diff line Loading @@ -410,11 +410,23 @@ class MainWindow(QMainWindow): def save_proj(self): if self.leftBar.imgTransChecker.isChecked()\ and self.imgtrans_proj.directory is not None: self.saveCurrentPage(update_scene_text=True) self.saveCurrentPage(update_scene_text=True, restore_interface=True) def saveCurrentPage(self, update_scene_text=True, save_proj=True): def saveCurrentPage(self, update_scene_text=True, save_proj=True, restore_interface=False): if update_scene_text: self.st_manager.updateTextBlkList() if self.rightComicTransStackPanel.isHidden(): self.bottomBar.texteditChecker.click() trans_idx = self.rightComicTransStackPanel.currentIndex() if trans_idx != 1: self.bottomBar.texteditChecker.click() restore_original_transparency = None if self.bottomBar.originalSlider.value() != 0: restore_original_transparency = self.bottomBar.originalSlider.value() self.bottomBar.originalSlider.setValue(0) if save_proj: self.imgtrans_proj.save() mask_path = self.imgtrans_proj.get_mask_path() Loading Loading @@ -467,6 +479,12 @@ class MainWindow(QMainWindow): self.st_manager.txtblkShapeControl.show() self.canvas.setProjSaveState(False) if restore_interface: if restore_original_transparency is not None: self.bottomBar.originalSlider.setValue(restore_original_transparency) if trans_idx != 1: self.bottomBar.paintChecker.click() def translatorStatusBtnPressed(self): self.leftBar.configChecker.setChecked(True) self.configPanel.focusOnTranslator() Loading ballontranslator/ui/scenetext_manager.py +2 −2 Original line number Diff line number Diff line Loading @@ -316,7 +316,7 @@ class SceneTextManager(QObject): def addTextBlkItem(self, textblk_item: TextBlkItem) -> TextBlkItem: self.textblk_item_list.append(textblk_item) textblk_item.setParentItem(self.canvas.inpaintLayer) textblk_item.setParentItem(self.canvas.textLayer) textblk_item.begin_edit.connect(self.onTextBlkItemBeginEdit) textblk_item.end_edit.connect(self.onTextBlkItemEndEdit) textblk_item.hover_enter.connect(self.onTextBlkItemHoverEnter) Loading Loading @@ -351,7 +351,7 @@ class SceneTextManager(QObject): blkitem.idx = len(self.textblk_item_list) p_widget.idx = len(self.pairwidget_list) self.textblk_item_list.append(blkitem) blkitem.setParentItem(self.canvas.inpaintLayer) blkitem.setParentItem(self.canvas.textLayer) self.pairwidget_list.append(p_widget) self.textEditList.addPairWidget(p_widget) Loading Loading
ballontranslator/ui/canvas.py +7 −1 Original line number Diff line number Diff line Loading @@ -141,13 +141,16 @@ class Canvas(QGraphicsScene): self.maskLayer.setTransformationMode(Qt.TransformationMode.SmoothTransformation) self.drawingLayer = QGraphicsPixmapItem() self.drawingLayer.setTransformationMode(Qt.TransformationMode.SmoothTransformation) self.textLayer = QGraphicsPixmapItem() self.textLayer.setTransformationMode(Qt.TransformationMode.SmoothTransformation) self.addItem(self.baseLayer) self.inpaintLayer.setParentItem(self.baseLayer) self.imgLayer.setParentItem(self.baseLayer) self.maskLayer.setParentItem(self.baseLayer) self.drawingLayer.setParentItem(self.baseLayer) self.txtblkShapeControl.setParentItem(self.inpaintLayer) self.textLayer.setParentItem(self.baseLayer) self.txtblkShapeControl.setParentItem(self.textLayer) self.scalefactor_changed.connect(self.onScaleFactorChanged) self.selectionChanged.connect(self.on_selection_changed) Loading Loading @@ -364,6 +367,9 @@ class Canvas(QGraphicsScene): pixmap = ndarray2pixmap(self.imgtrans_proj.inpainted_array) self.inpaintLayer.setPixmap(pixmap) pixmap.fill(Qt.GlobalColor.transparent) self.textLayer.setPixmap(pixmap) def setDrawingLayer(self, img: Union[QPixmap, np.ndarray] = None): ditems = self.get_drawings(visible=False) Loading
ballontranslator/ui/mainwindow.py +20 −2 Original line number Diff line number Diff line Loading @@ -410,11 +410,23 @@ class MainWindow(QMainWindow): def save_proj(self): if self.leftBar.imgTransChecker.isChecked()\ and self.imgtrans_proj.directory is not None: self.saveCurrentPage(update_scene_text=True) self.saveCurrentPage(update_scene_text=True, restore_interface=True) def saveCurrentPage(self, update_scene_text=True, save_proj=True): def saveCurrentPage(self, update_scene_text=True, save_proj=True, restore_interface=False): if update_scene_text: self.st_manager.updateTextBlkList() if self.rightComicTransStackPanel.isHidden(): self.bottomBar.texteditChecker.click() trans_idx = self.rightComicTransStackPanel.currentIndex() if trans_idx != 1: self.bottomBar.texteditChecker.click() restore_original_transparency = None if self.bottomBar.originalSlider.value() != 0: restore_original_transparency = self.bottomBar.originalSlider.value() self.bottomBar.originalSlider.setValue(0) if save_proj: self.imgtrans_proj.save() mask_path = self.imgtrans_proj.get_mask_path() Loading Loading @@ -467,6 +479,12 @@ class MainWindow(QMainWindow): self.st_manager.txtblkShapeControl.show() self.canvas.setProjSaveState(False) if restore_interface: if restore_original_transparency is not None: self.bottomBar.originalSlider.setValue(restore_original_transparency) if trans_idx != 1: self.bottomBar.paintChecker.click() def translatorStatusBtnPressed(self): self.leftBar.configChecker.setChecked(True) self.configPanel.focusOnTranslator() Loading
ballontranslator/ui/scenetext_manager.py +2 −2 Original line number Diff line number Diff line Loading @@ -316,7 +316,7 @@ class SceneTextManager(QObject): def addTextBlkItem(self, textblk_item: TextBlkItem) -> TextBlkItem: self.textblk_item_list.append(textblk_item) textblk_item.setParentItem(self.canvas.inpaintLayer) textblk_item.setParentItem(self.canvas.textLayer) textblk_item.begin_edit.connect(self.onTextBlkItemBeginEdit) textblk_item.end_edit.connect(self.onTextBlkItemEndEdit) textblk_item.hover_enter.connect(self.onTextBlkItemHoverEnter) Loading Loading @@ -351,7 +351,7 @@ class SceneTextManager(QObject): blkitem.idx = len(self.textblk_item_list) p_widget.idx = len(self.pairwidget_list) self.textblk_item_list.append(blkitem) blkitem.setParentItem(self.canvas.inpaintLayer) blkitem.setParentItem(self.canvas.textLayer) self.pairwidget_list.append(p_widget) self.textEditList.addPairWidget(p_widget) Loading