From b9219e2626497bc41688dbc4035b353d2c1fd7fc Mon Sep 17 00:00:00 2001 From: "Matthew S. Klosak" Date: Thu, 27 Jul 2017 04:10:01 -0500 Subject: [PATCH] Fix commit error --- Editor.py | 182 ------------------------------------------------------ TabBar.py | 29 --------- main.py | 16 ----- 3 files changed, 227 deletions(-) delete mode 100644 Editor.py delete mode 100644 TabBar.py delete mode 100644 main.py diff --git a/Editor.py b/Editor.py deleted file mode 100644 index 1930832..0000000 --- a/Editor.py +++ /dev/null @@ -1,182 +0,0 @@ -import sys -from os.path import split - -from PyQt5.QtCore import QSettings, QPoint, QSize, pyqtSlot -from PyQt5.QtWidgets import QApplication, QFileDialog, QFontDialog, QMainWindow - -from .AboutDialog import AboutDialog -from .MenuBar import MenuBar -from .TabBar import TabBar - - -class Editor(QMainWindow): - def __init__(self): - super().__init__() - self.readWindowSettings() - - self.aboutDialog = AboutDialog() - - self.menuBar = MenuBar() - self.setMenuBar(self.menuBar) - - self.tabBar = TabBar() - self.readTabBarSettings() - self.setCentralWidget(self.tabBar) - - self.changeFont(self.font()) - - self.statusBar = self.statusBar() - # self.updateStatusBarText() - - self.configureSignals() - - self.show() - - def readWindowSettings(self): - settings = QSettings("msklosak", "EasyEdit") - - settings.beginGroup("Editor") - self.resize(settings.value("size", QSize(600, 800))) - self.move(settings.value("pos", QPoint(0, 0))) - self.setFont(settings.value("font", self.font())) - settings.endGroup() - - def writeWindowSettings(self): - settings = QSettings("msklosak", "EasyEdit") - - settings.beginGroup("Editor") - settings.setValue("size", self.size()) - settings.setValue("pos", self.pos()) - settings.setValue("font", self.font()) - settings.endGroup() - - def readTabBarSettings(self): - settings = QSettings("msklosak", "EasyEdit") - settings.beginGroup("Tab Bar") - - savedTabs = settings.value("openedTabs") - tabLexers = settings.value("tabLexers") - if savedTabs is None: - self.tabBar.openTab() - else: - for i in range(len(savedTabs)): - if savedTabs[i] != "Untitled": - self.tabBar.openTab() - self.openFile(savedTabs[i]) - self.tabBar.widget(i).changeLexer(tabLexers[i]) - - self.tabBar.setCurrentIndex(int(settings.value("currentTab", 0))) - - self.updateWindowTitle() - - settings.endGroup() - - def writeTabBarSettings(self): - openTabs = [] - tabLexers = [] - - for i in range(self.tabBar.count()): - openTabs.append(self.tabBar.widget(i).filePath) - tabLexers.append(self.tabBar.widget(i).currentLanguage) - - settings = QSettings("msklosak", "EasyEdit") - settings.beginGroup("Tab Bar") - settings.setValue("openedTabs", openTabs) - settings.setValue("tabLexers", tabLexers) - settings.setValue("currentTab", self.tabBar.currentIndex()) - settings.endGroup() - - def closeEvent(self, event): - self.writeTabBarSettings() - self.writeWindowSettings() - - while self.tabBar.count() > 0: - self.tabBar.closeTab(0) - - def configureSignals(self): - # FILE TAB - self.menuBar.newFile.connect(self.tabBar.openTab) - self.menuBar.openFile.connect(self.openFileDialog) - self.menuBar.saveFile.connect(self.saveFile) - self.menuBar.saveFileAs.connect(self.saveFile) - - # EDIT TAB - self.menuBar.undoEdit.connect(self.tabBar.currentWidget().undo) - self.menuBar.redoEdit.connect(self.tabBar.currentWidget().redo) - self.menuBar.cutText.connect(self.tabBar.currentWidget().cut) - self.menuBar.copyText.connect(self.tabBar.currentWidget().copy) - self.menuBar.pasteText.connect(self.tabBar.currentWidget().paste) - - # SETTINGS TAB - self.menuBar.changeFont.connect(self.changeFontDialog) - - # HELP TAB - self.menuBar.openAboutDialog.connect(lambda: self.aboutDialog.exec_()) - - # TAB BAR - self.tabBar.currentChanged.connect(self.tabChanged) - - # TEXT AREA - self.menuBar.changeLanguage.connect(self.tabBar.currentWidget().changeLexer) - # self.tabBar.currentWidget().cursorPositionChanged.connect(self.updateStatusBarText) - - def changeFont(self, newFont): - self.setFont(newFont) - - for i in range(self.tabBar.count()): - self.tabBar.widget(i).updateFont(newFont) - - def changeFontDialog(self): - font = QFontDialog().getFont()[0] - - self.changeFont(font) - - def openFile(self, fileName): - with open(fileName, 'r') as file: - self.tabBar.currentWidget().setText(file.read()) - - shortenedFileName = split(fileName)[1] - - self.tabBar.currentWidget().filePath = fileName - self.tabBar.setTabText(self.tabBar.currentIndex(), shortenedFileName) - self.tabBar.currentWidget().changeMarginWidth() - self.updateWindowTitle() - - def openFileDialog(self): - fileName = QFileDialog.getOpenFileName(self, "Open File")[0] - - if fileName != "": - self.openFile(fileName) - - def saveFile(self): - if self.tabBar.currentWidget().filePath != "Untitled": - fileName = self.tabBar.currentWidget().filePath - else: - fileName = QFileDialog.getSaveFileName(self, "Save File", None, "Text Files (*.txt);;All Files (*)")[0] - - if fileName != "": - shortenedFileName = split(fileName)[1] - - self.tabBar.setTabText(self.tabBar.currentIndex(), shortenedFileName) - self.updateWindowTitle() - - if fileName != "": - text = self.tabBar.currentWidget().text() - - with open(fileName, 'w') as file: - file.write(text) - - self.changeFont(self.font()) - - def tabChanged(self): - if self.tabBar.count() > 1: - # self.tabBar.currentWidget().cursorPositionChanged.connect(self.updateStatusBarText) - - self.updateWindowTitle() - - def updateWindowTitle(self): - self.setWindowTitle(self.tabBar.tabText(self.tabBar.currentIndex()) + " - EasyEdit") - - @pyqtSlot(int, int) - def updateStatusBarText(self, line, column): - self.statusBar.showMessage("Line {}, Column {}".format(line, column)) diff --git a/TabBar.py b/TabBar.py deleted file mode 100644 index a6e5667..0000000 --- a/TabBar.py +++ /dev/null @@ -1,29 +0,0 @@ -from PyQt5.QtWidgets import QApplication, QTabWidget - -from .TextArea import TextArea - - -class TabBar(QTabWidget): - def __init__(self): - super().__init__() - - self.setMovable(True) - self.setTabsClosable(True) - - self.tabCloseRequested.connect(self.closeTab) - - def openTab(self): - textWidget = TextArea() - - if self.count() == 0: - self.addTab(textWidget, "Untitled") - else: - self.addTab(textWidget, "Untitled ({})".format(self.count() + 1)) - - self.setCurrentIndex(self.count() - 1) - - def closeTab(self, index): - self.removeTab(index) - - if self.count() == 0: - QApplication.quit() diff --git a/main.py b/main.py deleted file mode 100644 index 438c7aa..0000000 --- a/main.py +++ /dev/null @@ -1,16 +0,0 @@ -import sys - -from easyedit.Editor import Editor -from PyQt5.QtWidgets import QApplication - - -def main(): - application = QApplication(sys.argv) - - Editor() - - sys.exit(application.exec_()) - - -if __name__ == '__main__': - main()