ExtensionCorba/ProjectInterfacesBrowser.py

Wed, 25 Oct 2023 18:04:06 +0200

author
Detlev Offenbach <detlev@die-offenbachs.de>
date
Wed, 25 Oct 2023 18:04:06 +0200
changeset 38
aefce8f68439
parent 37
79e453012ab9
child 46
bd9f89d3bf8b
permissions
-rw-r--r--

Corrected a code style issue.

1
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1 # -*- coding: utf-8 -*-
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
2
32
cab6795a8df6 Updated copyright for 2023.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 19
diff changeset
3 # Copyright (c) 2002 - 2023 Detlev Offenbach <detlev@die-offenbachs.de>
1
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
4 #
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
5
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
6 """
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
7 Module implementing the a class used to display the interfaces (IDL) part
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
8 of the project.
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
9 """
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
10
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
11 import contextlib
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
12 import glob
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
13 import os
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
14
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
15 from PyQt6.QtCore import QProcess, QThread, pyqtSignal
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
16 from PyQt6.QtWidgets import QApplication, QDialog, QMenu
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
17
19
c2156196748a Changed some import statements.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 12
diff changeset
18 from eric7 import Preferences
1
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
19 from eric7.EricGui import EricPixmapCache
37
79e453012ab9 Added the context menu action "New interface file..." to give a more concise way to create a new interface file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 33
diff changeset
20 from eric7.EricWidgets import EricMessageBox, EricPathPickerDialog
1
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
21 from eric7.EricWidgets.EricApplication import ericApp
37
79e453012ab9 Added the context menu action "New interface file..." to give a more concise way to create a new interface file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 33
diff changeset
22 from eric7.EricWidgets.EricPathPickerDialog import EricPathPickerModes
1
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
23 from eric7.EricWidgets.EricProgressDialog import EricProgressDialog
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
24 from eric7.Project.FileCategoryRepositoryItem import FileCategoryRepositoryItem
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
25 from eric7.Project.ProjectBaseBrowser import ProjectBaseBrowser
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
26 from eric7.Project.ProjectBrowserModel import (
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
27 ProjectBrowserDirectoryItem,
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
28 ProjectBrowserFileItem,
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
29 ProjectBrowserSimpleDirectoryItem,
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
30 )
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
31 from eric7.Project.ProjectBrowserRepositoryItem import ProjectBrowserRepositoryItem
19
c2156196748a Changed some import statements.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 12
diff changeset
32 from eric7.SystemUtilities import FileSystemUtilities, OSUtilities
1
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
33 from eric7.UI.BrowserModel import (
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
34 BrowserClassAttributeItem,
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
35 BrowserClassItem,
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
36 BrowserFileItem,
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
37 BrowserMethodItem,
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
38 )
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
39 from eric7.UI.DeleteFilesConfirmationDialog import DeleteFilesConfirmationDialog
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
40 from eric7.UI.NotificationWidget import NotificationTypes
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
41
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
42
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
43 class ProjectInterfacesBrowser(ProjectBaseBrowser):
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
44 """
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
45 A class used to display the interfaces (IDL) part of the project.
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
46
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
47 @signal appendStdout(str) emitted after something was received from
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
48 a QProcess on stdout
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
49 @signal appendStderr(str) emitted after something was received from
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
50 a QProcess on stderr
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
51 @signal showMenu(str, QMenu) emitted when a menu is about to be shown.
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
52 The name of the menu and a reference to the menu are given.
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
53 """
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
54
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
55 appendStdout = pyqtSignal(str)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
56 appendStderr = pyqtSignal(str)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
57 showMenu = pyqtSignal(str, QMenu)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
58
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
59 FileFilter = "idl"
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
60
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
61 def __init__(self, plugin, parent=None):
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
62 """
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
63 Constructor
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
64
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
65 @param plugin reference to the plugin object
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
66 @type CorbaExtensionPlugin
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
67 @param parent parent widget of this browser
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
68 @type QWidget
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
69 """
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
70 project = ericApp().getObject("Project")
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
71 projectBrowser = ericApp().getObject("ProjectBrowser")
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
72
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
73 self.omniidl = plugin.getPreferences("omniidl")
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
74 if self.omniidl == "":
19
c2156196748a Changed some import statements.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 12
diff changeset
75 self.omniidl = (
c2156196748a Changed some import statements.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 12
diff changeset
76 "omniidl.exe" if OSUtilities.isWindowsPlatform() else "omniidl"
c2156196748a Changed some import statements.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 12
diff changeset
77 )
c2156196748a Changed some import statements.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 12
diff changeset
78 if not FileSystemUtilities.isinpath(self.omniidl):
1
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
79 self.omniidl = None
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
80
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
81 ProjectBaseBrowser.__init__(self, project, self.FileFilter, parent)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
82
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
83 self.selectedItemsFilter = [
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
84 ProjectBrowserFileItem,
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
85 ProjectBrowserSimpleDirectoryItem,
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
86 ]
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
87
4
ff4fc402f193 Implemented some final changes.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2
diff changeset
88 self.setWindowTitle(self.tr("CORBA IDL"))
1
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
89
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
90 self.setWhatsThis(
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
91 self.tr(
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
92 """<b>Project IDL Browser</b>"""
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
93 """<p>This allows to easily see all CORBA IDL files contained in the"""
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
94 """ current project. Several actions can be executed via the context"""
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
95 """ menu.</p>"""
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
96 )
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
97 )
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
98
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
99 # Add the file category handled by the browser.
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
100 project.addFileCategory(
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
101 "INTERFACES",
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
102 FileCategoryRepositoryItem(
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
103 fileCategoryFilterTemplate=self.tr("CORBA IDL Files ({0})"),
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
104 fileCategoryUserString=self.tr("CORBA IDL Files"),
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
105 fileCategoryTyeString=self.tr("IDL Files"),
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
106 fileCategoryExtensions=["*.idl"],
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
107 ),
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
108 )
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
109
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
110 # Add the project browser type to the browser type repository.
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
111 projectBrowser.addTypedProjectBrowser(
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
112 "interfaces",
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
113 ProjectBrowserRepositoryItem(
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
114 projectBrowser=self,
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
115 projectBrowserUserString=self.tr("CORBA IDL Browser"),
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
116 priority=50,
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
117 fileCategory="INTERFACES",
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
118 fileFilter=self.FileFilter,
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
119 getIcon=self.getIcon,
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
120 ),
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
121 )
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
122
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
123 # Connect signals of Project.
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
124 project.prepareRepopulateItem.connect(self._prepareRepopulateItem)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
125 project.completeRepopulateItem.connect(self._completeRepopulateItem)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
126 project.projectClosed.connect(self._projectClosed)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
127 project.projectOpened.connect(self._projectOpened)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
128 project.newProject.connect(self._newProject)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
129 project.reinitVCS.connect(self._initMenusAndVcs)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
130 project.projectPropertiesChanged.connect(self._initMenusAndVcs)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
131
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
132 # Connect signals of ProjectBrowser.
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
133 projectBrowser.preferencesChanged.connect(self.handlePreferencesChanged)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
134
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
135 # Connect some of our own signals.
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
136 self.appendStderr.connect(projectBrowser.appendStderr)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
137 self.appendStdout.connect(projectBrowser.appendStdout)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
138 self.closeSourceWindow.connect(projectBrowser.closeSourceWindow)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
139 self.sourceFile[str].connect(projectBrowser.sourceFile[str])
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
140 self.sourceFile[str, int].connect(projectBrowser.sourceFile[str, int])
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
141
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
142 def deactivate(self):
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
143 """
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
144 Public method to deactivate the browser.
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
145 """
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
146 project = ericApp().getObject("Project")
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
147 projectBrowser = ericApp().getObject("ProjectBrowser")
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
148
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
149 # Disconnect some of our own signals.
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
150 self.appendStderr.disconnect(projectBrowser.appendStderr)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
151 self.appendStdout.disconnect(projectBrowser.appendStdout)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
152 self.closeSourceWindow.disconnect(projectBrowser.closeSourceWindow)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
153 self.sourceFile[str].disconnect(projectBrowser.sourceFile[str])
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
154 self.sourceFile[str, int].disconnect(projectBrowser.sourceFile[str, int])
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
155
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
156 # Disconnect signals of ProjectBrowser.
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
157 projectBrowser.preferencesChanged.disconnect(self.handlePreferencesChanged)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
158
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
159 # Disconnect signals of Project.
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
160 project.prepareRepopulateItem.disconnect(self._prepareRepopulateItem)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
161 project.completeRepopulateItem.disconnect(self._completeRepopulateItem)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
162 project.projectClosed.disconnect(self._projectClosed)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
163 project.projectOpened.disconnect(self._projectOpened)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
164 project.newProject.disconnect(self._newProject)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
165 project.reinitVCS.disconnect(self._initMenusAndVcs)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
166 project.projectPropertiesChanged.disconnect(self._initMenusAndVcs)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
167
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
168 # Remove the project browser type from the browser type repository.
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
169 projectBrowser.removeTypedProjectBrowser("interfaces")
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
170
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
171 # Remove the file category handled by the browser.
2
68c017d640b0 Fixed a few issues detected during testing.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1
diff changeset
172 project.removeFileCategory("INTERFACES")
1
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
173
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
174 def getIcon(self):
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
175 """
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
176 Public method to get an icon for the project browser.
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
177
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
178 @return icon for the browser
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
179 @rtype QIcon
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
180 """
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
181 iconSuffix = "dark" if ericApp().usesDarkPalette() else "light"
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
182
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
183 return EricPixmapCache.getIcon(
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
184 os.path.join(
12
58b645cde6e3 Moved the IDL class browser to this plugin.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10
diff changeset
185 os.path.dirname(__file__), "icons", "corba-{0}".format(iconSuffix)
1
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
186 )
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
187 )
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
188
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
189 def _createPopupMenus(self):
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
190 """
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
191 Protected overloaded method to generate the popup menu.
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
192 """
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
193 self.menuActions = []
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
194 self.multiMenuActions = []
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
195 self.dirMenuActions = []
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
196 self.dirMultiMenuActions = []
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
197
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
198 self.sourceMenu = QMenu(self)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
199 if self.omniidl is not None:
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
200 self.sourceMenu.addAction(
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
201 self.tr("Compile interface"), self.__compileInterface
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
202 )
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
203 self.sourceMenu.addAction(
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
204 self.tr("Compile all interfaces"), self.__compileAllInterfaces
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
205 )
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
206 self.sourceMenu.addSeparator()
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
207 self.sourceMenu.addAction(
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
208 self.tr("Configure IDL compiler"), self.__configureIdlCompiler
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
209 )
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
210 self.sourceMenu.addSeparator()
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
211 self.sourceMenu.addAction(self.tr("Open"), self._openItem)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
212 self.sourceMenu.addSeparator()
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
213 act = self.sourceMenu.addAction(self.tr("Rename file"), self._renameFile)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
214 self.menuActions.append(act)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
215 act = self.sourceMenu.addAction(
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
216 self.tr("Remove from project"), self._removeFile
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
217 )
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
218 self.menuActions.append(act)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
219 act = self.sourceMenu.addAction(self.tr("Delete"), self.__deleteFile)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
220 self.menuActions.append(act)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
221 self.sourceMenu.addSeparator()
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
222 self.sourceMenu.addAction(
37
79e453012ab9 Added the context menu action "New interface file..." to give a more concise way to create a new interface file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 33
diff changeset
223 self.tr("New interface file..."), self.__addNewInterfaceFile
79e453012ab9 Added the context menu action "New interface file..." to give a more concise way to create a new interface file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 33
diff changeset
224 )
79e453012ab9 Added the context menu action "New interface file..." to give a more concise way to create a new interface file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 33
diff changeset
225 self.sourceMenu.addSeparator()
79e453012ab9 Added the context menu action "New interface file..." to give a more concise way to create a new interface file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 33
diff changeset
226 self.sourceMenu.addAction(
1
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
227 self.tr("Add interfaces..."), self.__addInterfaceFiles
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
228 )
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
229 self.sourceMenu.addAction(
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
230 self.tr("Add interfaces directory..."), self.__addInterfacesDirectory
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
231 )
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
232 self.sourceMenu.addSeparator()
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
233 self.sourceMenu.addAction(
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
234 self.tr("Copy Path to Clipboard"), self._copyToClipboard
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
235 )
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
236 self.sourceMenu.addSeparator()
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
237 self.sourceMenu.addAction(
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
238 self.tr("Expand all directories"), self._expandAllDirs
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
239 )
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
240 self.sourceMenu.addAction(
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
241 self.tr("Collapse all directories"), self._collapseAllDirs
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
242 )
10
c88be5019d60 Added a `Collapse all files` entry to the context menus.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4
diff changeset
243 self.sourceMenu.addAction(self.tr("Collapse all files"), self._collapseAllFiles)
1
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
244 self.sourceMenu.addSeparator()
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
245 self.sourceMenu.addAction(self.tr("Configure..."), self._configure)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
246 self.sourceMenu.addAction(self.tr("Configure CORBA..."), self.__configureCorba)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
247
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
248 self.menu = QMenu(self)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
249 if self.omniidl is not None:
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
250 self.menu.addAction(self.tr("Compile interface"), self.__compileInterface)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
251 self.menu.addAction(
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
252 self.tr("Compile all interfaces"), self.__compileAllInterfaces
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
253 )
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
254 self.menu.addSeparator()
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
255 self.menu.addAction(
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
256 self.tr("Configure IDL compiler"), self.__configureIdlCompiler
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
257 )
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
258 self.menu.addSeparator()
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
259 self.menu.addAction(self.tr("Open"), self._openItem)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
260 self.menu.addSeparator()
37
79e453012ab9 Added the context menu action "New interface file..." to give a more concise way to create a new interface file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 33
diff changeset
261 self.menu.addAction(
79e453012ab9 Added the context menu action "New interface file..." to give a more concise way to create a new interface file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 33
diff changeset
262 self.tr("New interface file..."), self.__addNewInterfaceFile
79e453012ab9 Added the context menu action "New interface file..." to give a more concise way to create a new interface file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 33
diff changeset
263 )
79e453012ab9 Added the context menu action "New interface file..." to give a more concise way to create a new interface file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 33
diff changeset
264 self.menu.addSeparator()
1
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
265 self.menu.addAction(self.tr("Add interfaces..."), self.__addInterfaceFiles)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
266 self.menu.addAction(
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
267 self.tr("Add interfaces directory..."), self.__addInterfacesDirectory
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
268 )
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
269 self.menu.addSeparator()
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
270 self.menu.addAction(self.tr("Expand all directories"), self._expandAllDirs)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
271 self.menu.addAction(self.tr("Collapse all directories"), self._collapseAllDirs)
10
c88be5019d60 Added a `Collapse all files` entry to the context menus.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4
diff changeset
272 self.menu.addAction(self.tr("Collapse all files"), self._collapseAllFiles)
1
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
273 self.menu.addSeparator()
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
274 self.menu.addAction(self.tr("Configure..."), self._configure)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
275 self.menu.addAction(self.tr("Configure CORBA..."), self.__configureCorba)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
276
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
277 self.backMenu = QMenu(self)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
278 if self.omniidl is not None:
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
279 self.backMenu.addAction(
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
280 self.tr("Compile all interfaces"), self.__compileAllInterfaces
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
281 )
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
282 self.backMenu.addSeparator()
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
283 self.backMenu.addAction(
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
284 self.tr("Configure IDL compiler"), self.__configureIdlCompiler
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
285 )
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
286 self.backMenu.addSeparator()
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
287 self.backMenu.addAction(
37
79e453012ab9 Added the context menu action "New interface file..." to give a more concise way to create a new interface file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 33
diff changeset
288 self.tr("New interface file..."), self.__addNewInterfaceFile
79e453012ab9 Added the context menu action "New interface file..." to give a more concise way to create a new interface file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 33
diff changeset
289 )
79e453012ab9 Added the context menu action "New interface file..." to give a more concise way to create a new interface file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 33
diff changeset
290 self.backMenu.addSeparator()
79e453012ab9 Added the context menu action "New interface file..." to give a more concise way to create a new interface file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 33
diff changeset
291 self.backMenu.addAction(
1
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
292 self.tr("Add interfaces..."), lambda: self.project.addFiles("INTERFACES")
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
293 )
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
294 self.backMenu.addAction(
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
295 self.tr("Add interfaces directory..."),
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
296 lambda: self.project.addDirectory("INTERFACES"),
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
297 )
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
298 self.backMenu.addSeparator()
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
299 self.backMenu.addAction(self.tr("Expand all directories"), self._expandAllDirs)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
300 self.backMenu.addAction(
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
301 self.tr("Collapse all directories"), self._collapseAllDirs
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
302 )
10
c88be5019d60 Added a `Collapse all files` entry to the context menus.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4
diff changeset
303 self.backMenu.addAction(self.tr("Collapse all files"), self._collapseAllFiles)
1
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
304 self.backMenu.addSeparator()
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
305 self.backMenu.addAction(self.tr("Configure..."), self._configure)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
306 self.backMenu.addAction(self.tr("Configure CORBA..."), self.__configureCorba)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
307 self.backMenu.setEnabled(False)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
308
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
309 # create the menu for multiple selected files
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
310 self.multiMenu = QMenu(self)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
311 if self.omniidl is not None:
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
312 self.multiMenu.addAction(
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
313 self.tr("Compile interfaces"), self.__compileSelectedInterfaces
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
314 )
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
315 self.multiMenu.addSeparator()
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
316 self.multiMenu.addAction(
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
317 self.tr("Configure IDL compiler"), self.__configureIdlCompiler
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
318 )
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
319 self.multiMenu.addSeparator()
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
320 self.multiMenu.addAction(self.tr("Open"), self._openItem)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
321 self.multiMenu.addSeparator()
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
322 act = self.multiMenu.addAction(self.tr("Remove from project"), self._removeFile)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
323 self.multiMenuActions.append(act)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
324 act = self.multiMenu.addAction(self.tr("Delete"), self.__deleteFile)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
325 self.multiMenuActions.append(act)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
326 self.multiMenu.addSeparator()
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
327 self.multiMenu.addAction(self.tr("Expand all directories"), self._expandAllDirs)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
328 self.multiMenu.addAction(
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
329 self.tr("Collapse all directories"), self._collapseAllDirs
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
330 )
10
c88be5019d60 Added a `Collapse all files` entry to the context menus.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4
diff changeset
331 self.multiMenu.addAction(self.tr("Collapse all files"), self._collapseAllFiles)
1
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
332 self.multiMenu.addSeparator()
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
333 self.multiMenu.addAction(self.tr("Configure..."), self._configure)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
334 self.multiMenu.addAction(self.tr("Configure CORBA..."), self.__configureCorba)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
335
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
336 self.dirMenu = QMenu(self)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
337 if self.omniidl is not None:
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
338 self.dirMenu.addAction(
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
339 self.tr("Compile all interfaces"), self.__compileAllInterfaces
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
340 )
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
341 self.dirMenu.addSeparator()
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
342 self.dirMenu.addAction(
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
343 self.tr("Configure IDL compiler"), self.__configureIdlCompiler
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
344 )
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
345 self.dirMenu.addSeparator()
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
346 act = self.dirMenu.addAction(self.tr("Remove from project"), self._removeFile)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
347 self.dirMenuActions.append(act)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
348 act = self.dirMenu.addAction(self.tr("Delete"), self._deleteDirectory)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
349 self.dirMenuActions.append(act)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
350 self.dirMenu.addSeparator()
37
79e453012ab9 Added the context menu action "New interface file..." to give a more concise way to create a new interface file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 33
diff changeset
351 self.dirMenu.addAction(
79e453012ab9 Added the context menu action "New interface file..." to give a more concise way to create a new interface file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 33
diff changeset
352 self.tr("New interface file..."), self.__addNewInterfaceFile
79e453012ab9 Added the context menu action "New interface file..." to give a more concise way to create a new interface file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 33
diff changeset
353 )
79e453012ab9 Added the context menu action "New interface file..." to give a more concise way to create a new interface file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 33
diff changeset
354 self.dirMenu.addSeparator()
1
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
355 self.dirMenu.addAction(self.tr("Add interfaces..."), self.__addInterfaceFiles)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
356 self.dirMenu.addAction(
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
357 self.tr("Add interfaces directory..."), self.__addInterfacesDirectory
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
358 )
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
359 self.dirMenu.addSeparator()
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
360 self.dirMenu.addAction(self.tr("Copy Path to Clipboard"), self._copyToClipboard)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
361 self.dirMenu.addSeparator()
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
362 self.dirMenu.addAction(self.tr("Expand all directories"), self._expandAllDirs)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
363 self.dirMenu.addAction(
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
364 self.tr("Collapse all directories"), self._collapseAllDirs
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
365 )
10
c88be5019d60 Added a `Collapse all files` entry to the context menus.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4
diff changeset
366 self.dirMenu.addAction(self.tr("Collapse all files"), self._collapseAllFiles)
1
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
367 self.dirMenu.addSeparator()
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
368 self.dirMenu.addAction(self.tr("Configure..."), self._configure)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
369 self.dirMenu.addAction(self.tr("Configure CORBA..."), self.__configureCorba)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
370
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
371 self.dirMultiMenu = QMenu(self)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
372 if self.omniidl is not None:
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
373 self.dirMultiMenu.addAction(
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
374 self.tr("Compile all interfaces"), self.__compileAllInterfaces
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
375 )
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
376 self.dirMultiMenu.addSeparator()
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
377 self.dirMultiMenu.addAction(
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
378 self.tr("Configure IDL compiler"), self.__configureIdlCompiler
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
379 )
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
380 self.dirMultiMenu.addSeparator()
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
381 self.dirMultiMenu.addAction(
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
382 self.tr("Add interfaces..."), lambda: self.project.addFiles("INTERFACES")
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
383 )
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
384 self.dirMultiMenu.addAction(
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
385 self.tr("Add interfaces directory..."),
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
386 lambda: self.project.addDirectory("INTERFACES"),
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
387 )
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
388 self.dirMultiMenu.addSeparator()
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
389 self.dirMultiMenu.addAction(
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
390 self.tr("Expand all directories"), self._expandAllDirs
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
391 )
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
392 self.dirMultiMenu.addAction(
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
393 self.tr("Collapse all directories"), self._collapseAllDirs
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
394 )
10
c88be5019d60 Added a `Collapse all files` entry to the context menus.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4
diff changeset
395 self.dirMultiMenu.addAction(
c88be5019d60 Added a `Collapse all files` entry to the context menus.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4
diff changeset
396 self.tr("Collapse all files"), self._collapseAllFiles
c88be5019d60 Added a `Collapse all files` entry to the context menus.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4
diff changeset
397 )
1
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
398 self.dirMultiMenu.addSeparator()
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
399 self.dirMultiMenu.addAction(self.tr("Configure..."), self._configure)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
400 self.dirMultiMenu.addAction(
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
401 self.tr("Configure CORBA..."), self.__configureCorba
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
402 )
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
403
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
404 self.sourceMenu.aboutToShow.connect(self.__showContextMenu)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
405 self.multiMenu.aboutToShow.connect(self.__showContextMenuMulti)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
406 self.dirMenu.aboutToShow.connect(self.__showContextMenuDir)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
407 self.dirMultiMenu.aboutToShow.connect(self.__showContextMenuDirMulti)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
408 self.backMenu.aboutToShow.connect(self.__showContextMenuBack)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
409 self.mainMenu = self.sourceMenu
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
410
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
411 def _contextMenuRequested(self, coord):
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
412 """
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
413 Protected slot to show the context menu.
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
414
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
415 @param coord the position of the mouse pointer (QPoint)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
416 """
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
417 if not self.project.isOpen():
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
418 return
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
419
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
420 with contextlib.suppress(Exception): # secok
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
421 categories = self.getSelectedItemsCountCategorized(
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
422 [
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
423 ProjectBrowserFileItem,
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
424 BrowserClassItem,
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
425 BrowserMethodItem,
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
426 ProjectBrowserSimpleDirectoryItem,
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
427 ]
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
428 )
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
429 cnt = categories["sum"]
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
430 if cnt <= 1:
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
431 index = self.indexAt(coord)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
432 if index.isValid():
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
433 self._selectSingleItem(index)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
434 categories = self.getSelectedItemsCountCategorized(
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
435 [
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
436 ProjectBrowserFileItem,
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
437 BrowserClassItem,
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
438 BrowserMethodItem,
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
439 ProjectBrowserSimpleDirectoryItem,
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
440 ]
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
441 )
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
442 cnt = categories["sum"]
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
443
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
444 bfcnt = categories[str(ProjectBrowserFileItem)]
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
445 cmcnt = (
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
446 categories[str(BrowserClassItem)] + categories[str(BrowserMethodItem)]
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
447 )
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
448 sdcnt = categories[str(ProjectBrowserSimpleDirectoryItem)]
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
449 if cnt > 1 and cnt == bfcnt:
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
450 self.multiMenu.popup(self.mapToGlobal(coord))
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
451 elif cnt > 1 and cnt == sdcnt:
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
452 self.dirMultiMenu.popup(self.mapToGlobal(coord))
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
453 else:
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
454 index = self.indexAt(coord)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
455 if cnt == 1 and index.isValid():
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
456 if bfcnt == 1 or cmcnt == 1:
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
457 itm = self.model().item(index)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
458 if isinstance(itm, ProjectBrowserFileItem):
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
459 self.sourceMenu.popup(self.mapToGlobal(coord))
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
460 elif isinstance(itm, (BrowserClassItem, BrowserMethodItem)):
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
461 self.menu.popup(self.mapToGlobal(coord))
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
462 else:
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
463 self.backMenu.popup(self.mapToGlobal(coord))
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
464 elif sdcnt == 1:
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
465 self.dirMenu.popup(self.mapToGlobal(coord))
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
466 else:
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
467 self.backMenu.popup(self.mapToGlobal(coord))
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
468 else:
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
469 self.backMenu.popup(self.mapToGlobal(coord))
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
470
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
471 def __showContextMenu(self):
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
472 """
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
473 Private slot called by the menu aboutToShow signal.
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
474 """
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
475 ProjectBaseBrowser._showContextMenu(self, self.menu)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
476
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
477 self.showMenu.emit("Main", self.menu)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
478
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
479 def __showContextMenuMulti(self):
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
480 """
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
481 Private slot called by the multiMenu aboutToShow signal.
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
482 """
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
483 ProjectBaseBrowser._showContextMenuMulti(self, self.multiMenu)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
484
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
485 self.showMenu.emit("MainMulti", self.multiMenu)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
486
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
487 def __showContextMenuDir(self):
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
488 """
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
489 Private slot called by the dirMenu aboutToShow signal.
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
490 """
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
491 ProjectBaseBrowser._showContextMenuDir(self, self.dirMenu)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
492
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
493 self.showMenu.emit("MainDir", self.dirMenu)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
494
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
495 def __showContextMenuDirMulti(self):
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
496 """
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
497 Private slot called by the dirMultiMenu aboutToShow signal.
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
498 """
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
499 ProjectBaseBrowser._showContextMenuDirMulti(self, self.dirMultiMenu)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
500
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
501 self.showMenu.emit("MainDirMulti", self.dirMultiMenu)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
502
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
503 def __showContextMenuBack(self):
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
504 """
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
505 Private slot called by the backMenu aboutToShow signal.
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
506 """
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
507 ProjectBaseBrowser._showContextMenuBack(self, self.backMenu)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
508
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
509 self.showMenu.emit("MainBack", self.backMenu)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
510
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
511 def _openItem(self):
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
512 """
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
513 Protected slot to handle the open popup menu entry.
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
514 """
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
515 itmList = self.getSelectedItems(
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
516 [
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
517 BrowserFileItem,
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
518 BrowserClassItem,
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
519 BrowserMethodItem,
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
520 BrowserClassAttributeItem,
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
521 ]
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
522 )
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
523
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
524 for itm in itmList:
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
525 if isinstance(itm, BrowserFileItem):
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
526 self.sourceFile[str].emit(itm.fileName())
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
527 elif isinstance(itm, BrowserClassItem):
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
528 self.sourceFile[str, int].emit(itm.fileName(), itm.classObject().lineno)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
529 elif isinstance(itm, BrowserMethodItem):
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
530 self.sourceFile[str, int].emit(
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
531 itm.fileName(), itm.functionObject().lineno
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
532 )
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
533 elif isinstance(itm, BrowserClassAttributeItem):
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
534 self.sourceFile[str, int].emit(
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
535 itm.fileName(), itm.attributeObject().lineno
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
536 )
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
537
37
79e453012ab9 Added the context menu action "New interface file..." to give a more concise way to create a new interface file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 33
diff changeset
538 def __addNewInterfaceFile(self):
79e453012ab9 Added the context menu action "New interface file..." to give a more concise way to create a new interface file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 33
diff changeset
539 """
79e453012ab9 Added the context menu action "New interface file..." to give a more concise way to create a new interface file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 33
diff changeset
540 Private method to add a new interface file to the project.
79e453012ab9 Added the context menu action "New interface file..." to give a more concise way to create a new interface file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 33
diff changeset
541 """
79e453012ab9 Added the context menu action "New interface file..." to give a more concise way to create a new interface file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 33
diff changeset
542 itm = self.model().item(self.currentIndex())
79e453012ab9 Added the context menu action "New interface file..." to give a more concise way to create a new interface file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 33
diff changeset
543 if isinstance(
79e453012ab9 Added the context menu action "New interface file..." to give a more concise way to create a new interface file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 33
diff changeset
544 itm, (ProjectBrowserFileItem, BrowserClassItem, BrowserMethodItem)
79e453012ab9 Added the context menu action "New interface file..." to give a more concise way to create a new interface file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 33
diff changeset
545 ):
79e453012ab9 Added the context menu action "New interface file..." to give a more concise way to create a new interface file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 33
diff changeset
546 dn = os.path.dirname(itm.fileName())
79e453012ab9 Added the context menu action "New interface file..." to give a more concise way to create a new interface file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 33
diff changeset
547 elif isinstance(
79e453012ab9 Added the context menu action "New interface file..." to give a more concise way to create a new interface file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 33
diff changeset
548 itm, (ProjectBrowserSimpleDirectoryItem, ProjectBrowserDirectoryItem)
79e453012ab9 Added the context menu action "New interface file..." to give a more concise way to create a new interface file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 33
diff changeset
549 ):
79e453012ab9 Added the context menu action "New interface file..." to give a more concise way to create a new interface file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 33
diff changeset
550 dn = itm.dirName()
79e453012ab9 Added the context menu action "New interface file..." to give a more concise way to create a new interface file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 33
diff changeset
551 else:
79e453012ab9 Added the context menu action "New interface file..." to give a more concise way to create a new interface file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 33
diff changeset
552 dn = ""
79e453012ab9 Added the context menu action "New interface file..." to give a more concise way to create a new interface file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 33
diff changeset
553
79e453012ab9 Added the context menu action "New interface file..." to give a more concise way to create a new interface file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 33
diff changeset
554 filename, ok = EricPathPickerDialog.getStrPath(
79e453012ab9 Added the context menu action "New interface file..." to give a more concise way to create a new interface file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 33
diff changeset
555 self,
79e453012ab9 Added the context menu action "New interface file..." to give a more concise way to create a new interface file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 33
diff changeset
556 self.tr("New interface file"),
79e453012ab9 Added the context menu action "New interface file..." to give a more concise way to create a new interface file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 33
diff changeset
557 self.tr("Enter the path of the new interface file:"),
79e453012ab9 Added the context menu action "New interface file..." to give a more concise way to create a new interface file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 33
diff changeset
558 mode=EricPathPickerModes.SAVE_FILE_ENSURE_EXTENSION_MODE,
79e453012ab9 Added the context menu action "New interface file..." to give a more concise way to create a new interface file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 33
diff changeset
559 strPath=dn,
79e453012ab9 Added the context menu action "New interface file..." to give a more concise way to create a new interface file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 33
diff changeset
560 defaultDirectory=dn,
79e453012ab9 Added the context menu action "New interface file..." to give a more concise way to create a new interface file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 33
diff changeset
561 filters=self.project.getFileCategoryFilters(
79e453012ab9 Added the context menu action "New interface file..." to give a more concise way to create a new interface file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 33
diff changeset
562 categories=["INTERFACES"], withAll=False
79e453012ab9 Added the context menu action "New interface file..." to give a more concise way to create a new interface file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 33
diff changeset
563 ),
79e453012ab9 Added the context menu action "New interface file..." to give a more concise way to create a new interface file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 33
diff changeset
564 )
79e453012ab9 Added the context menu action "New interface file..." to give a more concise way to create a new interface file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 33
diff changeset
565 if ok:
79e453012ab9 Added the context menu action "New interface file..." to give a more concise way to create a new interface file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 33
diff changeset
566 if not os.path.splitext(filename)[1]:
38
aefce8f68439 Corrected a code style issue.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 37
diff changeset
567 filename += ".idl"
37
79e453012ab9 Added the context menu action "New interface file..." to give a more concise way to create a new interface file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 33
diff changeset
568
79e453012ab9 Added the context menu action "New interface file..." to give a more concise way to create a new interface file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 33
diff changeset
569 if os.path.exists(filename):
79e453012ab9 Added the context menu action "New interface file..." to give a more concise way to create a new interface file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 33
diff changeset
570 EricMessageBox.critical(
79e453012ab9 Added the context menu action "New interface file..." to give a more concise way to create a new interface file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 33
diff changeset
571 self,
79e453012ab9 Added the context menu action "New interface file..." to give a more concise way to create a new interface file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 33
diff changeset
572 self.tr("New interface file"),
79e453012ab9 Added the context menu action "New interface file..." to give a more concise way to create a new interface file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 33
diff changeset
573 self.tr(
79e453012ab9 Added the context menu action "New interface file..." to give a more concise way to create a new interface file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 33
diff changeset
574 "<p>The file <b>{0}</b> already exists. The action will be"
79e453012ab9 Added the context menu action "New interface file..." to give a more concise way to create a new interface file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 33
diff changeset
575 " aborted.</p>"
79e453012ab9 Added the context menu action "New interface file..." to give a more concise way to create a new interface file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 33
diff changeset
576 ).format(filename),
79e453012ab9 Added the context menu action "New interface file..." to give a more concise way to create a new interface file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 33
diff changeset
577 )
79e453012ab9 Added the context menu action "New interface file..." to give a more concise way to create a new interface file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 33
diff changeset
578 return
79e453012ab9 Added the context menu action "New interface file..." to give a more concise way to create a new interface file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 33
diff changeset
579
79e453012ab9 Added the context menu action "New interface file..." to give a more concise way to create a new interface file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 33
diff changeset
580 try:
79e453012ab9 Added the context menu action "New interface file..." to give a more concise way to create a new interface file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 33
diff changeset
581 with open(filename, "w") as f:
79e453012ab9 Added the context menu action "New interface file..." to give a more concise way to create a new interface file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 33
diff changeset
582 f.write("// {0}\n".format(self.project.getRelativePath(filename)))
79e453012ab9 Added the context menu action "New interface file..." to give a more concise way to create a new interface file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 33
diff changeset
583 except OSError as err:
79e453012ab9 Added the context menu action "New interface file..." to give a more concise way to create a new interface file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 33
diff changeset
584 EricMessageBox.critical(
79e453012ab9 Added the context menu action "New interface file..." to give a more concise way to create a new interface file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 33
diff changeset
585 self,
79e453012ab9 Added the context menu action "New interface file..." to give a more concise way to create a new interface file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 33
diff changeset
586 self.tr("New interface file"),
79e453012ab9 Added the context menu action "New interface file..." to give a more concise way to create a new interface file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 33
diff changeset
587 self.tr(
79e453012ab9 Added the context menu action "New interface file..." to give a more concise way to create a new interface file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 33
diff changeset
588 "<p>The file <b>{0}</b> could not be created. Aborting...</p>"
79e453012ab9 Added the context menu action "New interface file..." to give a more concise way to create a new interface file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 33
diff changeset
589 "<p>Reason: {1}</p>"
79e453012ab9 Added the context menu action "New interface file..." to give a more concise way to create a new interface file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 33
diff changeset
590 ).format(filename, str(err)),
79e453012ab9 Added the context menu action "New interface file..." to give a more concise way to create a new interface file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 33
diff changeset
591 )
79e453012ab9 Added the context menu action "New interface file..." to give a more concise way to create a new interface file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 33
diff changeset
592 return
79e453012ab9 Added the context menu action "New interface file..." to give a more concise way to create a new interface file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 33
diff changeset
593
79e453012ab9 Added the context menu action "New interface file..." to give a more concise way to create a new interface file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 33
diff changeset
594 self.project.appendFile(filename)
79e453012ab9 Added the context menu action "New interface file..." to give a more concise way to create a new interface file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 33
diff changeset
595 self.sourceFile[str].emit(filename)
79e453012ab9 Added the context menu action "New interface file..." to give a more concise way to create a new interface file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 33
diff changeset
596
1
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
597 def __addInterfaceFiles(self):
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
598 """
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
599 Private method to add interface files to the project.
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
600 """
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
601 itm = self.model().item(self.currentIndex())
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
602 if isinstance(
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
603 itm, (ProjectBrowserFileItem, BrowserClassItem, BrowserMethodItem)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
604 ):
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
605 dn = os.path.dirname(itm.fileName())
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
606 elif isinstance(
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
607 itm, (ProjectBrowserSimpleDirectoryItem, ProjectBrowserDirectoryItem)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
608 ):
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
609 dn = itm.dirName()
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
610 else:
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
611 dn = None
33
782792ab98fb Fixed an issue related to adding files and directories to a project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 32
diff changeset
612 self.project.addFiles("INTERFACES", dn)
1
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
613
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
614 def __addInterfacesDirectory(self):
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
615 """
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
616 Private method to add interface files of a directory to the project.
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
617 """
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
618 itm = self.model().item(self.currentIndex())
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
619 if isinstance(
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
620 itm, (ProjectBrowserFileItem, BrowserClassItem, BrowserMethodItem)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
621 ):
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
622 dn = os.path.dirname(itm.fileName())
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
623 elif isinstance(
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
624 itm, (ProjectBrowserSimpleDirectoryItem, ProjectBrowserDirectoryItem)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
625 ):
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
626 dn = itm.dirName()
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
627 else:
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
628 dn = None
33
782792ab98fb Fixed an issue related to adding files and directories to a project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 32
diff changeset
629 self.project.addDirectory("INTERFACES", dn)
1
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
630
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
631 def __deleteFile(self):
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
632 """
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
633 Private method to delete files from the project.
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
634 """
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
635 itmList = self.getSelectedItems()
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
636
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
637 files = []
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
638 fullNames = []
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
639 for itm in itmList:
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
640 fn2 = itm.fileName()
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
641 fullNames.append(fn2)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
642 fn = self.project.getRelativePath(fn2)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
643 files.append(fn)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
644
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
645 dlg = DeleteFilesConfirmationDialog(
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
646 self.parent(),
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
647 self.tr("Delete interfaces"),
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
648 self.tr(
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
649 "Do you really want to delete these interfaces from" " the project?"
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
650 ),
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
651 files,
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
652 )
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
653
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
654 if dlg.exec() == QDialog.DialogCode.Accepted:
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
655 for fn2, fn in zip(fullNames, files):
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
656 self.closeSourceWindow.emit(fn2)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
657 self.project.deleteFile(fn)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
658
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
659 ###########################################################################
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
660 ## Methods to handle the various compile commands
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
661 ###########################################################################
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
662
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
663 def __readStdout(self):
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
664 """
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
665 Private slot to handle the readyReadStandardOutput signal of the
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
666 omniidl process.
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
667 """
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
668 if self.compileProc is None:
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
669 return
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
670
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
671 ioEncoding = Preferences.getSystem("IOEncoding")
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
672
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
673 self.compileProc.setReadChannel(QProcess.ProcessChannel.StandardOutput)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
674 while self.compileProc and self.compileProc.canReadLine():
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
675 s = "omniidl: "
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
676 output = str(self.compileProc.readLine(), ioEncoding, "replace")
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
677 s += output
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
678 self.appendStdout.emit(s)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
679
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
680 def __readStderr(self):
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
681 """
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
682 Private slot to handle the readyReadStandardError signal of the
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
683 omniidl process.
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
684 """
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
685 if self.compileProc is None:
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
686 return
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
687
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
688 ioEncoding = Preferences.getSystem("IOEncoding")
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
689
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
690 self.compileProc.setReadChannel(QProcess.ProcessChannel.StandardError)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
691 while self.compileProc and self.compileProc.canReadLine():
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
692 s = "omniidl: "
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
693 error = str(self.compileProc.readLine(), ioEncoding, "replace")
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
694 s += error
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
695 self.appendStderr.emit(s)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
696
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
697 def __compileIDLDone(self, exitCode, exitStatus):
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
698 """
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
699 Private slot to handle the finished signal of the omniidl process.
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
700
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
701 @param exitCode exit code of the process (integer)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
702 @param exitStatus exit status of the process (QProcess.ExitStatus)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
703 """
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
704 pixmapSuffix = "dark" if ericApp().usesDarkPalette() else "light"
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
705 pixmap = EricPixmapCache.getPixmap(
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
706 os.path.join(
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
707 os.path.dirname(__file__),
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
708 "icons",
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
709 "corba48-{0}".format(pixmapSuffix),
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
710 )
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
711 )
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
712
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
713 self.compileRunning = False
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
714 ui = ericApp().getObject("UserInterface")
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
715 if exitStatus == QProcess.ExitStatus.NormalExit and exitCode == 0:
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
716 path = os.path.dirname(self.idlFile)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
717 poaList = glob.glob(os.path.join(path, "*__POA"))
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
718 npoaList = [f.replace("__POA", "") for f in poaList]
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
719 fileList = glob.glob(os.path.join(path, "*_idl.py"))
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
720 for directory in poaList + npoaList:
19
c2156196748a Changed some import statements.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 12
diff changeset
721 fileList += FileSystemUtilities.direntries(directory, True, "*.py")
1
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
722 for file in fileList:
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
723 self.project.appendFile(file)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
724 ui.showNotification(
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
725 pixmap,
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
726 self.tr("Interface Compilation"),
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
727 self.tr("The compilation of the interface file was successful."),
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
728 )
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
729 else:
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
730 ui.showNotification(
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
731 pixmap,
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
732 self.tr("Interface Compilation"),
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
733 self.tr("The compilation of the interface file failed."),
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
734 kind=NotificationTypes.CRITICAL,
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
735 timeout=0,
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
736 )
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
737 self.compileProc = None
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
738
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
739 def __compileIDL(self, fn, noDialog=False, progress=None):
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
740 """
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
741 Private method to compile a .idl file to python.
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
742
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
743 @param fn filename of the .idl file to be compiled (string)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
744 @param noDialog flag indicating silent operations (boolean)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
745 @param progress reference to the progress dialog (EricProgressDialog)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
746 @return reference to the compile process (QProcess)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
747 """
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
748 params = self.project.getProjectData(dataKey="IDLPARAMS")
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
749
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
750 self.compileProc = QProcess()
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
751 args = []
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
752
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
753 args.append("-bpython")
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
754 args.append("-I.")
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
755 for directory in params["IncludeDirs"]:
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
756 args.append(
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
757 "-I{0}".format(self.project.getAbsoluteUniversalPath(directory))
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
758 )
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
759 for name in params["DefinedNames"]:
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
760 args.append("-D{0}".format(name))
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
761 for name in params["UndefinedNames"]:
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
762 args.append("-U{0}".format(name))
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
763
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
764 fn = self.project.getAbsoluteUniversalPath(fn)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
765 self.idlFile = fn
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
766 args.append("-C{0}".format(os.path.dirname(fn)))
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
767 args.append(fn)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
768
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
769 self.compileProc.finished.connect(self.__compileIDLDone)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
770 self.compileProc.readyReadStandardOutput.connect(self.__readStdout)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
771 self.compileProc.readyReadStandardError.connect(self.__readStderr)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
772
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
773 self.noDialog = noDialog
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
774 self.compileProc.start(self.omniidl, args)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
775 procStarted = self.compileProc.waitForStarted(5000)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
776 if procStarted:
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
777 self.compileRunning = True
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
778 return self.compileProc
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
779 else:
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
780 self.compileRunning = False
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
781 if progress is not None:
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
782 progress.cancel()
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
783 EricMessageBox.critical(
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
784 self,
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
785 self.tr("Process Generation Error"),
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
786 self.tr(
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
787 "<p>Could not start {0}.<br>"
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
788 "Ensure that it is in the search path.</p>"
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
789 ).format(self.omniidl),
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
790 )
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
791 return None
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
792
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
793 def __compileInterface(self):
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
794 """
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
795 Private method to compile an interface to python.
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
796 """
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
797 if self.omniidl is not None:
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
798 itm = self.model().item(self.currentIndex())
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
799 fn2 = itm.fileName()
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
800 fn = self.project.getRelativePath(fn2)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
801 self.__compileIDL(fn)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
802
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
803 def __compileAllInterfaces(self):
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
804 """
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
805 Private method to compile all interfaces to python.
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
806 """
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
807 if self.omniidl is not None:
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
808 numIDLs = len(self.project.getProjectData(dataKey="INTERFACES"))
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
809 progress = EricProgressDialog(
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
810 self.tr("Compiling interfaces..."),
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
811 self.tr("Abort"),
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
812 0,
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
813 numIDLs,
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
814 self.tr("%v/%m Interfaces"),
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
815 self,
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
816 )
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
817 progress.setModal(True)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
818 progress.setMinimumDuration(0)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
819 progress.setWindowTitle(self.tr("Interfaces"))
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
820
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
821 for prog, fn in enumerate(
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
822 self.project.getProjectData(dataKey="INTERFACES")
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
823 ):
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
824 progress.setValue(prog)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
825 if progress.wasCanceled():
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
826 break
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
827 proc = self.__compileIDL(fn, True, progress)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
828 if proc is not None:
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
829 while proc.state() == QProcess.ProcessState.Running:
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
830 QThread.msleep(100)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
831 QApplication.processEvents()
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
832 else:
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
833 break
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
834 progress.setValue(numIDLs)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
835
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
836 def __compileSelectedInterfaces(self):
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
837 """
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
838 Private method to compile selected interfaces to python.
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
839 """
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
840 if self.omniidl is not None:
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
841 items = self.getSelectedItems()
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
842
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
843 files = [self.project.getRelativePath(itm.fileName()) for itm in items]
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
844 numIDLs = len(files)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
845 progress = EricProgressDialog(
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
846 self.tr("Compiling interfaces..."),
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
847 self.tr("Abort"),
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
848 0,
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
849 numIDLs,
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
850 self.tr("%v/%m Interfaces"),
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
851 self,
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
852 )
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
853 progress.setModal(True)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
854 progress.setMinimumDuration(0)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
855 progress.setWindowTitle(self.tr("Interfaces"))
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
856
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
857 for prog, fn in enumerate(files):
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
858 progress.setValue(prog)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
859 if progress.wasCanceled():
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
860 break
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
861 proc = self.__compileIDL(fn, True, progress)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
862 if proc is not None:
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
863 while proc.state() == QProcess.ProcessState.Running:
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
864 QThread.msleep(100)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
865 QApplication.processEvents()
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
866 else:
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
867 break
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
868 progress.setValue(numIDLs)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
869
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
870 def __configureIdlCompiler(self):
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
871 """
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
872 Private method to show a dialog to configure some options for the
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
873 IDL compiler.
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
874 """
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
875 from .IdlCompilerOptionsDialog import IdlCompilerOptionsDialog
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
876
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
877 params = self.project.getProjectData(dataKey="IDLPARAMS")
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
878
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
879 dlg = IdlCompilerOptionsDialog(
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
880 params["IncludeDirs"][:],
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
881 params["DefinedNames"][:],
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
882 params["UndefinedNames"][:],
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
883 self.project,
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
884 self,
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
885 )
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
886 if dlg.exec() == QDialog.DialogCode.Accepted:
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
887 include, defined, undefined = dlg.getData()
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
888 if include != params["IncludeDirs"]:
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
889 params["IncludeDirs"] = include[:]
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
890 self.project.setDirty(True)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
891 if defined != params["DefinedNames"]:
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
892 params["DefinedNames"] = defined[:]
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
893 self.project.setDirty(True)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
894 if undefined != params["UndefinedNames"]:
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
895 params["UndefinedNames"] = undefined[:]
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
896 self.project.setDirty(True)
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
897
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
898 def __configureCorba(self):
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
899 """
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
900 Private method to open the configuration dialog.
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
901 """
d4384e4d7aff First incarnation of the CORBA IDL support plugin, that was an integral part of eric7 previously.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
902 ericApp().getObject("UserInterface").showPreferences("corbaPage")

eric ide

mercurial