diff --git a/RichSpan.py b/RichSpan.py index 7b16e6d..ad2937b 100644 --- a/RichSpan.py +++ b/RichSpan.py @@ -16,7 +16,6 @@ from PySide6.QtPrintSupport import * from PySide6.QtWidgets import * -from modules.formatting import * from modules.globals import * from modules.threading import * @@ -79,44 +78,44 @@ def initUI(self): self.richspan_thread = ThreadingEngine( adaptiveResponse=settings.value("adaptiveResponse") ) - self.richspan_thread.update.connect(self.RS_updateStatistics) + self.richspan_thread.update.connect(self.updateStatistics) - self.RS_themePalette() + self.themePalette() self.selected_file = None self.file_name = None self.is_saved = None self.default_directory = QDir().homePath() self.directory = self.default_directory - self.RS_setupDock() + self.initDock() self.dock_widget.hide() self.status_bar = self.statusBar() - self.rs_area = QTextEdit() - self.RS_setupArea() - layout.addWidget(self.rs_area) + self.DocumentArea = QTextEdit() + self.initArea() + layout.addWidget(self.DocumentArea) - self.rs_area.setDisabled(True) - self.RS_setupActions() - self.RS_setupToolbar() + self.DocumentArea.setDisabled(True) + self.initActions() + self.initToolbar() self.adaptiveResponse = settings.value("adaptiveResponse") self.setPalette(self.light_theme) self.text_changed_timer = QTimer() self.text_changed_timer.setInterval(150 * self.adaptiveResponse) - self.text_changed_timer.timeout.connect(self.RS_threadStart) - self.rs_area.textChanged.connect(self.RS_textChanged) + self.text_changed_timer.timeout.connect(self.threadStart) + self.DocumentArea.textChanged.connect(self.textChanged) self.thread_running = False self.showMaximized() - self.rs_area.setFocus() - self.rs_area.setAcceptRichText(True) + self.DocumentArea.setFocus() + self.DocumentArea.setAcceptRichText(True) - QTimer.singleShot(50 * self.adaptiveResponse, self.RS_restoreTheme) - QTimer.singleShot(150 * self.adaptiveResponse, self.RS_restoreState) + QTimer.singleShot(50 * self.adaptiveResponse, self.restoreTheme) + QTimer.singleShot(150 * self.adaptiveResponse, self.restoreState) - self.rs_area.setDisabled(False) - self.RS_updateTitle() + self.DocumentArea.setDisabled(False) + self.updateTitle() endtime = datetime.datetime.now() self.status_bar.showMessage( @@ -135,24 +134,24 @@ def closeEvent(self, event): ) if reply == QMessageBox.Yes: - self.RS_saveState() + self.saveState() event.accept() else: - self.RS_saveState() + self.saveState() event.ignore() else: - self.RS_saveState() + self.saveState() event.accept() - def RS_changeLanguage(self): + def changeLanguage(self): settings = QSettings("berkaygediz", "RichSpan") settings.setValue("appLanguage", self.language_combobox.currentData()) settings.sync() - self.RS_updateTitle() - self.RS_updateStatistics() - self.RS_toolbarTranslate() + self.updateTitle() + self.updateStatistics() + self.toolbarTranslate() - def RS_updateTitle(self): + def updateTitle(self): settings = QSettings("berkaygediz", "RichSpan") file = ( self.file_name @@ -174,20 +173,20 @@ def RS_updateTitle(self): f"{file}{asterisk}{textMode} — {app.applicationDisplayName()}" ) - def RS_threadStart(self): + def threadStart(self): if not self.thread_running: self.richspan_thread.start() self.thread_running = True - def RS_textChanged(self): + def textChanged(self): if not self.text_changed_timer.isActive(): self.text_changed_timer.start() - def RS_updateStatistics(self): + def updateStatistics(self): self.text_changed_timer.stop() self.thread_running = False settings = QSettings("berkaygediz", "RichSpan") - text = self.rs_area.toPlainText() + text = self.DocumentArea.toPlainText() character_count = len(text) word_count = len(text.split()) line_count = text.count("\n") + 1 @@ -226,14 +225,14 @@ def RS_updateStatistics(self): None else: - self.rs_area.setFontFamily(fallbackValues["fontFamily"]) - self.rs_area.setFontPointSize(fallbackValues["fontSize"]) - self.rs_area.setFontWeight(75 if fallbackValues["bold"] else 50) - self.rs_area.setFontItalic(fallbackValues["italic"]) - self.rs_area.setFontUnderline(fallbackValues["underline"]) - self.rs_area.setAlignment(fallbackValues["contentAlign"]) - self.rs_area.setTextColor(QColor(fallbackValues["contentColor"])) - self.rs_area.setTextBackgroundColor( + self.DocumentArea.setFontFamily(fallbackValues["fontFamily"]) + self.DocumentArea.setFontPointSize(fallbackValues["fontSize"]) + self.DocumentArea.setFontWeight(75 if fallbackValues["bold"] else 50) + self.DocumentArea.setFontItalic(fallbackValues["italic"]) + self.DocumentArea.setFontUnderline(fallbackValues["underline"]) + self.DocumentArea.setAlignment(fallbackValues["contentAlign"]) + self.DocumentArea.setTextColor(QColor(fallbackValues["contentColor"])) + self.DocumentArea.setTextBackgroundColor( QColor(fallbackValues["contentBackgroundColor"]) ) statistics += ( @@ -247,21 +246,21 @@ def RS_updateStatistics(self): self.statistics_label.setText(statistics) self.status_bar.addPermanentWidget(self.statistics_label) - self.new_text = self.rs_area.toPlainText() + self.new_text = self.DocumentArea.toPlainText() if self.new_text != fallbackValues["content"]: self.is_saved = False else: self.is_saved = True - self.RS_updateTitle() + self.updateTitle() - def RS_saveState(self): + def saveState(self): settings = QSettings("berkaygediz", "RichSpan") settings.setValue("windowScale", self.saveGeometry()) settings.setValue("defaultDirectory", self.directory) settings.setValue("fileName", self.file_name) - settings.setValue("content", self.rs_area.toHtml()) + settings.setValue("content", self.DocumentArea.toHtml()) settings.setValue("isSaved", self.is_saved) - settings.setValue("scrollPosition", self.rs_area.verticalScrollBar().value()) + settings.setValue("scrollPosition", self.DocumentArea.verticalScrollBar().value()) settings.setValue( "appTheme", "dark" if self.palette() == self.dark_theme else "light" ) @@ -269,12 +268,12 @@ def RS_saveState(self): settings.setValue("adaptiveResponse", self.adaptiveResponse) settings.sync() - def RS_restoreState(self): + def restoreState(self): settings = QSettings("berkaygediz", "RichSpan") self.geometry = settings.value("windowScale") self.directory = settings.value("defaultDirectory", self.default_directory) self.file_name = settings.value("fileName") - self.rs_area.setHtml(settings.value("content")) + self.DocumentArea.setHtml(settings.value("content")) self.is_saved = settings.value("isSaved") index = self.language_combobox.findData(settings.value("appLanguage")) self.language_combobox.setCurrentIndex(index) @@ -283,7 +282,7 @@ def RS_restoreState(self): self.restoreGeometry(self.geometry) if self.file_name and os.path.exists(self.file_name): - automaticEncoding = RS_Workspace.RS_detectEncoding(self.file_name) + automaticEncoding = RS_Workspace.detectEncoding(self.file_name) if self.file_name.endswith(".docx"): with open( self.file_name, @@ -291,27 +290,27 @@ def RS_restoreState(self): ) as file: try: conversionLayer = mammoth.convert_to_html(file) - self.rs_area.setHtml(conversionLayer.value) + self.DocumentArea.setHtml(conversionLayer.value) except: None else: with open(self.file_name, "r", encoding=automaticEncoding) as file: if self.file_name.endswith((".rsdoc")): - self.rs_area.setHtml(file.read()) + self.DocumentArea.setHtml(file.read()) elif self.file_name.endswith((".html", ".htm")): - self.rs_area.setHtml(file.read()) + self.DocumentArea.setHtml(file.read()) elif self.file_name.endswith((".md")): - self.rs_area.setMarkdown(file.read()) + self.DocumentArea.setMarkdown(file.read()) else: - self.rs_area.setPlainText(file.read()) + self.DocumentArea.setPlainText(file.read()) scroll_position = settings.value("scrollPosition") if scroll_position is not None: - self.rs_area.verticalScrollBar().setValue(int(scroll_position)) + self.DocumentArea.verticalScrollBar().setValue(int(scroll_position)) else: - self.rs_area.verticalScrollBar().setValue(0) + self.DocumentArea.verticalScrollBar().setValue(0) if self.file_name: self.is_saved = True @@ -319,18 +318,18 @@ def RS_restoreState(self): self.is_saved = False self.adaptiveResponse = settings.value("adaptiveResponse") - self.RS_restoreTheme() - self.RS_updateTitle() + self.restoreTheme() + self.updateTitle() - def RS_restoreTheme(self): + def restoreTheme(self): settings = QSettings("berkaygediz", "RichSpan") if settings.value("appTheme") == "dark": self.setPalette(self.dark_theme) else: self.setPalette(self.light_theme) - self.RS_toolbarTheme() + self.toolbarTheme() - def RS_themePalette(self): + def themePalette(self): self.light_theme = QPalette() self.dark_theme = QPalette() @@ -350,7 +349,7 @@ def RS_themePalette(self): self.dark_theme.setColor(QPalette.Button, QColor(0, 0, 0)) self.dark_theme.setColor(QPalette.ButtonText, QColor(255, 255, 255)) - def RS_themeAction(self): + def themeAction(self): settings = QSettings("berkaygediz", "RichSpan") if self.palette() == self.light_theme: self.setPalette(self.dark_theme) @@ -358,9 +357,9 @@ def RS_themeAction(self): else: self.setPalette(self.light_theme) settings.setValue("appTheme", "light") - self.RS_toolbarTheme() + self.toolbarTheme() - def RS_toolbarTheme(self): + def toolbarTheme(self): palette = self.palette() if palette == self.light_theme: text_color = QColor(255, 255, 255) @@ -375,7 +374,7 @@ def RS_toolbarTheme(self): action_color.setColor(QPalette.WindowText, text_color) toolbar.setPalette(action_color) - def RS_toolbarTranslate(self): + def toolbarTranslate(self): settings = QSettings("berkaygediz", "RichSpan") self.newaction.setText(translations[settings.value("appLanguage")]["new"]) self.newaction.setStatusTip( @@ -562,21 +561,21 @@ def RS_toolbarTranslate(self): "
NOTE: AI support planned.