src/eric7/Project/ProjectTranslationsBrowser.py

Sun, 13 Apr 2025 14:46:18 +0200

author
Detlev Offenbach <detlev@die-offenbachs.de>
date
Sun, 13 Apr 2025 14:46:18 +0200
branch
eric7
changeset 11216
a1471981ef18
parent 11090
f5f5f5803935
child 11217
856628e8a303
permissions
-rw-r--r--

Project
- Removed support for `pyside2` project type.

0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1 # -*- coding: utf-8 -*-
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
2
11090
f5f5f5803935 Updated copyright for 2025.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 11050
diff changeset
3 # Copyright (c) 2002 - 2025 Detlev Offenbach <detlev@die-offenbachs.de>
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
4 #
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
5
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
6 """
2995
63d874899b8b Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2965
diff changeset
7 Module implementing a class used to display the translations part of the
63d874899b8b Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2965
diff changeset
8 project.
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
9 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
10
9473
3f23dbf37dbe Resorted the import statements using isort.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9462
diff changeset
11 import contextlib
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
12 import fnmatch
7938
1d3a2a0dac22 ProjectTranslationsBrowser: fixed some 'lambda' related issues by converting them to 'functools.partial'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7923
diff changeset
13 import functools
9473
3f23dbf37dbe Resorted the import statements using isort.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9462
diff changeset
14 import os
3f23dbf37dbe Resorted the import statements using isort.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9462
diff changeset
15 import shutil
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
16
9473
3f23dbf37dbe Resorted the import statements using isort.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9462
diff changeset
17 from PyQt6.QtCore import QEventLoop, QProcess, Qt, pyqtSignal
3f23dbf37dbe Resorted the import statements using isort.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9462
diff changeset
18 from PyQt6.QtGui import QCursor, QGuiApplication
8318
962bce857696 Replaced all imports of PyQt5 to PyQt6 and started to replace code using obsoleted methods and adapt to the PyQt6 enum usage.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8312
diff changeset
19 from PyQt6.QtWidgets import QDialog, QMenu
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
20
9624
b47dfa7a137d Refactored the Utilities and Globals modules in order to enhance the maintainability.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9576
diff changeset
21 from eric7 import Preferences
9473
3f23dbf37dbe Resorted the import statements using isort.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9462
diff changeset
22 from eric7.EricGui import EricPixmapCache
9413
80c06d472826 Changed the eric7 import statements to include the package name (i.e. eric7) in order to not fiddle with sys.path.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
23 from eric7.EricGui.EricOverrideCursor import EricOverridenCursor
80c06d472826 Changed the eric7 import statements to include the package name (i.e. eric7) in order to not fiddle with sys.path.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
24 from eric7.EricWidgets import EricMessageBox
80c06d472826 Changed the eric7 import statements to include the package name (i.e. eric7) in order to not fiddle with sys.path.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
25 from eric7.EricWidgets.EricApplication import ericApp
10635
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
26 from eric7.SystemUtilities import FileSystemUtilities, OSUtilities, QtUtilities
9482
a2bc06a54d9d Corrected/acknowledged some bad import style and removed some obsolete code.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9473
diff changeset
27 from eric7.UI.DeleteFilesConfirmationDialog import DeleteFilesConfirmationDialog
9473
3f23dbf37dbe Resorted the import statements using isort.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9462
diff changeset
28 from eric7.UI.NotificationWidget import NotificationTypes
536
6d8d39753c82 Started replaceing QMessageBox methods with own methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 535
diff changeset
29
9520
e12589f1d408 Continued refactoring of the project browser related code in order to extract some as plugins later on (added a file category repository to the Project class).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9514
diff changeset
30 from .FileCategoryRepositoryItem import FileCategoryRepositoryItem
9473
3f23dbf37dbe Resorted the import statements using isort.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9462
diff changeset
31 from .ProjectBaseBrowser import ProjectBaseBrowser
7266
d001bc703c29 Continued to resolve code style issue M841.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7229
diff changeset
32 from .ProjectBrowserModel import (
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
33 ProjectBrowserFileItem,
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
34 ProjectBrowserSimpleDirectoryItem,
7266
d001bc703c29 Continued to resolve code style issue M841.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7229
diff changeset
35 )
9524
6a730f4d0080 Continued refactoring of the project browser related code in order to extract some as plugins later on.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9520
diff changeset
36 from .ProjectBrowserRepositoryItem import ProjectBrowserRepositoryItem
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
37
945
8cd4d08fa9f6 Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 791
diff changeset
38
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
39 class ProjectTranslationsBrowser(ProjectBaseBrowser):
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
40 """
945
8cd4d08fa9f6 Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 791
diff changeset
41 A class used to display the translations part of the project.
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
42
501
5c615a85241a Finished porting signal/slot usage to the new API.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 500
diff changeset
43 @signal appendStdout(str) emitted after something was received from
2995
63d874899b8b Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2965
diff changeset
44 a QProcess on stdout
501
5c615a85241a Finished porting signal/slot usage to the new API.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 500
diff changeset
45 @signal appendStderr(str) emitted after something was received from
2995
63d874899b8b Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2965
diff changeset
46 a QProcess on stderr
63d874899b8b Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2965
diff changeset
47 @signal showMenu(str, QMenu) emitted when a menu is about to be shown.
63d874899b8b Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2965
diff changeset
48 The name of the menu and a reference to the menu are given.
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
49 """
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
50
500
c3abc7895a01 Continued porting signal/slot usage to the new API.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 476
diff changeset
51 appendStdout = pyqtSignal(str)
c3abc7895a01 Continued porting signal/slot usage to the new API.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 476
diff changeset
52 appendStderr = pyqtSignal(str)
c3abc7895a01 Continued porting signal/slot usage to the new API.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 476
diff changeset
53 showMenu = pyqtSignal(str, QMenu)
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
54
9512
6e29913ba7b6 Started refactoring of the project browser related code in order to extract some as plugins later on.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9482
diff changeset
55 def __init__(self, project, projectBrowser, parent=None):
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
56 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
57 Constructor
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
58
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
59 @param project reference to the project object
9512
6e29913ba7b6 Started refactoring of the project browser related code in order to extract some as plugins later on.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9482
diff changeset
60 @type Project
6e29913ba7b6 Started refactoring of the project browser related code in order to extract some as plugins later on.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9482
diff changeset
61 @param projectBrowser reference to the project browser object
6e29913ba7b6 Started refactoring of the project browser related code in order to extract some as plugins later on.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9482
diff changeset
62 @type ProjectBrowser
6e29913ba7b6 Started refactoring of the project browser related code in order to extract some as plugins later on.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9482
diff changeset
63 @param parent parent widget of this browser
6e29913ba7b6 Started refactoring of the project browser related code in order to extract some as plugins later on.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9482
diff changeset
64 @type QWidget
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
65 """
9531
155b2646799a Corrected some code style, code formatting and imports order issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9527
diff changeset
66 ProjectBaseBrowser.__init__(self, project, "translation", parent)
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
67 self.isTranslationsBrowser = True
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
68
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
69 self.selectedItemsFilter = [
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
70 ProjectBrowserFileItem,
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
71 ProjectBrowserSimpleDirectoryItem,
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
72 ]
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
73
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
74 self.setWindowTitle(self.tr("Translations"))
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
75
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
76 self.setWhatsThis(
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
77 self.tr(
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
78 """<b>Project Translations Browser</b>"""
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
79 """<p>This allows to easily see all translations contained in"""
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
80 """ the current project. Several actions can be executed via"""
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
81 """ the context menu.</p>"""
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
82 )
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
83 )
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
84
2795
641d03b2aa8c Changed the way lrelease is invoked in order to make it compatible with the pylupdate change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2785
diff changeset
85 self.__lreleaseProcesses = []
641d03b2aa8c Changed the way lrelease is invoked in order to make it compatible with the pylupdate change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2785
diff changeset
86 self.__pylupdateProcesses = []
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
87 self.lreleaseProcRunning = False
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
88 self.pylupdateProcRunning = False
2785
06c9e4d45f9f Changed the way pylupdate is invoked in order to allow Qt Linguits to find the source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2771
diff changeset
89 self.__tmpProjects = []
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
90
9520
e12589f1d408 Continued refactoring of the project browser related code in order to extract some as plugins later on (added a file category repository to the Project class).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9514
diff changeset
91 # Add the file category handled by the browser.
e12589f1d408 Continued refactoring of the project browser related code in order to extract some as plugins later on (added a file category repository to the Project class).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9514
diff changeset
92 project.addFileCategory(
e12589f1d408 Continued refactoring of the project browser related code in order to extract some as plugins later on (added a file category repository to the Project class).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9514
diff changeset
93 "TRANSLATIONS",
e12589f1d408 Continued refactoring of the project browser related code in order to extract some as plugins later on (added a file category repository to the Project class).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9514
diff changeset
94 FileCategoryRepositoryItem(
e12589f1d408 Continued refactoring of the project browser related code in order to extract some as plugins later on (added a file category repository to the Project class).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9514
diff changeset
95 fileCategoryFilterTemplate=self.tr("Translation Files ({0})"),
e12589f1d408 Continued refactoring of the project browser related code in order to extract some as plugins later on (added a file category repository to the Project class).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9514
diff changeset
96 fileCategoryUserString=self.tr("Translation Files"),
e12589f1d408 Continued refactoring of the project browser related code in order to extract some as plugins later on (added a file category repository to the Project class).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9514
diff changeset
97 fileCategoryTyeString=self.tr("Translations"),
e12589f1d408 Continued refactoring of the project browser related code in order to extract some as plugins later on (added a file category repository to the Project class).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9514
diff changeset
98 fileCategoryExtensions=["*.ts", "*.qm"],
e12589f1d408 Continued refactoring of the project browser related code in order to extract some as plugins later on (added a file category repository to the Project class).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9514
diff changeset
99 ),
e12589f1d408 Continued refactoring of the project browser related code in order to extract some as plugins later on (added a file category repository to the Project class).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9514
diff changeset
100 )
e12589f1d408 Continued refactoring of the project browser related code in order to extract some as plugins later on (added a file category repository to the Project class).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9514
diff changeset
101
9524
6a730f4d0080 Continued refactoring of the project browser related code in order to extract some as plugins later on.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9520
diff changeset
102 # Add the project browser type to the browser type repository.
6a730f4d0080 Continued refactoring of the project browser related code in order to extract some as plugins later on.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9520
diff changeset
103 projectBrowser.addTypedProjectBrowser(
6a730f4d0080 Continued refactoring of the project browser related code in order to extract some as plugins later on.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9520
diff changeset
104 "translations",
6a730f4d0080 Continued refactoring of the project browser related code in order to extract some as plugins later on.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9520
diff changeset
105 ProjectBrowserRepositoryItem(
6a730f4d0080 Continued refactoring of the project browser related code in order to extract some as plugins later on.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9520
diff changeset
106 projectBrowser=self,
6a730f4d0080 Continued refactoring of the project browser related code in order to extract some as plugins later on.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9520
diff changeset
107 projectBrowserUserString=self.tr("Translations Browser"),
9525
477545eef9f4 Continued refactoring of the project browser related code in order to extract some as plugins later on.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9524
diff changeset
108 priority=75,
9524
6a730f4d0080 Continued refactoring of the project browser related code in order to extract some as plugins later on.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9520
diff changeset
109 fileCategory="TRANSLATIONS",
9527
8601253e7633 Continued refactoring of the project browser related code in order to extract some as plugins later on.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9525
diff changeset
110 fileFilter="translation",
9524
6a730f4d0080 Continued refactoring of the project browser related code in order to extract some as plugins later on.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9520
diff changeset
111 getIcon=self.getIcon,
6a730f4d0080 Continued refactoring of the project browser related code in order to extract some as plugins later on.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9520
diff changeset
112 ),
6a730f4d0080 Continued refactoring of the project browser related code in order to extract some as plugins later on.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9520
diff changeset
113 )
6a730f4d0080 Continued refactoring of the project browser related code in order to extract some as plugins later on.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9520
diff changeset
114
9520
e12589f1d408 Continued refactoring of the project browser related code in order to extract some as plugins later on (added a file category repository to the Project class).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9514
diff changeset
115 # Connect signals of Project.
9512
6e29913ba7b6 Started refactoring of the project browser related code in order to extract some as plugins later on.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9482
diff changeset
116 project.projectClosed.connect(self._projectClosed)
6e29913ba7b6 Started refactoring of the project browser related code in order to extract some as plugins later on.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9482
diff changeset
117 project.projectOpened.connect(self._projectOpened)
6e29913ba7b6 Started refactoring of the project browser related code in order to extract some as plugins later on.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9482
diff changeset
118 project.newProject.connect(self._newProject)
6e29913ba7b6 Started refactoring of the project browser related code in order to extract some as plugins later on.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9482
diff changeset
119 project.reinitVCS.connect(self._initMenusAndVcs)
6e29913ba7b6 Started refactoring of the project browser related code in order to extract some as plugins later on.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9482
diff changeset
120 project.projectPropertiesChanged.connect(self._initMenusAndVcs)
6e29913ba7b6 Started refactoring of the project browser related code in order to extract some as plugins later on.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9482
diff changeset
121
9520
e12589f1d408 Continued refactoring of the project browser related code in order to extract some as plugins later on (added a file category repository to the Project class).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9514
diff changeset
122 # Connect signals of ProjectBrowser.
9512
6e29913ba7b6 Started refactoring of the project browser related code in order to extract some as plugins later on.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9482
diff changeset
123 projectBrowser.preferencesChanged.connect(self.handlePreferencesChanged)
6e29913ba7b6 Started refactoring of the project browser related code in order to extract some as plugins later on.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9482
diff changeset
124
9520
e12589f1d408 Continued refactoring of the project browser related code in order to extract some as plugins later on (added a file category repository to the Project class).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9514
diff changeset
125 # Connect some of our own signals.
9512
6e29913ba7b6 Started refactoring of the project browser related code in order to extract some as plugins later on.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9482
diff changeset
126 self.appendStderr.connect(projectBrowser.appendStderr)
6e29913ba7b6 Started refactoring of the project browser related code in order to extract some as plugins later on.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9482
diff changeset
127 self.appendStdout.connect(projectBrowser.appendStdout)
6e29913ba7b6 Started refactoring of the project browser related code in order to extract some as plugins later on.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9482
diff changeset
128 self.closeSourceWindow.connect(projectBrowser.closeSourceWindow)
6e29913ba7b6 Started refactoring of the project browser related code in order to extract some as plugins later on.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9482
diff changeset
129 self.sourceFile[str].connect(projectBrowser.sourceFile[str])
6e29913ba7b6 Started refactoring of the project browser related code in order to extract some as plugins later on.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9482
diff changeset
130 self.linguistFile.connect(projectBrowser.linguistFile)
6e29913ba7b6 Started refactoring of the project browser related code in order to extract some as plugins later on.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9482
diff changeset
131 self.trpreview[list].connect(projectBrowser.trpreview[list])
6e29913ba7b6 Started refactoring of the project browser related code in order to extract some as plugins later on.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9482
diff changeset
132 self.trpreview[list, bool].connect(projectBrowser.trpreview[list, bool])
6e29913ba7b6 Started refactoring of the project browser related code in order to extract some as plugins later on.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9482
diff changeset
133
9524
6a730f4d0080 Continued refactoring of the project browser related code in order to extract some as plugins later on.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9520
diff changeset
134 def getIcon(self):
6a730f4d0080 Continued refactoring of the project browser related code in order to extract some as plugins later on.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9520
diff changeset
135 """
6a730f4d0080 Continued refactoring of the project browser related code in order to extract some as plugins later on.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9520
diff changeset
136 Public method to get an icon for the project browser.
6a730f4d0080 Continued refactoring of the project browser related code in order to extract some as plugins later on.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9520
diff changeset
137
6a730f4d0080 Continued refactoring of the project browser related code in order to extract some as plugins later on.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9520
diff changeset
138 @return icon for the browser
6a730f4d0080 Continued refactoring of the project browser related code in order to extract some as plugins later on.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9520
diff changeset
139 @rtype QIcon
6a730f4d0080 Continued refactoring of the project browser related code in order to extract some as plugins later on.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9520
diff changeset
140 """
6a730f4d0080 Continued refactoring of the project browser related code in order to extract some as plugins later on.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9520
diff changeset
141 return EricPixmapCache.getIcon("projectTranslations")
6a730f4d0080 Continued refactoring of the project browser related code in order to extract some as plugins later on.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9520
diff changeset
142
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
143 def _createPopupMenus(self):
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
144 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
145 Protected overloaded method to generate the popup menu.
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
146 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
147 self.menuActions = []
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
148 self.multiMenuActions = []
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
149 self.dirMenuActions = []
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
150 self.dirMultiMenuActions = []
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
151
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
152 self.tsMenuActions = []
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
153 self.qmMenuActions = []
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
154 self.tsprocMenuActions = []
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
155 self.qmprocMenuActions = []
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
156
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
157 self.tsMultiMenuActions = []
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
158 self.qmMultiMenuActions = []
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
159 self.tsprocMultiMenuActions = []
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
160 self.qmprocMultiMenuActions = []
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
161
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
162 self.tsprocDirMenuActions = []
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
163 self.qmprocDirMenuActions = []
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
164
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
165 self.tsprocBackMenuActions = []
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
166 self.qmprocBackMenuActions = []
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
167
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
168 self.menu = QMenu(self)
7266
d001bc703c29 Continued to resolve code style issue M841.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7229
diff changeset
169 if self.project.getProjectType() in [
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
170 "PyQt5",
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
171 "PyQt5C",
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
172 "PyQt6",
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
173 "PyQt6C",
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
174 "E7Plugin",
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
175 "PySide6",
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
176 "PySide6C",
7266
d001bc703c29 Continued to resolve code style issue M841.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7229
diff changeset
177 ]:
10635
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
178 if FileSystemUtilities.isRemoteFileName(self.project.getProjectPath()):
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
179 act = self.menu.addAction(
10635
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
180 self.tr("Open in Editor"), self.__openFileInEditor
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
181 )
10635
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
182 self.tsMenuActions.append(act)
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
183 self.menu.addSeparator()
10635
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
184 else:
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
185 act = self.menu.addAction(
10635
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
186 self.tr("Generate translation"), self.__generateSelected
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
187 )
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
188 self.tsMenuActions.append(act)
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
189 self.tsprocMenuActions.append(act)
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
190 act = self.menu.addAction(
10635
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
191 self.tr("Generate translation (with obsolete)"),
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
192 self.__generateObsoleteSelected,
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
193 )
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
194 self.tsMenuActions.append(act)
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
195 self.tsprocMenuActions.append(act)
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
196 act = self.menu.addAction(
10635
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
197 self.tr("Generate all translations"), self.__generateAll
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
198 )
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
199 self.tsprocMenuActions.append(act)
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
200 act = self.menu.addAction(
10635
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
201 self.tr("Generate all translations (with obsolete)"),
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
202 self.__generateObsoleteAll,
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
203 )
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
204 self.tsprocMenuActions.append(act)
10635
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
205 self.menu.addSeparator()
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
206 self.__qtLinguistAct = self.menu.addAction(
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
207 self.tr("Open in Qt-Linguist"), self._openItem
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
208 )
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
209 self.tsMenuActions.append(self.__qtLinguistAct)
2722
1c5df42d94bf Added a plug-in hooks for the 'open' action to the project forms and translations viewers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2615
diff changeset
210 act = self.menu.addAction(
10635
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
211 self.tr("Open in Editor"), self.__openFileInEditor
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
212 )
2722
1c5df42d94bf Added a plug-in hooks for the 'open' action to the project forms and translations viewers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2615
diff changeset
213 self.tsMenuActions.append(act)
10635
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
214 self.menu.addSeparator()
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
215 act = self.menu.addAction(
10635
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
216 self.tr("Release translation"), self.__releaseSelected
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
217 )
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
218 self.tsMenuActions.append(act)
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
219 self.qmprocMenuActions.append(act)
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
220 act = self.menu.addAction(
10635
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
221 self.tr("Release all translations"), self.__releaseAll
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
222 )
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
223 self.qmprocMenuActions.append(act)
10635
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
224 self.menu.addSeparator()
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
225 act = self.menu.addAction(
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
226 self.tr("Preview translation"), self.__TRPreview
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
227 )
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
228 self.qmMenuActions.append(act)
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
229 act = self.menu.addAction(
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
230 self.tr("Preview all translations"), self.__TRPreviewAll
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
231 )
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
232 self.menu.addSeparator()
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
233 else:
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
234 if FileSystemUtilities.isRemoteFileName(self.project.getProjectPath()):
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
235 act = self.menu.addAction(
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
236 self.tr("Open in Editor"), self.__openFileInEditor
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
237 )
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
238 self.tsMenuActions.append(act)
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
239 self.menu.addSeparator()
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
240 else:
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
241 if self.hooks["extractMessages"] is not None:
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
242 act = self.menu.addAction(
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
243 self.hooksMenuEntries.get(
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
244 "extractMessages", self.tr("Extract messages")
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
245 ),
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
246 self.__extractMessages,
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
247 )
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
248 self.menuActions.append(act)
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
249 self.menu.addSeparator()
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
250 if self.hooks["generateSelected"] is not None:
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
251 act = self.menu.addAction(
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
252 self.hooksMenuEntries.get(
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
253 "generateSelected", self.tr("Generate translation")
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
254 ),
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
255 self.__generateSelected,
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
256 )
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
257 self.tsMenuActions.append(act)
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
258 self.tsprocMenuActions.append(act)
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
259 if self.hooks["generateSelectedWithObsolete"] is not None:
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
260 act = self.menu.addAction(
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
261 self.hooksMenuEntries.get(
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
262 "generateSelectedWithObsolete",
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
263 self.tr("Generate translation (with obsolete)"),
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
264 ),
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
265 self.__generateObsoleteSelected,
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
266 )
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
267 self.tsMenuActions.append(act)
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
268 self.tsprocMenuActions.append(act)
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
269 if self.hooks["generateAll"] is not None:
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
270 act = self.menu.addAction(
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
271 self.hooksMenuEntries.get(
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
272 "generateAll", self.tr("Generate all translations")
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
273 ),
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
274 self.__generateAll,
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
275 )
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
276 self.tsprocMenuActions.append(act)
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
277 if self.hooks["generateAllWithObsolete"] is not None:
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
278 act = self.menu.addAction(
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
279 self.hooksMenuEntries.get(
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
280 "generateAllWithObsolete",
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
281 self.tr("Generate all translations (with obsolete)"),
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
282 ),
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
283 self.__generateObsoleteAll,
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
284 )
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
285 self.tsprocMenuActions.append(act)
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
286 self.menu.addSeparator()
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
287 if self.hooks["open"] is not None:
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
288 act = self.menu.addAction(
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
289 self.hooksMenuEntries.get("open", self.tr("Open")),
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
290 self._openItem,
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
291 )
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
292 self.tsMenuActions.append(act)
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
293 act = self.menu.addAction(
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
294 self.tr("Open in Editor"), self.__openFileInEditor
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
295 )
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
296 self.tsMenuActions.append(act)
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
297 self.menu.addSeparator()
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
298 if self.hooks["releaseSelected"] is not None:
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
299 act = self.menu.addAction(
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
300 self.hooksMenuEntries.get(
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
301 "releaseSelected", self.tr("Release translation")
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
302 ),
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
303 self.__releaseSelected,
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
304 )
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
305 self.tsMenuActions.append(act)
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
306 self.qmprocMenuActions.append(act)
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
307 if self.hooks["releaseAll"] is not None:
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
308 act = self.menu.addAction(
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
309 self.hooksMenuEntries.get(
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
310 "releaseAll", self.tr("Release all translations")
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
311 ),
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
312 self.__releaseAll,
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
313 )
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
314 self.qmprocMenuActions.append(act)
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
315 self.menu.addSeparator()
3030
4a0a82ddd9d2 Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3029
diff changeset
316 act = self.menu.addAction(
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
317 self.tr("Remove from project"), self.__removeLanguageFile
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
318 )
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
319 self.menuActions.append(act)
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
320 act = self.menu.addAction(self.tr("Delete"), self.__deleteLanguageFile)
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
321 self.menuActions.append(act)
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
322 self.menu.addSeparator()
1003
b81a77ac656a Fixed an inconvenience in the project and project translations viewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 949
diff changeset
323 self.__addTranslationAct = self.menu.addAction(
10256
1b728f26d1ae Project Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10242
diff changeset
324 self.tr("New translation..."), self.project.addLanguage
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
325 )
3030
4a0a82ddd9d2 Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3029
diff changeset
326 self.menu.addAction(
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
327 self.tr("Add translation files..."), self.__addTranslationFiles
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
328 )
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
329 self.menu.addSeparator()
10635
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
330 if FileSystemUtilities.isPlainFileName(self.project.getProjectPath()):
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
331 self.menu.addAction(
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
332 self.tr("Show in File Manager"), self._showInFileManager
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
333 )
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
334 self.menu.addAction(self.tr("Copy Path to Clipboard"), self._copyToClipboard)
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
335 self.menu.addSeparator()
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
336 self.menu.addAction(self.tr("Configure..."), self._configure)
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
337
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
338 self.backMenu = QMenu(self)
10635
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
339 if FileSystemUtilities.isPlainFileName(self.project.getProjectPath()):
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
340 if self.project.getProjectType() in [
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
341 "PyQt5",
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
342 "PyQt5C",
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
343 "PyQt6",
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
344 "PyQt6C",
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
345 "E7Plugin",
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
346 "PySide6",
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
347 "PySide6C",
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
348 ]:
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
349 act = self.backMenu.addAction(
10635
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
350 self.tr("Generate all translations"), self.__generateAll
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
351 )
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
352 self.tsprocBackMenuActions.append(act)
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
353 act = self.backMenu.addAction(
10635
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
354 self.tr("Generate all translations (with obsolete)"),
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
355 self.__generateObsoleteAll,
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
356 )
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
357 self.tsprocBackMenuActions.append(act)
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
358 act = self.backMenu.addAction(
10635
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
359 self.tr("Release all translations"), self.__releaseAll
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
360 )
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
361 self.qmprocBackMenuActions.append(act)
10635
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
362 self.backMenu.addSeparator()
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
363 act = self.backMenu.addAction(
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
364 self.tr("Preview all translations"), self.__TRPreview
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
365 )
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
366 else:
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
367 if self.hooks["extractMessages"] is not None:
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
368 act = self.backMenu.addAction(
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
369 self.hooksMenuEntries.get(
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
370 "extractMessages", self.tr("Extract messages")
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
371 ),
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
372 self.__extractMessages,
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
373 )
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
374 self.backMenu.addSeparator()
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
375 if self.hooks["generateAll"] is not None:
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
376 act = self.backMenu.addAction(
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
377 self.hooksMenuEntries.get(
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
378 "generateAll", self.tr("Generate all translations")
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
379 ),
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
380 self.__generateAll,
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
381 )
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
382 self.tsprocBackMenuActions.append(act)
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
383 if self.hooks["generateAllWithObsolete"] is not None:
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
384 act = self.backMenu.addAction(
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
385 self.hooksMenuEntries.get(
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
386 "generateAllWithObsolete",
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
387 self.tr("Generate all translations (with obsolete)"),
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
388 ),
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
389 self.__generateObsoleteAll,
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
390 )
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
391 self.tsprocBackMenuActions.append(act)
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
392 if self.hooks["releaseAll"] is not None:
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
393 act = self.backMenu.addAction(
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
394 self.hooksMenuEntries.get(
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
395 "releaseAll", self.tr("Release all translations")
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
396 ),
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
397 self.__releaseAll,
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
398 )
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
399 self.qmprocBackMenuActions.append(act)
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
400 self.backMenu.addSeparator()
1003
b81a77ac656a Fixed an inconvenience in the project and project translations viewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 949
diff changeset
401 self.__addTranslationBackAct = self.backMenu.addAction(
10256
1b728f26d1ae Project Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10242
diff changeset
402 self.tr("New translation..."), self.project.addLanguage
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
403 )
3030
4a0a82ddd9d2 Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3029
diff changeset
404 self.backMenu.addAction(
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
405 self.tr("Add translation files..."), self.__addTranslationFiles
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
406 )
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
407 self.backMenu.addSeparator()
10398
ef1ea18994d5 Project Browser
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10256
diff changeset
408 self.backMenu.addAction(
ef1ea18994d5 Project Browser
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10256
diff changeset
409 self.tr("Show in File Manager"), self._showProjectInFileManager
ef1ea18994d5 Project Browser
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10256
diff changeset
410 )
ef1ea18994d5 Project Browser
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10256
diff changeset
411 self.backMenu.addSeparator()
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
412 self.backMenu.addAction(self.tr("Configure..."), self._configure)
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
413 self.backMenu.setEnabled(False)
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
414
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
415 # create the menu for multiple selected files
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
416 self.multiMenu = QMenu(self)
7266
d001bc703c29 Continued to resolve code style issue M841.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7229
diff changeset
417 if self.project.getProjectType() in [
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
418 "PyQt5",
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
419 "PyQt5C",
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
420 "PyQt6",
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
421 "PyQt6C",
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
422 "E7Plugin",
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
423 "PySide6",
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
424 "PySide6C",
7266
d001bc703c29 Continued to resolve code style issue M841.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7229
diff changeset
425 ]:
10635
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
426 if FileSystemUtilities.isRemoteFileName(self.project.getProjectPath()):
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
427 act = self.multiMenu.addAction(
10635
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
428 self.tr("Open in Editor"), self.__openFileInEditor
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
429 )
10635
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
430 self.tsMultiMenuActions.append(act)
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
431 self.multiMenu.addSeparator()
10635
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
432 else:
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
433 act = self.multiMenu.addAction(
10635
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
434 self.tr("Generate translations"), self.__generateSelected
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
435 )
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
436 self.tsMultiMenuActions.append(act)
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
437 self.tsprocMultiMenuActions.append(act)
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
438 act = self.multiMenu.addAction(
10635
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
439 self.tr("Generate translations (with obsolete)"),
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
440 self.__generateObsoleteSelected,
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
441 )
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
442 self.tsMultiMenuActions.append(act)
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
443 self.tsprocMultiMenuActions.append(act)
10635
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
444 self.multiMenu.addSeparator()
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
445 self.__qtLinguistMultiAct = self.multiMenu.addAction(
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
446 self.tr("Open in Qt-Linguist"), self._openItem
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
447 )
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
448 self.tsMultiMenuActions.append(self.__qtLinguistMultiAct)
2722
1c5df42d94bf Added a plug-in hooks for the 'open' action to the project forms and translations viewers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2615
diff changeset
449 act = self.multiMenu.addAction(
10635
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
450 self.tr("Open in Editor"), self.__openFileInEditor
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
451 )
2722
1c5df42d94bf Added a plug-in hooks for the 'open' action to the project forms and translations viewers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2615
diff changeset
452 self.tsMultiMenuActions.append(act)
10635
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
453 self.multiMenu.addSeparator()
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
454 act = self.multiMenu.addAction(
10635
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
455 self.tr("Release translations"), self.__releaseSelected
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
456 )
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
457 self.tsMultiMenuActions.append(act)
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
458 self.qmprocMultiMenuActions.append(act)
10635
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
459 self.multiMenu.addSeparator()
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
460 act = self.multiMenu.addAction(
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
461 self.tr("Preview translations"), self.__TRPreview
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
462 )
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
463 self.qmMultiMenuActions.append(act)
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
464 else:
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
465 if FileSystemUtilities.isRemoteFileName(self.project.getProjectPath()):
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
466 act = self.multiMenu.addAction(
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
467 self.tr("Open in Editor"), self.__openFileInEditor
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
468 )
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
469 self.tsMultiMenuActions.append(act)
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
470 self.multiMenu.addSeparator()
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
471 else:
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
472 if self.hooks["extractMessages"] is not None:
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
473 act = self.multiMenu.addAction(
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
474 self.hooksMenuEntries.get(
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
475 "extractMessages", self.tr("Extract messages")
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
476 ),
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
477 self.__extractMessages,
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
478 )
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
479 self.multiMenuActions.append(act)
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
480 self.multiMenu.addSeparator()
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
481 if self.hooks["generateSelected"] is not None:
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
482 act = self.multiMenu.addAction(
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
483 self.hooksMenuEntries.get(
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
484 "generateSelected", self.tr("Generate translations")
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
485 ),
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
486 self.__generateSelected,
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
487 )
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
488 self.tsMultiMenuActions.append(act)
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
489 self.tsprocMultiMenuActions.append(act)
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
490 if self.hooks["generateSelectedWithObsolete"] is not None:
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
491 act = self.multiMenu.addAction(
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
492 self.hooksMenuEntries.get(
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
493 "generateSelectedWithObsolete",
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
494 self.tr("Generate translations (with obsolete)"),
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
495 ),
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
496 self.__generateObsoleteSelected,
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
497 )
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
498 self.tsMultiMenuActions.append(act)
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
499 self.tsprocMultiMenuActions.append(act)
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
500 self.multiMenu.addSeparator()
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
501 if self.hooks["open"] is not None:
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
502 act = self.multiMenu.addAction(
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
503 self.hooksMenuEntries.get("open", self.tr("Open")),
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
504 self._openItem,
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
505 )
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
506 self.tsMultiMenuActions.append(act)
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
507 act = self.multiMenu.addAction(
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
508 self.tr("Open in Editor"), self.__openFileInEditor
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
509 )
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
510 self.tsMultiMenuActions.append(act)
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
511 self.multiMenu.addSeparator()
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
512 if self.hooks["releaseSelected"] is not None:
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
513 act = self.multiMenu.addAction(
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
514 self.hooksMenuEntries.get(
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
515 "releaseSelected", self.tr("Release translations")
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
516 ),
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
517 self.__releaseSelected,
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
518 )
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
519 self.tsMultiMenuActions.append(act)
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
520 self.qmprocMultiMenuActions.append(act)
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
521 self.multiMenu.addSeparator()
3030
4a0a82ddd9d2 Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3029
diff changeset
522 act = self.multiMenu.addAction(
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
523 self.tr("Remove from project"), self.__removeLanguageFile
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
524 )
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
525 self.multiMenuActions.append(act)
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
526 act = self.multiMenu.addAction(self.tr("Delete"), self.__deleteLanguageFile)
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
527 self.multiMenuActions.append(act)
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
528 self.multiMenu.addSeparator()
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
529 self.multiMenu.addAction(self.tr("Configure..."), self._configure)
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
530
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
531 self.dirMenu = QMenu(self)
10635
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
532 if FileSystemUtilities.isPlainFileName(self.project.getProjectPath()):
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
533 if self.project.getProjectType() in [
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
534 "PyQt5",
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
535 "PyQt5C",
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
536 "PyQt6",
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
537 "PyQt6C",
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
538 "E7Plugin",
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
539 "PySide6",
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
540 "PySide6C",
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
541 ]:
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
542 act = self.dirMenu.addAction(
10635
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
543 self.tr("Generate all translations"), self.__generateAll
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
544 )
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
545 self.tsprocDirMenuActions.append(act)
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
546 act = self.dirMenu.addAction(
10635
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
547 self.tr("Generate all translations (with obsolete)"),
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
548 self.__generateObsoleteAll,
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
549 )
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
550 self.tsprocDirMenuActions.append(act)
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
551 act = self.dirMenu.addAction(
10635
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
552 self.tr("Release all translations"), self.__releaseAll
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
553 )
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
554 self.qmprocDirMenuActions.append(act)
10635
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
555 self.dirMenu.addSeparator()
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
556 act = self.dirMenu.addAction(
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
557 self.tr("Preview all translations"), self.__TRPreview
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
558 )
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
559 else:
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
560 if self.hooks["extractMessages"] is not None:
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
561 act = self.dirMenu.addAction(
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
562 self.hooksMenuEntries.get(
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
563 "extractMessages", self.tr("Extract messages")
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
564 ),
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
565 self.__extractMessages,
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
566 )
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
567 self.dirMenuActions.append(act)
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
568 self.dirMenu.addSeparator()
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
569 if self.hooks["generateAll"] is not None:
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
570 act = self.dirMenu.addAction(
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
571 self.hooksMenuEntries.get(
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
572 "generateAll", self.tr("Generate all translations")
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
573 ),
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
574 self.__generateAll,
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
575 )
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
576 self.tsprocDirMenuActions.append(act)
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
577 if self.hooks["generateAllWithObsolete"] is not None:
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
578 act = self.dirMenu.addAction(
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
579 self.hooksMenuEntries.get(
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
580 "generateAllWithObsolete",
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
581 self.tr("Generate all translations (with obsolete)"),
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
582 ),
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
583 self.__generateObsoleteAll,
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
584 )
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
585 self.tsprocDirMenuActions.append(act)
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
586 if self.hooks["releaseAll"] is not None:
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
587 act = self.dirMenu.addAction(
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
588 self.hooksMenuEntries.get(
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
589 "releaseAll", self.tr("Release all translations")
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
590 ),
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
591 self.__releaseAll,
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
592 )
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
593 self.qmprocDirMenuActions.append(act)
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
594 self.dirMenu.addSeparator()
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
595 act = self.dirMenu.addAction(self.tr("Delete"), self._deleteDirectory)
2540
f346433ea963 Added a context menu entry to delete the selected directory to the project viewers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2408
diff changeset
596 self.dirMenuActions.append(act)
f346433ea963 Added a context menu entry to delete the selected directory to the project viewers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2408
diff changeset
597 self.dirMenu.addSeparator()
10635
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
598 if FileSystemUtilities.isPlainFileName(self.project.getProjectPath()):
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
599 self.__addTranslationDirAct = self.dirMenu.addAction(
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
600 self.tr("New translation..."), self.project.addLanguage
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
601 )
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
602 self.dirMenu.addAction(
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
603 self.tr("Add translation files..."), self.__addTranslationFiles
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
604 )
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
605 self.dirMenu.addSeparator()
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
606 self.dirMenu.addAction(
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
607 self.tr("Show in File Manager"), self._showInFileManager
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
608 )
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
609 self.dirMenu.addAction(self.tr("Copy Path to Clipboard"), self._copyToClipboard)
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
610 self.dirMenu.addSeparator()
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
611 self.dirMenu.addAction(self.tr("Configure..."), self._configure)
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
612
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
613 self.dirMultiMenu = None
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
614
461
34528aaedf1c Continued porting signal/slot usage to the new API.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 428
diff changeset
615 self.menu.aboutToShow.connect(self.__showContextMenu)
34528aaedf1c Continued porting signal/slot usage to the new API.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 428
diff changeset
616 self.multiMenu.aboutToShow.connect(self.__showContextMenuMulti)
34528aaedf1c Continued porting signal/slot usage to the new API.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 428
diff changeset
617 self.dirMenu.aboutToShow.connect(self.__showContextMenuDir)
34528aaedf1c Continued porting signal/slot usage to the new API.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 428
diff changeset
618 self.backMenu.aboutToShow.connect(self.__showContextMenuBack)
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
619 self.mainMenu = self.menu
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
620
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
621 def _contextMenuRequested(self, coord):
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
622 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
623 Protected slot to show the context menu.
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
624
10430
e440aaf179ce Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10398
diff changeset
625 @param coord the position of the mouse pointer
e440aaf179ce Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10398
diff changeset
626 @type QPoint
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
627 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
628 if not self.project.isOpen():
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
629 return
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
630
9462
e65379fdbd97 Changed code to resolve or acknowledge some potential security issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9426
diff changeset
631 with contextlib.suppress(Exception): # secok
564
b3d966393ba9 Did some code cleanup.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 539
diff changeset
632 categories = self.getSelectedItemsCountCategorized(
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
633 [ProjectBrowserFileItem, ProjectBrowserSimpleDirectoryItem]
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
634 )
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
635 cnt = categories["sum"]
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
636 if cnt <= 1:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
637 index = self.indexAt(coord)
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
638 if index.isValid():
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
639 self._selectSingleItem(index)
564
b3d966393ba9 Did some code cleanup.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 539
diff changeset
640 categories = self.getSelectedItemsCountCategorized(
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
641 [ProjectBrowserFileItem, ProjectBrowserSimpleDirectoryItem]
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
642 )
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
643 cnt = categories["sum"]
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
644
12
1d8dd9706f46 First commit after changing to Python 3.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
645 bfcnt = categories[str(ProjectBrowserFileItem)]
1d8dd9706f46 First commit after changing to Python 3.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
646 sdcnt = categories[str(ProjectBrowserSimpleDirectoryItem)]
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
647 if cnt > 1 and cnt == bfcnt:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
648 self.multiMenu.popup(self.mapToGlobal(coord))
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
649 else:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
650 index = self.indexAt(coord)
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
651 if cnt == 1 and index.isValid():
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
652 if bfcnt == 1:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
653 self.menu.popup(self.mapToGlobal(coord))
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
654 elif sdcnt == 1:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
655 self.dirMenu.popup(self.mapToGlobal(coord))
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
656 else:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
657 self.backMenu.popup(self.mapToGlobal(coord))
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
658 else:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
659 self.backMenu.popup(self.mapToGlobal(coord))
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
660
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
661 def __showContextMenu(self):
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
662 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
663 Private slot called by the menu aboutToShow signal.
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
664 """
7266
d001bc703c29 Continued to resolve code style issue M841.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7229
diff changeset
665 if self.project.getProjectType() in [
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
666 "PyQt5",
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
667 "PyQt5C",
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
668 "PyQt6",
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
669 "PyQt6C",
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
670 "E7Plugin",
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
671 "PySide6",
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
672 "PySide6C",
7266
d001bc703c29 Continued to resolve code style issue M841.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7229
diff changeset
673 ]:
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
674 tsFiles = 0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
675 qmFiles = 0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
676 itmList = self.getSelectedItems()
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
677 for itm in itmList[:]:
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
678 if itm.fileName().endswith(".ts"):
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
679 tsFiles += 1
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
680 elif itm.fileName().endswith(".qm"):
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
681 qmFiles += 1
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
682 if (tsFiles > 0 and qmFiles > 0) or (tsFiles == 0 and qmFiles == 0):
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
683 for act in self.tsMenuActions + self.qmMenuActions:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
684 act.setEnabled(False)
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
685 elif tsFiles > 0:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
686 for act in self.tsMenuActions:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
687 act.setEnabled(True)
10635
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
688 if FileSystemUtilities.isPlainFileName(self.project.getProjectPath()):
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
689 self.__qtLinguistAct.setEnabled(QtUtilities.hasQtLinguist())
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
690 self.__qtLinguistMultiAct.setEnabled(QtUtilities.hasQtLinguist())
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
691 for act in self.qmMenuActions:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
692 act.setEnabled(False)
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
693 elif qmFiles > 0:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
694 for act in self.tsMenuActions:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
695 act.setEnabled(False)
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
696 for act in self.qmMenuActions:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
697 act.setEnabled(True)
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
698 if self.pylupdateProcRunning:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
699 for act in self.tsprocMenuActions:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
700 act.setEnabled(False)
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
701 if self.lreleaseProcRunning:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
702 for act in self.qmprocMenuActions:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
703 act.setEnabled(True)
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
704 self.__addTranslationAct.setEnabled(self.project.getTranslationPattern() != "")
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
705
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
706 ProjectBaseBrowser._showContextMenu(self, self.menu)
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
707
500
c3abc7895a01 Continued porting signal/slot usage to the new API.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 476
diff changeset
708 self.showMenu.emit("Main", self.menu)
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
709
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
710 def __showContextMenuMulti(self):
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
711 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
712 Private slot called by the multiMenu aboutToShow signal.
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
713 """
7266
d001bc703c29 Continued to resolve code style issue M841.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7229
diff changeset
714 if self.project.getProjectType() in [
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
715 "PyQt5",
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
716 "PyQt5C",
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
717 "PyQt6",
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
718 "PyQt6C",
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
719 "E7Plugin",
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
720 "PySide6",
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
721 "PySide6C",
7266
d001bc703c29 Continued to resolve code style issue M841.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7229
diff changeset
722 ]:
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
723 tsFiles = 0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
724 qmFiles = 0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
725 itmList = self.getSelectedItems()
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
726 for itm in itmList[:]:
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
727 if itm.fileName().endswith(".ts"):
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
728 tsFiles += 1
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
729 elif itm.fileName().endswith(".qm"):
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
730 qmFiles += 1
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
731 if (tsFiles > 0 and qmFiles > 0) or (tsFiles == 0 and qmFiles == 0):
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
732 for act in self.tsMultiMenuActions + self.qmMultiMenuActions:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
733 act.setEnabled(False)
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
734 elif tsFiles > 0:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
735 for act in self.tsMultiMenuActions:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
736 act.setEnabled(True)
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
737 for act in self.qmMultiMenuActions:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
738 act.setEnabled(False)
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
739 elif qmFiles > 0:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
740 for act in self.tsMultiMenuActions:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
741 act.setEnabled(False)
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
742 for act in self.qmMultiMenuActions:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
743 act.setEnabled(True)
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
744 if self.pylupdateProcRunning:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
745 for act in self.tsprocMultiMenuActions:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
746 act.setEnabled(False)
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
747 if self.lreleaseProcRunning:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
748 for act in self.qmprocMultiMenuActions:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
749 act.setEnabled(True)
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
750
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
751 ProjectBaseBrowser._showContextMenuMulti(self, self.multiMenu)
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
752
500
c3abc7895a01 Continued porting signal/slot usage to the new API.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 476
diff changeset
753 self.showMenu.emit("MainMulti", self.multiMenu)
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
754
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
755 def __showContextMenuDir(self):
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
756 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
757 Private slot called by the dirMenu aboutToShow signal.
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
758 """
10708
a6094987c1be Corrected some code formatting issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10704
diff changeset
759 if FileSystemUtilities.isPlainFileName(
a6094987c1be Corrected some code formatting issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10704
diff changeset
760 self.project.getProjectPath()
a6094987c1be Corrected some code formatting issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10704
diff changeset
761 ) and self.project.getProjectType() in [
a6094987c1be Corrected some code formatting issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10704
diff changeset
762 "PyQt5",
a6094987c1be Corrected some code formatting issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10704
diff changeset
763 "PyQt5C",
a6094987c1be Corrected some code formatting issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10704
diff changeset
764 "PyQt6",
a6094987c1be Corrected some code formatting issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10704
diff changeset
765 "PyQt6C",
a6094987c1be Corrected some code formatting issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10704
diff changeset
766 "E7Plugin",
a6094987c1be Corrected some code formatting issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10704
diff changeset
767 "PySide6",
a6094987c1be Corrected some code formatting issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10704
diff changeset
768 "PySide6C",
a6094987c1be Corrected some code formatting issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10704
diff changeset
769 ]:
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
770 if self.pylupdateProcRunning:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
771 for act in self.tsprocDirMenuActions:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
772 act.setEnabled(False)
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
773 if self.lreleaseProcRunning:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
774 for act in self.qmprocDirMenuActions:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
775 act.setEnabled(True)
2995
63d874899b8b Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2965
diff changeset
776 self.__addTranslationDirAct.setEnabled(
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
777 self.project.getTranslationPattern() != ""
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
778 )
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
779
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
780 ProjectBaseBrowser._showContextMenuDir(self, self.dirMenu)
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
781
500
c3abc7895a01 Continued porting signal/slot usage to the new API.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 476
diff changeset
782 self.showMenu.emit("MainDir", self.dirMenu)
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
783
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
784 def __showContextMenuBack(self):
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
785 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
786 Private slot called by the backMenu aboutToShow signal.
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
787 """
10708
a6094987c1be Corrected some code formatting issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10704
diff changeset
788 if FileSystemUtilities.isPlainFileName(
a6094987c1be Corrected some code formatting issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10704
diff changeset
789 self.project.getProjectPath()
a6094987c1be Corrected some code formatting issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10704
diff changeset
790 ) and self.project.getProjectType() in [
a6094987c1be Corrected some code formatting issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10704
diff changeset
791 "PyQt5",
a6094987c1be Corrected some code formatting issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10704
diff changeset
792 "PyQt5C",
a6094987c1be Corrected some code formatting issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10704
diff changeset
793 "PyQt6",
a6094987c1be Corrected some code formatting issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10704
diff changeset
794 "PyQt6C",
a6094987c1be Corrected some code formatting issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10704
diff changeset
795 "E7Plugin",
a6094987c1be Corrected some code formatting issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10704
diff changeset
796 "PySide6",
a6094987c1be Corrected some code formatting issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10704
diff changeset
797 "PySide6C",
a6094987c1be Corrected some code formatting issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10704
diff changeset
798 ]:
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
799 if self.pylupdateProcRunning:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
800 for act in self.tsprocBackMenuActions:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
801 act.setEnabled(False)
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
802 if self.lreleaseProcRunning:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
803 for act in self.qmprocBackMenuActions:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
804 act.setEnabled(True)
1003
b81a77ac656a Fixed an inconvenience in the project and project translations viewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 949
diff changeset
805 self.__addTranslationBackAct.setEnabled(
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
806 self.project.getTranslationPattern() != ""
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
807 )
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
808
500
c3abc7895a01 Continued porting signal/slot usage to the new API.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 476
diff changeset
809 self.showMenu.emit("MainBack", self.backMenu)
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
810
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
811 def __addTranslationFiles(self):
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
812 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
813 Private method to add translation files to the project.
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
814 """
10256
1b728f26d1ae Project Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10242
diff changeset
815 self.project.addFiles("TRANSLATIONS", self.currentDirectory())
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
816
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
817 def _openItem(self):
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
818 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
819 Protected slot to handle the open popup menu entry.
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
820 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
821 itmList = self.getSelectedItems()
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
822 for itm in itmList:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
823 if isinstance(itm, ProjectBrowserFileItem):
2722
1c5df42d94bf Added a plug-in hooks for the 'open' action to the project forms and translations viewers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2615
diff changeset
824 # hook support
1c5df42d94bf Added a plug-in hooks for the 'open' action to the project forms and translations viewers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2615
diff changeset
825 if self.hooks["open"] is not None:
1c5df42d94bf Added a plug-in hooks for the 'open' action to the project forms and translations viewers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2615
diff changeset
826 self.hooks["open"](itm.fileName())
10708
a6094987c1be Corrected some code formatting issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10704
diff changeset
827 elif itm.isLinguistFile() and FileSystemUtilities.isPlainFileName(
a6094987c1be Corrected some code formatting issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10704
diff changeset
828 itm.fileName()
10635
dcec2e0c0036 Adapted the project forms, translations and resources browser with respect to 'eric-ide' server projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
829 ):
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
830 if itm.fileExt() == ".ts":
500
c3abc7895a01 Continued porting signal/slot usage to the new API.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 476
diff changeset
831 self.linguistFile.emit(itm.fileName())
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
832 else:
500
c3abc7895a01 Continued porting signal/slot usage to the new API.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 476
diff changeset
833 self.trpreview.emit([itm.fileName()])
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
834 else:
476
121633976eca Continued porting signal/slot usage to the new API.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 470
diff changeset
835 self.sourceFile.emit(itm.fileName())
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
836
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
837 def __openFileInEditor(self):
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
838 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
839 Private slot to handle the Open in Editor menu action.
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
840 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
841 itmList = self.getSelectedItems()
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
842 for itm in itmList[:]:
476
121633976eca Continued porting signal/slot usage to the new API.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 470
diff changeset
843 self.sourceFile.emit(itm.fileName())
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
844
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
845 def __removeLanguageFile(self):
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
846 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
847 Private method to remove a translation from the project.
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
848 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
849 itmList = self.getSelectedItems()
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
850
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
851 for itm in itmList[:]:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
852 fn = itm.fileName()
500
c3abc7895a01 Continued porting signal/slot usage to the new API.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 476
diff changeset
853 self.closeSourceWindow.emit(fn)
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
854 self.project.removeLanguageFile(fn)
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
855
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
856 def __deleteLanguageFile(self):
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
857 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
858 Private method to delete a translation file from the project.
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
859 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
860 itmList = self.getSelectedItems()
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
861
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
862 translationFiles = [itm.fileName() for itm in itmList]
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
863
3030
4a0a82ddd9d2 Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3029
diff changeset
864 dlg = DeleteFilesConfirmationDialog(
4a0a82ddd9d2 Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3029
diff changeset
865 self.parent(),
3190
a9a94491c4fd Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3160
diff changeset
866 self.tr("Delete translation files"),
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
867 self.tr(
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
868 "Do you really want to delete these translation files"
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
869 " from the project?"
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
870 ),
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
871 translationFiles,
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
872 )
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
873
8143
2c730d5fd177 Changed the use of PyQt enums because the way they were used previously is deprecated since two years and replaced some deprecated Qt stuff.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8001
diff changeset
874 if dlg.exec() == QDialog.DialogCode.Accepted:
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
875 for fn in translationFiles:
500
c3abc7895a01 Continued porting signal/slot usage to the new API.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 476
diff changeset
876 self.closeSourceWindow.emit(fn)
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
877 self.project.deleteLanguageFile(fn)
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
878
945
8cd4d08fa9f6 Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 791
diff changeset
879 def __TRPreview(self, previewAll=False):
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
880 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
881 Private slot to handle the Preview translations action.
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
882
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
883 @param previewAll flag indicating, that all translations
10430
e440aaf179ce Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10398
diff changeset
884 should be previewed
e440aaf179ce Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10398
diff changeset
885 @type bool
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
886 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
887 fileNames = []
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
888 itmList = self.getSelectedItems()
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
889 if itmList and not previewAll:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
890 for itm in itmList:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
891 if isinstance(itm, ProjectBrowserSimpleDirectoryItem):
248
f4561c24989a Changed code to better deal with project relative paths on Windows systems.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 245
diff changeset
892 dname = self.project.getRelativePath(itm.dirName())
9514
2b104ad132a4 Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9512
diff changeset
893 trfiles = sorted(
2b104ad132a4 Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9512
diff changeset
894 self.project.getProjectData(dataKey="TRANSLATIONS")[:]
2b104ad132a4 Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9512
diff changeset
895 )
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
896 for trfile in trfiles:
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
897 if trfile.startswith(dname) and trfile not in fileNames:
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
898 fileNames.append(os.path.join(self.project.ppath, trfile))
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
899 else:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
900 fn = itm.fileName()
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
901 if fn not in fileNames:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
902 fileNames.append(os.path.join(self.project.ppath, fn))
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
903 else:
9514
2b104ad132a4 Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9512
diff changeset
904 trfiles = sorted(self.project.getProjectData(dataKey="TRANSLATIONS")[:])
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
905 fileNames.extend(
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
906 [
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
907 os.path.join(self.project.ppath, trfile)
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
908 for trfile in trfiles
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
909 if trfile.endswith(".qm")
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
910 ]
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
911 )
500
c3abc7895a01 Continued porting signal/slot usage to the new API.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 476
diff changeset
912 self.trpreview[list, bool].emit(fileNames, True)
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
913
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
914 def __TRPreviewAll(self):
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
915 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
916 Private slot to handle the Preview all translations action.
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
917 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
918 self.__TRPreview(True)
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
919
2995
63d874899b8b Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2965
diff changeset
920 ###########################################################################
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
921 ## Methods to support the generation and release commands
2995
63d874899b8b Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2965
diff changeset
922 ###########################################################################
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
923
5599
033967644b1f Continued fixing code style issues detected by the extended style checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
924 def __writeTempProjectFile(self, langs, filterList):
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
925 """
2995
63d874899b8b Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2965
diff changeset
926 Private method to write a temporary project file suitable for
63d874899b8b Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2965
diff changeset
927 pylupdate and lrelease.
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
928
2995
63d874899b8b Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2965
diff changeset
929 @param langs list of languages to include in the process. An empty
63d874899b8b Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2965
diff changeset
930 list (default) means that all translations should be included.
10430
e440aaf179ce Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10398
diff changeset
931 @type list of ProjectBrowserFileItem
5599
033967644b1f Continued fixing code style issues detected by the extended style checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
932 @param filterList list of source file extension that should be
10430
e440aaf179ce Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10398
diff changeset
933 considered
e440aaf179ce Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10398
diff changeset
934 @type list of str
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
935 @return flag indicating success
10430
e440aaf179ce Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10398
diff changeset
936 @rtype bool
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
937 """
10692
9becf9ca115c Changed the source code and the source code documentation to improve the indication of unused method/function arguments.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
938 path, _ext = os.path.splitext(self.project.pfile)
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
939 pfile = "{0}_e4x.pro".format(path)
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
940
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
941 # only consider files satisfying the filter criteria
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
942 _sources = [
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
943 s
9514
2b104ad132a4 Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9512
diff changeset
944 for s in self.project.getProjectData(dataKey="SOURCES")
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
945 if os.path.splitext(s)[1] in filterList
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
946 ]
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
947 sources = []
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
948 for s in _sources:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
949 addIt = True
9514
2b104ad132a4 Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9512
diff changeset
950 for transExcept in self.project.getProjectData(
2b104ad132a4 Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9512
diff changeset
951 dataKey="TRANSLATIONEXCEPTIONS"
2b104ad132a4 Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9512
diff changeset
952 ):
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
953 if s.startswith(transExcept):
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
954 addIt = False
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
955 break
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
956 if addIt:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
957 sources.append(s)
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
958
9514
2b104ad132a4 Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9512
diff changeset
959 _forms = [
2b104ad132a4 Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9512
diff changeset
960 f for f in self.project.getProjectData(dataKey="FORMS") if f.endswith(".ui")
2b104ad132a4 Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9512
diff changeset
961 ]
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
962 forms = []
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
963 for f in _forms:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
964 addIt = True
9514
2b104ad132a4 Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9512
diff changeset
965 for transExcept in self.project.getProjectData(
2b104ad132a4 Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9512
diff changeset
966 dataKey="TRANSLATIONEXCEPTIONS"
2b104ad132a4 Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9512
diff changeset
967 ):
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
968 if f.startswith(transExcept):
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
969 addIt = False
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
970 break
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
971 if addIt:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
972 forms.append(f)
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
973
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
974 if langs:
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
975 langs = [
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
976 self.project.getRelativePath(lang.fileName())
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
977 for lang in langs
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
978 if lang.fileName().endswith(".ts")
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
979 ]
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
980 else:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
981 try:
9514
2b104ad132a4 Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9512
diff changeset
982 pattern = self.project.getProjectData(
2b104ad132a4 Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9512
diff changeset
983 dataKey="TRANSLATIONPATTERN"
2b104ad132a4 Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9512
diff changeset
984 ).replace("%language%", "*")
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
985 langs = [
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
986 lang
9514
2b104ad132a4 Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9512
diff changeset
987 for lang in self.project.getProjectData(dataKey="TRANSLATIONS")
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
988 if fnmatch.fnmatch(lang, pattern)
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
989 ]
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
990 except IndexError:
2785
06c9e4d45f9f Changed the way pylupdate is invoked in order to allow Qt Linguits to find the source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2771
diff changeset
991 langs = []
06c9e4d45f9f Changed the way pylupdate is invoked in order to allow Qt Linguits to find the source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2771
diff changeset
992 if not langs:
8356
68ec9c3d4de5 Renamed the modules and classes of the E5Gui package to have the prefix 'Eric' instead of 'E5'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8336
diff changeset
993 EricMessageBox.warning(
3020
542e97d4ecb3 Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3010
diff changeset
994 self,
3190
a9a94491c4fd Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3160
diff changeset
995 self.tr("Write temporary project file"),
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
996 self.tr("""No translation files (*.ts) selected."""),
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
997 )
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
998 return False
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
999
2785
06c9e4d45f9f Changed the way pylupdate is invoked in order to allow Qt Linguits to find the source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2771
diff changeset
1000 # create a prefix relative from the *.ts down to the project path
06c9e4d45f9f Changed the way pylupdate is invoked in order to allow Qt Linguits to find the source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2771
diff changeset
1001 langLevel = {}
06c9e4d45f9f Changed the way pylupdate is invoked in order to allow Qt Linguits to find the source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2771
diff changeset
1002 for lang in langs:
06c9e4d45f9f Changed the way pylupdate is invoked in order to allow Qt Linguits to find the source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2771
diff changeset
1003 level = lang.count(os.sep)
06c9e4d45f9f Changed the way pylupdate is invoked in order to allow Qt Linguits to find the source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2771
diff changeset
1004 lst = langLevel.get(level, [])
06c9e4d45f9f Changed the way pylupdate is invoked in order to allow Qt Linguits to find the source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2771
diff changeset
1005 lst.append(lang)
06c9e4d45f9f Changed the way pylupdate is invoked in order to allow Qt Linguits to find the source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2771
diff changeset
1006 langLevel[level] = lst
06c9e4d45f9f Changed the way pylupdate is invoked in order to allow Qt Linguits to find the source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2771
diff changeset
1007
06c9e4d45f9f Changed the way pylupdate is invoked in order to allow Qt Linguits to find the source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2771
diff changeset
1008 for level, langs in langLevel.items():
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1009 prefix = "../" * level
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1010 sections = [("SOURCES", [prefix + src for src in sources])]
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1011 sections.append(("FORMS", [prefix + form for form in forms]))
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1012 sections.append(("TRANSLATIONS", [prefix + lang for lang in langs]))
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1013
5599
033967644b1f Continued fixing code style issues detected by the extended style checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
1014 directory, name = os.path.split(pfile)
033967644b1f Continued fixing code style issues detected by the extended style checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
1015 outFile = os.path.join(directory, os.path.dirname(langs[0]), name)
4284
d61eba7a3b58 Fixed an issue creating translation files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4249
diff changeset
1016 outDir = os.path.dirname(outFile)
d61eba7a3b58 Fixed an issue creating translation files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4249
diff changeset
1017 if not os.path.exists(outDir):
d61eba7a3b58 Fixed an issue creating translation files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4249
diff changeset
1018 os.makedirs(outDir)
2785
06c9e4d45f9f Changed the way pylupdate is invoked in order to allow Qt Linguits to find the source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2771
diff changeset
1019 try:
7785
9978016560ec Changed code to use context manager 'open()' for file operations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7780
diff changeset
1020 with open(outFile, "w", encoding="utf-8") as pf:
9978016560ec Changed code to use context manager 'open()' for file operations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7780
diff changeset
1021 for key, fileList in sections:
9978016560ec Changed code to use context manager 'open()' for file operations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7780
diff changeset
1022 if len(fileList) > 0:
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1023 pf.write("{0} = ".format(key))
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1024 pf.write(
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1025 " \\\n\t".join(
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1026 [f.replace(os.sep, "/") for f in fileList]
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1027 )
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1028 )
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1029 pf.write("\n\n")
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1030
2785
06c9e4d45f9f Changed the way pylupdate is invoked in order to allow Qt Linguits to find the source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2771
diff changeset
1031 self.__tmpProjects.append(outFile)
7836
2f0d208b8137 Changed code to not use the OSError aliases (IOError, EnvironmentError, socket.error and select.error) anymore.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7785
diff changeset
1032 except OSError:
8356
68ec9c3d4de5 Renamed the modules and classes of the E5Gui package to have the prefix 'Eric' instead of 'E5'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8336
diff changeset
1033 EricMessageBox.critical(
3020
542e97d4ecb3 Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3010
diff changeset
1034 self,
3190
a9a94491c4fd Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3160
diff changeset
1035 self.tr("Write temporary project file"),
a9a94491c4fd Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3160
diff changeset
1036 self.tr(
2995
63d874899b8b Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2965
diff changeset
1037 "<p>The temporary project file <b>{0}</b> could not"
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1038 " be written.</p>"
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1039 ).format(outFile),
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1040 )
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1041
2785
06c9e4d45f9f Changed the way pylupdate is invoked in order to allow Qt Linguits to find the source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2771
diff changeset
1042 if len(self.__tmpProjects) == 0:
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1043 return False
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1044
2785
06c9e4d45f9f Changed the way pylupdate is invoked in order to allow Qt Linguits to find the source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2771
diff changeset
1045 return True
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1046
6116
f3d3c996c193 Continued removing the use of QObject.sender().
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6048
diff changeset
1047 def __readStdoutLupdate(self, proc):
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1048 """
945
8cd4d08fa9f6 Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 791
diff changeset
1049 Private slot to handle the readyReadStandardOutput signal of the
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1050 pylupdate process.
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1051
6116
f3d3c996c193 Continued removing the use of QObject.sender().
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6048
diff changeset
1052 @param proc reference to the process
f3d3c996c193 Continued removing the use of QObject.sender().
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6048
diff changeset
1053 @type QProcess
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1054 """
10231
3a82c1c47b57 Changed output related code of the project translations browser in order to keep process output together.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10158
diff changeset
1055 out = self.__readStdout(proc, "{0}: ".format(self.pylupdate))
3a82c1c47b57 Changed output related code of the project translations browser in order to keep process output together.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10158
diff changeset
1056 for index in range(len(self.__pylupdateProcesses)):
3a82c1c47b57 Changed output related code of the project translations browser in order to keep process output together.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10158
diff changeset
1057 if proc is self.__pylupdateProcesses[index][0]:
3a82c1c47b57 Changed output related code of the project translations browser in order to keep process output together.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10158
diff changeset
1058 self.__pylupdateProcesses[index][2].append(out)
3a82c1c47b57 Changed output related code of the project translations browser in order to keep process output together.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10158
diff changeset
1059 break
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1060
6116
f3d3c996c193 Continued removing the use of QObject.sender().
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6048
diff changeset
1061 def __readStdoutLrelease(self, proc):
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1062 """
945
8cd4d08fa9f6 Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 791
diff changeset
1063 Private slot to handle the readyReadStandardOutput signal of the
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1064 lrelease process.
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1065
6116
f3d3c996c193 Continued removing the use of QObject.sender().
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6048
diff changeset
1066 @param proc reference to the process
f3d3c996c193 Continued removing the use of QObject.sender().
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6048
diff changeset
1067 @type QProcess
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1068 """
10231
3a82c1c47b57 Changed output related code of the project translations browser in order to keep process output together.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10158
diff changeset
1069 out = self.__readStdout(proc, "lrelease: ")
3a82c1c47b57 Changed output related code of the project translations browser in order to keep process output together.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10158
diff changeset
1070 for index in range(len(self.__lreleaseProcesses)):
3a82c1c47b57 Changed output related code of the project translations browser in order to keep process output together.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10158
diff changeset
1071 if proc is self.__lreleaseProcesses[index][0]:
3a82c1c47b57 Changed output related code of the project translations browser in order to keep process output together.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10158
diff changeset
1072 self.__lreleaseProcesses[index][1].append(out)
3a82c1c47b57 Changed output related code of the project translations browser in order to keep process output together.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10158
diff changeset
1073 break
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1074
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1075 def __readStdout(self, proc, ps):
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1076 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1077 Private method to read from a process' stdout channel.
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1078
10231
3a82c1c47b57 Changed output related code of the project translations browser in order to keep process output together.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10158
diff changeset
1079 @param proc process to read from
3a82c1c47b57 Changed output related code of the project translations browser in order to keep process output together.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10158
diff changeset
1080 @type QProcess
3a82c1c47b57 Changed output related code of the project translations browser in order to keep process output together.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10158
diff changeset
1081 @param ps prompt string
3a82c1c47b57 Changed output related code of the project translations browser in order to keep process output together.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10158
diff changeset
1082 @type str
3a82c1c47b57 Changed output related code of the project translations browser in order to keep process output together.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10158
diff changeset
1083 @return string read from the process
3a82c1c47b57 Changed output related code of the project translations browser in order to keep process output together.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10158
diff changeset
1084 @rtype str
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1085 """
12
1d8dd9706f46 First commit after changing to Python 3.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
1086 ioEncoding = Preferences.getSystem("IOEncoding")
10231
3a82c1c47b57 Changed output related code of the project translations browser in order to keep process output together.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10158
diff changeset
1087 out = ""
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1088
8143
2c730d5fd177 Changed the use of PyQt enums because the way they were used previously is deprecated since two years and replaced some deprecated Qt stuff.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8001
diff changeset
1089 proc.setReadChannel(QProcess.ProcessChannel.StandardOutput)
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1090 while proc and proc.canReadLine():
10231
3a82c1c47b57 Changed output related code of the project translations browser in order to keep process output together.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10158
diff changeset
1091 out += ps
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1092 output = str(proc.readLine(), ioEncoding, "replace")
10231
3a82c1c47b57 Changed output related code of the project translations browser in order to keep process output together.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10158
diff changeset
1093 out += output
3a82c1c47b57 Changed output related code of the project translations browser in order to keep process output together.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10158
diff changeset
1094
3a82c1c47b57 Changed output related code of the project translations browser in order to keep process output together.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10158
diff changeset
1095 return out
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1096
6116
f3d3c996c193 Continued removing the use of QObject.sender().
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6048
diff changeset
1097 def __readStderrLupdate(self, proc):
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1098 """
945
8cd4d08fa9f6 Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 791
diff changeset
1099 Private slot to handle the readyReadStandardError signal of the
11216
a1471981ef18 Project
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 11090
diff changeset
1100 pylupdate5 / pylupdate6 / pyside6-lupdate process.
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1101
6116
f3d3c996c193 Continued removing the use of QObject.sender().
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6048
diff changeset
1102 @param proc reference to the process
f3d3c996c193 Continued removing the use of QObject.sender().
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6048
diff changeset
1103 @type QProcess
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1104 """
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1105 self.__readStderr(proc, "{0}: ".format(self.pylupdate))
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1106
6116
f3d3c996c193 Continued removing the use of QObject.sender().
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6048
diff changeset
1107 def __readStderrLrelease(self, proc):
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1108 """
945
8cd4d08fa9f6 Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 791
diff changeset
1109 Private slot to handle the readyReadStandardError signal of the
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1110 lrelease process.
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1111
6116
f3d3c996c193 Continued removing the use of QObject.sender().
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6048
diff changeset
1112 @param proc reference to the process
f3d3c996c193 Continued removing the use of QObject.sender().
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6048
diff changeset
1113 @type QProcess
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1114 """
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1115 self.__readStderr(proc, "lrelease: ")
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1116
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1117 def __readStderr(self, proc, ps):
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1118 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1119 Private method to read from a process' stderr channel.
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1120
10430
e440aaf179ce Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10398
diff changeset
1121 @param proc process to read from
e440aaf179ce Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10398
diff changeset
1122 @type QProcess
e440aaf179ce Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10398
diff changeset
1123 @param ps propmt string
e440aaf179ce Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10398
diff changeset
1124 @type str
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1125 """
12
1d8dd9706f46 First commit after changing to Python 3.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
1126 ioEncoding = Preferences.getSystem("IOEncoding")
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1127
8143
2c730d5fd177 Changed the use of PyQt enums because the way they were used previously is deprecated since two years and replaced some deprecated Qt stuff.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8001
diff changeset
1128 proc.setReadChannel(QProcess.ProcessChannel.StandardError)
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1129 while proc and proc.canReadLine():
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1130 s = ps
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1131 error = str(proc.readLine(), ioEncoding, "replace")
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1132 s += error
500
c3abc7895a01 Continued porting signal/slot usage to the new API.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 476
diff changeset
1133 self.appendStderr.emit(s)
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1134
2995
63d874899b8b Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2965
diff changeset
1135 ###########################################################################
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1136 ## Methods for the generation commands
2995
63d874899b8b Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2965
diff changeset
1137 ###########################################################################
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1138
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1139 def __extractMessages(self):
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1140 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1141 Private slot to extract the messages to form a messages template file.
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1142 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1143 if self.hooks["extractMessages"] is not None:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1144 self.hooks["extractMessages"]()
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1145
7938
1d3a2a0dac22 ProjectTranslationsBrowser: fixed some 'lambda' related issues by converting them to 'functools.partial'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7923
diff changeset
1146 def __generateTSFileDone(self, proc, exitCode, exitStatus):
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1147 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1148 Private slot to handle the finished signal of the pylupdate process.
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1149
7938
1d3a2a0dac22 ProjectTranslationsBrowser: fixed some 'lambda' related issues by converting them to 'functools.partial'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7923
diff changeset
1150 @param proc reference to the process
1d3a2a0dac22 ProjectTranslationsBrowser: fixed some 'lambda' related issues by converting them to 'functools.partial'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7923
diff changeset
1151 @type QProcess
6116
f3d3c996c193 Continued removing the use of QObject.sender().
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6048
diff changeset
1152 @param exitCode exit code of the process
f3d3c996c193 Continued removing the use of QObject.sender().
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6048
diff changeset
1153 @type int
f3d3c996c193 Continued removing the use of QObject.sender().
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6048
diff changeset
1154 @param exitStatus exit status of the process
f3d3c996c193 Continued removing the use of QObject.sender().
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6048
diff changeset
1155 @type QProcess.ExitStatus
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1156 """
8356
68ec9c3d4de5 Renamed the modules and classes of the E5Gui package to have the prefix 'Eric' instead of 'E5'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8336
diff changeset
1157 ui = ericApp().getObject("UserInterface")
8143
2c730d5fd177 Changed the use of PyQt enums because the way they were used previously is deprecated since two years and replaced some deprecated Qt stuff.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8001
diff changeset
1158 if exitStatus == QProcess.ExitStatus.NormalExit and exitCode == 0:
7955
567f2ec958c3 Changed code to always use the reworked notification system.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7938
diff changeset
1159 ui.showNotification(
9413
80c06d472826 Changed the eric7 import statements to include the package name (i.e. eric7) in order to not fiddle with sys.path.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
1160 EricPixmapCache.getPixmap("linguist48"),
7955
567f2ec958c3 Changed code to always use the reworked notification system.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7938
diff changeset
1161 self.tr("Translation file generation"),
567f2ec958c3 Changed code to always use the reworked notification system.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7938
diff changeset
1162 self.tr(
9576
be9f8e7e42e0 Corrected some 'wrong' string quotes caused by the Black line merging.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9531
diff changeset
1163 "The generation of the translation files (*.ts) was successful."
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1164 ),
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1165 )
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1166 else:
8143
2c730d5fd177 Changed the use of PyQt enums because the way they were used previously is deprecated since two years and replaced some deprecated Qt stuff.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8001
diff changeset
1167 if exitStatus == QProcess.ExitStatus.CrashExit:
3320
144159e0d032 Extended the pylupdate error message in the project translations browser to indicate a crash.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3190
diff changeset
1168 info = self.tr(" The process has crashed.")
144159e0d032 Extended the pylupdate error message in the project translations browser to indicate a crash.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3190
diff changeset
1169 else:
144159e0d032 Extended the pylupdate error message in the project translations browser to indicate a crash.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3190
diff changeset
1170 info = ""
7955
567f2ec958c3 Changed code to always use the reworked notification system.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7938
diff changeset
1171 ui.showNotification(
9413
80c06d472826 Changed the eric7 import statements to include the package name (i.e. eric7) in order to not fiddle with sys.path.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
1172 EricPixmapCache.getPixmap("linguist48"),
3190
a9a94491c4fd Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3160
diff changeset
1173 self.tr("Translation file generation"),
a9a94491c4fd Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3160
diff changeset
1174 self.tr(
9576
be9f8e7e42e0 Corrected some 'wrong' string quotes caused by the Black line merging.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9531
diff changeset
1175 "The generation of the translation files (*.ts) has failed.{0}"
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1176 ).format(info),
8265
0090cfa83159 Converted enum names to use all uppercase letters (except for E5PathPickerModes to keep plug-ins using this compatible with previous eric releases).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8243
diff changeset
1177 kind=NotificationTypes.CRITICAL,
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1178 timeout=0,
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1179 )
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1180
2785
06c9e4d45f9f Changed the way pylupdate is invoked in order to allow Qt Linguits to find the source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2771
diff changeset
1181 for index in range(len(self.__pylupdateProcesses)):
10231
3a82c1c47b57 Changed output related code of the project translations browser in order to keep process output together.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10158
diff changeset
1182 if proc is self.__pylupdateProcesses[index][0]:
10239
63fe209a1e71 Corrected an issue in the project translations browser handling the finish of a translation update process.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10231
diff changeset
1183 processData = self.__pylupdateProcesses[index]
63fe209a1e71 Corrected an issue in the project translations browser handling the finish of a translation update process.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10231
diff changeset
1184 tmpProjectFile = processData[1]
7907
7991ea245c20 Added support for PyQt6.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7836
diff changeset
1185 if tmpProjectFile:
8243
cc717c2ae956 Applied some more code simplifications suggested by the new Simplify checker (Y105: use contextlib.suppress) (batch 2).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8235
diff changeset
1186 with contextlib.suppress(OSError):
7907
7991ea245c20 Added support for PyQt6.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7836
diff changeset
1187 self.__tmpProjects.remove(tmpProjectFile)
7991ea245c20 Added support for PyQt6.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7836
diff changeset
1188 os.remove(tmpProjectFile)
10231
3a82c1c47b57 Changed output related code of the project translations browser in order to keep process output together.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10158
diff changeset
1189
10239
63fe209a1e71 Corrected an issue in the project translations browser handling the finish of a translation update process.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10231
diff changeset
1190 if processData[2]:
63fe209a1e71 Corrected an issue in the project translations browser handling the finish of a translation update process.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10231
diff changeset
1191 self.appendStdout.emit("".join(processData[2]))
10231
3a82c1c47b57 Changed output related code of the project translations browser in order to keep process output together.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10158
diff changeset
1192
10239
63fe209a1e71 Corrected an issue in the project translations browser handling the finish of a translation update process.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10231
diff changeset
1193 self.__pylupdateProcesses.remove(processData)
2785
06c9e4d45f9f Changed the way pylupdate is invoked in order to allow Qt Linguits to find the source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2771
diff changeset
1194 break
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1195
2785
06c9e4d45f9f Changed the way pylupdate is invoked in order to allow Qt Linguits to find the source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2771
diff changeset
1196 if not self.__pylupdateProcesses:
06c9e4d45f9f Changed the way pylupdate is invoked in order to allow Qt Linguits to find the source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2771
diff changeset
1197 # all done
06c9e4d45f9f Changed the way pylupdate is invoked in order to allow Qt Linguits to find the source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2771
diff changeset
1198 self.pylupdateProcRunning = False
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1199
8368
ee14e64c2eeb ProjectTranslationsBrowser: added a Waiting Cursor to indicated that the pylupdate6 processes are working.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8358
diff changeset
1200 QGuiApplication.restoreOverrideCursor()
ee14e64c2eeb ProjectTranslationsBrowser: added a Waiting Cursor to indicated that the pylupdate6 processes are working.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8358
diff changeset
1201 QGuiApplication.processEvents(
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1202 QEventLoop.ProcessEventsFlag.ExcludeUserInputEvents
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1203 )
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1204
945
8cd4d08fa9f6 Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 791
diff changeset
1205 def __generateTSFile(self, noobsolete=False, generateAll=True):
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1206 """
11216
a1471981ef18 Project
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 11090
diff changeset
1207 Private method used to run pylupdate5 / pylupdate6 / pyside6-lupdate to generate
a1471981ef18 Project
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 11090
diff changeset
1208 the .ts files.
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1209
945
8cd4d08fa9f6 Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 791
diff changeset
1210 @param noobsolete flag indicating whether obsolete entries should be
10430
e440aaf179ce Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10398
diff changeset
1211 kept
e440aaf179ce Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10398
diff changeset
1212 @type bool
945
8cd4d08fa9f6 Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 791
diff changeset
1213 @param generateAll flag indicating whether all translations should be
10430
e440aaf179ce Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10398
diff changeset
1214 generated
e440aaf179ce Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10398
diff changeset
1215 @type bool
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1216 """
8235
78e6d29eb773 Applied some more code simplifications suggested by the new Simplify checker (Y108: use ternary operator) (batch 3).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8228
diff changeset
1217 langs = [] if generateAll else self.getSelectedItems()
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1218
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1219 # Hook support
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1220 if generateAll:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1221 if noobsolete:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1222 if self.hooks["generateAll"] is not None:
9514
2b104ad132a4 Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9512
diff changeset
1223 self.hooks["generateAll"](
2b104ad132a4 Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9512
diff changeset
1224 self.project.getProjectData(dataKey="TRANSLATIONS")
2b104ad132a4 Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9512
diff changeset
1225 )
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1226 return
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1227 else:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1228 if self.hooks["generateAllWithObsolete"] is not None:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1229 self.hooks["generateAllWithObsolete"](
9514
2b104ad132a4 Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9512
diff changeset
1230 self.project.getProjectData(dataKey="TRANSLATIONS")
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1231 )
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1232 return
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1233 else:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1234 if noobsolete:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1235 if self.hooks["generateSelected"] is not None:
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1236 li = [
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1237 self.project.getRelativePath(lang.fileName()) for lang in langs
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1238 ]
3034
7ce719013078 Fixed various coding style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3030
diff changeset
1239 self.hooks["generateSelected"](li)
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1240 return
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1241 else:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1242 if self.hooks["generateSelectedWithObsolete"] is not None:
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1243 li = [
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1244 self.project.getRelativePath(lang.fileName()) for lang in langs
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1245 ]
3034
7ce719013078 Fixed various coding style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3030
diff changeset
1246 self.hooks["generateSelectedWithObsolete"](li)
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1247 return
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1248
9985
4098449deed5 Removed some ruby related code paths as that is not supported for Qt5 and Qt6.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9653
diff changeset
1249 if self.project.getProjectLanguage() not in ["Python", "Python3"]:
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1250 return
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1251
8336
d566c2970f39 Changed the E6Plugin project type to E7Plugin.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8318
diff changeset
1252 if self.project.getProjectType() in ["PyQt5", "PyQt5C"]:
9624
b47dfa7a137d Refactored the Utilities and Globals modules in order to enhance the maintainability.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9576
diff changeset
1253 self.pylupdate = QtUtilities.generatePyQtToolPath("pylupdate5")
8336
d566c2970f39 Changed the E6Plugin project type to E7Plugin.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8318
diff changeset
1254 elif self.project.getProjectType() in ["PyQt6", "PyQt6C", "E7Plugin"]:
9624
b47dfa7a137d Refactored the Utilities and Globals modules in order to enhance the maintainability.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9576
diff changeset
1255 self.pylupdate = QtUtilities.generatePyQtToolPath("pylupdate6")
7911
4621c9082a43 Added support for PySide6.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7907
diff changeset
1256 elif self.project.getProjectType() in ["PySide6", "PySide6C"]:
9624
b47dfa7a137d Refactored the Utilities and Globals modules in order to enhance the maintainability.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9576
diff changeset
1257 self.pylupdate = QtUtilities.generatePySideToolPath(
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1258 "pyside6-lupdate", variant=6
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1259 )
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1260 else:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1261 return
2785
06c9e4d45f9f Changed the way pylupdate is invoked in order to allow Qt Linguits to find the source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2771
diff changeset
1262
06c9e4d45f9f Changed the way pylupdate is invoked in order to allow Qt Linguits to find the source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2771
diff changeset
1263 self.__pylupdateProcesses = []
8368
ee14e64c2eeb ProjectTranslationsBrowser: added a Waiting Cursor to indicated that the pylupdate6 processes are working.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8358
diff changeset
1264 if self.project.getProjectType() in ["PyQt6", "PyQt6C", "E7Plugin"]:
7907
7991ea245c20 Added support for PyQt6.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7836
diff changeset
1265 if langs:
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1266 langs = [
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1267 self.project.getRelativePath(lang.fileName())
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1268 for lang in langs
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1269 if lang.fileName().endswith(".ts")
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1270 ]
7907
7991ea245c20 Added support for PyQt6.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7836
diff changeset
1271 else:
7991ea245c20 Added support for PyQt6.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7836
diff changeset
1272 try:
9514
2b104ad132a4 Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9512
diff changeset
1273 pattern = self.project.getProjectData(
2b104ad132a4 Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9512
diff changeset
1274 dataKey="TRANSLATIONPATTERN"
2b104ad132a4 Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9512
diff changeset
1275 ).replace("%language%", "*")
7907
7991ea245c20 Added support for PyQt6.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7836
diff changeset
1276 langs = [
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1277 lang
9514
2b104ad132a4 Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9512
diff changeset
1278 for lang in self.project.getProjectData(dataKey="TRANSLATIONS")
7907
7991ea245c20 Added support for PyQt6.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7836
diff changeset
1279 if fnmatch.fnmatch(lang, pattern)
7991ea245c20 Added support for PyQt6.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7836
diff changeset
1280 ]
7991ea245c20 Added support for PyQt6.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7836
diff changeset
1281 except IndexError:
7991ea245c20 Added support for PyQt6.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7836
diff changeset
1282 langs = []
7991ea245c20 Added support for PyQt6.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7836
diff changeset
1283 if not langs:
8356
68ec9c3d4de5 Renamed the modules and classes of the E5Gui package to have the prefix 'Eric' instead of 'E5'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8336
diff changeset
1284 EricMessageBox.warning(
7907
7991ea245c20 Added support for PyQt6.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7836
diff changeset
1285 self,
8001
3b33b7d493ff Corrected a user visible string.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7959
diff changeset
1286 self.tr("Translation file generation"),
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1287 self.tr("""No translation files (*.ts) selected."""),
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1288 )
7907
7991ea245c20 Added support for PyQt6.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7836
diff changeset
1289 return
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1290
8383
c090300126df Project: added support for the '--exclude' option of pylupdate6.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8368
diff changeset
1291 excludePatterns = [
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1292 pat
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1293 for pat in self.project.getIgnorePatterns()
8383
c090300126df Project: added support for the '--exclude' option of pylupdate6.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8368
diff changeset
1294 if pat.endswith((".py", ".ui"))
c090300126df Project: added support for the '--exclude' option of pylupdate6.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8368
diff changeset
1295 ]
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1296
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1297 QGuiApplication.setOverrideCursor(QCursor(Qt.CursorShape.WaitCursor))
8368
ee14e64c2eeb ProjectTranslationsBrowser: added a Waiting Cursor to indicated that the pylupdate6 processes are working.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8358
diff changeset
1298 QGuiApplication.processEvents(
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1299 QEventLoop.ProcessEventsFlag.ExcludeUserInputEvents
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1300 )
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1301
7907
7991ea245c20 Added support for PyQt6.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7836
diff changeset
1302 for lang in langs:
7991ea245c20 Added support for PyQt6.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7836
diff changeset
1303 proc = QProcess()
7991ea245c20 Added support for PyQt6.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7836
diff changeset
1304 args = []
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1305
8383
c090300126df Project: added support for the '--exclude' option of pylupdate6.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8368
diff changeset
1306 for pattern in excludePatterns:
c090300126df Project: added support for the '--exclude' option of pylupdate6.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8368
diff changeset
1307 args += ["--exclude", pattern]
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1308
7907
7991ea245c20 Added support for PyQt6.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7836
diff changeset
1309 if noobsolete:
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1310 args.append("--no-obsolete")
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1311
7907
7991ea245c20 Added support for PyQt6.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7836
diff changeset
1312 args += ["--ts", lang]
9426
e2a52d98ad20 Project
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9413
diff changeset
1313
9514
2b104ad132a4 Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9512
diff changeset
1314 startPath = self.project.getProjectData(
2b104ad132a4 Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9512
diff changeset
1315 dataKey="TRANSLATIONSOURCESTARTPATH",
2b104ad132a4 Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9512
diff changeset
1316 default="",
2b104ad132a4 Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9512
diff changeset
1317 )
9426
e2a52d98ad20 Project
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9413
diff changeset
1318 args.append(startPath if bool(startPath) else ".")
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1319
7907
7991ea245c20 Added support for PyQt6.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7836
diff changeset
1320 proc.setWorkingDirectory(self.project.ppath)
7991ea245c20 Added support for PyQt6.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7836
diff changeset
1321 proc.finished.connect(
7938
1d3a2a0dac22 ProjectTranslationsBrowser: fixed some 'lambda' related issues by converting them to 'functools.partial'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7923
diff changeset
1322 functools.partial(self.__generateTSFileDone, proc)
1d3a2a0dac22 ProjectTranslationsBrowser: fixed some 'lambda' related issues by converting them to 'functools.partial'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7923
diff changeset
1323 )
7907
7991ea245c20 Added support for PyQt6.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7836
diff changeset
1324 proc.readyReadStandardOutput.connect(
7938
1d3a2a0dac22 ProjectTranslationsBrowser: fixed some 'lambda' related issues by converting them to 'functools.partial'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7923
diff changeset
1325 functools.partial(self.__readStdoutLupdate, proc)
1d3a2a0dac22 ProjectTranslationsBrowser: fixed some 'lambda' related issues by converting them to 'functools.partial'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7923
diff changeset
1326 )
7907
7991ea245c20 Added support for PyQt6.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7836
diff changeset
1327 proc.readyReadStandardError.connect(
7938
1d3a2a0dac22 ProjectTranslationsBrowser: fixed some 'lambda' related issues by converting them to 'functools.partial'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7923
diff changeset
1328 functools.partial(self.__readStderrLupdate, proc)
1d3a2a0dac22 ProjectTranslationsBrowser: fixed some 'lambda' related issues by converting them to 'functools.partial'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7923
diff changeset
1329 )
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1330
7907
7991ea245c20 Added support for PyQt6.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7836
diff changeset
1331 proc.start(self.pylupdate, args)
7991ea245c20 Added support for PyQt6.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7836
diff changeset
1332 procStarted = proc.waitForStarted()
7991ea245c20 Added support for PyQt6.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7836
diff changeset
1333 if procStarted:
7991ea245c20 Added support for PyQt6.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7836
diff changeset
1334 self.pylupdateProcRunning = True
10231
3a82c1c47b57 Changed output related code of the project translations browser in order to keep process output together.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10158
diff changeset
1335 self.__pylupdateProcesses.append((proc, "", []))
7907
7991ea245c20 Added support for PyQt6.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7836
diff changeset
1336 else:
8368
ee14e64c2eeb ProjectTranslationsBrowser: added a Waiting Cursor to indicated that the pylupdate6 processes are working.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8358
diff changeset
1337 with EricOverridenCursor():
ee14e64c2eeb ProjectTranslationsBrowser: added a Waiting Cursor to indicated that the pylupdate6 processes are working.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8358
diff changeset
1338 EricMessageBox.critical(
ee14e64c2eeb ProjectTranslationsBrowser: added a Waiting Cursor to indicated that the pylupdate6 processes are working.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8358
diff changeset
1339 self,
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1340 self.tr("Process Generation Error"),
8368
ee14e64c2eeb ProjectTranslationsBrowser: added a Waiting Cursor to indicated that the pylupdate6 processes are working.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8358
diff changeset
1341 self.tr(
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1342 "Could not start {0}.<br>"
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1343 "Ensure that it is in the search path."
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1344 ).format(self.pylupdate),
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1345 )
7907
7991ea245c20 Added support for PyQt6.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7836
diff changeset
1346 else:
9985
4098449deed5 Removed some ruby related code paths as that is not supported for Qt5 and Qt6.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9653
diff changeset
1347 # generate a minimal temporary project file suitable for pylupdate
4098449deed5 Removed some ruby related code paths as that is not supported for Qt5 and Qt6.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9653
diff changeset
1348 self.__tmpProjects = []
4098449deed5 Removed some ruby related code paths as that is not supported for Qt5 and Qt6.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9653
diff changeset
1349 ok = self.__writeTempProjectFile(langs, [".py"])
4098449deed5 Removed some ruby related code paths as that is not supported for Qt5 and Qt6.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9653
diff changeset
1350 if not ok:
4098449deed5 Removed some ruby related code paths as that is not supported for Qt5 and Qt6.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9653
diff changeset
1351 return
4098449deed5 Removed some ruby related code paths as that is not supported for Qt5 and Qt6.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9653
diff changeset
1352
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1353 QGuiApplication.setOverrideCursor(QCursor(Qt.CursorShape.WaitCursor))
8368
ee14e64c2eeb ProjectTranslationsBrowser: added a Waiting Cursor to indicated that the pylupdate6 processes are working.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8358
diff changeset
1354 QGuiApplication.processEvents(
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1355 QEventLoop.ProcessEventsFlag.ExcludeUserInputEvents
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1356 )
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1357
7907
7991ea245c20 Added support for PyQt6.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7836
diff changeset
1358 for tempProjectFile in self.__tmpProjects[:]:
7991ea245c20 Added support for PyQt6.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7836
diff changeset
1359 proc = QProcess()
7991ea245c20 Added support for PyQt6.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7836
diff changeset
1360 args = []
7991ea245c20 Added support for PyQt6.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7836
diff changeset
1361
7991ea245c20 Added support for PyQt6.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7836
diff changeset
1362 if noobsolete:
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1363 args.append("-noobsolete")
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1364
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1365 args.append("-verbose")
7907
7991ea245c20 Added support for PyQt6.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7836
diff changeset
1366 path, filename = os.path.split(tempProjectFile)
7991ea245c20 Added support for PyQt6.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7836
diff changeset
1367 args.append(filename)
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1368 proc.setWorkingDirectory(os.path.join(self.project.ppath, path))
7907
7991ea245c20 Added support for PyQt6.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7836
diff changeset
1369 proc.finished.connect(
7938
1d3a2a0dac22 ProjectTranslationsBrowser: fixed some 'lambda' related issues by converting them to 'functools.partial'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7923
diff changeset
1370 functools.partial(self.__generateTSFileDone, proc)
1d3a2a0dac22 ProjectTranslationsBrowser: fixed some 'lambda' related issues by converting them to 'functools.partial'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7923
diff changeset
1371 )
7907
7991ea245c20 Added support for PyQt6.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7836
diff changeset
1372 proc.readyReadStandardOutput.connect(
7938
1d3a2a0dac22 ProjectTranslationsBrowser: fixed some 'lambda' related issues by converting them to 'functools.partial'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7923
diff changeset
1373 functools.partial(self.__readStdoutLupdate, proc)
1d3a2a0dac22 ProjectTranslationsBrowser: fixed some 'lambda' related issues by converting them to 'functools.partial'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7923
diff changeset
1374 )
7907
7991ea245c20 Added support for PyQt6.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7836
diff changeset
1375 proc.readyReadStandardError.connect(
7938
1d3a2a0dac22 ProjectTranslationsBrowser: fixed some 'lambda' related issues by converting them to 'functools.partial'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7923
diff changeset
1376 functools.partial(self.__readStderrLupdate, proc)
1d3a2a0dac22 ProjectTranslationsBrowser: fixed some 'lambda' related issues by converting them to 'functools.partial'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7923
diff changeset
1377 )
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1378
7907
7991ea245c20 Added support for PyQt6.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7836
diff changeset
1379 proc.start(self.pylupdate, args)
7991ea245c20 Added support for PyQt6.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7836
diff changeset
1380 procStarted = proc.waitForStarted()
7991ea245c20 Added support for PyQt6.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7836
diff changeset
1381 if procStarted:
7991ea245c20 Added support for PyQt6.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7836
diff changeset
1382 self.pylupdateProcRunning = True
10231
3a82c1c47b57 Changed output related code of the project translations browser in order to keep process output together.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10158
diff changeset
1383 self.__pylupdateProcesses.append((proc, tempProjectFile, []))
7907
7991ea245c20 Added support for PyQt6.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7836
diff changeset
1384 else:
8368
ee14e64c2eeb ProjectTranslationsBrowser: added a Waiting Cursor to indicated that the pylupdate6 processes are working.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8358
diff changeset
1385 with EricOverridenCursor():
ee14e64c2eeb ProjectTranslationsBrowser: added a Waiting Cursor to indicated that the pylupdate6 processes are working.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8358
diff changeset
1386 EricMessageBox.critical(
ee14e64c2eeb ProjectTranslationsBrowser: added a Waiting Cursor to indicated that the pylupdate6 processes are working.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8358
diff changeset
1387 self,
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1388 self.tr("Process Generation Error"),
8368
ee14e64c2eeb ProjectTranslationsBrowser: added a Waiting Cursor to indicated that the pylupdate6 processes are working.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8358
diff changeset
1389 self.tr(
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1390 "Could not start {0}.<br>"
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1391 "Ensure that it is in the search path."
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1392 ).format(self.pylupdate),
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1393 )
7907
7991ea245c20 Added support for PyQt6.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7836
diff changeset
1394 # cleanup
8243
cc717c2ae956 Applied some more code simplifications suggested by the new Simplify checker (Y105: use contextlib.suppress) (batch 2).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8235
diff changeset
1395 with contextlib.suppress(OSError):
7907
7991ea245c20 Added support for PyQt6.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7836
diff changeset
1396 self.__tmpProjects.remove(tempProjectFile)
7991ea245c20 Added support for PyQt6.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7836
diff changeset
1397 os.remove(tempProjectFile)
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1398
8368
ee14e64c2eeb ProjectTranslationsBrowser: added a Waiting Cursor to indicated that the pylupdate6 processes are working.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8358
diff changeset
1399 if not self.__pylupdateProcesses:
ee14e64c2eeb ProjectTranslationsBrowser: added a Waiting Cursor to indicated that the pylupdate6 processes are working.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8358
diff changeset
1400 # no processes could be started, revert override cursor
ee14e64c2eeb ProjectTranslationsBrowser: added a Waiting Cursor to indicated that the pylupdate6 processes are working.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8358
diff changeset
1401 QGuiApplication.restoreOverrideCursor()
ee14e64c2eeb ProjectTranslationsBrowser: added a Waiting Cursor to indicated that the pylupdate6 processes are working.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8358
diff changeset
1402 QGuiApplication.processEvents(
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1403 QEventLoop.ProcessEventsFlag.ExcludeUserInputEvents
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1404 )
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1405
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1406 def __generateAll(self):
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1407 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1408 Private method to generate all translation files (.ts) for Qt Linguist.
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1409
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1410 All obsolete strings are removed from the .ts file.
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1411 """
945
8cd4d08fa9f6 Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 791
diff changeset
1412 self.__generateTSFile(noobsolete=True, generateAll=True)
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1413
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1414 def __generateObsoleteAll(self):
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1415 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1416 Private method to generate all translation files (.ts) for Qt Linguist.
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1417
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1418 Obsolete strings are kept.
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1419 """
945
8cd4d08fa9f6 Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 791
diff changeset
1420 self.__generateTSFile(noobsolete=False, generateAll=True)
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1421
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1422 def __generateSelected(self):
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1423 """
2995
63d874899b8b Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2965
diff changeset
1424 Private method to generate selected translation files (.ts) for
63d874899b8b Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2965
diff changeset
1425 Qt Linguist.
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1426
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1427 All obsolete strings are removed from the .ts file.
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1428 """
945
8cd4d08fa9f6 Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 791
diff changeset
1429 self.__generateTSFile(noobsolete=True, generateAll=False)
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1430
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1431 def __generateObsoleteSelected(self):
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1432 """
2995
63d874899b8b Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2965
diff changeset
1433 Private method to generate selected translation files (.ts) for
63d874899b8b Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2965
diff changeset
1434 Qt Linguist.
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1435
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1436 Obsolete strings are kept.
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1437 """
945
8cd4d08fa9f6 Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 791
diff changeset
1438 self.__generateTSFile(noobsolete=False, generateAll=False)
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1439
2995
63d874899b8b Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2965
diff changeset
1440 ###########################################################################
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1441 ## Methods for the release commands
2995
63d874899b8b Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2965
diff changeset
1442 ###########################################################################
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1443
7938
1d3a2a0dac22 ProjectTranslationsBrowser: fixed some 'lambda' related issues by converting them to 'functools.partial'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7923
diff changeset
1444 def __releaseTSFileDone(self, proc, exitCode, exitStatus):
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1445 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1446 Private slot to handle the finished signal of the lrelease process.
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1447
7938
1d3a2a0dac22 ProjectTranslationsBrowser: fixed some 'lambda' related issues by converting them to 'functools.partial'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7923
diff changeset
1448 @param proc reference to the process
1d3a2a0dac22 ProjectTranslationsBrowser: fixed some 'lambda' related issues by converting them to 'functools.partial'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7923
diff changeset
1449 @type QProcess
6116
f3d3c996c193 Continued removing the use of QObject.sender().
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6048
diff changeset
1450 @param exitCode exit code of the process
f3d3c996c193 Continued removing the use of QObject.sender().
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6048
diff changeset
1451 @type int
f3d3c996c193 Continued removing the use of QObject.sender().
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6048
diff changeset
1452 @param exitStatus exit status of the process
f3d3c996c193 Continued removing the use of QObject.sender().
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6048
diff changeset
1453 @type QProcess.ExitStatus
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1454 """
8356
68ec9c3d4de5 Renamed the modules and classes of the E5Gui package to have the prefix 'Eric' instead of 'E5'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8336
diff changeset
1455 ui = ericApp().getObject("UserInterface")
8143
2c730d5fd177 Changed the use of PyQt enums because the way they were used previously is deprecated since two years and replaced some deprecated Qt stuff.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8001
diff changeset
1456 if exitStatus == QProcess.ExitStatus.NormalExit and exitCode == 0:
7955
567f2ec958c3 Changed code to always use the reworked notification system.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7938
diff changeset
1457 ui.showNotification(
9413
80c06d472826 Changed the eric7 import statements to include the package name (i.e. eric7) in order to not fiddle with sys.path.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
1458 EricPixmapCache.getPixmap("linguist48"),
7955
567f2ec958c3 Changed code to always use the reworked notification system.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7938
diff changeset
1459 self.tr("Translation file release"),
9576
be9f8e7e42e0 Corrected some 'wrong' string quotes caused by the Black line merging.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9531
diff changeset
1460 self.tr("The release of the translation files (*.qm) was successful."),
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1461 )
9514
2b104ad132a4 Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9512
diff changeset
1462 if self.project.getProjectData(dataKey="TRANSLATIONSBINPATH"):
2995
63d874899b8b Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2965
diff changeset
1463 target = os.path.join(
9514
2b104ad132a4 Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9512
diff changeset
1464 self.project.ppath,
2b104ad132a4 Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9512
diff changeset
1465 self.project.getProjectData(dataKey="TRANSLATIONSBINPATH"),
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1466 )
9514
2b104ad132a4 Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9512
diff changeset
1467 for langFile in self.project.getProjectData(dataKey="TRANSLATIONS")[:]:
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1468 if langFile.endswith(".ts"):
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1469 qmFile = os.path.join(
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1470 self.project.ppath, langFile.replace(".ts", ".qm")
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1471 )
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1472 if os.path.exists(qmFile):
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1473 shutil.move(qmFile, target)
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1474 else:
7955
567f2ec958c3 Changed code to always use the reworked notification system.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7938
diff changeset
1475 ui.showNotification(
9413
80c06d472826 Changed the eric7 import statements to include the package name (i.e. eric7) in order to not fiddle with sys.path.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
1476 EricPixmapCache.getPixmap("linguist48"),
3190
a9a94491c4fd Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3160
diff changeset
1477 self.tr("Translation file release"),
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1478 self.tr("The release of the translation files (*.qm) has failed."),
8265
0090cfa83159 Converted enum names to use all uppercase letters (except for E5PathPickerModes to keep plug-ins using this compatible with previous eric releases).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8243
diff changeset
1479 kind=NotificationTypes.CRITICAL,
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1480 timeout=0,
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1481 )
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1482
2795
641d03b2aa8c Changed the way lrelease is invoked in order to make it compatible with the pylupdate change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2785
diff changeset
1483 for index in range(len(self.__lreleaseProcesses)):
10231
3a82c1c47b57 Changed output related code of the project translations browser in order to keep process output together.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10158
diff changeset
1484 if proc is self.__lreleaseProcesses[index][0]:
10242
762010721872 Improved the project translations browser handling of finished TS release processes.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10239
diff changeset
1485 processData = self.__lreleaseProcesses[index]
762010721872 Improved the project translations browser handling of finished TS release processes.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10239
diff changeset
1486 if processData[1]:
10231
3a82c1c47b57 Changed output related code of the project translations browser in order to keep process output together.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10158
diff changeset
1487 self.appendStdout.emit("".join(self.__lreleaseProcesses[index][1]))
3a82c1c47b57 Changed output related code of the project translations browser in order to keep process output together.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10158
diff changeset
1488
10242
762010721872 Improved the project translations browser handling of finished TS release processes.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10239
diff changeset
1489 self.__lreleaseProcesses.remove(processData)
2795
641d03b2aa8c Changed the way lrelease is invoked in order to make it compatible with the pylupdate change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2785
diff changeset
1490 break
641d03b2aa8c Changed the way lrelease is invoked in order to make it compatible with the pylupdate change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2785
diff changeset
1491 if not self.__lreleaseProcesses:
641d03b2aa8c Changed the way lrelease is invoked in order to make it compatible with the pylupdate change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2785
diff changeset
1492 # all done
641d03b2aa8c Changed the way lrelease is invoked in order to make it compatible with the pylupdate change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2785
diff changeset
1493 self.lreleaseProcRunning = False
641d03b2aa8c Changed the way lrelease is invoked in order to make it compatible with the pylupdate change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2785
diff changeset
1494 self.project.checkLanguageFiles()
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1495
945
8cd4d08fa9f6 Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 791
diff changeset
1496 def __releaseTSFile(self, generateAll=False):
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1497 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1498 Private method to run lrelease to release the translation files (.qm).
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1499
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1500 @param generateAll flag indicating whether all translations should be
10430
e440aaf179ce Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10398
diff changeset
1501 released
e440aaf179ce Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10398
diff changeset
1502 @type bool
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1503 """
8235
78e6d29eb773 Applied some more code simplifications suggested by the new Simplify checker (Y108: use ternary operator) (batch 3).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8228
diff changeset
1504 langs = [] if generateAll else self.getSelectedItems()
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1505
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1506 # Hooks support
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1507 if generateAll:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1508 if self.hooks["releaseAll"] is not None:
9514
2b104ad132a4 Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9512
diff changeset
1509 self.hooks["releaseAll"](
2b104ad132a4 Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9512
diff changeset
1510 self.project.getProjectData(dataKey="TRANSLATIONS")
2b104ad132a4 Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9512
diff changeset
1511 )
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1512 return
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1513 else:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1514 if self.hooks["releaseSelected"] is not None:
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1515 li = [self.project.getRelativePath(lang.fileName()) for lang in langs]
3034
7ce719013078 Fixed various coding style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3030
diff changeset
1516 self.hooks["releaseSelected"](li)
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1517 return
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1518
7266
d001bc703c29 Continued to resolve code style issue M841.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7229
diff changeset
1519 if self.project.getProjectType() in [
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1520 "PyQt5",
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1521 "PyQt5C",
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1522 "PyQt6",
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1523 "PyQt6C",
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1524 "E7Plugin",
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1525 "PySide6",
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1526 "PySide6C",
7266
d001bc703c29 Continued to resolve code style issue M841.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7229
diff changeset
1527 ]:
11216
a1471981ef18 Project
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 11090
diff changeset
1528 lrelease = Preferences.getQt("lrelease")
11050
f0b91a949398 Modified the project translations browser to use the introduced lrelease configuration option.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10708
diff changeset
1529 if not lrelease:
f0b91a949398 Modified the project translations browser to use the introduced lrelease configuration option.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10708
diff changeset
1530 lrelease = os.path.join(
f0b91a949398 Modified the project translations browser to use the introduced lrelease configuration option.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10708
diff changeset
1531 QtUtilities.getQtBinariesPath(),
f0b91a949398 Modified the project translations browser to use the introduced lrelease configuration option.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10708
diff changeset
1532 QtUtilities.generateQtToolName("lrelease"),
f0b91a949398 Modified the project translations browser to use the introduced lrelease configuration option.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10708
diff changeset
1533 )
f0b91a949398 Modified the project translations browser to use the introduced lrelease configuration option.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10708
diff changeset
1534 if OSUtilities.isWindowsPlatform():
f0b91a949398 Modified the project translations browser to use the introduced lrelease configuration option.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10708
diff changeset
1535 lrelease += ".exe"
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1536 else:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1537 return
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1538
6582
d635b7e360c4 ProjectTranslationBrowser: changed the way the lrelease process is invoked because the old one failed on Windows.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6292
diff changeset
1539 if langs:
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1540 langs = [
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1541 self.project.getRelativePath(lang.fileName())
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1542 for lang in langs
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1543 if lang.fileName().endswith(".ts")
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1544 ]
6582
d635b7e360c4 ProjectTranslationBrowser: changed the way the lrelease process is invoked because the old one failed on Windows.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6292
diff changeset
1545 else:
d635b7e360c4 ProjectTranslationBrowser: changed the way the lrelease process is invoked because the old one failed on Windows.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6292
diff changeset
1546 try:
9514
2b104ad132a4 Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9512
diff changeset
1547 pattern = self.project.getProjectData(
2b104ad132a4 Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9512
diff changeset
1548 dataKey="TRANSLATIONPATTERN"
2b104ad132a4 Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9512
diff changeset
1549 ).replace("%language%", "*")
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1550 langs = [
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1551 lang
9514
2b104ad132a4 Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9512
diff changeset
1552 for lang in self.project.getProjectData(dataKey="TRANSLATIONS")
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1553 if fnmatch.fnmatch(lang, pattern)
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1554 ]
6582
d635b7e360c4 ProjectTranslationBrowser: changed the way the lrelease process is invoked because the old one failed on Windows.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6292
diff changeset
1555 except IndexError:
d635b7e360c4 ProjectTranslationBrowser: changed the way the lrelease process is invoked because the old one failed on Windows.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6292
diff changeset
1556 langs = []
d635b7e360c4 ProjectTranslationBrowser: changed the way the lrelease process is invoked because the old one failed on Windows.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6292
diff changeset
1557 if not langs:
8356
68ec9c3d4de5 Renamed the modules and classes of the E5Gui package to have the prefix 'Eric' instead of 'E5'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8336
diff changeset
1558 EricMessageBox.warning(
6582
d635b7e360c4 ProjectTranslationBrowser: changed the way the lrelease process is invoked because the old one failed on Windows.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6292
diff changeset
1559 self,
d635b7e360c4 ProjectTranslationBrowser: changed the way the lrelease process is invoked because the old one failed on Windows.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6292
diff changeset
1560 self.tr("Write temporary project file"),
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1561 self.tr("""No translation files (*.ts) selected."""),
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1562 )
6582
d635b7e360c4 ProjectTranslationBrowser: changed the way the lrelease process is invoked because the old one failed on Windows.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6292
diff changeset
1563 return
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1564
2795
641d03b2aa8c Changed the way lrelease is invoked in order to make it compatible with the pylupdate change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2785
diff changeset
1565 self.__lreleaseProcesses = []
6582
d635b7e360c4 ProjectTranslationBrowser: changed the way the lrelease process is invoked because the old one failed on Windows.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6292
diff changeset
1566 args = []
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1567 args.append("-verbose")
6582
d635b7e360c4 ProjectTranslationBrowser: changed the way the lrelease process is invoked because the old one failed on Windows.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6292
diff changeset
1568 for langFile in langs:
d635b7e360c4 ProjectTranslationBrowser: changed the way the lrelease process is invoked because the old one failed on Windows.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6292
diff changeset
1569 path, filename = os.path.split(langFile)
2795
641d03b2aa8c Changed the way lrelease is invoked in order to make it compatible with the pylupdate change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2785
diff changeset
1570 args.append(filename)
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1571
6582
d635b7e360c4 ProjectTranslationBrowser: changed the way the lrelease process is invoked because the old one failed on Windows.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6292
diff changeset
1572 proc = QProcess()
d635b7e360c4 ProjectTranslationBrowser: changed the way the lrelease process is invoked because the old one failed on Windows.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6292
diff changeset
1573 proc.setWorkingDirectory(os.path.join(self.project.ppath, path))
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1574 proc.finished.connect(functools.partial(self.__releaseTSFileDone, proc))
6582
d635b7e360c4 ProjectTranslationBrowser: changed the way the lrelease process is invoked because the old one failed on Windows.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6292
diff changeset
1575 proc.readyReadStandardOutput.connect(
7938
1d3a2a0dac22 ProjectTranslationsBrowser: fixed some 'lambda' related issues by converting them to 'functools.partial'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7923
diff changeset
1576 functools.partial(self.__readStdoutLrelease, proc)
1d3a2a0dac22 ProjectTranslationsBrowser: fixed some 'lambda' related issues by converting them to 'functools.partial'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7923
diff changeset
1577 )
6582
d635b7e360c4 ProjectTranslationBrowser: changed the way the lrelease process is invoked because the old one failed on Windows.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6292
diff changeset
1578 proc.readyReadStandardError.connect(
7938
1d3a2a0dac22 ProjectTranslationsBrowser: fixed some 'lambda' related issues by converting them to 'functools.partial'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7923
diff changeset
1579 functools.partial(self.__readStderrLrelease, proc)
1d3a2a0dac22 ProjectTranslationsBrowser: fixed some 'lambda' related issues by converting them to 'functools.partial'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7923
diff changeset
1580 )
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1581
6582
d635b7e360c4 ProjectTranslationBrowser: changed the way the lrelease process is invoked because the old one failed on Windows.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6292
diff changeset
1582 proc.start(lrelease, args)
d635b7e360c4 ProjectTranslationBrowser: changed the way the lrelease process is invoked because the old one failed on Windows.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6292
diff changeset
1583 procStarted = proc.waitForStarted()
d635b7e360c4 ProjectTranslationBrowser: changed the way the lrelease process is invoked because the old one failed on Windows.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6292
diff changeset
1584 if procStarted:
d635b7e360c4 ProjectTranslationBrowser: changed the way the lrelease process is invoked because the old one failed on Windows.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6292
diff changeset
1585 self.lreleaseProcRunning = True
10231
3a82c1c47b57 Changed output related code of the project translations browser in order to keep process output together.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10158
diff changeset
1586 self.__lreleaseProcesses.append((proc, []))
6582
d635b7e360c4 ProjectTranslationBrowser: changed the way the lrelease process is invoked because the old one failed on Windows.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6292
diff changeset
1587 else:
8356
68ec9c3d4de5 Renamed the modules and classes of the E5Gui package to have the prefix 'Eric' instead of 'E5'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8336
diff changeset
1588 EricMessageBox.critical(
6582
d635b7e360c4 ProjectTranslationBrowser: changed the way the lrelease process is invoked because the old one failed on Windows.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6292
diff changeset
1589 self,
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1590 self.tr("Process Generation Error"),
6582
d635b7e360c4 ProjectTranslationBrowser: changed the way the lrelease process is invoked because the old one failed on Windows.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6292
diff changeset
1591 self.tr(
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1592 "<p>Could not start lrelease.<br>"
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1593 "Ensure that it is available as <b>{0}</b>.</p>"
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1594 ).format(lrelease),
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1595 )
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1596
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1597 def __releaseSelected(self):
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1598 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1599 Private method to release the translation files (.qm).
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1600 """
945
8cd4d08fa9f6 Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 791
diff changeset
1601 self.__releaseTSFile(generateAll=False)
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1602
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1603 def __releaseAll(self):
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1604 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1605 Private method to release the translation files (.qm).
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1606 """
945
8cd4d08fa9f6 Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 791
diff changeset
1607 self.__releaseTSFile(generateAll=True)
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1608
2995
63d874899b8b Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2965
diff changeset
1609 ###########################################################################
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1610 ## Support for hooks below
2995
63d874899b8b Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2965
diff changeset
1611 ###########################################################################
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1612
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1613 def _initHookMethods(self):
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1614 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1615 Protected method to initialize the hooks dictionary.
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1616
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1617 Supported hook methods are:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1618 <ul>
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1619 <li>extractMessages: takes no parameters</li>
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1620 <li>generateAll: takes list of filenames as parameter</li>
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1621 <li>generateAllWithObsolete: takes list of filenames as parameter</li>
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1622 <li>generateSelected: takes list of filenames as parameter</li>
2995
63d874899b8b Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2965
diff changeset
1623 <li>generateSelectedWithObsolete: takes list of filenames as
63d874899b8b Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2965
diff changeset
1624 parameter</li>
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1625 <li>releaseAll: takes list of filenames as parameter</li>
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1626 <li>releaseSelected: takes list of filenames as parameter</li>
2722
1c5df42d94bf Added a plug-in hooks for the 'open' action to the project forms and translations viewers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2615
diff changeset
1627 <li>open: takes a filename as parameter</li>
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1628 </ul>
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
1629
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1630 <b>Note</b>: Filenames are relative to the project directory.
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1631 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1632 self.hooks = {
945
8cd4d08fa9f6 Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 791
diff changeset
1633 "extractMessages": None,
8cd4d08fa9f6 Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 791
diff changeset
1634 "generateAll": None,
8cd4d08fa9f6 Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 791
diff changeset
1635 "generateAllWithObsolete": None,
8cd4d08fa9f6 Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 791
diff changeset
1636 "generateSelected": None,
8cd4d08fa9f6 Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 791
diff changeset
1637 "generateSelectedWithObsolete": None,
8cd4d08fa9f6 Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 791
diff changeset
1638 "releaseAll": None,
8cd4d08fa9f6 Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 791
diff changeset
1639 "releaseSelected": None,
2722
1c5df42d94bf Added a plug-in hooks for the 'open' action to the project forms and translations viewers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2615
diff changeset
1640 "open": None,
788
5b1b59777460 Added a feature where flags can be given at the end of a source file. The only flag supported is 'FileType' to overwrite the filetype detection mechanism.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
1641 }

eric ide

mercurial