21 |
21 |
22 class AddFileDialog(QDialog, Ui_AddFileDialog): |
22 class AddFileDialog(QDialog, Ui_AddFileDialog): |
23 """ |
23 """ |
24 Class implementing a dialog to add a file to the project. |
24 Class implementing a dialog to add a file to the project. |
25 """ |
25 """ |
26 def __init__(self, pro, parent=None, filter=None, name=None, |
26 def __init__(self, pro, parent=None, fileTypeFilter=None, name=None, |
27 startdir=None): |
27 startdir=None): |
28 """ |
28 """ |
29 Constructor |
29 Constructor |
30 |
30 |
31 @param pro reference to the project object |
31 @param pro reference to the project object |
32 @param parent parent widget of this dialog (QWidget) |
32 @param parent parent widget of this dialog (QWidget) |
33 @param filter filter specification for the file to add (string) |
33 @param fileTypeFilter filter specification for the file to add (string) |
34 @param name name of this dialog (string) |
34 @param name name of this dialog (string) |
35 @param startdir start directory for the selection dialog |
35 @param startdir start directory for the selection dialog |
36 """ |
36 """ |
37 super(AddFileDialog, self).__init__(parent) |
37 super(AddFileDialog, self).__init__(parent) |
38 if name: |
38 if name: |
42 self.sourceFilesPicker.setMode(E5PathPickerModes.OpenFilesMode) |
42 self.sourceFilesPicker.setMode(E5PathPickerModes.OpenFilesMode) |
43 self.targetDirPicker.setMode(E5PathPickerModes.DirectoryMode) |
43 self.targetDirPicker.setMode(E5PathPickerModes.DirectoryMode) |
44 self.targetDirPicker.setDefaultDirectory(startdir) |
44 self.targetDirPicker.setDefaultDirectory(startdir) |
45 |
45 |
46 self.targetDirPicker.setText(pro.ppath) |
46 self.targetDirPicker.setText(pro.ppath) |
47 self.filter = filter |
47 self.fileTypeFilter = fileTypeFilter |
48 self.ppath = pro.ppath |
48 self.ppath = pro.ppath |
49 self.startdir = startdir |
49 self.startdir = startdir |
50 self.filetypes = pro.pdata["FILETYPES"] |
50 self.filetypes = pro.pdata["FILETYPES"] |
51 # save a reference to the filetypes dict |
51 # save a reference to the filetypes dict |
52 |
52 |
53 if self.filter is not None: |
53 if self.fileTypeFilter is not None: |
54 self.sourcecodeCheckBox.hide() |
54 self.sourcecodeCheckBox.hide() |
55 |
55 |
56 msh = self.minimumSizeHint() |
56 msh = self.minimumSizeHint() |
57 self.resize(max(self.width(), msh.width()), msh.height()) |
57 self.resize(max(self.width(), msh.width()), msh.height()) |
58 |
58 |
90 " ".join(patterns["FORMS"]), |
90 " ".join(patterns["FORMS"]), |
91 " ".join(patterns["RESOURCES"]), |
91 " ".join(patterns["RESOURCES"]), |
92 " ".join(patterns["INTERFACES"]), |
92 " ".join(patterns["INTERFACES"]), |
93 " ".join(patterns["TRANSLATIONS"])) |
93 " ".join(patterns["TRANSLATIONS"])) |
94 caption = self.tr("Select Files") |
94 caption = self.tr("Select Files") |
95 elif self.filter == 'form': |
95 elif self.fileTypeFilter == 'form': |
96 patterns = [] |
96 patterns = [] |
97 for pattern, filetype in list(self.filetypes.items()): |
97 for pattern, filetype in list(self.filetypes.items()): |
98 if filetype == "FORMS": |
98 if filetype == "FORMS": |
99 patterns.append(pattern) |
99 patterns.append(pattern) |
100 dfilter = self.tr("Forms Files ({0})")\ |
100 dfilter = self.tr("Forms Files ({0})")\ |
101 .format(" ".join(patterns)) |
101 .format(" ".join(patterns)) |
102 caption = self.tr("Select user-interface files") |
102 caption = self.tr("Select user-interface files") |
103 elif self.filter == "resource": |
103 elif self.fileTypeFilter == "resource": |
104 patterns = [] |
104 patterns = [] |
105 for pattern, filetype in list(self.filetypes.items()): |
105 for pattern, filetype in list(self.filetypes.items()): |
106 if filetype == "RESOURCES": |
106 if filetype == "RESOURCES": |
107 patterns.append(pattern) |
107 patterns.append(pattern) |
108 dfilter = self.tr("Resource Files ({0})")\ |
108 dfilter = self.tr("Resource Files ({0})")\ |
109 .format(" ".join(patterns)) |
109 .format(" ".join(patterns)) |
110 caption = self.tr("Select resource files") |
110 caption = self.tr("Select resource files") |
111 elif self.filter == 'source': |
111 elif self.fileTypeFilter == 'source': |
112 patterns = [] |
112 patterns = [] |
113 for pattern, filetype in list(self.filetypes.items()): |
113 for pattern, filetype in list(self.filetypes.items()): |
114 if filetype == "SOURCES": |
114 if filetype == "SOURCES": |
115 patterns.append(pattern) |
115 patterns.append(pattern) |
116 dfilter = self.tr("Source Files ({0});;All Files (*)")\ |
116 dfilter = self.tr("Source Files ({0});;All Files (*)")\ |
117 .format(" ".join(patterns)) |
117 .format(" ".join(patterns)) |
118 caption = self.tr("Select source files") |
118 caption = self.tr("Select source files") |
119 elif self.filter == 'interface': |
119 elif self.fileTypeFilter == 'interface': |
120 patterns = [] |
120 patterns = [] |
121 for pattern, filetype in list(self.filetypes.items()): |
121 for pattern, filetype in list(self.filetypes.items()): |
122 if filetype == "INTERFACES": |
122 if filetype == "INTERFACES": |
123 patterns.append(pattern) |
123 patterns.append(pattern) |
124 dfilter = self.tr("Interface Files ({0})")\ |
124 dfilter = self.tr("Interface Files ({0})")\ |
125 .format(" ".join(patterns)) |
125 .format(" ".join(patterns)) |
126 caption = self.tr("Select interface files") |
126 caption = self.tr("Select interface files") |
127 elif self.filter == 'translation': |
127 elif self.fileTypeFilter == 'translation': |
128 patterns = [] |
128 patterns = [] |
129 for pattern, filetype in list(self.filetypes.items()): |
129 for pattern, filetype in list(self.filetypes.items()): |
130 if filetype == "TRANSLATIONS": |
130 if filetype == "TRANSLATIONS": |
131 patterns.append(pattern) |
131 patterns.append(pattern) |
132 dfilter = self.tr("Translation Files ({0})")\ |
132 dfilter = self.tr("Translation Files ({0})")\ |
133 .format(" ".join(patterns)) |
133 .format(" ".join(patterns)) |
134 caption = self.tr("Select translation files") |
134 caption = self.tr("Select translation files") |
135 elif self.filter == 'others': |
135 elif self.fileTypeFilter == 'others': |
136 dfilter = self.tr("All Files (*)") |
136 dfilter = self.tr("All Files (*)") |
137 caption = self.tr("Select files") |
137 caption = self.tr("Select files") |
138 else: |
138 else: |
139 dfilter = "" |
139 dfilter = "" |
140 caption = "" |
140 caption = "" |