Mercurial > projects > dil
annotate trunk/src/translator/translator.py @ 479:044b5393f8bc
Translator: added ClosingProjectDialog.
author | Aziz K?ksal <aziz.koeksal@gmail.com> |
---|---|
date | Mon, 12 Nov 2007 17:18:30 +0100 |
parents | 3b5421d40f9b |
children | 04adc4e3fdda |
rev | line source |
---|---|
437
7ac9f94ca7ff
Translator: added NewProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
436
diff
changeset
|
1 #! /usr/bin/python |
435
156d6301d79e
Added PyQt4 application for creating and managing translations.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
2 # -*- coding: utf-8 -*- |
156d6301d79e
Added PyQt4 application for creating and managing translations.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
3 # Author: Aziz Köksal |
156d6301d79e
Added PyQt4 application for creating and managing translations.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
4 # License: GPL2 |
437
7ac9f94ca7ff
Translator: added NewProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
436
diff
changeset
|
5 import sys, os |
7ac9f94ca7ff
Translator: added NewProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
436
diff
changeset
|
6 import yaml |
438
2c177053cd15
Translator: added modules langfile and project.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
437
diff
changeset
|
7 |
435
156d6301d79e
Added PyQt4 application for creating and managing translations.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
8 from PyQt4 import QtCore, QtGui |
437
7ac9f94ca7ff
Translator: added NewProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
436
diff
changeset
|
9 # User interface modules |
435
156d6301d79e
Added PyQt4 application for creating and managing translations.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
10 from ui_translator import Ui_MainWindow |
436
0dba4c0e5234
Added AboutDialog to translator.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
435
diff
changeset
|
11 from ui_about import Ui_AboutDialog |
437
7ac9f94ca7ff
Translator: added NewProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
436
diff
changeset
|
12 from ui_new_project import Ui_NewProjectDialog |
442
5968e273449b
Translator: added new modules; made fixes and many additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
439
diff
changeset
|
13 from ui_project_properties import Ui_ProjectProperties |
460
77c17bbe9d20
Translator: added new modules; applied fixes.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
442
diff
changeset
|
14 from ui_msg_form import Ui_MsgForm |
479
044b5393f8bc
Translator: added ClosingProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
477
diff
changeset
|
15 from ui_closing_project import Ui_ClosingProjectDialog |
437
7ac9f94ca7ff
Translator: added NewProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
436
diff
changeset
|
16 |
460
77c17bbe9d20
Translator: added new modules; applied fixes.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
442
diff
changeset
|
17 from project import Project, newProjectData |
438
2c177053cd15
Translator: added modules langfile and project.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
437
diff
changeset
|
18 |
437
7ac9f94ca7ff
Translator: added NewProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
436
diff
changeset
|
19 g_scriptDir = sys.path[0] |
7ac9f94ca7ff
Translator: added NewProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
436
diff
changeset
|
20 g_CWD = os.getcwd() |
442
5968e273449b
Translator: added new modules; made fixes and many additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
439
diff
changeset
|
21 g_projectExt = ".tproj" |
460
77c17bbe9d20
Translator: added new modules; applied fixes.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
442
diff
changeset
|
22 g_catExt = ".cat" |
437
7ac9f94ca7ff
Translator: added NewProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
436
diff
changeset
|
23 g_settingsFile = os.path.join(g_scriptDir, "settings.yaml") |
7ac9f94ca7ff
Translator: added NewProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
436
diff
changeset
|
24 g_settings = {} |
436
0dba4c0e5234
Added AboutDialog to translator.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
435
diff
changeset
|
25 |
477
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
26 Qt = QtCore.Qt |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
27 Qt.connect = QtCore.QObject.connect |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
28 Qt.disconnect = QtCore.QObject.disconnect |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
29 Qt.SIGNAL = QtCore.SIGNAL |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
30 Qt.SLOT = QtCore.SLOT |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
31 |
476
773ddddb583d
Translator: made central widget a QTabWidget.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
475
diff
changeset
|
32 def QTabWidgetCloseAll(self): |
479
044b5393f8bc
Translator: added ClosingProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
477
diff
changeset
|
33 for i in range(self.count()-1,-1,-1): |
044b5393f8bc
Translator: added ClosingProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
477
diff
changeset
|
34 widget = self.widget(i) |
044b5393f8bc
Translator: added ClosingProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
477
diff
changeset
|
35 self.removeTab(i) |
476
773ddddb583d
Translator: made central widget a QTabWidget.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
475
diff
changeset
|
36 widget.close() |
773ddddb583d
Translator: made central widget a QTabWidget.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
475
diff
changeset
|
37 QtGui.QTabWidget.closeAll = QTabWidgetCloseAll |
475
70fdd0701a77
Translator: messages can be edited now.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
472
diff
changeset
|
38 |
436
0dba4c0e5234
Added AboutDialog to translator.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
435
diff
changeset
|
39 class MainWindow(QtGui.QMainWindow, Ui_MainWindow): |
0dba4c0e5234
Added AboutDialog to translator.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
435
diff
changeset
|
40 def __init__(self): |
0dba4c0e5234
Added AboutDialog to translator.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
435
diff
changeset
|
41 QtGui.QMainWindow.__init__(self) |
0dba4c0e5234
Added AboutDialog to translator.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
435
diff
changeset
|
42 self.setupUi(self) |
0dba4c0e5234
Added AboutDialog to translator.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
435
diff
changeset
|
43 |
442
5968e273449b
Translator: added new modules; made fixes and many additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
439
diff
changeset
|
44 self.project = None |
436
0dba4c0e5234
Added AboutDialog to translator.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
435
diff
changeset
|
45 # Modifications |
476
773ddddb583d
Translator: made central widget a QTabWidget.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
475
diff
changeset
|
46 self.pages = QtGui.QTabWidget() |
471
b6fa41e6f0b4
Translator: implemented some functionality of MsgForm.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
460
diff
changeset
|
47 self.setCentralWidget(self.pages) |
442
5968e273449b
Translator: added new modules; made fixes and many additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
439
diff
changeset
|
48 self.disableMenuItems() |
460
77c17bbe9d20
Translator: added new modules; applied fixes.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
442
diff
changeset
|
49 self.projectDock = QtGui.QDockWidget("Project", self) |
476
773ddddb583d
Translator: made central widget a QTabWidget.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
475
diff
changeset
|
50 self.projectTree = ProjectTree(self.projectDock) |
460
77c17bbe9d20
Translator: added new modules; applied fixes.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
442
diff
changeset
|
51 self.projectDock.setWidget(self.projectTree) |
77c17bbe9d20
Translator: added new modules; applied fixes.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
442
diff
changeset
|
52 self.addDockWidget(QtCore.Qt.LeftDockWidgetArea, self.projectDock) |
436
0dba4c0e5234
Added AboutDialog to translator.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
435
diff
changeset
|
53 # Custom connections |
479
044b5393f8bc
Translator: added ClosingProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
477
diff
changeset
|
54 triggered = Qt.SIGNAL("triggered()") |
044b5393f8bc
Translator: added ClosingProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
477
diff
changeset
|
55 Qt.connect(self.action_About, triggered, self.showAboutDialog) |
044b5393f8bc
Translator: added ClosingProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
477
diff
changeset
|
56 Qt.connect(self.action_New_Project, triggered, self.createNewProject) |
044b5393f8bc
Translator: added ClosingProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
477
diff
changeset
|
57 Qt.connect(self.action_Open_Project, triggered, self.openProjectAction) |
044b5393f8bc
Translator: added ClosingProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
477
diff
changeset
|
58 Qt.connect(self.action_Close_Project, triggered, self.closeProjectAction) |
044b5393f8bc
Translator: added ClosingProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
477
diff
changeset
|
59 Qt.connect(self.action_Save, triggered, self.saveForm) |
044b5393f8bc
Translator: added ClosingProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
477
diff
changeset
|
60 Qt.connect(self.action_Save_All, triggered, self.saveAllForms) |
044b5393f8bc
Translator: added ClosingProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
477
diff
changeset
|
61 Qt.connect(self.action_Close, triggered, self.closeForm) |
044b5393f8bc
Translator: added ClosingProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
477
diff
changeset
|
62 Qt.connect(self.action_Close_All, triggered, self.closeAllForms) |
044b5393f8bc
Translator: added ClosingProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
477
diff
changeset
|
63 Qt.connect(self.action_Properties, triggered, self.showProjectProperties) |
044b5393f8bc
Translator: added ClosingProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
477
diff
changeset
|
64 Qt.connect(self.action_Add_Catalogue, triggered, self.addCatalogue) |
044b5393f8bc
Translator: added ClosingProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
477
diff
changeset
|
65 Qt.connect(self.action_Add_New_Catalogue, triggered, self.addNewCatalogue) |
477
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
66 Qt.connect(self.projectTree, Qt.SIGNAL("itemDoubleClicked(QTreeWidgetItem*,int)"), self.projectTreeItemDblClicked) |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
67 Qt.connect(self.projectTree, Qt.SIGNAL("onKeyEnter"), self.projectTreeItemActivated) |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
68 Qt.connect(self.projectTree, Qt.SIGNAL("onKeyDelete"), self.projectTreeItemDeleted) |
436
0dba4c0e5234
Added AboutDialog to translator.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
435
diff
changeset
|
69 |
437
7ac9f94ca7ff
Translator: added NewProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
436
diff
changeset
|
70 self.readSettings() |
7ac9f94ca7ff
Translator: added NewProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
436
diff
changeset
|
71 |
7ac9f94ca7ff
Translator: added NewProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
436
diff
changeset
|
72 def showAboutDialog(self): |
436
0dba4c0e5234
Added AboutDialog to translator.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
435
diff
changeset
|
73 about = QtGui.QDialog() |
0dba4c0e5234
Added AboutDialog to translator.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
435
diff
changeset
|
74 Ui_AboutDialog().setupUi(about) |
0dba4c0e5234
Added AboutDialog to translator.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
435
diff
changeset
|
75 about.exec_() |
435
156d6301d79e
Added PyQt4 application for creating and managing translations.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
76 |
442
5968e273449b
Translator: added new modules; made fixes and many additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
439
diff
changeset
|
77 def showProjectProperties(self): |
5968e273449b
Translator: added new modules; made fixes and many additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
439
diff
changeset
|
78 dialog = QtGui.QDialog() |
5968e273449b
Translator: added new modules; made fixes and many additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
439
diff
changeset
|
79 Ui_ProjectProperties().setupUi(dialog) |
5968e273449b
Translator: added new modules; made fixes and many additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
439
diff
changeset
|
80 dialog.exec_() |
5968e273449b
Translator: added new modules; made fixes and many additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
439
diff
changeset
|
81 |
437
7ac9f94ca7ff
Translator: added NewProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
436
diff
changeset
|
82 def createNewProject(self): |
479
044b5393f8bc
Translator: added ClosingProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
477
diff
changeset
|
83 if self.rejectClosingProject(): |
460
77c17bbe9d20
Translator: added new modules; applied fixes.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
442
diff
changeset
|
84 return |
77c17bbe9d20
Translator: added new modules; applied fixes.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
442
diff
changeset
|
85 dialog = NewProjectDialog() |
77c17bbe9d20
Translator: added new modules; applied fixes.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
442
diff
changeset
|
86 code = dialog.exec_() |
77c17bbe9d20
Translator: added new modules; applied fixes.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
442
diff
changeset
|
87 if code == QtGui.QDialog.Accepted: |
479
044b5393f8bc
Translator: added ClosingProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
477
diff
changeset
|
88 self.closeProject() |
460
77c17bbe9d20
Translator: added new modules; applied fixes.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
442
diff
changeset
|
89 self.openProject(str(dialog.projectFilePath.text())) |
437
7ac9f94ca7ff
Translator: added NewProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
436
diff
changeset
|
90 |
442
5968e273449b
Translator: added new modules; made fixes and many additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
439
diff
changeset
|
91 def openProjectAction(self): |
479
044b5393f8bc
Translator: added ClosingProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
477
diff
changeset
|
92 if self.rejectClosingProject(): |
442
5968e273449b
Translator: added new modules; made fixes and many additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
439
diff
changeset
|
93 return |
5968e273449b
Translator: added new modules; made fixes and many additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
439
diff
changeset
|
94 filePath = QtGui.QFileDialog.getOpenFileName(self, "Select Project File", g_CWD, "Translator Project (*%s)" % g_projectExt); |
460
77c17bbe9d20
Translator: added new modules; applied fixes.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
442
diff
changeset
|
95 filePath = str(filePath) |
442
5968e273449b
Translator: added new modules; made fixes and many additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
439
diff
changeset
|
96 if filePath: |
479
044b5393f8bc
Translator: added ClosingProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
477
diff
changeset
|
97 self.closeProject() |
460
77c17bbe9d20
Translator: added new modules; applied fixes.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
442
diff
changeset
|
98 self.openProject(filePath) |
442
5968e273449b
Translator: added new modules; made fixes and many additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
439
diff
changeset
|
99 |
5968e273449b
Translator: added new modules; made fixes and many additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
439
diff
changeset
|
100 def openProject(self, filePath): |
5968e273449b
Translator: added new modules; made fixes and many additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
439
diff
changeset
|
101 from errors import LoadingError |
5968e273449b
Translator: added new modules; made fixes and many additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
439
diff
changeset
|
102 try: |
5968e273449b
Translator: added new modules; made fixes and many additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
439
diff
changeset
|
103 self.project = Project(filePath) |
5968e273449b
Translator: added new modules; made fixes and many additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
439
diff
changeset
|
104 except LoadingError, e: |
5968e273449b
Translator: added new modules; made fixes and many additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
439
diff
changeset
|
105 QtGui.QMessageBox.critical(self, "Error", u"Couldn't load project file:\n\n"+str(e)) |
5968e273449b
Translator: added new modules; made fixes and many additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
439
diff
changeset
|
106 return |
5968e273449b
Translator: added new modules; made fixes and many additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
439
diff
changeset
|
107 self.enableMenuItems() |
5968e273449b
Translator: added new modules; made fixes and many additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
439
diff
changeset
|
108 self.projectTree.setProject(self.project) |
460
77c17bbe9d20
Translator: added new modules; applied fixes.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
442
diff
changeset
|
109 |
479
044b5393f8bc
Translator: added ClosingProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
477
diff
changeset
|
110 def closeProjectAction(self): |
044b5393f8bc
Translator: added ClosingProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
477
diff
changeset
|
111 if not self.rejectClosingProject(): |
044b5393f8bc
Translator: added ClosingProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
477
diff
changeset
|
112 self.closeProject() |
044b5393f8bc
Translator: added ClosingProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
477
diff
changeset
|
113 |
460
77c17bbe9d20
Translator: added new modules; applied fixes.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
442
diff
changeset
|
114 def addCatalogue(self): |
77c17bbe9d20
Translator: added new modules; applied fixes.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
442
diff
changeset
|
115 filePath = QtGui.QFileDialog.getOpenFileName(self, "Select Project File", g_CWD, "Catalogue (*%s)" % g_catExt); |
77c17bbe9d20
Translator: added new modules; applied fixes.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
442
diff
changeset
|
116 filePath = str(filePath) |
439
cdbb2bf6dd07
Translator: applied some fixes and made some additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
438
diff
changeset
|
117 |
460
77c17bbe9d20
Translator: added new modules; applied fixes.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
442
diff
changeset
|
118 def addNewCatalogue(self): |
77c17bbe9d20
Translator: added new modules; applied fixes.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
442
diff
changeset
|
119 pass |
77c17bbe9d20
Translator: added new modules; applied fixes.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
442
diff
changeset
|
120 |
479
044b5393f8bc
Translator: added ClosingProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
477
diff
changeset
|
121 def rejectClosingProject(self): |
442
5968e273449b
Translator: added new modules; made fixes and many additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
439
diff
changeset
|
122 if self.project == None: |
5968e273449b
Translator: added new modules; made fixes and many additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
439
diff
changeset
|
123 return False |
479
044b5393f8bc
Translator: added ClosingProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
477
diff
changeset
|
124 |
044b5393f8bc
Translator: added ClosingProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
477
diff
changeset
|
125 modifiedDocs = [] |
044b5393f8bc
Translator: added ClosingProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
477
diff
changeset
|
126 # Check if any open document is modified. |
044b5393f8bc
Translator: added ClosingProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
477
diff
changeset
|
127 for i in range(0, self.pages.count()): |
044b5393f8bc
Translator: added ClosingProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
477
diff
changeset
|
128 if self.pages.widget(i).isModified: |
044b5393f8bc
Translator: added ClosingProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
477
diff
changeset
|
129 modifiedDocs += [self.pages.widget(i)] |
044b5393f8bc
Translator: added ClosingProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
477
diff
changeset
|
130 # Display dialog if so. |
044b5393f8bc
Translator: added ClosingProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
477
diff
changeset
|
131 if len(modifiedDocs): |
044b5393f8bc
Translator: added ClosingProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
477
diff
changeset
|
132 dialog = ClosingProjectDialog(modifiedDocs) |
044b5393f8bc
Translator: added ClosingProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
477
diff
changeset
|
133 code = dialog.exec_() |
044b5393f8bc
Translator: added ClosingProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
477
diff
changeset
|
134 if code == dialog.Accepted: |
044b5393f8bc
Translator: added ClosingProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
477
diff
changeset
|
135 for doc in dialog.getSelectedDocs(): |
044b5393f8bc
Translator: added ClosingProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
477
diff
changeset
|
136 self.saveDocument(doc) |
044b5393f8bc
Translator: added ClosingProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
477
diff
changeset
|
137 elif code == dialog.Rejected: |
044b5393f8bc
Translator: added ClosingProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
477
diff
changeset
|
138 return True |
044b5393f8bc
Translator: added ClosingProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
477
diff
changeset
|
139 elif code == dialog.DiscardAll: |
044b5393f8bc
Translator: added ClosingProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
477
diff
changeset
|
140 pass |
044b5393f8bc
Translator: added ClosingProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
477
diff
changeset
|
141 |
044b5393f8bc
Translator: added ClosingProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
477
diff
changeset
|
142 return False |
442
5968e273449b
Translator: added new modules; made fixes and many additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
439
diff
changeset
|
143 |
5968e273449b
Translator: added new modules; made fixes and many additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
439
diff
changeset
|
144 def closeProject(self): |
5968e273449b
Translator: added new modules; made fixes and many additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
439
diff
changeset
|
145 if self.project == None: |
479
044b5393f8bc
Translator: added ClosingProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
477
diff
changeset
|
146 return |
442
5968e273449b
Translator: added new modules; made fixes and many additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
439
diff
changeset
|
147 del self.project |
5968e273449b
Translator: added new modules; made fixes and many additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
439
diff
changeset
|
148 self.project = None |
5968e273449b
Translator: added new modules; made fixes and many additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
439
diff
changeset
|
149 self.disableMenuItems() |
460
77c17bbe9d20
Translator: added new modules; applied fixes.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
442
diff
changeset
|
150 self.projectTree.clear() |
476
773ddddb583d
Translator: made central widget a QTabWidget.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
475
diff
changeset
|
151 self.pages.closeAll() |
442
5968e273449b
Translator: added new modules; made fixes and many additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
439
diff
changeset
|
152 |
5968e273449b
Translator: added new modules; made fixes and many additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
439
diff
changeset
|
153 def enableMenuItems(self): |
477
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
154 #self.action_Close_Project.setEnabled(True) |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
155 for action in [ self.action_Save, |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
156 self.action_Save_All, |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
157 self.action_Close, |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
158 self.action_Close_All ]: |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
159 action.setEnabled(True) |
442
5968e273449b
Translator: added new modules; made fixes and many additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
439
diff
changeset
|
160 self.menubar.insertMenu(self.menu_Help.menuAction(), self.menu_Project) |
5968e273449b
Translator: added new modules; made fixes and many additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
439
diff
changeset
|
161 |
5968e273449b
Translator: added new modules; made fixes and many additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
439
diff
changeset
|
162 def disableMenuItems(self): |
477
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
163 #self.action_Close_Project.setEnabled(False) |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
164 for action in [ self.action_Save, |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
165 self.action_Save_All, |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
166 self.action_Close, |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
167 self.action_Close_All ]: |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
168 action.setEnabled(False) |
442
5968e273449b
Translator: added new modules; made fixes and many additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
439
diff
changeset
|
169 self.menubar.removeAction(self.menu_Project.menuAction()) |
439
cdbb2bf6dd07
Translator: applied some fixes and made some additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
438
diff
changeset
|
170 |
476
773ddddb583d
Translator: made central widget a QTabWidget.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
475
diff
changeset
|
171 def projectTreeItemDblClicked(self, item, int): |
773ddddb583d
Translator: made central widget a QTabWidget.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
475
diff
changeset
|
172 self.projectTreeItemActivated(item) |
773ddddb583d
Translator: made central widget a QTabWidget.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
475
diff
changeset
|
173 |
773ddddb583d
Translator: made central widget a QTabWidget.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
475
diff
changeset
|
174 def projectTreeItemActivated(self, item): |
773ddddb583d
Translator: made central widget a QTabWidget.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
475
diff
changeset
|
175 if item == None: |
460
77c17bbe9d20
Translator: added new modules; applied fixes.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
442
diff
changeset
|
176 return |
471
b6fa41e6f0b4
Translator: implemented some functionality of MsgForm.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
460
diff
changeset
|
177 |
476
773ddddb583d
Translator: made central widget a QTabWidget.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
475
diff
changeset
|
178 if isinstance(item, LangFileItem): |
477
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
179 msgForm = None |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
180 if not item.isDocOpen(): |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
181 msgForm = item.openDoc() |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
182 msgForm.setModifiedCallback(self.formModified) |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
183 index = self.pages.indexOf(msgForm) |
471
b6fa41e6f0b4
Translator: implemented some functionality of MsgForm.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
460
diff
changeset
|
184 if index == -1: |
477
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
185 index = self.pages.addTab(msgForm, msgForm.getDocumentTitle()) |
471
b6fa41e6f0b4
Translator: implemented some functionality of MsgForm.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
460
diff
changeset
|
186 self.pages.setCurrentIndex(index) |
477
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
187 msgForm.updateData() |
476
773ddddb583d
Translator: made central widget a QTabWidget.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
475
diff
changeset
|
188 |
773ddddb583d
Translator: made central widget a QTabWidget.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
475
diff
changeset
|
189 def projectTreeItemDeleted(self, item): |
773ddddb583d
Translator: made central widget a QTabWidget.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
475
diff
changeset
|
190 pass |
460
77c17bbe9d20
Translator: added new modules; applied fixes.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
442
diff
changeset
|
191 |
477
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
192 def formModified(self, form): |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
193 # Append an asterisk to the tab label |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
194 index = self.pages.indexOf(form) |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
195 text = form.getDocumentTitle() + "*" |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
196 self.pages.setTabText(index, text) |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
197 |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
198 def saveForm(self): |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
199 self.saveDocument(self.pages.currentWidget()) |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
200 |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
201 def saveAllForms(self): |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
202 for i in range(0, self.pages.count()): |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
203 self.saveDocument(self.pages.widget(i)) |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
204 |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
205 def saveDocument(self, form): |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
206 if form.isModified: |
479
044b5393f8bc
Translator: added ClosingProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
477
diff
changeset
|
207 # Reset tab text. |
477
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
208 index = self.pages.indexOf(form) |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
209 text = form.getDocumentTitle() |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
210 self.pages.setTabText(index, text) |
479
044b5393f8bc
Translator: added ClosingProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
477
diff
changeset
|
211 |
477
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
212 form.save() |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
213 |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
214 def closeForm(self): |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
215 if self.pages.currentWidget(): |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
216 self.closeDocument(self.pages.currentWidget()) |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
217 |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
218 def closeAllForms(self): |
479
044b5393f8bc
Translator: added ClosingProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
477
diff
changeset
|
219 for i in range(self.pages.count()-1, -1, -1): |
477
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
220 self.closeDocument(self.pages.widget(i)) |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
221 |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
222 def closeDocument(self, form): |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
223 if form.isModified: |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
224 MB = QtGui.QMessageBox |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
225 button = MB.question(self, "Closing Document", "The document '%s' has been modified.\nDo you want to save the changes?" % form.getDocumentFullPath(), MB.Save | MB.Discard | MB.Cancel, MB.Cancel) |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
226 if button == MB.Cancel: |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
227 return False |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
228 if button == MB.Save: |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
229 self.saveDocument(form) |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
230 index = self.pages.indexOf(form) |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
231 self.pages.removeTab(index) |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
232 form.close() |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
233 return True |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
234 |
437
7ac9f94ca7ff
Translator: added NewProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
436
diff
changeset
|
235 def closeEvent(self, event): |
479
044b5393f8bc
Translator: added ClosingProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
477
diff
changeset
|
236 if self.rejectClosingProject(): |
442
5968e273449b
Translator: added new modules; made fixes and many additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
439
diff
changeset
|
237 event.ignore() |
5968e273449b
Translator: added new modules; made fixes and many additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
439
diff
changeset
|
238 return |
437
7ac9f94ca7ff
Translator: added NewProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
436
diff
changeset
|
239 self.writeSettings() |
477
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
240 # Closing application |
437
7ac9f94ca7ff
Translator: added NewProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
436
diff
changeset
|
241 |
7ac9f94ca7ff
Translator: added NewProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
436
diff
changeset
|
242 def moveToCenterOfDesktop(self): |
7ac9f94ca7ff
Translator: added NewProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
436
diff
changeset
|
243 rect = QtGui.QApplication.desktop().geometry() |
7ac9f94ca7ff
Translator: added NewProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
436
diff
changeset
|
244 self.move(rect.center() - self.rect().center()) |
7ac9f94ca7ff
Translator: added NewProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
436
diff
changeset
|
245 |
7ac9f94ca7ff
Translator: added NewProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
436
diff
changeset
|
246 def readSettings(self): |
7ac9f94ca7ff
Translator: added NewProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
436
diff
changeset
|
247 # Set default size |
7ac9f94ca7ff
Translator: added NewProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
436
diff
changeset
|
248 self.resize(QtCore.QSize(500, 400)) |
438
2c177053cd15
Translator: added modules langfile and project.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
437
diff
changeset
|
249 doc = {} |
437
7ac9f94ca7ff
Translator: added NewProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
436
diff
changeset
|
250 try: |
7ac9f94ca7ff
Translator: added NewProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
436
diff
changeset
|
251 doc = yaml.load(open(g_settingsFile, "r")) |
7ac9f94ca7ff
Translator: added NewProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
436
diff
changeset
|
252 except: |
7ac9f94ca7ff
Translator: added NewProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
436
diff
changeset
|
253 self.moveToCenterOfDesktop() |
7ac9f94ca7ff
Translator: added NewProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
436
diff
changeset
|
254 return |
7ac9f94ca7ff
Translator: added NewProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
436
diff
changeset
|
255 |
438
2c177053cd15
Translator: added modules langfile and project.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
437
diff
changeset
|
256 g_settings = doc |
2c177053cd15
Translator: added modules langfile and project.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
437
diff
changeset
|
257 if not isinstance(doc, dict): |
437
7ac9f94ca7ff
Translator: added NewProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
436
diff
changeset
|
258 g_settings = {} |
7ac9f94ca7ff
Translator: added NewProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
436
diff
changeset
|
259 |
7ac9f94ca7ff
Translator: added NewProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
436
diff
changeset
|
260 try: |
7ac9f94ca7ff
Translator: added NewProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
436
diff
changeset
|
261 coord = doc["Window"] |
7ac9f94ca7ff
Translator: added NewProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
436
diff
changeset
|
262 size = QtCore.QSize(coord["Size"][0], coord["Size"][1]) |
7ac9f94ca7ff
Translator: added NewProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
436
diff
changeset
|
263 point = QtCore.QPoint(coord["Pos"][0], coord["Pos"][1]) |
7ac9f94ca7ff
Translator: added NewProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
436
diff
changeset
|
264 self.resize(size) |
7ac9f94ca7ff
Translator: added NewProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
436
diff
changeset
|
265 self.move(point) |
7ac9f94ca7ff
Translator: added NewProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
436
diff
changeset
|
266 except: |
7ac9f94ca7ff
Translator: added NewProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
436
diff
changeset
|
267 self.moveToCenterOfDesktop() |
7ac9f94ca7ff
Translator: added NewProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
436
diff
changeset
|
268 |
7ac9f94ca7ff
Translator: added NewProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
436
diff
changeset
|
269 def writeSettings(self): |
7ac9f94ca7ff
Translator: added NewProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
436
diff
changeset
|
270 # Save window coordinates |
7ac9f94ca7ff
Translator: added NewProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
436
diff
changeset
|
271 g_settings["Window"] = { |
7ac9f94ca7ff
Translator: added NewProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
436
diff
changeset
|
272 "Pos" : [self.pos().x(), self.pos().y()], |
7ac9f94ca7ff
Translator: added NewProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
436
diff
changeset
|
273 "Size" : [self.size().width(), self.size().height()] |
7ac9f94ca7ff
Translator: added NewProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
436
diff
changeset
|
274 } |
7ac9f94ca7ff
Translator: added NewProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
436
diff
changeset
|
275 yaml.dump(g_settings, open(g_settingsFile, "w")) #default_flow_style=False |
7ac9f94ca7ff
Translator: added NewProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
436
diff
changeset
|
276 |
477
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
277 |
475
70fdd0701a77
Translator: messages can be edited now.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
472
diff
changeset
|
278 class MessageItem(QtGui.QTreeWidgetItem): |
70fdd0701a77
Translator: messages can be edited now.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
472
diff
changeset
|
279 def __init__(self, msg): |
70fdd0701a77
Translator: messages can be edited now.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
472
diff
changeset
|
280 QtGui.QTreeWidgetItem.__init__(self, [str(msg["ID"]), msg["Text"]]) |
70fdd0701a77
Translator: messages can be edited now.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
472
diff
changeset
|
281 self.msg = msg |
70fdd0701a77
Translator: messages can be edited now.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
472
diff
changeset
|
282 |
70fdd0701a77
Translator: messages can be edited now.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
472
diff
changeset
|
283 def getID(self): |
70fdd0701a77
Translator: messages can be edited now.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
472
diff
changeset
|
284 return self.msg["ID"] |
70fdd0701a77
Translator: messages can be edited now.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
472
diff
changeset
|
285 |
70fdd0701a77
Translator: messages can be edited now.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
472
diff
changeset
|
286 def setMsgText(self, text): |
70fdd0701a77
Translator: messages can be edited now.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
472
diff
changeset
|
287 self.msg["Text"] = text |
70fdd0701a77
Translator: messages can be edited now.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
472
diff
changeset
|
288 |
70fdd0701a77
Translator: messages can be edited now.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
472
diff
changeset
|
289 def setMsgAnnot(self, text): |
70fdd0701a77
Translator: messages can be edited now.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
472
diff
changeset
|
290 self.msg["Annot"] = text |
70fdd0701a77
Translator: messages can be edited now.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
472
diff
changeset
|
291 |
477
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
292 |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
293 class Document(QtGui.QWidget): |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
294 def __init__(self): |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
295 QtGui.QWidget.__init__(self) |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
296 self.isModified = False |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
297 self.modifiedCallback = None |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
298 self.documentTitle = "" |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
299 self.documentFullPath = "" |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
300 |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
301 def modified(self): |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
302 if not self.isModified: |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
303 self.isModified = True |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
304 self.modifiedCallback(self) |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
305 |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
306 def setModifiedCallback(self, func): |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
307 self.modifiedCallback = func |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
308 |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
309 def save(self): |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
310 self.isModified = False |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
311 |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
312 def close(self): |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
313 self.emit(Qt.SIGNAL("closed()")) |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
314 QtGui.QWidget.close(self) |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
315 |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
316 def getDocumentTitle(self): |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
317 return self.documentTitle |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
318 |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
319 def getDocumentFullPath(self): |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
320 return self.documentFullPath |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
321 |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
322 class MsgForm(Document, Ui_MsgForm): |
471
b6fa41e6f0b4
Translator: implemented some functionality of MsgForm.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
460
diff
changeset
|
323 def __init__(self, langFile): |
477
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
324 Document.__init__(self) |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
325 self.documentTitle = langFile.getFileName() |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
326 self.documentFullPath = langFile.getFilePath() |
460
77c17bbe9d20
Translator: added new modules; applied fixes.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
442
diff
changeset
|
327 self.setupUi(self) |
476
773ddddb583d
Translator: made central widget a QTabWidget.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
475
diff
changeset
|
328 self.vboxlayout.setMargin(0) |
460
77c17bbe9d20
Translator: added new modules; applied fixes.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
442
diff
changeset
|
329 |
471
b6fa41e6f0b4
Translator: implemented some functionality of MsgForm.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
460
diff
changeset
|
330 self.langFile = langFile |
475
70fdd0701a77
Translator: messages can be edited now.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
472
diff
changeset
|
331 self.currentItem = None |
70fdd0701a77
Translator: messages can be edited now.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
472
diff
changeset
|
332 self.colID = 0 |
70fdd0701a77
Translator: messages can be edited now.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
472
diff
changeset
|
333 self.colText = 1 |
471
b6fa41e6f0b4
Translator: implemented some functionality of MsgForm.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
460
diff
changeset
|
334 self.treeWidget.setColumnCount(2) |
b6fa41e6f0b4
Translator: implemented some functionality of MsgForm.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
460
diff
changeset
|
335 self.treeWidget.setHeaderLabels(["ID", "Text"]) |
b6fa41e6f0b4
Translator: implemented some functionality of MsgForm.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
460
diff
changeset
|
336 for msg in self.langFile.messages: |
475
70fdd0701a77
Translator: messages can be edited now.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
472
diff
changeset
|
337 self.treeWidget.addTopLevelItem(MessageItem(msg)) |
471
b6fa41e6f0b4
Translator: implemented some functionality of MsgForm.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
460
diff
changeset
|
338 |
477
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
339 Qt.connect(self.treeWidget, Qt.SIGNAL("currentItemChanged (QTreeWidgetItem *,QTreeWidgetItem *)"), self.treeItemChanged) |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
340 Qt.connect(self.translEdit, Qt.SIGNAL("textChanged()"), self.translEditTextChanged) |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
341 Qt.connect(self.translAnnotEdit, Qt.SIGNAL("textChanged()"), self.translAnnotEditTextChanged) |
475
70fdd0701a77
Translator: messages can be edited now.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
472
diff
changeset
|
342 |
70fdd0701a77
Translator: messages can be edited now.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
472
diff
changeset
|
343 #self.translEdit.focusOutEvent = self.translEditFocusOut |
471
b6fa41e6f0b4
Translator: implemented some functionality of MsgForm.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
460
diff
changeset
|
344 |
b6fa41e6f0b4
Translator: implemented some functionality of MsgForm.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
460
diff
changeset
|
345 def treeItemChanged(self, current, previous): |
472
30925590f392
Translator: implemented more functionalities of MsgForm.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
471
diff
changeset
|
346 if current == None: |
475
70fdd0701a77
Translator: messages can be edited now.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
472
diff
changeset
|
347 self.setTranslMsg("") |
70fdd0701a77
Translator: messages can be edited now.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
472
diff
changeset
|
348 self.setSourceMsg("") |
472
30925590f392
Translator: implemented more functionalities of MsgForm.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
471
diff
changeset
|
349 return |
475
70fdd0701a77
Translator: messages can be edited now.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
472
diff
changeset
|
350 ID = current.getID() |
477
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
351 # Set the text controls. |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
352 # The slots receiving text changed signals do nothing if self.currentItem is None. |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
353 self.currentItem = None |
472
30925590f392
Translator: implemented more functionalities of MsgForm.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
471
diff
changeset
|
354 self.setTranslMsg(self.langFile.getMsg(ID)) |
30925590f392
Translator: implemented more functionalities of MsgForm.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
471
diff
changeset
|
355 self.setSourceMsg(self.langFile.source.getMsg(ID)) |
477
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
356 self.currentItem = current |
472
30925590f392
Translator: implemented more functionalities of MsgForm.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
471
diff
changeset
|
357 |
30925590f392
Translator: implemented more functionalities of MsgForm.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
471
diff
changeset
|
358 def setTranslMsg(self, msg): |
30925590f392
Translator: implemented more functionalities of MsgForm.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
471
diff
changeset
|
359 self.translEdit.setText(msg["Text"]) |
30925590f392
Translator: implemented more functionalities of MsgForm.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
471
diff
changeset
|
360 self.translAnnotEdit.setText(msg["Annot"]) |
30925590f392
Translator: implemented more functionalities of MsgForm.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
471
diff
changeset
|
361 |
30925590f392
Translator: implemented more functionalities of MsgForm.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
471
diff
changeset
|
362 def setSourceMsg(self, msg): |
30925590f392
Translator: implemented more functionalities of MsgForm.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
471
diff
changeset
|
363 self.sourceEdit.setText(msg["Text"]) |
30925590f392
Translator: implemented more functionalities of MsgForm.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
471
diff
changeset
|
364 self.sourceAnnotEdit.setText(msg["Annot"]) |
30925590f392
Translator: implemented more functionalities of MsgForm.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
471
diff
changeset
|
365 |
475
70fdd0701a77
Translator: messages can be edited now.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
472
diff
changeset
|
366 #def translEditFocusOut(self, event): |
70fdd0701a77
Translator: messages can be edited now.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
472
diff
changeset
|
367 #if self.currentItem: |
70fdd0701a77
Translator: messages can be edited now.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
472
diff
changeset
|
368 #print self.currentItem.text(self.colText) |
70fdd0701a77
Translator: messages can be edited now.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
472
diff
changeset
|
369 #if self.translEdit.document().isModified(): |
70fdd0701a77
Translator: messages can be edited now.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
472
diff
changeset
|
370 #self.translEdit.document().setModified(False) |
70fdd0701a77
Translator: messages can be edited now.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
472
diff
changeset
|
371 #print "translEdit was modified" |
70fdd0701a77
Translator: messages can be edited now.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
472
diff
changeset
|
372 #QtGui.QTextEdit.focusOutEvent(self.translEdit, event) |
70fdd0701a77
Translator: messages can be edited now.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
472
diff
changeset
|
373 |
70fdd0701a77
Translator: messages can be edited now.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
472
diff
changeset
|
374 def translEditTextChanged(self): |
70fdd0701a77
Translator: messages can be edited now.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
472
diff
changeset
|
375 if self.currentItem: |
477
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
376 text = unicode(self.translEdit.toPlainText()) |
475
70fdd0701a77
Translator: messages can be edited now.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
472
diff
changeset
|
377 self.currentItem.setText(self.colText, text) |
70fdd0701a77
Translator: messages can be edited now.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
472
diff
changeset
|
378 self.currentItem.setMsgText(text) |
477
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
379 self.modified() |
475
70fdd0701a77
Translator: messages can be edited now.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
472
diff
changeset
|
380 |
70fdd0701a77
Translator: messages can be edited now.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
472
diff
changeset
|
381 def translAnnotEditTextChanged(self): |
70fdd0701a77
Translator: messages can be edited now.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
472
diff
changeset
|
382 if self.currentItem: |
477
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
383 text = unicode(self.translAnnotEdit.toPlainText()) |
475
70fdd0701a77
Translator: messages can be edited now.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
472
diff
changeset
|
384 self.currentItem.setMsgAnnot(text) |
477
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
385 self.modified() |
475
70fdd0701a77
Translator: messages can be edited now.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
472
diff
changeset
|
386 |
70fdd0701a77
Translator: messages can be edited now.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
472
diff
changeset
|
387 def updateData(self): |
70fdd0701a77
Translator: messages can be edited now.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
472
diff
changeset
|
388 if self.currentItem == None: |
70fdd0701a77
Translator: messages can be edited now.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
472
diff
changeset
|
389 return |
70fdd0701a77
Translator: messages can be edited now.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
472
diff
changeset
|
390 ID = self.currentItem.getID() |
70fdd0701a77
Translator: messages can be edited now.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
472
diff
changeset
|
391 msg = self.langFile.source.getMsg(ID) |
70fdd0701a77
Translator: messages can be edited now.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
472
diff
changeset
|
392 text = self.sourceEdit.toPlainText() |
70fdd0701a77
Translator: messages can be edited now.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
472
diff
changeset
|
393 if text != msg["Text"]: |
70fdd0701a77
Translator: messages can be edited now.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
472
diff
changeset
|
394 self.sourceEdit.setText(msg["Text"]) |
70fdd0701a77
Translator: messages can be edited now.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
472
diff
changeset
|
395 text = self.sourceAnnotEdit.toPlainText() |
70fdd0701a77
Translator: messages can be edited now.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
472
diff
changeset
|
396 if text != msg["Annot"]: |
70fdd0701a77
Translator: messages can be edited now.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
472
diff
changeset
|
397 self.sourceAnnotEdit.setText(msg["Annot"]) |
70fdd0701a77
Translator: messages can be edited now.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
472
diff
changeset
|
398 |
477
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
399 def save(self): |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
400 Document.save(self) |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
401 self.langFile.save() |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
402 |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
403 |
472
30925590f392
Translator: implemented more functionalities of MsgForm.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
471
diff
changeset
|
404 class MsgFormSource(MsgForm): |
30925590f392
Translator: implemented more functionalities of MsgForm.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
471
diff
changeset
|
405 def __init__(self, langFile): |
30925590f392
Translator: implemented more functionalities of MsgForm.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
471
diff
changeset
|
406 MsgForm.__init__(self, langFile) |
30925590f392
Translator: implemented more functionalities of MsgForm.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
471
diff
changeset
|
407 |
30925590f392
Translator: implemented more functionalities of MsgForm.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
471
diff
changeset
|
408 for x in [self.translEdit, |
30925590f392
Translator: implemented more functionalities of MsgForm.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
471
diff
changeset
|
409 self.translAnnotEdit, |
30925590f392
Translator: implemented more functionalities of MsgForm.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
471
diff
changeset
|
410 self.label_4, |
30925590f392
Translator: implemented more functionalities of MsgForm.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
471
diff
changeset
|
411 self.label_5]: |
30925590f392
Translator: implemented more functionalities of MsgForm.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
471
diff
changeset
|
412 x.close() |
30925590f392
Translator: implemented more functionalities of MsgForm.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
471
diff
changeset
|
413 |
477
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
414 Qt.connect(self.sourceEdit, Qt.SIGNAL("textChanged()"), self.sourceEditTextChanged) |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
415 Qt.connect(self.sourceAnnotEdit, Qt.SIGNAL("textChanged()"), self.sourceAnnotEditTextChanged) |
475
70fdd0701a77
Translator: messages can be edited now.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
472
diff
changeset
|
416 |
472
30925590f392
Translator: implemented more functionalities of MsgForm.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
471
diff
changeset
|
417 def treeItemChanged(self, current, previous): |
475
70fdd0701a77
Translator: messages can be edited now.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
472
diff
changeset
|
418 if current == None: |
70fdd0701a77
Translator: messages can be edited now.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
472
diff
changeset
|
419 self.setSourceMsg("") |
70fdd0701a77
Translator: messages can be edited now.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
472
diff
changeset
|
420 return |
70fdd0701a77
Translator: messages can be edited now.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
472
diff
changeset
|
421 ID = current.getID() |
477
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
422 self.currentItem = None |
472
30925590f392
Translator: implemented more functionalities of MsgForm.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
471
diff
changeset
|
423 self.setSourceMsg(self.langFile.getMsg(ID)) |
477
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
424 self.currentItem = current |
471
b6fa41e6f0b4
Translator: implemented some functionality of MsgForm.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
460
diff
changeset
|
425 |
475
70fdd0701a77
Translator: messages can be edited now.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
472
diff
changeset
|
426 def sourceEditTextChanged(self): |
70fdd0701a77
Translator: messages can be edited now.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
472
diff
changeset
|
427 if self.currentItem: |
477
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
428 text = unicode(self.sourceEdit.toPlainText()) |
475
70fdd0701a77
Translator: messages can be edited now.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
472
diff
changeset
|
429 self.currentItem.setText(self.colText, text) |
70fdd0701a77
Translator: messages can be edited now.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
472
diff
changeset
|
430 self.currentItem.setMsgText(text) |
477
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
431 self.modified() |
475
70fdd0701a77
Translator: messages can be edited now.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
472
diff
changeset
|
432 |
70fdd0701a77
Translator: messages can be edited now.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
472
diff
changeset
|
433 def sourceAnnotEditTextChanged(self): |
70fdd0701a77
Translator: messages can be edited now.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
472
diff
changeset
|
434 if self.currentItem: |
477
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
435 text = unicode(self.sourceAnnotEdit.toPlainText()) |
475
70fdd0701a77
Translator: messages can be edited now.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
472
diff
changeset
|
436 #self.currentItem.setText(self.colAnnot, text) |
70fdd0701a77
Translator: messages can be edited now.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
472
diff
changeset
|
437 self.currentItem.setMsgAnnot(text) |
477
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
438 self.modified() |
475
70fdd0701a77
Translator: messages can be edited now.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
472
diff
changeset
|
439 |
70fdd0701a77
Translator: messages can be edited now.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
472
diff
changeset
|
440 |
442
5968e273449b
Translator: added new modules; made fixes and many additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
439
diff
changeset
|
441 class MsgIDItem(QtGui.QTreeWidgetItem): |
5968e273449b
Translator: added new modules; made fixes and many additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
439
diff
changeset
|
442 def __init__(self, parent, text): |
5968e273449b
Translator: added new modules; made fixes and many additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
439
diff
changeset
|
443 QtGui.QTreeWidgetItem.__init__(self, parent, [text]) |
5968e273449b
Translator: added new modules; made fixes and many additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
439
diff
changeset
|
444 |
5968e273449b
Translator: added new modules; made fixes and many additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
439
diff
changeset
|
445 class LangFileItem(QtGui.QTreeWidgetItem): |
471
b6fa41e6f0b4
Translator: implemented some functionality of MsgForm.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
460
diff
changeset
|
446 def __init__(self, parent, langFile): |
b6fa41e6f0b4
Translator: implemented some functionality of MsgForm.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
460
diff
changeset
|
447 QtGui.QTreeWidgetItem.__init__(self, parent, [langFile.langCode]) |
b6fa41e6f0b4
Translator: implemented some functionality of MsgForm.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
460
diff
changeset
|
448 self.langFile = langFile |
477
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
449 self.msgForm = None |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
450 |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
451 def isDocOpen(self): |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
452 return self.msgForm != None |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
453 |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
454 def openDoc(self): |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
455 if self.msgForm == None: |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
456 if self.langFile.isSource: |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
457 self.msgForm = MsgFormSource(self.langFile) |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
458 else: |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
459 self.msgForm = MsgForm(self.langFile) |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
460 Qt.connect(self.msgForm, Qt.SIGNAL("closed()"), self.docClosed) |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
461 return self.msgForm |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
462 |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
463 def docClosed(self): |
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
464 self.msgForm = None |
471
b6fa41e6f0b4
Translator: implemented some functionality of MsgForm.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
460
diff
changeset
|
465 |
b6fa41e6f0b4
Translator: implemented some functionality of MsgForm.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
460
diff
changeset
|
466 class ProjectItem(QtGui.QTreeWidgetItem): |
b6fa41e6f0b4
Translator: implemented some functionality of MsgForm.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
460
diff
changeset
|
467 def __init__(self, text): |
b6fa41e6f0b4
Translator: implemented some functionality of MsgForm.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
460
diff
changeset
|
468 QtGui.QTreeWidgetItem.__init__(self, [text]) |
437
7ac9f94ca7ff
Translator: added NewProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
436
diff
changeset
|
469 |
439
cdbb2bf6dd07
Translator: applied some fixes and made some additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
438
diff
changeset
|
470 class ProjectTree(QtGui.QTreeWidget): |
cdbb2bf6dd07
Translator: applied some fixes and made some additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
438
diff
changeset
|
471 def __init__(self, parent): |
cdbb2bf6dd07
Translator: applied some fixes and made some additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
438
diff
changeset
|
472 QtGui.QTreeWidget.__init__(self, parent) |
442
5968e273449b
Translator: added new modules; made fixes and many additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
439
diff
changeset
|
473 self.topItem = None |
5968e273449b
Translator: added new modules; made fixes and many additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
439
diff
changeset
|
474 self.msgIDsItem = None |
460
77c17bbe9d20
Translator: added new modules; applied fixes.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
442
diff
changeset
|
475 self.headerItem().setHidden(True) |
438
2c177053cd15
Translator: added modules langfile and project.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
437
diff
changeset
|
476 |
476
773ddddb583d
Translator: made central widget a QTabWidget.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
475
diff
changeset
|
477 def keyReleaseEvent(self, event): |
773ddddb583d
Translator: made central widget a QTabWidget.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
475
diff
changeset
|
478 Qt = QtCore.Qt |
773ddddb583d
Translator: made central widget a QTabWidget.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
475
diff
changeset
|
479 key = event.key() |
773ddddb583d
Translator: made central widget a QTabWidget.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
475
diff
changeset
|
480 if key in [Qt.Key_Enter, Qt.Key_Return]: |
477
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
481 self.emit(Qt.SIGNAL("onKeyEnter"), self.currentItem()) |
476
773ddddb583d
Translator: made central widget a QTabWidget.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
475
diff
changeset
|
482 elif key == Qt.Key_Delete: |
477
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
483 self.emit(Qt.SIGNAL("onKeyDelete"), self.currentItem()) |
476
773ddddb583d
Translator: made central widget a QTabWidget.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
475
diff
changeset
|
484 |
442
5968e273449b
Translator: added new modules; made fixes and many additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
439
diff
changeset
|
485 def setProject(self, project): |
460
77c17bbe9d20
Translator: added new modules; applied fixes.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
442
diff
changeset
|
486 self.project = project |
442
5968e273449b
Translator: added new modules; made fixes and many additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
439
diff
changeset
|
487 |
471
b6fa41e6f0b4
Translator: implemented some functionality of MsgForm.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
460
diff
changeset
|
488 self.topItem = ProjectItem(self.project.name) |
460
77c17bbe9d20
Translator: added new modules; applied fixes.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
442
diff
changeset
|
489 self.addTopLevelItem(self.topItem) |
77c17bbe9d20
Translator: added new modules; applied fixes.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
442
diff
changeset
|
490 |
77c17bbe9d20
Translator: added new modules; applied fixes.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
442
diff
changeset
|
491 for langFile in self.project.langFiles: |
471
b6fa41e6f0b4
Translator: implemented some functionality of MsgForm.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
460
diff
changeset
|
492 langFileItem = LangFileItem(self.topItem, langFile) |
442
5968e273449b
Translator: added new modules; made fixes and many additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
439
diff
changeset
|
493 |
460
77c17bbe9d20
Translator: added new modules; applied fixes.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
442
diff
changeset
|
494 self.msgIDsItem = QtGui.QTreeWidgetItem(self.topItem, ["Message IDs"]) |
77c17bbe9d20
Translator: added new modules; applied fixes.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
442
diff
changeset
|
495 for msgID in self.project.msgIDs: |
77c17bbe9d20
Translator: added new modules; applied fixes.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
442
diff
changeset
|
496 MsgIDItem(self.msgIDsItem, msgID["Name"]) |
442
5968e273449b
Translator: added new modules; made fixes and many additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
439
diff
changeset
|
497 |
460
77c17bbe9d20
Translator: added new modules; applied fixes.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
442
diff
changeset
|
498 for x in [self.topItem, self.msgIDsItem]: |
77c17bbe9d20
Translator: added new modules; applied fixes.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
442
diff
changeset
|
499 x.setExpanded(True) |
442
5968e273449b
Translator: added new modules; made fixes and many additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
439
diff
changeset
|
500 |
472
30925590f392
Translator: implemented more functionalities of MsgForm.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
471
diff
changeset
|
501 def contextMenuEvent(self, event): |
30925590f392
Translator: implemented more functionalities of MsgForm.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
471
diff
changeset
|
502 item = self.itemAt(event.pos()) |
30925590f392
Translator: implemented more functionalities of MsgForm.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
471
diff
changeset
|
503 func_map = { |
30925590f392
Translator: implemented more functionalities of MsgForm.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
471
diff
changeset
|
504 None : lambda item: None, |
30925590f392
Translator: implemented more functionalities of MsgForm.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
471
diff
changeset
|
505 QtGui.QTreeWidgetItem : lambda item: None, |
30925590f392
Translator: implemented more functionalities of MsgForm.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
471
diff
changeset
|
506 ProjectItem : self.showMenuProjectItem, |
30925590f392
Translator: implemented more functionalities of MsgForm.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
471
diff
changeset
|
507 LangFileItem : self.showMenuLangFileItem, |
30925590f392
Translator: implemented more functionalities of MsgForm.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
471
diff
changeset
|
508 MsgIDItem : self.showMenuMsgIDItem |
30925590f392
Translator: implemented more functionalities of MsgForm.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
471
diff
changeset
|
509 } |
30925590f392
Translator: implemented more functionalities of MsgForm.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
471
diff
changeset
|
510 func_map[type(item)](item) |
30925590f392
Translator: implemented more functionalities of MsgForm.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
471
diff
changeset
|
511 |
30925590f392
Translator: implemented more functionalities of MsgForm.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
471
diff
changeset
|
512 def showMenuProjectItem(self, item): |
30925590f392
Translator: implemented more functionalities of MsgForm.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
471
diff
changeset
|
513 print "ProjectItem" |
30925590f392
Translator: implemented more functionalities of MsgForm.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
471
diff
changeset
|
514 |
30925590f392
Translator: implemented more functionalities of MsgForm.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
471
diff
changeset
|
515 def showMenuLangFileItem(self, item): |
30925590f392
Translator: implemented more functionalities of MsgForm.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
471
diff
changeset
|
516 print "LangFileItem" |
30925590f392
Translator: implemented more functionalities of MsgForm.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
471
diff
changeset
|
517 |
30925590f392
Translator: implemented more functionalities of MsgForm.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
471
diff
changeset
|
518 def showMenuMsgIDItem(self, item): |
30925590f392
Translator: implemented more functionalities of MsgForm.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
471
diff
changeset
|
519 print "MsgIDItem" |
30925590f392
Translator: implemented more functionalities of MsgForm.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
471
diff
changeset
|
520 |
460
77c17bbe9d20
Translator: added new modules; applied fixes.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
442
diff
changeset
|
521 def clear(self): |
77c17bbe9d20
Translator: added new modules; applied fixes.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
442
diff
changeset
|
522 self.topItem = None |
77c17bbe9d20
Translator: added new modules; applied fixes.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
442
diff
changeset
|
523 self.msgIDsItem = None |
77c17bbe9d20
Translator: added new modules; applied fixes.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
442
diff
changeset
|
524 QtGui.QTreeWidget.clear(self) |
438
2c177053cd15
Translator: added modules langfile and project.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
437
diff
changeset
|
525 |
479
044b5393f8bc
Translator: added ClosingProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
477
diff
changeset
|
526 |
044b5393f8bc
Translator: added ClosingProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
477
diff
changeset
|
527 class ClosingProjectDialog(QtGui.QDialog, Ui_ClosingProjectDialog): |
044b5393f8bc
Translator: added ClosingProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
477
diff
changeset
|
528 DiscardAll = 2 |
044b5393f8bc
Translator: added ClosingProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
477
diff
changeset
|
529 def __init__(self, docs): |
044b5393f8bc
Translator: added ClosingProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
477
diff
changeset
|
530 QtGui.QDialog.__init__(self) |
044b5393f8bc
Translator: added ClosingProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
477
diff
changeset
|
531 self.setupUi(self) |
044b5393f8bc
Translator: added ClosingProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
477
diff
changeset
|
532 Qt.connect(self.button_Discard_All, Qt.SIGNAL("clicked()"), self.discardAll) |
044b5393f8bc
Translator: added ClosingProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
477
diff
changeset
|
533 |
044b5393f8bc
Translator: added ClosingProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
477
diff
changeset
|
534 self.items = [] |
044b5393f8bc
Translator: added ClosingProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
477
diff
changeset
|
535 for doc in docs: |
044b5393f8bc
Translator: added ClosingProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
477
diff
changeset
|
536 title = doc.getDocumentTitle() |
044b5393f8bc
Translator: added ClosingProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
477
diff
changeset
|
537 path = doc.getDocumentFullPath() |
044b5393f8bc
Translator: added ClosingProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
477
diff
changeset
|
538 item = QtGui.QTreeWidgetItem([title, path]) |
044b5393f8bc
Translator: added ClosingProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
477
diff
changeset
|
539 item.doc = doc |
044b5393f8bc
Translator: added ClosingProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
477
diff
changeset
|
540 item.setFlags(item.flags()|Qt.ItemIsUserCheckable); |
044b5393f8bc
Translator: added ClosingProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
477
diff
changeset
|
541 item.setCheckState(0, Qt.Checked) |
044b5393f8bc
Translator: added ClosingProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
477
diff
changeset
|
542 self.items += [item] |
044b5393f8bc
Translator: added ClosingProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
477
diff
changeset
|
543 self.treeWidget.addTopLevelItems(self.items) |
044b5393f8bc
Translator: added ClosingProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
477
diff
changeset
|
544 |
044b5393f8bc
Translator: added ClosingProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
477
diff
changeset
|
545 self.button_Cancel.setFocus() |
044b5393f8bc
Translator: added ClosingProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
477
diff
changeset
|
546 |
044b5393f8bc
Translator: added ClosingProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
477
diff
changeset
|
547 def getSelectedDocs(self): |
044b5393f8bc
Translator: added ClosingProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
477
diff
changeset
|
548 return [item.doc for item in self.items if item.checkState(0)] |
044b5393f8bc
Translator: added ClosingProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
477
diff
changeset
|
549 |
044b5393f8bc
Translator: added ClosingProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
477
diff
changeset
|
550 def discardAll(self): |
044b5393f8bc
Translator: added ClosingProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
477
diff
changeset
|
551 self.done(self.DiscardAll) |
044b5393f8bc
Translator: added ClosingProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
477
diff
changeset
|
552 |
044b5393f8bc
Translator: added ClosingProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
477
diff
changeset
|
553 |
437
7ac9f94ca7ff
Translator: added NewProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
436
diff
changeset
|
554 class NewProjectDialog(QtGui.QDialog, Ui_NewProjectDialog): |
7ac9f94ca7ff
Translator: added NewProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
436
diff
changeset
|
555 def __init__(self): |
7ac9f94ca7ff
Translator: added NewProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
436
diff
changeset
|
556 QtGui.QDialog.__init__(self) |
7ac9f94ca7ff
Translator: added NewProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
436
diff
changeset
|
557 self.setupUi(self) |
7ac9f94ca7ff
Translator: added NewProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
436
diff
changeset
|
558 |
477
3b5421d40f9b
Translator: major changes and additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
476
diff
changeset
|
559 Qt.connect(self.pickFileButton, Qt.SIGNAL("clicked()"), self.pickFilePath) |
437
7ac9f94ca7ff
Translator: added NewProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
436
diff
changeset
|
560 |
7ac9f94ca7ff
Translator: added NewProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
436
diff
changeset
|
561 def pickFilePath(self): |
442
5968e273449b
Translator: added new modules; made fixes and many additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
439
diff
changeset
|
562 filePath = QtGui.QFileDialog.getSaveFileName(self, "New Project File", g_CWD, "Translator Project (*%s)" % g_projectExt); |
5968e273449b
Translator: added new modules; made fixes and many additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
439
diff
changeset
|
563 if not filePath: |
5968e273449b
Translator: added new modules; made fixes and many additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
439
diff
changeset
|
564 return |
437
7ac9f94ca7ff
Translator: added NewProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
436
diff
changeset
|
565 filePath = str(filePath) # Convert QString |
442
5968e273449b
Translator: added new modules; made fixes and many additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
439
diff
changeset
|
566 if os.path.splitext(filePath)[1] != g_projectExt: |
5968e273449b
Translator: added new modules; made fixes and many additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
439
diff
changeset
|
567 filePath += g_projectExt |
437
7ac9f94ca7ff
Translator: added NewProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
436
diff
changeset
|
568 self.projectFilePath.setText(filePath) |
7ac9f94ca7ff
Translator: added NewProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
436
diff
changeset
|
569 |
7ac9f94ca7ff
Translator: added NewProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
436
diff
changeset
|
570 def accept(self): |
7ac9f94ca7ff
Translator: added NewProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
436
diff
changeset
|
571 projectName = str(self.projectName.text()) |
7ac9f94ca7ff
Translator: added NewProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
436
diff
changeset
|
572 filePath = str(self.projectFilePath.text()) |
7ac9f94ca7ff
Translator: added NewProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
436
diff
changeset
|
573 |
479
044b5393f8bc
Translator: added ClosingProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
477
diff
changeset
|
574 MB = QtGui.QMessageBox |
437
7ac9f94ca7ff
Translator: added NewProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
436
diff
changeset
|
575 if projectName == "": |
479
044b5393f8bc
Translator: added ClosingProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
477
diff
changeset
|
576 MB.warning(self, "Warning", "Please, enter a name for the project.") |
437
7ac9f94ca7ff
Translator: added NewProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
436
diff
changeset
|
577 return |
7ac9f94ca7ff
Translator: added NewProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
436
diff
changeset
|
578 if filePath == "": |
479
044b5393f8bc
Translator: added ClosingProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
477
diff
changeset
|
579 MB.warning(self, "Warning", "Please, choose or enter a path for the project file.") |
437
7ac9f94ca7ff
Translator: added NewProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
436
diff
changeset
|
580 return |
7ac9f94ca7ff
Translator: added NewProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
436
diff
changeset
|
581 |
460
77c17bbe9d20
Translator: added new modules; applied fixes.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
442
diff
changeset
|
582 projectData = newProjectData(projectName) |
437
7ac9f94ca7ff
Translator: added NewProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
436
diff
changeset
|
583 |
442
5968e273449b
Translator: added new modules; made fixes and many additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
439
diff
changeset
|
584 if os.path.splitext(filePath)[1] != g_projectExt: |
5968e273449b
Translator: added new modules; made fixes and many additions.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
439
diff
changeset
|
585 filePath += g_projectExt |
437
7ac9f94ca7ff
Translator: added NewProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
436
diff
changeset
|
586 |
7ac9f94ca7ff
Translator: added NewProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
436
diff
changeset
|
587 try: |
7ac9f94ca7ff
Translator: added NewProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
436
diff
changeset
|
588 yaml.dump(projectData, open(filePath, "w"), default_flow_style=False) |
7ac9f94ca7ff
Translator: added NewProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
436
diff
changeset
|
589 except Exception, e: |
479
044b5393f8bc
Translator: added ClosingProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
477
diff
changeset
|
590 MB.critical(self, "Error", str(e)) |
437
7ac9f94ca7ff
Translator: added NewProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
436
diff
changeset
|
591 return |
7ac9f94ca7ff
Translator: added NewProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
436
diff
changeset
|
592 |
7ac9f94ca7ff
Translator: added NewProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
436
diff
changeset
|
593 # Accept and close dialog. |
7ac9f94ca7ff
Translator: added NewProjectDialog.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
436
diff
changeset
|
594 QtGui.QDialog.accept(self) |
435
156d6301d79e
Added PyQt4 application for creating and managing translations.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
595 |
156d6301d79e
Added PyQt4 application for creating and managing translations.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
596 if __name__ == "__main__": |
436
0dba4c0e5234
Added AboutDialog to translator.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
435
diff
changeset
|
597 app = QtGui.QApplication(sys.argv) |
0dba4c0e5234
Added AboutDialog to translator.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
435
diff
changeset
|
598 main = MainWindow() |
0dba4c0e5234
Added AboutDialog to translator.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
435
diff
changeset
|
599 main.show() |
0dba4c0e5234
Added AboutDialog to translator.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
435
diff
changeset
|
600 sys.exit(app.exec_()) |