src/eric7/EricWidgets/EricPathPickerDialog.py

Tue, 10 Dec 2024 15:46:34 +0100

author
Detlev Offenbach <detlev@die-offenbachs.de>
date
Tue, 10 Dec 2024 15:46:34 +0100
branch
eric7
changeset 11090
f5f5f5803935
parent 11035
e1e1d6e317c7
permissions
-rw-r--r--

Updated copyright for 2025.

6440
81a4bebbc028 E5PathPickerDialog: added an input dialog using the path picker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1 # -*- coding: utf-8 -*-
81a4bebbc028 E5PathPickerDialog: added an input dialog using the path picker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
2
11090
f5f5f5803935 Updated copyright for 2025.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 11035
diff changeset
3 # Copyright (c) 2018 - 2025 Detlev Offenbach <detlev@die-offenbachs.de>
6440
81a4bebbc028 E5PathPickerDialog: added an input dialog using the path picker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
4 #
81a4bebbc028 E5PathPickerDialog: added an input dialog using the path picker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
5
81a4bebbc028 E5PathPickerDialog: added an input dialog using the path picker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
6 """
81a4bebbc028 E5PathPickerDialog: added an input dialog using the path picker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
7 Module implementing a dialog to enter a file system path using a file picker.
81a4bebbc028 E5PathPickerDialog: added an input dialog using the path picker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
8 """
81a4bebbc028 E5PathPickerDialog: added an input dialog using the path picker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
9
11035
e1e1d6e317c7 Modified some of the EricWidgets dialogs to ensure a valid parent widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10630
diff changeset
10 from PyQt6.QtCore import QCoreApplication
9473
3f23dbf37dbe Resorted the import statements using isort.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9322
diff changeset
11 from PyQt6.QtWidgets import QDialog, QDialogButtonBox, QLabel, QVBoxLayout
6440
81a4bebbc028 E5PathPickerDialog: added an input dialog using the path picker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
12
8356
68ec9c3d4de5 Renamed the modules and classes of the E5Gui package to have the prefix 'Eric' instead of 'E5'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8327
diff changeset
13 from .EricPathPicker import EricPathPicker, EricPathPickerModes
6440
81a4bebbc028 E5PathPickerDialog: added an input dialog using the path picker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
14
6466
dac80ad0de75 Fixed some code style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6444
diff changeset
15
8356
68ec9c3d4de5 Renamed the modules and classes of the E5Gui package to have the prefix 'Eric' instead of 'E5'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8327
diff changeset
16 class EricPathPickerDialog(QDialog):
6440
81a4bebbc028 E5PathPickerDialog: added an input dialog using the path picker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
17 """
81a4bebbc028 E5PathPickerDialog: added an input dialog using the path picker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
18 Class implementing a dialog to enter a file system path using a file
81a4bebbc028 E5PathPickerDialog: added an input dialog using the path picker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
19 picker.
81a4bebbc028 E5PathPickerDialog: added an input dialog using the path picker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
20 """
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
21
6440
81a4bebbc028 E5PathPickerDialog: added an input dialog using the path picker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
22 def __init__(self, parent=None):
81a4bebbc028 E5PathPickerDialog: added an input dialog using the path picker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
23 """
81a4bebbc028 E5PathPickerDialog: added an input dialog using the path picker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
24 Constructor
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
25
6440
81a4bebbc028 E5PathPickerDialog: added an input dialog using the path picker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
26 @param parent reference to the parent widget
81a4bebbc028 E5PathPickerDialog: added an input dialog using the path picker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
27 @type QWidget
81a4bebbc028 E5PathPickerDialog: added an input dialog using the path picker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
28 """
8218
7c09585bd960 Applied some more code simplifications suggested by the new Simplify checker (super(Foo, self) => super()).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8143
diff changeset
29 super().__init__(parent)
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
30
6440
81a4bebbc028 E5PathPickerDialog: added an input dialog using the path picker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
31 self.setMinimumWidth(400)
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
32
6440
81a4bebbc028 E5PathPickerDialog: added an input dialog using the path picker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
33 self.__layout = QVBoxLayout(self)
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
34
6440
81a4bebbc028 E5PathPickerDialog: added an input dialog using the path picker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
35 self.__label = QLabel(self)
6444
7ce7a43aeeba E5PathPickerDialog: enabled word wrap for the label text to be able to cope with longer texts.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6441
diff changeset
36 self.__label.setWordWrap(True)
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
37
8356
68ec9c3d4de5 Renamed the modules and classes of the E5Gui package to have the prefix 'Eric' instead of 'E5'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8327
diff changeset
38 self.__pathPicker = EricPathPicker(self)
6440
81a4bebbc028 E5PathPickerDialog: added an input dialog using the path picker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
39 self.__buttonBox = QDialogButtonBox(
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
40 QDialogButtonBox.StandardButton.Cancel | QDialogButtonBox.StandardButton.Ok,
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
41 self,
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
42 )
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
43
6440
81a4bebbc028 E5PathPickerDialog: added an input dialog using the path picker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
44 self.__layout.addWidget(self.__label)
81a4bebbc028 E5PathPickerDialog: added an input dialog using the path picker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
45 self.__layout.addWidget(self.__pathPicker)
81a4bebbc028 E5PathPickerDialog: added an input dialog using the path picker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
46 self.__layout.addWidget(self.__buttonBox)
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
47
6440
81a4bebbc028 E5PathPickerDialog: added an input dialog using the path picker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
48 self.__buttonBox.accepted.connect(self.accept)
81a4bebbc028 E5PathPickerDialog: added an input dialog using the path picker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
49 self.__buttonBox.rejected.connect(self.reject)
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
50
9322
3f0fe9a79aa1 Corrected the shown size of the path picker dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9238
diff changeset
51 msh = self.minimumSizeHint()
3f0fe9a79aa1 Corrected the shown size of the path picker dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9238
diff changeset
52 self.resize(max(self.width(), msh.width()), msh.height())
3f0fe9a79aa1 Corrected the shown size of the path picker dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9238
diff changeset
53
6440
81a4bebbc028 E5PathPickerDialog: added an input dialog using the path picker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
54 def setLabelText(self, text):
81a4bebbc028 E5PathPickerDialog: added an input dialog using the path picker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
55 """
81a4bebbc028 E5PathPickerDialog: added an input dialog using the path picker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
56 Public method to set the label text.
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
57
6440
81a4bebbc028 E5PathPickerDialog: added an input dialog using the path picker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
58 @param text label text
81a4bebbc028 E5PathPickerDialog: added an input dialog using the path picker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
59 @type str
81a4bebbc028 E5PathPickerDialog: added an input dialog using the path picker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
60 """
81a4bebbc028 E5PathPickerDialog: added an input dialog using the path picker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
61 self.__label.setText(text)
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
62
6440
81a4bebbc028 E5PathPickerDialog: added an input dialog using the path picker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
63 def setTitle(self, title):
81a4bebbc028 E5PathPickerDialog: added an input dialog using the path picker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
64 """
81a4bebbc028 E5PathPickerDialog: added an input dialog using the path picker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
65 Public method to set the window title.
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
66
6440
81a4bebbc028 E5PathPickerDialog: added an input dialog using the path picker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
67 @param title window title
81a4bebbc028 E5PathPickerDialog: added an input dialog using the path picker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
68 @type str
81a4bebbc028 E5PathPickerDialog: added an input dialog using the path picker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
69 """
81a4bebbc028 E5PathPickerDialog: added an input dialog using the path picker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
70 self.setWindowTitle(title)
81a4bebbc028 E5PathPickerDialog: added an input dialog using the path picker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
71 self.__pathPicker.setWindowTitle(title)
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
72
6440
81a4bebbc028 E5PathPickerDialog: added an input dialog using the path picker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
73 def setPickerMode(self, mode):
81a4bebbc028 E5PathPickerDialog: added an input dialog using the path picker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
74 """
81a4bebbc028 E5PathPickerDialog: added an input dialog using the path picker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
75 Public method to set the mode of the path picker.
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
76
6440
81a4bebbc028 E5PathPickerDialog: added an input dialog using the path picker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
77 @param mode picker mode
8356
68ec9c3d4de5 Renamed the modules and classes of the E5Gui package to have the prefix 'Eric' instead of 'E5'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8327
diff changeset
78 @type EricPathPickerModes
6440
81a4bebbc028 E5PathPickerDialog: added an input dialog using the path picker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
79 """
81a4bebbc028 E5PathPickerDialog: added an input dialog using the path picker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
80 self.__pathPicker.setMode(mode)
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
81
10630
552a790fd9bc Corrected some issues and improved some existing code with respect to eric-ide server use.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
82 def setPickerRemote(self, remote):
552a790fd9bc Corrected some issues and improved some existing code with respect to eric-ide server use.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
83 """
552a790fd9bc Corrected some issues and improved some existing code with respect to eric-ide server use.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
84 Public method to set the remote mode of the path picker.
552a790fd9bc Corrected some issues and improved some existing code with respect to eric-ide server use.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
85
552a790fd9bc Corrected some issues and improved some existing code with respect to eric-ide server use.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
86 @param remote flag indicating the remote mode
552a790fd9bc Corrected some issues and improved some existing code with respect to eric-ide server use.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
87 @type bool
552a790fd9bc Corrected some issues and improved some existing code with respect to eric-ide server use.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
88 """
552a790fd9bc Corrected some issues and improved some existing code with respect to eric-ide server use.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
89 self.__pathPicker.setRemote(remote)
552a790fd9bc Corrected some issues and improved some existing code with respect to eric-ide server use.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
90
6440
81a4bebbc028 E5PathPickerDialog: added an input dialog using the path picker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
91 def setPickerFilters(self, filters):
81a4bebbc028 E5PathPickerDialog: added an input dialog using the path picker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
92 """
81a4bebbc028 E5PathPickerDialog: added an input dialog using the path picker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
93 Public method to set the filters of the path picker.
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
94
6440
81a4bebbc028 E5PathPickerDialog: added an input dialog using the path picker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
95 Note: Multiple filters must be separated by ';;'.
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
96
6440
81a4bebbc028 E5PathPickerDialog: added an input dialog using the path picker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
97 @param filters string containing the file filters
81a4bebbc028 E5PathPickerDialog: added an input dialog using the path picker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
98 @type str
81a4bebbc028 E5PathPickerDialog: added an input dialog using the path picker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
99 """
81a4bebbc028 E5PathPickerDialog: added an input dialog using the path picker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
100 self.__pathPicker.setFilters(filters)
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
101
9238
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
102 def setPickerPath(self, fpath):
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
103 """
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
104 Public method to set the path of the path picker.
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
105
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
106 @param fpath path to be set
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
107 @type str or pathlib.Path
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
108 """
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
109 self.__pathPicker.setText(str(fpath))
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
110
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
111 def setDefaultDirectory(self, directory):
6440
81a4bebbc028 E5PathPickerDialog: added an input dialog using the path picker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
112 """
9238
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
113 Public method to set the default directory of the path picker.
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
114
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
115 @param directory default directory
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
116 @type str or pathlib.Path
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
117 """
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
118 self.__pathPicker.setDefaultDirectory(str(directory))
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
119
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
120 def getText(self):
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
121 """
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
122 Public method to get the current path as text.
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
123
6440
81a4bebbc028 E5PathPickerDialog: added an input dialog using the path picker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
124 @return current path
81a4bebbc028 E5PathPickerDialog: added an input dialog using the path picker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
125 @rtype str
81a4bebbc028 E5PathPickerDialog: added an input dialog using the path picker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
126 """
9238
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
127 return self.__pathPicker.text()
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
128
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
129 def getPath(self):
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
130 """
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
131 Public method to get the current path as a pathlib.Path object.
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
132
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
133 @return current path
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
134 @rtype pathlib.Path
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
135 """
6440
81a4bebbc028 E5PathPickerDialog: added an input dialog using the path picker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
136 return self.__pathPicker.path()
81a4bebbc028 E5PathPickerDialog: added an input dialog using the path picker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
137
81a4bebbc028 E5PathPickerDialog: added an input dialog using the path picker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
138
9238
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
139 def getStrPath(
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
140 parent,
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
141 title,
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
142 label,
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
143 mode=EricPathPickerModes.OPEN_FILE_MODE,
9238
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
144 strPath=None,
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
145 defaultDirectory=None,
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
146 filters=None,
10630
552a790fd9bc Corrected some issues and improved some existing code with respect to eric-ide server use.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
147 remote=False,
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
148 ):
6440
81a4bebbc028 E5PathPickerDialog: added an input dialog using the path picker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
149 """
81a4bebbc028 E5PathPickerDialog: added an input dialog using the path picker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
150 Function to get a file or directory path from the user.
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
151
6440
81a4bebbc028 E5PathPickerDialog: added an input dialog using the path picker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
152 @param parent reference to the parent widget
81a4bebbc028 E5PathPickerDialog: added an input dialog using the path picker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
153 @type QWidget
81a4bebbc028 E5PathPickerDialog: added an input dialog using the path picker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
154 @param title title of the dialog
81a4bebbc028 E5PathPickerDialog: added an input dialog using the path picker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
155 @type str
81a4bebbc028 E5PathPickerDialog: added an input dialog using the path picker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
156 @param label text to be shown above the path picker
81a4bebbc028 E5PathPickerDialog: added an input dialog using the path picker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
157 @type str
9238
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
158 @param mode mode of the path picker (defaults to EricPathPickerModes.OPEN_FILE_MODE)
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
159 @type EricPathPickerModes (optional)
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
160 @param strPath initial path to be shown (defaults to None)
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
161 @type str (optional)
6440
81a4bebbc028 E5PathPickerDialog: added an input dialog using the path picker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
162 @param defaultDirectory default directory of the path picker selection
9238
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
163 dialog (defaults to None)
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
164 @type str (optional)
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
165 @param filters list of file filters (defaults to None)
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
166 @type list of str (optional)
10630
552a790fd9bc Corrected some issues and improved some existing code with respect to eric-ide server use.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
167 @param remote flag indicating the remote mode (defaults to False)
552a790fd9bc Corrected some issues and improved some existing code with respect to eric-ide server use.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
168 @type bool (optional)
6440
81a4bebbc028 E5PathPickerDialog: added an input dialog using the path picker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
169 @return tuple containing the entered path and a flag indicating that the
81a4bebbc028 E5PathPickerDialog: added an input dialog using the path picker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
170 user pressed the OK button
81a4bebbc028 E5PathPickerDialog: added an input dialog using the path picker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
171 @rtype tuple of (str, bool)
81a4bebbc028 E5PathPickerDialog: added an input dialog using the path picker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
172 """
11035
e1e1d6e317c7 Modified some of the EricWidgets dialogs to ensure a valid parent widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10630
diff changeset
173 if parent is None:
e1e1d6e317c7 Modified some of the EricWidgets dialogs to ensure a valid parent widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10630
diff changeset
174 parent = QCoreApplication.instance().getMainWindow()
e1e1d6e317c7 Modified some of the EricWidgets dialogs to ensure a valid parent widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10630
diff changeset
175
6440
81a4bebbc028 E5PathPickerDialog: added an input dialog using the path picker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
176 # step 1: setup of the dialog
8356
68ec9c3d4de5 Renamed the modules and classes of the E5Gui package to have the prefix 'Eric' instead of 'E5'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8327
diff changeset
177 dlg = EricPathPickerDialog(parent)
6440
81a4bebbc028 E5PathPickerDialog: added an input dialog using the path picker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
178 if title:
81a4bebbc028 E5PathPickerDialog: added an input dialog using the path picker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
179 dlg.setTitle(title)
81a4bebbc028 E5PathPickerDialog: added an input dialog using the path picker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
180 if label:
81a4bebbc028 E5PathPickerDialog: added an input dialog using the path picker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
181 dlg.setLabelText(label)
81a4bebbc028 E5PathPickerDialog: added an input dialog using the path picker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
182 dlg.setPickerMode(mode)
10630
552a790fd9bc Corrected some issues and improved some existing code with respect to eric-ide server use.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
183 dlg.setPickerRemote(remote)
9238
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
184 if strPath:
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
185 dlg.setPickerPath(strPath)
6440
81a4bebbc028 E5PathPickerDialog: added an input dialog using the path picker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
186 if defaultDirectory:
81a4bebbc028 E5PathPickerDialog: added an input dialog using the path picker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
187 dlg.setDefaultDirectory(defaultDirectory)
81a4bebbc028 E5PathPickerDialog: added an input dialog using the path picker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
188 if filters is not None and len(filters) > 0:
81a4bebbc028 E5PathPickerDialog: added an input dialog using the path picker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
189 dlg.setPickerFilters(";;".join(filters))
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
190
6440
81a4bebbc028 E5PathPickerDialog: added an input dialog using the path picker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
191 # step 2: show the dialog and get the result
8143
2c730d5fd177 Changed the use of PyQt enums because the way they were used previously is deprecated since two years and replaced some deprecated Qt stuff.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7923
diff changeset
192 if dlg.exec() == QDialog.DialogCode.Accepted:
6440
81a4bebbc028 E5PathPickerDialog: added an input dialog using the path picker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
193 ok = True
9238
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
194 fpath = dlg.getText().strip()
6440
81a4bebbc028 E5PathPickerDialog: added an input dialog using the path picker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
195 else:
81a4bebbc028 E5PathPickerDialog: added an input dialog using the path picker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
196 ok = False
9238
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
197 fpath = ""
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
198
6440
81a4bebbc028 E5PathPickerDialog: added an input dialog using the path picker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
199 # step 3: return the result
9238
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
200 return fpath, ok
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
201
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
202
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
203 def getPath(
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
204 parent,
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
205 title,
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
206 label,
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
207 mode=EricPathPickerModes.OPEN_FILE_MODE,
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
208 pathlibPath=None,
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
209 defaultDirectory=None,
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
210 filters=None,
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
211 ):
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
212 """
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
213 Function to get a file or directory path from the user.
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
214
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
215 @param parent reference to the parent widget
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
216 @type QWidget
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
217 @param title title of the dialog
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
218 @type str
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
219 @param label text to be shown above the path picker
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
220 @type str
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
221 @param mode mode of the path picker (defaults to EricPathPickerModes.OPEN_FILE_MODE)
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
222 @type EricPathPickerModes (optional)
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
223 @param pathlibPath initial path to be shown (defaults to None)
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
224 @type pathlib.Path (optional)
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
225 @param defaultDirectory default directory of the path picker selection
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
226 dialog (defaults to None)
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
227 @type pathlib.Path (optional)
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
228 @param filters list of file filters (defaults to None)
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
229 @type list of str (optional)
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
230 @return tuple containing the entered path and a flag indicating that the
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
231 user pressed the OK button
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
232 @rtype tuple of (pathlib.Path, bool)
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
233 """
11035
e1e1d6e317c7 Modified some of the EricWidgets dialogs to ensure a valid parent widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10630
diff changeset
234 if parent is None:
e1e1d6e317c7 Modified some of the EricWidgets dialogs to ensure a valid parent widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10630
diff changeset
235 parent = QCoreApplication.instance().getMainWindow()
e1e1d6e317c7 Modified some of the EricWidgets dialogs to ensure a valid parent widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10630
diff changeset
236
9238
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
237 # step 1: setup of the dialog
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
238 dlg = EricPathPickerDialog(parent)
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
239 if title:
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
240 dlg.setTitle(title)
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
241 if label:
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
242 dlg.setLabelText(label)
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
243 dlg.setPickerMode(mode)
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
244 if pathlibPath:
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
245 dlg.setPickerPath(pathlibPath)
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
246 if defaultDirectory:
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
247 dlg.setDefaultDirectory(defaultDirectory)
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
248 if filters is not None and len(filters) > 0:
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
249 dlg.setPickerFilters(";;".join(filters))
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
250
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
251 # step 2: show the dialog and get the result
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
252 if dlg.exec() == QDialog.DialogCode.Accepted:
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
253 ok = True
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
254 fpath = dlg.getText().strip()
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
255 else:
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
256 ok = False
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
257 fpath = ""
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
258
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
259 # step 3: return the result
a7cbf3d61498 EricPathPicker, EricPathPickerDialog
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
260 return fpath, ok

eric ide

mercurial