69 Class implementing the project management functionality. |
69 Class implementing the project management functionality. |
70 |
70 |
71 @signal dirty(int) emitted when the dirty state changes |
71 @signal dirty(int) emitted when the dirty state changes |
72 @signal projectLanguageAdded(str) emitted after a new language was added |
72 @signal projectLanguageAdded(str) emitted after a new language was added |
73 @signal projectLanguageAddedByCode(str) emitted after a new language was added. |
73 @signal projectLanguageAddedByCode(str) emitted after a new language was added. |
74 The language code is sent by this signal. |
74 The language code is sent by this signal. |
|
75 @signal projectLanguageRemoved(str) emitted after a language was removed |
75 @signal projectFormAdded(str) emitted after a new form was added |
76 @signal projectFormAdded(str) emitted after a new form was added |
|
77 @signal projectFormRemoved(str) emitted after a form was removed |
76 @signal projectSourceAdded(str) emitted after a new source file was added |
78 @signal projectSourceAdded(str) emitted after a new source file was added |
|
79 @signal projectSourceRemoved(str) emitted after a source was removed |
77 @signal projectInterfaceAdded(str) emitted after a new IDL file was added |
80 @signal projectInterfaceAdded(str) emitted after a new IDL file was added |
|
81 @signal projectInterfaceRemoved(str) emitted after a IDL file was removed |
78 @signal projectResourceAdded(str) emitted after a new resource file was added |
82 @signal projectResourceAdded(str) emitted after a new resource file was added |
|
83 @signal projectResourceRemoved(str) emitted after a resource was removed |
|
84 @signal projectOthersAdded(str) emitted after a file or directory was added |
|
85 to the OTHERS project data area |
|
86 @signal projectOthersRemoved(str) emitted after a file was removed from the |
|
87 OTHERS project data area |
79 @signal projectAboutToBeCreated() emitted just before the project will be created |
88 @signal projectAboutToBeCreated() emitted just before the project will be created |
80 @signal newProjectHooks() emitted after a new project was generated but before |
89 @signal newProjectHooks() emitted after a new project was generated but before |
81 the newProject() signal is sent |
90 the newProject() signal is sent |
82 @signal newProject() emitted after a new project was generated |
91 @signal newProject() emitted after a new project was generated |
83 @signal sourceFile(str) emitted after a project file was read to |
92 @signal sourceFile(str) emitted after a project file was read to |
86 projectOpened() signal is sent |
95 projectOpened() signal is sent |
87 @signal projectOpened() emitted after a project file was read |
96 @signal projectOpened() emitted after a project file was read |
88 @signal projectClosedHooks() emitted after a project file was closed but before the |
97 @signal projectClosedHooks() emitted after a project file was closed but before the |
89 projectClosed() signal is sent |
98 projectClosed() signal is sent |
90 @signal projectClosed() emitted after a project was closed |
99 @signal projectClosed() emitted after a project was closed |
91 @signal projectOthersAdded(str) emitted after a file or directory was added |
|
92 to the OTHERS project data area |
|
93 @signal projectFileRenamed(str, str) emitted after a file of the project |
100 @signal projectFileRenamed(str, str) emitted after a file of the project |
94 has been renamed |
101 has been renamed |
95 @signal projectPropertiesChanged() emitted after the project properties were changed |
102 @signal projectPropertiesChanged() emitted after the project properties were changed |
96 @signal directoryRemoved(str) emitted after a directory has been removed from |
103 @signal directoryRemoved(str) emitted after a directory has been removed from |
97 the project |
104 the project |
108 changed |
115 changed |
109 """ |
116 """ |
110 dirty = pyqtSignal(int) |
117 dirty = pyqtSignal(int) |
111 projectLanguageAdded = pyqtSignal(str) |
118 projectLanguageAdded = pyqtSignal(str) |
112 projectLanguageAddedByCode = pyqtSignal(str) |
119 projectLanguageAddedByCode = pyqtSignal(str) |
|
120 projectLanguageRemoved = pyqtSignal(str) |
113 projectFormAdded = pyqtSignal(str) |
121 projectFormAdded = pyqtSignal(str) |
|
122 projectFormRemoved = pyqtSignal(str) |
114 projectSourceAdded = pyqtSignal(str) |
123 projectSourceAdded = pyqtSignal(str) |
|
124 projectSourceRemoved = pyqtSignal(str) |
115 projectInterfaceAdded = pyqtSignal(str) |
125 projectInterfaceAdded = pyqtSignal(str) |
|
126 projectInterfaceRemoved = pyqtSignal(str) |
116 projectResourceAdded = pyqtSignal(str) |
127 projectResourceAdded = pyqtSignal(str) |
|
128 projectResourceRemoved = pyqtSignal(str) |
117 projectOthersAdded = pyqtSignal(str) |
129 projectOthersAdded = pyqtSignal(str) |
|
130 projectOthersRemoved = pyqtSignal(str) |
118 projectAboutToBeCreated = pyqtSignal() |
131 projectAboutToBeCreated = pyqtSignal() |
119 newProjectHooks = pyqtSignal() |
132 newProjectHooks = pyqtSignal() |
120 newProject = pyqtSignal() |
133 newProject = pyqtSignal() |
121 sourceFile = pyqtSignal(str) |
134 sourceFile = pyqtSignal(str) |
122 projectOpenedHooks = pyqtSignal() |
135 projectOpenedHooks = pyqtSignal() |
1632 """ |
1645 """ |
1633 fn = self.getRelativePath(fn) |
1646 fn = self.getRelativePath(fn) |
1634 dirty = True |
1647 dirty = True |
1635 if fn in self.pdata["SOURCES"]: |
1648 if fn in self.pdata["SOURCES"]: |
1636 self.pdata["SOURCES"].remove(fn) |
1649 self.pdata["SOURCES"].remove(fn) |
|
1650 self.projectSourceRemoved.emit(fn) |
1637 elif fn in self.pdata["FORMS"]: |
1651 elif fn in self.pdata["FORMS"]: |
1638 self.pdata["FORMS"].remove(fn) |
1652 self.pdata["FORMS"].remove(fn) |
|
1653 self.projectFormRemoved.emit(fn) |
1639 elif fn in self.pdata["INTERFACES"]: |
1654 elif fn in self.pdata["INTERFACES"]: |
1640 self.pdata["INTERFACES"].remove(fn) |
1655 self.pdata["INTERFACES"].remove(fn) |
|
1656 self.projectInterfaceRemoved.emit(fn) |
1641 elif fn in self.pdata["RESOURCES"]: |
1657 elif fn in self.pdata["RESOURCES"]: |
1642 self.pdata["RESOURCES"].remove(fn) |
1658 self.pdata["RESOURCES"].remove(fn) |
|
1659 self.projectResourceRemoved.emit(fn) |
1643 elif fn in self.pdata["OTHERS"]: |
1660 elif fn in self.pdata["OTHERS"]: |
1644 self.pdata["OTHERS"].remove(fn) |
1661 self.pdata["OTHERS"].remove(fn) |
|
1662 self.projectOthersRemoved.emit(fn) |
1645 elif fn in self.pdata["TRANSLATIONS"]: |
1663 elif fn in self.pdata["TRANSLATIONS"]: |
1646 self.pdata["TRANSLATIONS"].remove(fn) |
1664 self.pdata["TRANSLATIONS"].remove(fn) |
|
1665 self.projectLanguageRemoved.emit(fn) |
1647 else: |
1666 else: |
1648 dirty = False |
1667 dirty = False |
1649 updateModel and self.__model.removeItem(fn) |
1668 updateModel and self.__model.removeItem(fn) |
1650 if dirty: |
1669 if dirty: |
1651 self.setDirty(True) |
1670 self.setDirty(True) |