Refactored the path picker code.

Sat, 12 Dec 2015 12:38:50 +0100

author
Detlev Offenbach <detlev@die-offenbachs.de>
date
Sat, 12 Dec 2015 12:38:50 +0100
changeset 4613
c7951eb9d525
parent 4612
c9982bcd00f8
child 4614
e8996f522895

Refactored the path picker code.

APIs/Python3/eric6.api file | annotate | diff | comparison | revisions
APIs/Python3/eric6.bas file | annotate | diff | comparison | revisions
Documentation/Help/source.qch file | annotate | diff | comparison | revisions
Documentation/Help/source.qhp file | annotate | diff | comparison | revisions
Documentation/Source/eric6.E5Gui.E5PathPicker.html file | annotate | diff | comparison | revisions
E5Gui/E5Completers.py file | annotate | diff | comparison | revisions
E5Gui/E5PathPicker.py file | annotate | diff | comparison | revisions
i18n/eric6_cs.ts file | annotate | diff | comparison | revisions
i18n/eric6_de.qm file | annotate | diff | comparison | revisions
i18n/eric6_de.ts file | annotate | diff | comparison | revisions
i18n/eric6_en.ts file | annotate | diff | comparison | revisions
i18n/eric6_es.ts file | annotate | diff | comparison | revisions
i18n/eric6_fr.ts file | annotate | diff | comparison | revisions
i18n/eric6_it.ts file | annotate | diff | comparison | revisions
i18n/eric6_pt.ts file | annotate | diff | comparison | revisions
i18n/eric6_ru.ts file | annotate | diff | comparison | revisions
i18n/eric6_tr.ts file | annotate | diff | comparison | revisions
i18n/eric6_zh_CN.GB2312.ts file | annotate | diff | comparison | revisions
--- a/APIs/Python3/eric6.api	Sun Dec 06 19:09:32 2015 +0100
+++ b/APIs/Python3/eric6.api	Sat Dec 12 12:38:50 2015 +0100
@@ -1408,74 +1408,51 @@
 eric6.E5Gui.E5PasswordMeter.E5PasswordMeter.setMinimum?4(value)
 eric6.E5Gui.E5PasswordMeter.E5PasswordMeter.setValue?4(value)
 eric6.E5Gui.E5PasswordMeter.E5PasswordMeter?1(parent=None)
-eric6.E5Gui.E5PathPicker.E5ComboPathPicker.DefaultMode?7
-eric6.E5Gui.E5PathPicker.E5ComboPathPicker.aboutToShowPathPickerDialog?7
-eric6.E5Gui.E5PathPicker.E5ComboPathPicker.addItem?4(path)
-eric6.E5Gui.E5PathPicker.E5ComboPathPicker.addItems?4(pathsList)
-eric6.E5Gui.E5PathPicker.E5ComboPathPicker.buttonToolTip?4()
-eric6.E5Gui.E5PathPicker.E5ComboPathPicker.clear?4()
-eric6.E5Gui.E5PathPicker.E5ComboPathPicker.clearEditText?4()
-eric6.E5Gui.E5PathPicker.E5ComboPathPicker.currentText?4()
-eric6.E5Gui.E5PathPicker.E5ComboPathPicker.defaultDirectory?4()
-eric6.E5Gui.E5PathPicker.E5ComboPathPicker.editTextChanged?7
-eric6.E5Gui.E5PathPicker.E5ComboPathPicker.editorEnabled?4()
-eric6.E5Gui.E5PathPicker.E5ComboPathPicker.editorToolTip?4()
-eric6.E5Gui.E5PathPicker.E5ComboPathPicker.filters?4()
-eric6.E5Gui.E5PathPicker.E5ComboPathPicker.firstPath?4()
-eric6.E5Gui.E5PathPicker.E5ComboPathPicker.isPickerEnabled?4()
-eric6.E5Gui.E5PathPicker.E5ComboPathPicker.lastPath?4()
-eric6.E5Gui.E5PathPicker.E5ComboPathPicker.mode?4()
-eric6.E5Gui.E5PathPicker.E5ComboPathPicker.path?4()
-eric6.E5Gui.E5PathPicker.E5ComboPathPicker.pathSelected?7
-eric6.E5Gui.E5PathPicker.E5ComboPathPicker.paths?4()
-eric6.E5Gui.E5PathPicker.E5ComboPathPicker.pickerButtonClicked?7
-eric6.E5Gui.E5PathPicker.E5ComboPathPicker.setButtonToolTip?4(tooltip)
-eric6.E5Gui.E5PathPicker.E5ComboPathPicker.setCurrentIndex?4(index)
-eric6.E5Gui.E5PathPicker.E5ComboPathPicker.setDefaultDirectory?4(directory)
-eric6.E5Gui.E5PathPicker.E5ComboPathPicker.setEditText?4(path)
-eric6.E5Gui.E5PathPicker.E5ComboPathPicker.setEditorEnabled?4(enable)
-eric6.E5Gui.E5PathPicker.E5ComboPathPicker.setEditorToolTip?4(tooltip)
-eric6.E5Gui.E5PathPicker.E5ComboPathPicker.setFilters?4(filters)
-eric6.E5Gui.E5PathPicker.E5ComboPathPicker.setInsertPolicy?4(policy)
-eric6.E5Gui.E5PathPicker.E5ComboPathPicker.setMode?4(mode)
-eric6.E5Gui.E5PathPicker.E5ComboPathPicker.setPath?4(path)
-eric6.E5Gui.E5PathPicker.E5ComboPathPicker.setPathsList?4(pathsList)
-eric6.E5Gui.E5PathPicker.E5ComboPathPicker.setPickerEnabled?4(enable)
-eric6.E5Gui.E5PathPicker.E5ComboPathPicker.setSizeAdjustPolicy?4(policy)
-eric6.E5Gui.E5PathPicker.E5ComboPathPicker.setWindowTitle?4(title)
-eric6.E5Gui.E5PathPicker.E5ComboPathPicker.windowTitle?4()
 eric6.E5Gui.E5PathPicker.E5ComboPathPicker?1(parent=None)
-eric6.E5Gui.E5PathPicker.E5PathPicker.DefaultMode?7
-eric6.E5Gui.E5PathPicker.E5PathPicker.aboutToShowPathPickerDialog?7
-eric6.E5Gui.E5PathPicker.E5PathPicker.buttonToolTip?4()
-eric6.E5Gui.E5PathPicker.E5PathPicker.clear?4()
-eric6.E5Gui.E5PathPicker.E5PathPicker.defaultDirectory?4()
-eric6.E5Gui.E5PathPicker.E5PathPicker.editorEnabled?4()
-eric6.E5Gui.E5PathPicker.E5PathPicker.editorToolTip?4()
-eric6.E5Gui.E5PathPicker.E5PathPicker.filters?4()
-eric6.E5Gui.E5PathPicker.E5PathPicker.firstPath?4()
-eric6.E5Gui.E5PathPicker.E5PathPicker.isPickerEnabled?4()
-eric6.E5Gui.E5PathPicker.E5PathPicker.lastPath?4()
-eric6.E5Gui.E5PathPicker.E5PathPicker.mode?4()
-eric6.E5Gui.E5PathPicker.E5PathPicker.path?4()
-eric6.E5Gui.E5PathPicker.E5PathPicker.pathSelected?7
-eric6.E5Gui.E5PathPicker.E5PathPicker.paths?4()
-eric6.E5Gui.E5PathPicker.E5PathPicker.pickerButtonClicked?7
-eric6.E5Gui.E5PathPicker.E5PathPicker.setButtonToolTip?4(tooltip)
-eric6.E5Gui.E5PathPicker.E5PathPicker.setDefaultDirectory?4(directory)
-eric6.E5Gui.E5PathPicker.E5PathPicker.setEditorEnabled?4(enable)
-eric6.E5Gui.E5PathPicker.E5PathPicker.setEditorToolTip?4(tooltip)
-eric6.E5Gui.E5PathPicker.E5PathPicker.setFilters?4(filters)
-eric6.E5Gui.E5PathPicker.E5PathPicker.setMode?4(mode)
-eric6.E5Gui.E5PathPicker.E5PathPicker.setNameFilters?4(filters)
-eric6.E5Gui.E5PathPicker.E5PathPicker.setPath?4(path)
-eric6.E5Gui.E5PathPicker.E5PathPicker.setPickerEnabled?4(enable)
-eric6.E5Gui.E5PathPicker.E5PathPicker.setText?4(path)
-eric6.E5Gui.E5PathPicker.E5PathPicker.setWindowTitle?4(title)
-eric6.E5Gui.E5PathPicker.E5PathPicker.text?4()
-eric6.E5Gui.E5PathPicker.E5PathPicker.textChanged?7
-eric6.E5Gui.E5PathPicker.E5PathPicker.windowTitle?4()
 eric6.E5Gui.E5PathPicker.E5PathPicker?1(parent=None)
+eric6.E5Gui.E5PathPicker.E5PathPickerBase.DefaultMode?7
+eric6.E5Gui.E5PathPicker.E5PathPickerBase._editorText?5()
+eric6.E5Gui.E5PathPicker.E5PathPickerBase._setEditorText?5(text)
+eric6.E5Gui.E5PathPicker.E5PathPickerBase.aboutToShowPathPickerDialog?7
+eric6.E5Gui.E5PathPicker.E5PathPickerBase.addItem?4(path)
+eric6.E5Gui.E5PathPicker.E5PathPickerBase.addItems?4(pathsList)
+eric6.E5Gui.E5PathPicker.E5PathPickerBase.buttonToolTip?4()
+eric6.E5Gui.E5PathPicker.E5PathPickerBase.clear?4()
+eric6.E5Gui.E5PathPicker.E5PathPickerBase.clearEditText?4()
+eric6.E5Gui.E5PathPicker.E5PathPickerBase.currentText?4()
+eric6.E5Gui.E5PathPicker.E5PathPickerBase.defaultDirectory?4()
+eric6.E5Gui.E5PathPicker.E5PathPickerBase.editTextChanged?7
+eric6.E5Gui.E5PathPicker.E5PathPickerBase.editorEnabled?4()
+eric6.E5Gui.E5PathPicker.E5PathPickerBase.editorToolTip?4()
+eric6.E5Gui.E5PathPicker.E5PathPickerBase.filters?4()
+eric6.E5Gui.E5PathPicker.E5PathPickerBase.firstPath?4()
+eric6.E5Gui.E5PathPicker.E5PathPickerBase.isPickerEnabled?4()
+eric6.E5Gui.E5PathPicker.E5PathPickerBase.lastPath?4()
+eric6.E5Gui.E5PathPicker.E5PathPickerBase.mode?4()
+eric6.E5Gui.E5PathPicker.E5PathPickerBase.path?4()
+eric6.E5Gui.E5PathPicker.E5PathPickerBase.pathSelected?7
+eric6.E5Gui.E5PathPicker.E5PathPickerBase.paths?4()
+eric6.E5Gui.E5PathPicker.E5PathPickerBase.pickerButtonClicked?7
+eric6.E5Gui.E5PathPicker.E5PathPickerBase.setButtonToolTip?4(tooltip)
+eric6.E5Gui.E5PathPicker.E5PathPickerBase.setCurrentIndex?4(index)
+eric6.E5Gui.E5PathPicker.E5PathPickerBase.setDefaultDirectory?4(directory)
+eric6.E5Gui.E5PathPicker.E5PathPickerBase.setEditText?4(path)
+eric6.E5Gui.E5PathPicker.E5PathPickerBase.setEditorEnabled?4(enable)
+eric6.E5Gui.E5PathPicker.E5PathPickerBase.setEditorToolTip?4(tooltip)
+eric6.E5Gui.E5PathPicker.E5PathPickerBase.setFilters?4(filters)
+eric6.E5Gui.E5PathPicker.E5PathPickerBase.setInsertPolicy?4(policy)
+eric6.E5Gui.E5PathPicker.E5PathPickerBase.setMode?4(mode)
+eric6.E5Gui.E5PathPicker.E5PathPickerBase.setNameFilters?4(filters)
+eric6.E5Gui.E5PathPicker.E5PathPickerBase.setPath?4(path)
+eric6.E5Gui.E5PathPicker.E5PathPickerBase.setPathsList?4(pathsList)
+eric6.E5Gui.E5PathPicker.E5PathPickerBase.setPickerEnabled?4(enable)
+eric6.E5Gui.E5PathPicker.E5PathPickerBase.setSizeAdjustPolicy?4(policy)
+eric6.E5Gui.E5PathPicker.E5PathPickerBase.setText?4(path)
+eric6.E5Gui.E5PathPicker.E5PathPickerBase.setWindowTitle?4(title)
+eric6.E5Gui.E5PathPicker.E5PathPickerBase.text?4()
+eric6.E5Gui.E5PathPicker.E5PathPickerBase.textChanged?7
+eric6.E5Gui.E5PathPicker.E5PathPickerBase.windowTitle?4()
+eric6.E5Gui.E5PathPicker.E5PathPickerBase?1(parent=None, useLineEdit=True)
 eric6.E5Gui.E5PathPicker.E5PathPickerModes.CustomMode?7
 eric6.E5Gui.E5PathPicker.E5PathPickerModes.DirectoryMode?7
 eric6.E5Gui.E5PathPicker.E5PathPickerModes.NoMode?7
--- a/APIs/Python3/eric6.bas	Sun Dec 06 19:09:32 2015 +0100
+++ b/APIs/Python3/eric6.bas	Sat Dec 12 12:38:50 2015 +0100
@@ -146,7 +146,7 @@
 E5ClickableLabel QLabel
 E5ClickableLed E5Led
 E5ComboBox QComboBox
-E5ComboPathPicker QWidget
+E5ComboPathPicker E5PathPickerBase
 E5DirCompleter QCompleter
 E5DnDTabBar E5WheelTabBar
 E5ErrorMessage QErrorMessage
@@ -174,7 +174,8 @@
 E5NetworkProxyFactory QNetworkProxyFactory
 E5PassivePopup QFrame
 E5PasswordMeter QProgressBar
-E5PathPicker QWidget
+E5PathPicker E5PathPickerBase
+E5PathPickerBase QWidget
 E5PathPickerModes Enum
 E5ProgressDialog QProgressDialog
 E5RequestModel QAbstractTableModel
Binary file Documentation/Help/source.qch has changed
--- a/Documentation/Help/source.qhp	Sun Dec 06 19:09:32 2015 +0100
+++ b/Documentation/Help/source.qhp	Sat Dec 12 12:38:50 2015 +0100
@@ -3432,38 +3432,6 @@
       <keyword name="E5ComboBox.setInactiveText" id="E5ComboBox.setInactiveText" ref="eric6.E5Gui.E5ComboBox.html#E5ComboBox.setInactiveText" />
       <keyword name="E5ComboPathPicker" id="E5ComboPathPicker" ref="eric6.E5Gui.E5PathPicker.html#E5ComboPathPicker" />
       <keyword name="E5ComboPathPicker (Constructor)" id="E5ComboPathPicker (Constructor)" ref="eric6.E5Gui.E5PathPicker.html#E5ComboPathPicker.__init__" />
-      <keyword name="E5ComboPathPicker.__showPathPickerDialog" id="E5ComboPathPicker.__showPathPickerDialog" ref="eric6.E5Gui.E5PathPicker.html#E5ComboPathPicker.__showPathPickerDialog" />
-      <keyword name="E5ComboPathPicker.addItem" id="E5ComboPathPicker.addItem" ref="eric6.E5Gui.E5PathPicker.html#E5ComboPathPicker.addItem" />
-      <keyword name="E5ComboPathPicker.addItems" id="E5ComboPathPicker.addItems" ref="eric6.E5Gui.E5PathPicker.html#E5ComboPathPicker.addItems" />
-      <keyword name="E5ComboPathPicker.buttonToolTip" id="E5ComboPathPicker.buttonToolTip" ref="eric6.E5Gui.E5PathPicker.html#E5ComboPathPicker.buttonToolTip" />
-      <keyword name="E5ComboPathPicker.clear" id="E5ComboPathPicker.clear" ref="eric6.E5Gui.E5PathPicker.html#E5ComboPathPicker.clear" />
-      <keyword name="E5ComboPathPicker.clearEditText" id="E5ComboPathPicker.clearEditText" ref="eric6.E5Gui.E5PathPicker.html#E5ComboPathPicker.clearEditText" />
-      <keyword name="E5ComboPathPicker.currentText" id="E5ComboPathPicker.currentText" ref="eric6.E5Gui.E5PathPicker.html#E5ComboPathPicker.currentText" />
-      <keyword name="E5ComboPathPicker.defaultDirectory" id="E5ComboPathPicker.defaultDirectory" ref="eric6.E5Gui.E5PathPicker.html#E5ComboPathPicker.defaultDirectory" />
-      <keyword name="E5ComboPathPicker.editorEnabled" id="E5ComboPathPicker.editorEnabled" ref="eric6.E5Gui.E5PathPicker.html#E5ComboPathPicker.editorEnabled" />
-      <keyword name="E5ComboPathPicker.editorToolTip" id="E5ComboPathPicker.editorToolTip" ref="eric6.E5Gui.E5PathPicker.html#E5ComboPathPicker.editorToolTip" />
-      <keyword name="E5ComboPathPicker.filters" id="E5ComboPathPicker.filters" ref="eric6.E5Gui.E5PathPicker.html#E5ComboPathPicker.filters" />
-      <keyword name="E5ComboPathPicker.firstPath" id="E5ComboPathPicker.firstPath" ref="eric6.E5Gui.E5PathPicker.html#E5ComboPathPicker.firstPath" />
-      <keyword name="E5ComboPathPicker.isPickerEnabled" id="E5ComboPathPicker.isPickerEnabled" ref="eric6.E5Gui.E5PathPicker.html#E5ComboPathPicker.isPickerEnabled" />
-      <keyword name="E5ComboPathPicker.lastPath" id="E5ComboPathPicker.lastPath" ref="eric6.E5Gui.E5PathPicker.html#E5ComboPathPicker.lastPath" />
-      <keyword name="E5ComboPathPicker.mode" id="E5ComboPathPicker.mode" ref="eric6.E5Gui.E5PathPicker.html#E5ComboPathPicker.mode" />
-      <keyword name="E5ComboPathPicker.path" id="E5ComboPathPicker.path" ref="eric6.E5Gui.E5PathPicker.html#E5ComboPathPicker.path" />
-      <keyword name="E5ComboPathPicker.paths" id="E5ComboPathPicker.paths" ref="eric6.E5Gui.E5PathPicker.html#E5ComboPathPicker.paths" />
-      <keyword name="E5ComboPathPicker.setButtonToolTip" id="E5ComboPathPicker.setButtonToolTip" ref="eric6.E5Gui.E5PathPicker.html#E5ComboPathPicker.setButtonToolTip" />
-      <keyword name="E5ComboPathPicker.setCurrentIndex" id="E5ComboPathPicker.setCurrentIndex" ref="eric6.E5Gui.E5PathPicker.html#E5ComboPathPicker.setCurrentIndex" />
-      <keyword name="E5ComboPathPicker.setDefaultDirectory" id="E5ComboPathPicker.setDefaultDirectory" ref="eric6.E5Gui.E5PathPicker.html#E5ComboPathPicker.setDefaultDirectory" />
-      <keyword name="E5ComboPathPicker.setEditText" id="E5ComboPathPicker.setEditText" ref="eric6.E5Gui.E5PathPicker.html#E5ComboPathPicker.setEditText" />
-      <keyword name="E5ComboPathPicker.setEditorEnabled" id="E5ComboPathPicker.setEditorEnabled" ref="eric6.E5Gui.E5PathPicker.html#E5ComboPathPicker.setEditorEnabled" />
-      <keyword name="E5ComboPathPicker.setEditorToolTip" id="E5ComboPathPicker.setEditorToolTip" ref="eric6.E5Gui.E5PathPicker.html#E5ComboPathPicker.setEditorToolTip" />
-      <keyword name="E5ComboPathPicker.setFilters" id="E5ComboPathPicker.setFilters" ref="eric6.E5Gui.E5PathPicker.html#E5ComboPathPicker.setFilters" />
-      <keyword name="E5ComboPathPicker.setInsertPolicy" id="E5ComboPathPicker.setInsertPolicy" ref="eric6.E5Gui.E5PathPicker.html#E5ComboPathPicker.setInsertPolicy" />
-      <keyword name="E5ComboPathPicker.setMode" id="E5ComboPathPicker.setMode" ref="eric6.E5Gui.E5PathPicker.html#E5ComboPathPicker.setMode" />
-      <keyword name="E5ComboPathPicker.setPath" id="E5ComboPathPicker.setPath" ref="eric6.E5Gui.E5PathPicker.html#E5ComboPathPicker.setPath" />
-      <keyword name="E5ComboPathPicker.setPathsList" id="E5ComboPathPicker.setPathsList" ref="eric6.E5Gui.E5PathPicker.html#E5ComboPathPicker.setPathsList" />
-      <keyword name="E5ComboPathPicker.setPickerEnabled" id="E5ComboPathPicker.setPickerEnabled" ref="eric6.E5Gui.E5PathPicker.html#E5ComboPathPicker.setPickerEnabled" />
-      <keyword name="E5ComboPathPicker.setSizeAdjustPolicy" id="E5ComboPathPicker.setSizeAdjustPolicy" ref="eric6.E5Gui.E5PathPicker.html#E5ComboPathPicker.setSizeAdjustPolicy" />
-      <keyword name="E5ComboPathPicker.setWindowTitle" id="E5ComboPathPicker.setWindowTitle" ref="eric6.E5Gui.E5PathPicker.html#E5ComboPathPicker.setWindowTitle" />
-      <keyword name="E5ComboPathPicker.windowTitle" id="E5ComboPathPicker.windowTitle" ref="eric6.E5Gui.E5PathPicker.html#E5ComboPathPicker.windowTitle" />
       <keyword name="E5Completers (Module)" id="E5Completers (Module)" ref="eric6.E5Gui.E5Completers.html" />
       <keyword name="E5DirCompleter" id="E5DirCompleter" ref="eric6.E5Gui.E5Completers.html#E5DirCompleter" />
       <keyword name="E5DirCompleter (Constructor)" id="E5DirCompleter (Constructor)" ref="eric6.E5Gui.E5Completers.html#E5DirCompleter.__init__" />
@@ -3744,33 +3712,46 @@
       <keyword name="E5PathPicker" id="E5PathPicker" ref="eric6.E5Gui.E5PathPicker.html#E5PathPicker" />
       <keyword name="E5PathPicker (Constructor)" id="E5PathPicker (Constructor)" ref="eric6.E5Gui.E5PathPicker.html#E5PathPicker.__init__" />
       <keyword name="E5PathPicker (Module)" id="E5PathPicker (Module)" ref="eric6.E5Gui.E5PathPicker.html" />
-      <keyword name="E5PathPicker.__pathEdited" id="E5PathPicker.__pathEdited" ref="eric6.E5Gui.E5PathPicker.html#E5PathPicker.__pathEdited" />
-      <keyword name="E5PathPicker.__showPathPickerDialog" id="E5PathPicker.__showPathPickerDialog" ref="eric6.E5Gui.E5PathPicker.html#E5PathPicker.__showPathPickerDialog" />
-      <keyword name="E5PathPicker.buttonToolTip" id="E5PathPicker.buttonToolTip" ref="eric6.E5Gui.E5PathPicker.html#E5PathPicker.buttonToolTip" />
-      <keyword name="E5PathPicker.clear" id="E5PathPicker.clear" ref="eric6.E5Gui.E5PathPicker.html#E5PathPicker.clear" />
-      <keyword name="E5PathPicker.defaultDirectory" id="E5PathPicker.defaultDirectory" ref="eric6.E5Gui.E5PathPicker.html#E5PathPicker.defaultDirectory" />
-      <keyword name="E5PathPicker.editorEnabled" id="E5PathPicker.editorEnabled" ref="eric6.E5Gui.E5PathPicker.html#E5PathPicker.editorEnabled" />
-      <keyword name="E5PathPicker.editorToolTip" id="E5PathPicker.editorToolTip" ref="eric6.E5Gui.E5PathPicker.html#E5PathPicker.editorToolTip" />
-      <keyword name="E5PathPicker.filters" id="E5PathPicker.filters" ref="eric6.E5Gui.E5PathPicker.html#E5PathPicker.filters" />
-      <keyword name="E5PathPicker.firstPath" id="E5PathPicker.firstPath" ref="eric6.E5Gui.E5PathPicker.html#E5PathPicker.firstPath" />
-      <keyword name="E5PathPicker.isPickerEnabled" id="E5PathPicker.isPickerEnabled" ref="eric6.E5Gui.E5PathPicker.html#E5PathPicker.isPickerEnabled" />
-      <keyword name="E5PathPicker.lastPath" id="E5PathPicker.lastPath" ref="eric6.E5Gui.E5PathPicker.html#E5PathPicker.lastPath" />
-      <keyword name="E5PathPicker.mode" id="E5PathPicker.mode" ref="eric6.E5Gui.E5PathPicker.html#E5PathPicker.mode" />
-      <keyword name="E5PathPicker.path" id="E5PathPicker.path" ref="eric6.E5Gui.E5PathPicker.html#E5PathPicker.path" />
-      <keyword name="E5PathPicker.paths" id="E5PathPicker.paths" ref="eric6.E5Gui.E5PathPicker.html#E5PathPicker.paths" />
-      <keyword name="E5PathPicker.setButtonToolTip" id="E5PathPicker.setButtonToolTip" ref="eric6.E5Gui.E5PathPicker.html#E5PathPicker.setButtonToolTip" />
-      <keyword name="E5PathPicker.setDefaultDirectory" id="E5PathPicker.setDefaultDirectory" ref="eric6.E5Gui.E5PathPicker.html#E5PathPicker.setDefaultDirectory" />
-      <keyword name="E5PathPicker.setEditorEnabled" id="E5PathPicker.setEditorEnabled" ref="eric6.E5Gui.E5PathPicker.html#E5PathPicker.setEditorEnabled" />
-      <keyword name="E5PathPicker.setEditorToolTip" id="E5PathPicker.setEditorToolTip" ref="eric6.E5Gui.E5PathPicker.html#E5PathPicker.setEditorToolTip" />
-      <keyword name="E5PathPicker.setFilters" id="E5PathPicker.setFilters" ref="eric6.E5Gui.E5PathPicker.html#E5PathPicker.setFilters" />
-      <keyword name="E5PathPicker.setMode" id="E5PathPicker.setMode" ref="eric6.E5Gui.E5PathPicker.html#E5PathPicker.setMode" />
-      <keyword name="E5PathPicker.setNameFilters" id="E5PathPicker.setNameFilters" ref="eric6.E5Gui.E5PathPicker.html#E5PathPicker.setNameFilters" />
-      <keyword name="E5PathPicker.setPath" id="E5PathPicker.setPath" ref="eric6.E5Gui.E5PathPicker.html#E5PathPicker.setPath" />
-      <keyword name="E5PathPicker.setPickerEnabled" id="E5PathPicker.setPickerEnabled" ref="eric6.E5Gui.E5PathPicker.html#E5PathPicker.setPickerEnabled" />
-      <keyword name="E5PathPicker.setText" id="E5PathPicker.setText" ref="eric6.E5Gui.E5PathPicker.html#E5PathPicker.setText" />
-      <keyword name="E5PathPicker.setWindowTitle" id="E5PathPicker.setWindowTitle" ref="eric6.E5Gui.E5PathPicker.html#E5PathPicker.setWindowTitle" />
-      <keyword name="E5PathPicker.text" id="E5PathPicker.text" ref="eric6.E5Gui.E5PathPicker.html#E5PathPicker.text" />
-      <keyword name="E5PathPicker.windowTitle" id="E5PathPicker.windowTitle" ref="eric6.E5Gui.E5PathPicker.html#E5PathPicker.windowTitle" />
+      <keyword name="E5PathPickerBase" id="E5PathPickerBase" ref="eric6.E5Gui.E5PathPicker.html#E5PathPickerBase" />
+      <keyword name="E5PathPickerBase (Constructor)" id="E5PathPickerBase (Constructor)" ref="eric6.E5Gui.E5PathPicker.html#E5PathPickerBase.__init__" />
+      <keyword name="E5PathPickerBase.__pathEdited" id="E5PathPickerBase.__pathEdited" ref="eric6.E5Gui.E5PathPicker.html#E5PathPickerBase.__pathEdited" />
+      <keyword name="E5PathPickerBase.__showPathPickerDialog" id="E5PathPickerBase.__showPathPickerDialog" ref="eric6.E5Gui.E5PathPicker.html#E5PathPickerBase.__showPathPickerDialog" />
+      <keyword name="E5PathPickerBase._editorText" id="E5PathPickerBase._editorText" ref="eric6.E5Gui.E5PathPicker.html#E5PathPickerBase._editorText" />
+      <keyword name="E5PathPickerBase._setEditorText" id="E5PathPickerBase._setEditorText" ref="eric6.E5Gui.E5PathPicker.html#E5PathPickerBase._setEditorText" />
+      <keyword name="E5PathPickerBase.addItem" id="E5PathPickerBase.addItem" ref="eric6.E5Gui.E5PathPicker.html#E5PathPickerBase.addItem" />
+      <keyword name="E5PathPickerBase.addItems" id="E5PathPickerBase.addItems" ref="eric6.E5Gui.E5PathPicker.html#E5PathPickerBase.addItems" />
+      <keyword name="E5PathPickerBase.buttonToolTip" id="E5PathPickerBase.buttonToolTip" ref="eric6.E5Gui.E5PathPicker.html#E5PathPickerBase.buttonToolTip" />
+      <keyword name="E5PathPickerBase.clear" id="E5PathPickerBase.clear" ref="eric6.E5Gui.E5PathPicker.html#E5PathPickerBase.clear" />
+      <keyword name="E5PathPickerBase.clearEditText" id="E5PathPickerBase.clearEditText" ref="eric6.E5Gui.E5PathPicker.html#E5PathPickerBase.clearEditText" />
+      <keyword name="E5PathPickerBase.currentText" id="E5PathPickerBase.currentText" ref="eric6.E5Gui.E5PathPicker.html#E5PathPickerBase.currentText" />
+      <keyword name="E5PathPickerBase.defaultDirectory" id="E5PathPickerBase.defaultDirectory" ref="eric6.E5Gui.E5PathPicker.html#E5PathPickerBase.defaultDirectory" />
+      <keyword name="E5PathPickerBase.editorEnabled" id="E5PathPickerBase.editorEnabled" ref="eric6.E5Gui.E5PathPicker.html#E5PathPickerBase.editorEnabled" />
+      <keyword name="E5PathPickerBase.editorToolTip" id="E5PathPickerBase.editorToolTip" ref="eric6.E5Gui.E5PathPicker.html#E5PathPickerBase.editorToolTip" />
+      <keyword name="E5PathPickerBase.filters" id="E5PathPickerBase.filters" ref="eric6.E5Gui.E5PathPicker.html#E5PathPickerBase.filters" />
+      <keyword name="E5PathPickerBase.firstPath" id="E5PathPickerBase.firstPath" ref="eric6.E5Gui.E5PathPicker.html#E5PathPickerBase.firstPath" />
+      <keyword name="E5PathPickerBase.isPickerEnabled" id="E5PathPickerBase.isPickerEnabled" ref="eric6.E5Gui.E5PathPicker.html#E5PathPickerBase.isPickerEnabled" />
+      <keyword name="E5PathPickerBase.lastPath" id="E5PathPickerBase.lastPath" ref="eric6.E5Gui.E5PathPicker.html#E5PathPickerBase.lastPath" />
+      <keyword name="E5PathPickerBase.mode" id="E5PathPickerBase.mode" ref="eric6.E5Gui.E5PathPicker.html#E5PathPickerBase.mode" />
+      <keyword name="E5PathPickerBase.path" id="E5PathPickerBase.path" ref="eric6.E5Gui.E5PathPicker.html#E5PathPickerBase.path" />
+      <keyword name="E5PathPickerBase.paths" id="E5PathPickerBase.paths" ref="eric6.E5Gui.E5PathPicker.html#E5PathPickerBase.paths" />
+      <keyword name="E5PathPickerBase.setButtonToolTip" id="E5PathPickerBase.setButtonToolTip" ref="eric6.E5Gui.E5PathPicker.html#E5PathPickerBase.setButtonToolTip" />
+      <keyword name="E5PathPickerBase.setCurrentIndex" id="E5PathPickerBase.setCurrentIndex" ref="eric6.E5Gui.E5PathPicker.html#E5PathPickerBase.setCurrentIndex" />
+      <keyword name="E5PathPickerBase.setDefaultDirectory" id="E5PathPickerBase.setDefaultDirectory" ref="eric6.E5Gui.E5PathPicker.html#E5PathPickerBase.setDefaultDirectory" />
+      <keyword name="E5PathPickerBase.setEditText" id="E5PathPickerBase.setEditText" ref="eric6.E5Gui.E5PathPicker.html#E5PathPickerBase.setEditText" />
+      <keyword name="E5PathPickerBase.setEditorEnabled" id="E5PathPickerBase.setEditorEnabled" ref="eric6.E5Gui.E5PathPicker.html#E5PathPickerBase.setEditorEnabled" />
+      <keyword name="E5PathPickerBase.setEditorToolTip" id="E5PathPickerBase.setEditorToolTip" ref="eric6.E5Gui.E5PathPicker.html#E5PathPickerBase.setEditorToolTip" />
+      <keyword name="E5PathPickerBase.setFilters" id="E5PathPickerBase.setFilters" ref="eric6.E5Gui.E5PathPicker.html#E5PathPickerBase.setFilters" />
+      <keyword name="E5PathPickerBase.setInsertPolicy" id="E5PathPickerBase.setInsertPolicy" ref="eric6.E5Gui.E5PathPicker.html#E5PathPickerBase.setInsertPolicy" />
+      <keyword name="E5PathPickerBase.setMode" id="E5PathPickerBase.setMode" ref="eric6.E5Gui.E5PathPicker.html#E5PathPickerBase.setMode" />
+      <keyword name="E5PathPickerBase.setNameFilters" id="E5PathPickerBase.setNameFilters" ref="eric6.E5Gui.E5PathPicker.html#E5PathPickerBase.setNameFilters" />
+      <keyword name="E5PathPickerBase.setPath" id="E5PathPickerBase.setPath" ref="eric6.E5Gui.E5PathPicker.html#E5PathPickerBase.setPath" />
+      <keyword name="E5PathPickerBase.setPathsList" id="E5PathPickerBase.setPathsList" ref="eric6.E5Gui.E5PathPicker.html#E5PathPickerBase.setPathsList" />
+      <keyword name="E5PathPickerBase.setPickerEnabled" id="E5PathPickerBase.setPickerEnabled" ref="eric6.E5Gui.E5PathPicker.html#E5PathPickerBase.setPickerEnabled" />
+      <keyword name="E5PathPickerBase.setSizeAdjustPolicy" id="E5PathPickerBase.setSizeAdjustPolicy" ref="eric6.E5Gui.E5PathPicker.html#E5PathPickerBase.setSizeAdjustPolicy" />
+      <keyword name="E5PathPickerBase.setText" id="E5PathPickerBase.setText" ref="eric6.E5Gui.E5PathPicker.html#E5PathPickerBase.setText" />
+      <keyword name="E5PathPickerBase.setWindowTitle" id="E5PathPickerBase.setWindowTitle" ref="eric6.E5Gui.E5PathPicker.html#E5PathPickerBase.setWindowTitle" />
+      <keyword name="E5PathPickerBase.text" id="E5PathPickerBase.text" ref="eric6.E5Gui.E5PathPicker.html#E5PathPickerBase.text" />
+      <keyword name="E5PathPickerBase.windowTitle" id="E5PathPickerBase.windowTitle" ref="eric6.E5Gui.E5PathPicker.html#E5PathPickerBase.windowTitle" />
       <keyword name="E5PathPickerModes" id="E5PathPickerModes" ref="eric6.E5Gui.E5PathPicker.html#E5PathPickerModes" />
       <keyword name="E5ProgressDialog" id="E5ProgressDialog" ref="eric6.E5Gui.E5ProgressDialog.html#E5ProgressDialog" />
       <keyword name="E5ProgressDialog (Constructor)" id="E5ProgressDialog (Constructor)" ref="eric6.E5Gui.E5ProgressDialog.html#E5ProgressDialog.__init__" />
--- a/Documentation/Source/eric6.E5Gui.E5PathPicker.html	Sun Dec 06 19:09:32 2015 +0100
+++ b/Documentation/Source/eric6.E5Gui.E5PathPicker.html	Sat Dec 12 12:38:50 2015 +0100
@@ -36,6 +36,9 @@
 <td><a href="#E5PathPicker">E5PathPicker</a></td>
 <td>Class implementing a path picker widget consisting of a line edit and a tool button to open a file dialog.</td>
 </tr><tr>
+<td><a href="#E5PathPickerBase">E5PathPickerBase</a></td>
+<td>Class implementing the base of a path picker widget consisting of a line edit or combo box and a tool button to open a file dialog.</td>
+</tr><tr>
 <td><a href="#E5PathPickerModes">E5PathPickerModes</a></td>
 <td>Class implementing the path picker modes.</td>
 </tr>
@@ -69,10 +72,10 @@
 </dd>
 </dl>
 <h3>Derived from</h3>
-QWidget
+E5PathPickerBase
 <h3>Class Attributes</h3>
 <table>
-<tr><td>DefaultMode</td></tr>
+<tr><td>None</td></tr>
 </table>
 <h3>Class Methods</h3>
 <table>
@@ -83,102 +86,6 @@
 <tr>
 <td><a href="#E5ComboPathPicker.__init__">E5ComboPathPicker</a></td>
 <td>Constructor</td>
-</tr><tr>
-<td><a href="#E5ComboPathPicker.__showPathPickerDialog">__showPathPickerDialog</a></td>
-<td>Private slot to show the path picker dialog.</td>
-</tr><tr>
-<td><a href="#E5ComboPathPicker.addItem">addItem</a></td>
-<td>Public method to add a paths to the current list.</td>
-</tr><tr>
-<td><a href="#E5ComboPathPicker.addItems">addItems</a></td>
-<td>Public method to add paths to the current list.</td>
-</tr><tr>
-<td><a href="#E5ComboPathPicker.buttonToolTip">buttonToolTip</a></td>
-<td>Public method to get the tool button tool tip.</td>
-</tr><tr>
-<td><a href="#E5ComboPathPicker.clear">clear</a></td>
-<td>Public method to clear the list of paths.</td>
-</tr><tr>
-<td><a href="#E5ComboPathPicker.clearEditText">clearEditText</a></td>
-<td>Public method to clear the current path.</td>
-</tr><tr>
-<td><a href="#E5ComboPathPicker.currentText">currentText</a></td>
-<td>Public method to get the current path.</td>
-</tr><tr>
-<td><a href="#E5ComboPathPicker.defaultDirectory">defaultDirectory</a></td>
-<td>Public method to get the default directory.</td>
-</tr><tr>
-<td><a href="#E5ComboPathPicker.editorEnabled">editorEnabled</a></td>
-<td>Public method to get the path editor's enabled state.</td>
-</tr><tr>
-<td><a href="#E5ComboPathPicker.editorToolTip">editorToolTip</a></td>
-<td>Public method to get the editor tool tip.</td>
-</tr><tr>
-<td><a href="#E5ComboPathPicker.filters">filters</a></td>
-<td>Public methods to get the filter string.</td>
-</tr><tr>
-<td><a href="#E5ComboPathPicker.firstPath">firstPath</a></td>
-<td>Public method to get the first path of a list of entered paths.</td>
-</tr><tr>
-<td><a href="#E5ComboPathPicker.isPickerEnabled">isPickerEnabled</a></td>
-<td>Public method to get the file dialog button enabled state.</td>
-</tr><tr>
-<td><a href="#E5ComboPathPicker.lastPath">lastPath</a></td>
-<td>Public method to get the last path of a list of entered paths.</td>
-</tr><tr>
-<td><a href="#E5ComboPathPicker.mode">mode</a></td>
-<td>Public method to get the path picker mode.</td>
-</tr><tr>
-<td><a href="#E5ComboPathPicker.path">path</a></td>
-<td>Public method to get the current path.</td>
-</tr><tr>
-<td><a href="#E5ComboPathPicker.paths">paths</a></td>
-<td>Public method to get the list of entered paths.</td>
-</tr><tr>
-<td><a href="#E5ComboPathPicker.setButtonToolTip">setButtonToolTip</a></td>
-<td>Public method to set the tool button tool tip.</td>
-</tr><tr>
-<td><a href="#E5ComboPathPicker.setCurrentIndex">setCurrentIndex</a></td>
-<td>Public slot to set the current index.</td>
-</tr><tr>
-<td><a href="#E5ComboPathPicker.setDefaultDirectory">setDefaultDirectory</a></td>
-<td>Public method to set the default directory.</td>
-</tr><tr>
-<td><a href="#E5ComboPathPicker.setEditText">setEditText</a></td>
-<td>Public method to set the current path.</td>
-</tr><tr>
-<td><a href="#E5ComboPathPicker.setEditorEnabled">setEditorEnabled</a></td>
-<td>Public method to set the path editor's enabled state.</td>
-</tr><tr>
-<td><a href="#E5ComboPathPicker.setEditorToolTip">setEditorToolTip</a></td>
-<td>Public method to set the editor tool tip.</td>
-</tr><tr>
-<td><a href="#E5ComboPathPicker.setFilters">setFilters</a></td>
-<td>Public method to set the filters for the path picker dialog.</td>
-</tr><tr>
-<td><a href="#E5ComboPathPicker.setInsertPolicy">setInsertPolicy</a></td>
-<td>Public method to set the insertion policy of the combo box.</td>
-</tr><tr>
-<td><a href="#E5ComboPathPicker.setMode">setMode</a></td>
-<td>Public method to set the path picker mode.</td>
-</tr><tr>
-<td><a href="#E5ComboPathPicker.setPath">setPath</a></td>
-<td>Public method to set the current path.</td>
-</tr><tr>
-<td><a href="#E5ComboPathPicker.setPathsList">setPathsList</a></td>
-<td>Public method to set the paths list.</td>
-</tr><tr>
-<td><a href="#E5ComboPathPicker.setPickerEnabled">setPickerEnabled</a></td>
-<td>Public method to set the enabled state of the file dialog button.</td>
-</tr><tr>
-<td><a href="#E5ComboPathPicker.setSizeAdjustPolicy">setSizeAdjustPolicy</a></td>
-<td>Public method to set the size adjust policy of the combo box.</td>
-</tr><tr>
-<td><a href="#E5ComboPathPicker.setWindowTitle">setWindowTitle</a></td>
-<td>Public method to set the path picker dialog window title.</td>
-</tr><tr>
-<td><a href="#E5ComboPathPicker.windowTitle">windowTitle</a></td>
-<td>Public method to get the path picker dialog's window title.</td>
 </tr>
 </table>
 <h3>Static Methods</h3>
@@ -195,378 +102,6 @@
 <dd>
 reference to the parent widget
 </dd>
-</dl><a NAME="E5ComboPathPicker.__showPathPickerDialog" ID="E5ComboPathPicker.__showPathPickerDialog"></a>
-<h4>E5ComboPathPicker.__showPathPickerDialog</h4>
-<b>__showPathPickerDialog</b>(<i></i>)
-<p>
-        Private slot to show the path picker dialog.
-</p><a NAME="E5ComboPathPicker.addItem" ID="E5ComboPathPicker.addItem"></a>
-<h4>E5ComboPathPicker.addItem</h4>
-<b>addItem</b>(<i>path</i>)
-<p>
-        Public method to add a paths to the current list.
-</p><dl>
-<dt><i>path</i> (str)</dt>
-<dd>
-path to add
-</dd>
-</dl><a NAME="E5ComboPathPicker.addItems" ID="E5ComboPathPicker.addItems"></a>
-<h4>E5ComboPathPicker.addItems</h4>
-<b>addItems</b>(<i>pathsList</i>)
-<p>
-        Public method to add paths to the current list.
-</p><dl>
-<dt><i>pathsList</i> (list of str)</dt>
-<dd>
-list of paths to add
-</dd>
-</dl><a NAME="E5ComboPathPicker.buttonToolTip" ID="E5ComboPathPicker.buttonToolTip"></a>
-<h4>E5ComboPathPicker.buttonToolTip</h4>
-<b>buttonToolTip</b>(<i></i>)
-<p>
-        Public method to get the tool button tool tip.
-</p><dl>
-<dt>Returns:</dt>
-<dd>
-tool tip text
-</dd>
-</dl><dl>
-<dt>Return Type:</dt>
-<dd>
-str
-</dd>
-</dl><a NAME="E5ComboPathPicker.clear" ID="E5ComboPathPicker.clear"></a>
-<h4>E5ComboPathPicker.clear</h4>
-<b>clear</b>(<i></i>)
-<p>
-        Public method to clear the list of paths.
-</p><a NAME="E5ComboPathPicker.clearEditText" ID="E5ComboPathPicker.clearEditText"></a>
-<h4>E5ComboPathPicker.clearEditText</h4>
-<b>clearEditText</b>(<i></i>)
-<p>
-        Public method to clear the current path.
-</p><a NAME="E5ComboPathPicker.currentText" ID="E5ComboPathPicker.currentText"></a>
-<h4>E5ComboPathPicker.currentText</h4>
-<b>currentText</b>(<i></i>)
-<p>
-        Public method to get the current path.
-</p><dl>
-<dt>Returns:</dt>
-<dd>
-current path
-</dd>
-</dl><dl>
-<dt>Return Type:</dt>
-<dd>
-str
-</dd>
-</dl><a NAME="E5ComboPathPicker.defaultDirectory" ID="E5ComboPathPicker.defaultDirectory"></a>
-<h4>E5ComboPathPicker.defaultDirectory</h4>
-<b>defaultDirectory</b>(<i></i>)
-<p>
-        Public method to get the default directory.
-</p><dl>
-<dt>Returns:</dt>
-<dd>
-default directory
-</dd>
-</dl><dl>
-<dt>Return Type:</dt>
-<dd>
-str
-</dd>
-</dl><a NAME="E5ComboPathPicker.editorEnabled" ID="E5ComboPathPicker.editorEnabled"></a>
-<h4>E5ComboPathPicker.editorEnabled</h4>
-<b>editorEnabled</b>(<i></i>)
-<p>
-        Public method to get the path editor's enabled state.
-</p><dl>
-<dt>Returns:</dt>
-<dd>
-flag indicating the enabled state
-</dd>
-</dl><dl>
-<dt>Return Type:</dt>
-<dd>
-bool
-</dd>
-</dl><a NAME="E5ComboPathPicker.editorToolTip" ID="E5ComboPathPicker.editorToolTip"></a>
-<h4>E5ComboPathPicker.editorToolTip</h4>
-<b>editorToolTip</b>(<i></i>)
-<p>
-        Public method to get the editor tool tip.
-</p><dl>
-<dt>Returns:</dt>
-<dd>
-tool tip text
-</dd>
-</dl><dl>
-<dt>Return Type:</dt>
-<dd>
-str
-</dd>
-</dl><a NAME="E5ComboPathPicker.filters" ID="E5ComboPathPicker.filters"></a>
-<h4>E5ComboPathPicker.filters</h4>
-<b>filters</b>(<i></i>)
-<p>
-        Public methods to get the filter string.
-</p><dl>
-<dt>Returns:</dt>
-<dd>
-filter string
-</dd>
-</dl><dl>
-<dt>Return Type:</dt>
-<dd>
-str
-</dd>
-</dl><a NAME="E5ComboPathPicker.firstPath" ID="E5ComboPathPicker.firstPath"></a>
-<h4>E5ComboPathPicker.firstPath</h4>
-<b>firstPath</b>(<i></i>)
-<p>
-        Public method to get the first path of a list of entered paths.
-</p><dl>
-<dt>Returns:</dt>
-<dd>
-first path
-</dd>
-</dl><dl>
-<dt>Return Type:</dt>
-<dd>
-str
-</dd>
-</dl><a NAME="E5ComboPathPicker.isPickerEnabled" ID="E5ComboPathPicker.isPickerEnabled"></a>
-<h4>E5ComboPathPicker.isPickerEnabled</h4>
-<b>isPickerEnabled</b>(<i></i>)
-<p>
-        Public method to get the file dialog button enabled state.
-</p><dl>
-<dt>Returns:</dt>
-<dd>
-flag indicating the enabled state
-</dd>
-</dl><dl>
-<dt>Return Type:</dt>
-<dd>
-bool
-</dd>
-</dl><a NAME="E5ComboPathPicker.lastPath" ID="E5ComboPathPicker.lastPath"></a>
-<h4>E5ComboPathPicker.lastPath</h4>
-<b>lastPath</b>(<i></i>)
-<p>
-        Public method to get the last path of a list of entered paths.
-</p><dl>
-<dt>Returns:</dt>
-<dd>
-first path
-</dd>
-</dl><dl>
-<dt>Return Type:</dt>
-<dd>
-str
-</dd>
-</dl><a NAME="E5ComboPathPicker.mode" ID="E5ComboPathPicker.mode"></a>
-<h4>E5ComboPathPicker.mode</h4>
-<b>mode</b>(<i></i>)
-<p>
-        Public method to get the path picker mode.
-</p><dl>
-<dt>Returns:</dt>
-<dd>
-path picker mode
-</dd>
-</dl><dl>
-<dt>Return Type:</dt>
-<dd>
-E5PathPickerModes
-</dd>
-</dl><a NAME="E5ComboPathPicker.path" ID="E5ComboPathPicker.path"></a>
-<h4>E5ComboPathPicker.path</h4>
-<b>path</b>(<i></i>)
-<p>
-        Public method to get the current path.
-</p><dl>
-<dt>Returns:</dt>
-<dd>
-current path
-</dd>
-</dl><dl>
-<dt>Return Type:</dt>
-<dd>
-str
-</dd>
-</dl><a NAME="E5ComboPathPicker.paths" ID="E5ComboPathPicker.paths"></a>
-<h4>E5ComboPathPicker.paths</h4>
-<b>paths</b>(<i></i>)
-<p>
-        Public method to get the list of entered paths.
-</p><dl>
-<dt>Returns:</dt>
-<dd>
-entered paths
-</dd>
-</dl><dl>
-<dt>Return Type:</dt>
-<dd>
-list of str
-</dd>
-</dl><a NAME="E5ComboPathPicker.setButtonToolTip" ID="E5ComboPathPicker.setButtonToolTip"></a>
-<h4>E5ComboPathPicker.setButtonToolTip</h4>
-<b>setButtonToolTip</b>(<i>tooltip</i>)
-<p>
-        Public method to set the tool button tool tip.
-</p><dl>
-<dt><i>tooltip</i> (str)</dt>
-<dd>
-text to be set as a tool tip
-</dd>
-</dl><a NAME="E5ComboPathPicker.setCurrentIndex" ID="E5ComboPathPicker.setCurrentIndex"></a>
-<h4>E5ComboPathPicker.setCurrentIndex</h4>
-<b>setCurrentIndex</b>(<i>index</i>)
-<p>
-        Public slot to set the current index.
-</p><dl>
-<dt><i>index</i> (int)</dt>
-<dd>
-index of the item to set current
-</dd>
-</dl><a NAME="E5ComboPathPicker.setDefaultDirectory" ID="E5ComboPathPicker.setDefaultDirectory"></a>
-<h4>E5ComboPathPicker.setDefaultDirectory</h4>
-<b>setDefaultDirectory</b>(<i>directory</i>)
-<p>
-        Public method to set the default directory.
-</p><dl>
-<dt><i>directory</i> (str)</dt>
-<dd>
-default directory
-</dd>
-</dl><a NAME="E5ComboPathPicker.setEditText" ID="E5ComboPathPicker.setEditText"></a>
-<h4>E5ComboPathPicker.setEditText</h4>
-<b>setEditText</b>(<i>path</i>)
-<p>
-        Public method to set the current path.
-</p><dl>
-<dt><i>path</i> (str)</dt>
-<dd>
-path to be set
-</dd>
-</dl><a NAME="E5ComboPathPicker.setEditorEnabled" ID="E5ComboPathPicker.setEditorEnabled"></a>
-<h4>E5ComboPathPicker.setEditorEnabled</h4>
-<b>setEditorEnabled</b>(<i>enable</i>)
-<p>
-        Public method to set the path editor's enabled state.
-</p><dl>
-<dt><i>enable</i> (bool)</dt>
-<dd>
-flag indicating the enable state
-</dd>
-</dl><a NAME="E5ComboPathPicker.setEditorToolTip" ID="E5ComboPathPicker.setEditorToolTip"></a>
-<h4>E5ComboPathPicker.setEditorToolTip</h4>
-<b>setEditorToolTip</b>(<i>tooltip</i>)
-<p>
-        Public method to set the editor tool tip.
-</p><dl>
-<dt><i>tooltip</i> (str)</dt>
-<dd>
-text to be set as a tool tip
-</dd>
-</dl><a NAME="E5ComboPathPicker.setFilters" ID="E5ComboPathPicker.setFilters"></a>
-<h4>E5ComboPathPicker.setFilters</h4>
-<b>setFilters</b>(<i>filters</i>)
-<p>
-        Public method to set the filters for the path picker dialog.
-</p><p>
-        Note: Multiple filters must be separated by ';;'.
-</p><dl>
-<dt><i>filters</i> (str)</dt>
-<dd>
-string containing the file filters
-</dd>
-</dl><a NAME="E5ComboPathPicker.setInsertPolicy" ID="E5ComboPathPicker.setInsertPolicy"></a>
-<h4>E5ComboPathPicker.setInsertPolicy</h4>
-<b>setInsertPolicy</b>(<i>policy</i>)
-<p>
-        Public method to set the insertion policy of the combo box.
-</p><dl>
-<dt><i>policy</i> (QComboBox.InsertPolicy)</dt>
-<dd>
-insertion policy
-</dd>
-</dl><a NAME="E5ComboPathPicker.setMode" ID="E5ComboPathPicker.setMode"></a>
-<h4>E5ComboPathPicker.setMode</h4>
-<b>setMode</b>(<i>mode</i>)
-<p>
-        Public method to set the path picker mode.
-</p><dl>
-<dt><i>mode</i> (E5PathPickerModes)</dt>
-<dd>
-picker mode
-</dd>
-</dl><a NAME="E5ComboPathPicker.setPath" ID="E5ComboPathPicker.setPath"></a>
-<h4>E5ComboPathPicker.setPath</h4>
-<b>setPath</b>(<i>path</i>)
-<p>
-        Public method to set the current path.
-</p><dl>
-<dt><i>path</i> (str)</dt>
-<dd>
-path to be set
-</dd>
-</dl><a NAME="E5ComboPathPicker.setPathsList" ID="E5ComboPathPicker.setPathsList"></a>
-<h4>E5ComboPathPicker.setPathsList</h4>
-<b>setPathsList</b>(<i>pathsList</i>)
-<p>
-        Public method to set the paths list.
-</p><dl>
-<dt><i>pathsList</i> (list of str)</dt>
-<dd>
-list of paths
-</dd>
-</dl><a NAME="E5ComboPathPicker.setPickerEnabled" ID="E5ComboPathPicker.setPickerEnabled"></a>
-<h4>E5ComboPathPicker.setPickerEnabled</h4>
-<b>setPickerEnabled</b>(<i>enable</i>)
-<p>
-        Public method to set the enabled state of the file dialog button.
-</p><dl>
-<dt><i>enable</i> (bool)</dt>
-<dd>
-flag indicating the enabled state
-</dd>
-</dl><a NAME="E5ComboPathPicker.setSizeAdjustPolicy" ID="E5ComboPathPicker.setSizeAdjustPolicy"></a>
-<h4>E5ComboPathPicker.setSizeAdjustPolicy</h4>
-<b>setSizeAdjustPolicy</b>(<i>policy</i>)
-<p>
-        Public method to set the size adjust policy of the combo box.
-</p><dl>
-<dt><i>policy</i> (QComboBox.SizeAdjustPolicy)</dt>
-<dd>
-size adjust policy
-</dd>
-</dl><a NAME="E5ComboPathPicker.setWindowTitle" ID="E5ComboPathPicker.setWindowTitle"></a>
-<h4>E5ComboPathPicker.setWindowTitle</h4>
-<b>setWindowTitle</b>(<i>title</i>)
-<p>
-        Public method to set the path picker dialog window title.
-</p><dl>
-<dt><i>title</i> (str)</dt>
-<dd>
-window title
-</dd>
-</dl><a NAME="E5ComboPathPicker.windowTitle" ID="E5ComboPathPicker.windowTitle"></a>
-<h4>E5ComboPathPicker.windowTitle</h4>
-<b>windowTitle</b>(<i></i>)
-<p>
-        Public method to get the path picker dialog's window title.
-</p><dl>
-<dt>Returns:</dt>
-<dd>
-window title
-</dd>
-</dl><dl>
-<dt>Return Type:</dt>
-<dd>
-str
-</dd>
 </dl>
 <div align="right"><a href="#top">Up</a></div>
 <hr /><hr />
@@ -594,10 +129,10 @@
 </dd>
 </dl>
 <h3>Derived from</h3>
-QWidget
+E5PathPickerBase
 <h3>Class Attributes</h3>
 <table>
-<tr><td>DefaultMode</td></tr>
+<tr><td>None</td></tr>
 </table>
 <h3>Class Methods</h3>
 <table>
@@ -608,87 +143,6 @@
 <tr>
 <td><a href="#E5PathPicker.__init__">E5PathPicker</a></td>
 <td>Constructor</td>
-</tr><tr>
-<td><a href="#E5PathPicker.__pathEdited">__pathEdited</a></td>
-<td>Private slot handling editing of the path.</td>
-</tr><tr>
-<td><a href="#E5PathPicker.__showPathPickerDialog">__showPathPickerDialog</a></td>
-<td>Private slot to show the path picker dialog.</td>
-</tr><tr>
-<td><a href="#E5PathPicker.buttonToolTip">buttonToolTip</a></td>
-<td>Public method to get the tool button tool tip.</td>
-</tr><tr>
-<td><a href="#E5PathPicker.clear">clear</a></td>
-<td>Public method to clear the current path.</td>
-</tr><tr>
-<td><a href="#E5PathPicker.defaultDirectory">defaultDirectory</a></td>
-<td>Public method to get the default directory.</td>
-</tr><tr>
-<td><a href="#E5PathPicker.editorEnabled">editorEnabled</a></td>
-<td>Public method to get the path editor's enabled state.</td>
-</tr><tr>
-<td><a href="#E5PathPicker.editorToolTip">editorToolTip</a></td>
-<td>Public method to get the editor tool tip.</td>
-</tr><tr>
-<td><a href="#E5PathPicker.filters">filters</a></td>
-<td>Public methods to get the filter string.</td>
-</tr><tr>
-<td><a href="#E5PathPicker.firstPath">firstPath</a></td>
-<td>Public method to get the first path of a list of entered paths.</td>
-</tr><tr>
-<td><a href="#E5PathPicker.isPickerEnabled">isPickerEnabled</a></td>
-<td>Public method to get the file dialog button enabled state.</td>
-</tr><tr>
-<td><a href="#E5PathPicker.lastPath">lastPath</a></td>
-<td>Public method to get the last path of a list of entered paths.</td>
-</tr><tr>
-<td><a href="#E5PathPicker.mode">mode</a></td>
-<td>Public method to get the path picker mode.</td>
-</tr><tr>
-<td><a href="#E5PathPicker.path">path</a></td>
-<td>Public method to get the current path.</td>
-</tr><tr>
-<td><a href="#E5PathPicker.paths">paths</a></td>
-<td>Public method to get the list of entered paths.</td>
-</tr><tr>
-<td><a href="#E5PathPicker.setButtonToolTip">setButtonToolTip</a></td>
-<td>Public method to set the tool button tool tip.</td>
-</tr><tr>
-<td><a href="#E5PathPicker.setDefaultDirectory">setDefaultDirectory</a></td>
-<td>Public method to set the default directory.</td>
-</tr><tr>
-<td><a href="#E5PathPicker.setEditorEnabled">setEditorEnabled</a></td>
-<td>Public method to set the path editor's enabled state.</td>
-</tr><tr>
-<td><a href="#E5PathPicker.setEditorToolTip">setEditorToolTip</a></td>
-<td>Public method to set the editor tool tip.</td>
-</tr><tr>
-<td><a href="#E5PathPicker.setFilters">setFilters</a></td>
-<td>Public method to set the filters for the path picker dialog.</td>
-</tr><tr>
-<td><a href="#E5PathPicker.setMode">setMode</a></td>
-<td>Public method to set the path picker mode.</td>
-</tr><tr>
-<td><a href="#E5PathPicker.setNameFilters">setNameFilters</a></td>
-<td>Public method to set the name filters for the completer.</td>
-</tr><tr>
-<td><a href="#E5PathPicker.setPath">setPath</a></td>
-<td>Public method to set the current path.</td>
-</tr><tr>
-<td><a href="#E5PathPicker.setPickerEnabled">setPickerEnabled</a></td>
-<td>Public method to set the enabled state of the file dialog button.</td>
-</tr><tr>
-<td><a href="#E5PathPicker.setText">setText</a></td>
-<td>Public method to set the current path.</td>
-</tr><tr>
-<td><a href="#E5PathPicker.setWindowTitle">setWindowTitle</a></td>
-<td>Public method to set the path picker dialog window title.</td>
-</tr><tr>
-<td><a href="#E5PathPicker.text">text</a></td>
-<td>Public method to get the current path.</td>
-</tr><tr>
-<td><a href="#E5PathPicker.windowTitle">windowTitle</a></td>
-<td>Public method to get the path picker dialog's window title.</td>
 </tr>
 </table>
 <h3>Static Methods</h3>
@@ -705,8 +159,187 @@
 <dd>
 reference to the parent widget
 </dd>
-</dl><a NAME="E5PathPicker.__pathEdited" ID="E5PathPicker.__pathEdited"></a>
-<h4>E5PathPicker.__pathEdited</h4>
+</dl>
+<div align="right"><a href="#top">Up</a></div>
+<hr /><hr />
+<a NAME="E5PathPickerBase" ID="E5PathPickerBase"></a>
+<h2>E5PathPickerBase</h2>
+<p>
+    Class implementing the base of a path picker widget consisting of a
+    line edit or combo box and a tool button to open a file dialog.
+</p><h3>Signals</h3>
+<dl>
+<dt>aboutToShowPathPickerDialog</dt>
+<dd>
+emitted before the file dialog is shown
+</dd><dt>editTextChanged(path)</dt>
+<dd>
+emitted when the entered path has changed
+        (combo box based widget)
+</dd><dt>pathSelected(path)</dt>
+<dd>
+emitted after a path has been selected via the
+        file dialog
+</dd><dt>pickerButtonClicked</dt>
+<dd>
+emitted when the picker button was pressed and
+        the widget mode is custom
+</dd><dt>textChanged(path)</dt>
+<dd>
+emitted when the entered path has changed
+        (line edit based widget)
+</dd>
+</dl>
+<h3>Derived from</h3>
+QWidget
+<h3>Class Attributes</h3>
+<table>
+<tr><td>DefaultMode</td></tr>
+</table>
+<h3>Class Methods</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+<h3>Methods</h3>
+<table>
+<tr>
+<td><a href="#E5PathPickerBase.__init__">E5PathPickerBase</a></td>
+<td>Constructor</td>
+</tr><tr>
+<td><a href="#E5PathPickerBase.__pathEdited">__pathEdited</a></td>
+<td>Private slot handling editing of the path.</td>
+</tr><tr>
+<td><a href="#E5PathPickerBase.__showPathPickerDialog">__showPathPickerDialog</a></td>
+<td>Private slot to show the path picker dialog.</td>
+</tr><tr>
+<td><a href="#E5PathPickerBase._editorText">_editorText</a></td>
+<td>Protected method to get the text of the editor.</td>
+</tr><tr>
+<td><a href="#E5PathPickerBase._setEditorText">_setEditorText</a></td>
+<td>Protected method to set the text of the editor.</td>
+</tr><tr>
+<td><a href="#E5PathPickerBase.addItem">addItem</a></td>
+<td>Public method to add a paths to the current list.</td>
+</tr><tr>
+<td><a href="#E5PathPickerBase.addItems">addItems</a></td>
+<td>Public method to add paths to the current list.</td>
+</tr><tr>
+<td><a href="#E5PathPickerBase.buttonToolTip">buttonToolTip</a></td>
+<td>Public method to get the tool button tool tip.</td>
+</tr><tr>
+<td><a href="#E5PathPickerBase.clear">clear</a></td>
+<td>Public method to clear the current path or list of paths.</td>
+</tr><tr>
+<td><a href="#E5PathPickerBase.clearEditText">clearEditText</a></td>
+<td>Public method to clear the current path.</td>
+</tr><tr>
+<td><a href="#E5PathPickerBase.currentText">currentText</a></td>
+<td>Public method to get the current path.</td>
+</tr><tr>
+<td><a href="#E5PathPickerBase.defaultDirectory">defaultDirectory</a></td>
+<td>Public method to get the default directory.</td>
+</tr><tr>
+<td><a href="#E5PathPickerBase.editorEnabled">editorEnabled</a></td>
+<td>Public method to get the path editor's enabled state.</td>
+</tr><tr>
+<td><a href="#E5PathPickerBase.editorToolTip">editorToolTip</a></td>
+<td>Public method to get the editor tool tip.</td>
+</tr><tr>
+<td><a href="#E5PathPickerBase.filters">filters</a></td>
+<td>Public methods to get the filter string.</td>
+</tr><tr>
+<td><a href="#E5PathPickerBase.firstPath">firstPath</a></td>
+<td>Public method to get the first path of a list of entered paths.</td>
+</tr><tr>
+<td><a href="#E5PathPickerBase.isPickerEnabled">isPickerEnabled</a></td>
+<td>Public method to get the file dialog button enabled state.</td>
+</tr><tr>
+<td><a href="#E5PathPickerBase.lastPath">lastPath</a></td>
+<td>Public method to get the last path of a list of entered paths.</td>
+</tr><tr>
+<td><a href="#E5PathPickerBase.mode">mode</a></td>
+<td>Public method to get the path picker mode.</td>
+</tr><tr>
+<td><a href="#E5PathPickerBase.path">path</a></td>
+<td>Public method to get the current path.</td>
+</tr><tr>
+<td><a href="#E5PathPickerBase.paths">paths</a></td>
+<td>Public method to get the list of entered paths.</td>
+</tr><tr>
+<td><a href="#E5PathPickerBase.setButtonToolTip">setButtonToolTip</a></td>
+<td>Public method to set the tool button tool tip.</td>
+</tr><tr>
+<td><a href="#E5PathPickerBase.setCurrentIndex">setCurrentIndex</a></td>
+<td>Public slot to set the current index.</td>
+</tr><tr>
+<td><a href="#E5PathPickerBase.setDefaultDirectory">setDefaultDirectory</a></td>
+<td>Public method to set the default directory.</td>
+</tr><tr>
+<td><a href="#E5PathPickerBase.setEditText">setEditText</a></td>
+<td>Public method to set the current path.</td>
+</tr><tr>
+<td><a href="#E5PathPickerBase.setEditorEnabled">setEditorEnabled</a></td>
+<td>Public method to set the path editor's enabled state.</td>
+</tr><tr>
+<td><a href="#E5PathPickerBase.setEditorToolTip">setEditorToolTip</a></td>
+<td>Public method to set the editor tool tip.</td>
+</tr><tr>
+<td><a href="#E5PathPickerBase.setFilters">setFilters</a></td>
+<td>Public method to set the filters for the path picker dialog.</td>
+</tr><tr>
+<td><a href="#E5PathPickerBase.setInsertPolicy">setInsertPolicy</a></td>
+<td>Public method to set the insertion policy of the combo box.</td>
+</tr><tr>
+<td><a href="#E5PathPickerBase.setMode">setMode</a></td>
+<td>Public method to set the path picker mode.</td>
+</tr><tr>
+<td><a href="#E5PathPickerBase.setNameFilters">setNameFilters</a></td>
+<td>Public method to set the name filters for the completer.</td>
+</tr><tr>
+<td><a href="#E5PathPickerBase.setPath">setPath</a></td>
+<td>Public method to set the current path.</td>
+</tr><tr>
+<td><a href="#E5PathPickerBase.setPathsList">setPathsList</a></td>
+<td>Public method to set the paths list.</td>
+</tr><tr>
+<td><a href="#E5PathPickerBase.setPickerEnabled">setPickerEnabled</a></td>
+<td>Public method to set the enabled state of the file dialog button.</td>
+</tr><tr>
+<td><a href="#E5PathPickerBase.setSizeAdjustPolicy">setSizeAdjustPolicy</a></td>
+<td>Public method to set the size adjust policy of the combo box.</td>
+</tr><tr>
+<td><a href="#E5PathPickerBase.setText">setText</a></td>
+<td>Public method to set the current path.</td>
+</tr><tr>
+<td><a href="#E5PathPickerBase.setWindowTitle">setWindowTitle</a></td>
+<td>Public method to set the path picker dialog window title.</td>
+</tr><tr>
+<td><a href="#E5PathPickerBase.text">text</a></td>
+<td>Public method to get the current path.</td>
+</tr><tr>
+<td><a href="#E5PathPickerBase.windowTitle">windowTitle</a></td>
+<td>Public method to get the path picker dialog's window title.</td>
+</tr>
+</table>
+<h3>Static Methods</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+<a NAME="E5PathPickerBase.__init__" ID="E5PathPickerBase.__init__"></a>
+<h4>E5PathPickerBase (Constructor)</h4>
+<b>E5PathPickerBase</b>(<i>parent=None, useLineEdit=True</i>)
+<p>
+        Constructor
+</p><dl>
+<dt><i>parent</i> (QWidget)</dt>
+<dd>
+reference to the parent widget
+</dd><dt><i>useLineEdit</i> (bool)</dt>
+<dd>
+flag indicating the use of a line edit
+</dd>
+</dl><a NAME="E5PathPickerBase.__pathEdited" ID="E5PathPickerBase.__pathEdited"></a>
+<h4>E5PathPickerBase.__pathEdited</h4>
 <b>__pathEdited</b>(<i>path</i>)
 <p>
         Private slot handling editing of the path.
@@ -715,13 +348,58 @@
 <dd>
 current text of the path line edit
 </dd>
-</dl><a NAME="E5PathPicker.__showPathPickerDialog" ID="E5PathPicker.__showPathPickerDialog"></a>
-<h4>E5PathPicker.__showPathPickerDialog</h4>
+</dl><a NAME="E5PathPickerBase.__showPathPickerDialog" ID="E5PathPickerBase.__showPathPickerDialog"></a>
+<h4>E5PathPickerBase.__showPathPickerDialog</h4>
 <b>__showPathPickerDialog</b>(<i></i>)
 <p>
         Private slot to show the path picker dialog.
-</p><a NAME="E5PathPicker.buttonToolTip" ID="E5PathPicker.buttonToolTip"></a>
-<h4>E5PathPicker.buttonToolTip</h4>
+</p><a NAME="E5PathPickerBase._editorText" ID="E5PathPickerBase._editorText"></a>
+<h4>E5PathPickerBase._editorText</h4>
+<b>_editorText</b>(<i></i>)
+<p>
+        Protected method to get the text of the editor.
+</p><dl>
+<dt>Returns:</dt>
+<dd>
+text of the editor
+</dd>
+</dl><dl>
+<dt>Return Type:</dt>
+<dd>
+str
+</dd>
+</dl><a NAME="E5PathPickerBase._setEditorText" ID="E5PathPickerBase._setEditorText"></a>
+<h4>E5PathPickerBase._setEditorText</h4>
+<b>_setEditorText</b>(<i>text</i>)
+<p>
+        Protected method to set the text of the editor.
+</p><dl>
+<dt><i>text</i> (str)</dt>
+<dd>
+text to set
+</dd>
+</dl><a NAME="E5PathPickerBase.addItem" ID="E5PathPickerBase.addItem"></a>
+<h4>E5PathPickerBase.addItem</h4>
+<b>addItem</b>(<i>path</i>)
+<p>
+        Public method to add a paths to the current list.
+</p><dl>
+<dt><i>path</i> (str)</dt>
+<dd>
+path to add
+</dd>
+</dl><a NAME="E5PathPickerBase.addItems" ID="E5PathPickerBase.addItems"></a>
+<h4>E5PathPickerBase.addItems</h4>
+<b>addItems</b>(<i>pathsList</i>)
+<p>
+        Public method to add paths to the current list.
+</p><dl>
+<dt><i>pathsList</i> (list of str)</dt>
+<dd>
+list of paths to add
+</dd>
+</dl><a NAME="E5PathPickerBase.buttonToolTip" ID="E5PathPickerBase.buttonToolTip"></a>
+<h4>E5PathPickerBase.buttonToolTip</h4>
 <b>buttonToolTip</b>(<i></i>)
 <p>
         Public method to get the tool button tool tip.
@@ -735,13 +413,33 @@
 <dd>
 str
 </dd>
-</dl><a NAME="E5PathPicker.clear" ID="E5PathPicker.clear"></a>
-<h4>E5PathPicker.clear</h4>
+</dl><a NAME="E5PathPickerBase.clear" ID="E5PathPickerBase.clear"></a>
+<h4>E5PathPickerBase.clear</h4>
 <b>clear</b>(<i></i>)
 <p>
+        Public method to clear the current path or list of paths.
+</p><a NAME="E5PathPickerBase.clearEditText" ID="E5PathPickerBase.clearEditText"></a>
+<h4>E5PathPickerBase.clearEditText</h4>
+<b>clearEditText</b>(<i></i>)
+<p>
         Public method to clear the current path.
-</p><a NAME="E5PathPicker.defaultDirectory" ID="E5PathPicker.defaultDirectory"></a>
-<h4>E5PathPicker.defaultDirectory</h4>
+</p><a NAME="E5PathPickerBase.currentText" ID="E5PathPickerBase.currentText"></a>
+<h4>E5PathPickerBase.currentText</h4>
+<b>currentText</b>(<i></i>)
+<p>
+        Public method to get the current path.
+</p><dl>
+<dt>Returns:</dt>
+<dd>
+current path
+</dd>
+</dl><dl>
+<dt>Return Type:</dt>
+<dd>
+str
+</dd>
+</dl><a NAME="E5PathPickerBase.defaultDirectory" ID="E5PathPickerBase.defaultDirectory"></a>
+<h4>E5PathPickerBase.defaultDirectory</h4>
 <b>defaultDirectory</b>(<i></i>)
 <p>
         Public method to get the default directory.
@@ -755,8 +453,8 @@
 <dd>
 str
 </dd>
-</dl><a NAME="E5PathPicker.editorEnabled" ID="E5PathPicker.editorEnabled"></a>
-<h4>E5PathPicker.editorEnabled</h4>
+</dl><a NAME="E5PathPickerBase.editorEnabled" ID="E5PathPickerBase.editorEnabled"></a>
+<h4>E5PathPickerBase.editorEnabled</h4>
 <b>editorEnabled</b>(<i></i>)
 <p>
         Public method to get the path editor's enabled state.
@@ -770,8 +468,8 @@
 <dd>
 bool
 </dd>
-</dl><a NAME="E5PathPicker.editorToolTip" ID="E5PathPicker.editorToolTip"></a>
-<h4>E5PathPicker.editorToolTip</h4>
+</dl><a NAME="E5PathPickerBase.editorToolTip" ID="E5PathPickerBase.editorToolTip"></a>
+<h4>E5PathPickerBase.editorToolTip</h4>
 <b>editorToolTip</b>(<i></i>)
 <p>
         Public method to get the editor tool tip.
@@ -785,8 +483,8 @@
 <dd>
 str
 </dd>
-</dl><a NAME="E5PathPicker.filters" ID="E5PathPicker.filters"></a>
-<h4>E5PathPicker.filters</h4>
+</dl><a NAME="E5PathPickerBase.filters" ID="E5PathPickerBase.filters"></a>
+<h4>E5PathPickerBase.filters</h4>
 <b>filters</b>(<i></i>)
 <p>
         Public methods to get the filter string.
@@ -800,8 +498,8 @@
 <dd>
 str
 </dd>
-</dl><a NAME="E5PathPicker.firstPath" ID="E5PathPicker.firstPath"></a>
-<h4>E5PathPicker.firstPath</h4>
+</dl><a NAME="E5PathPickerBase.firstPath" ID="E5PathPickerBase.firstPath"></a>
+<h4>E5PathPickerBase.firstPath</h4>
 <b>firstPath</b>(<i></i>)
 <p>
         Public method to get the first path of a list of entered paths.
@@ -815,8 +513,8 @@
 <dd>
 str
 </dd>
-</dl><a NAME="E5PathPicker.isPickerEnabled" ID="E5PathPicker.isPickerEnabled"></a>
-<h4>E5PathPicker.isPickerEnabled</h4>
+</dl><a NAME="E5PathPickerBase.isPickerEnabled" ID="E5PathPickerBase.isPickerEnabled"></a>
+<h4>E5PathPickerBase.isPickerEnabled</h4>
 <b>isPickerEnabled</b>(<i></i>)
 <p>
         Public method to get the file dialog button enabled state.
@@ -830,8 +528,8 @@
 <dd>
 bool
 </dd>
-</dl><a NAME="E5PathPicker.lastPath" ID="E5PathPicker.lastPath"></a>
-<h4>E5PathPicker.lastPath</h4>
+</dl><a NAME="E5PathPickerBase.lastPath" ID="E5PathPickerBase.lastPath"></a>
+<h4>E5PathPickerBase.lastPath</h4>
 <b>lastPath</b>(<i></i>)
 <p>
         Public method to get the last path of a list of entered paths.
@@ -845,8 +543,8 @@
 <dd>
 str
 </dd>
-</dl><a NAME="E5PathPicker.mode" ID="E5PathPicker.mode"></a>
-<h4>E5PathPicker.mode</h4>
+</dl><a NAME="E5PathPickerBase.mode" ID="E5PathPickerBase.mode"></a>
+<h4>E5PathPickerBase.mode</h4>
 <b>mode</b>(<i></i>)
 <p>
         Public method to get the path picker mode.
@@ -860,8 +558,8 @@
 <dd>
 E5PathPickerModes
 </dd>
-</dl><a NAME="E5PathPicker.path" ID="E5PathPicker.path"></a>
-<h4>E5PathPicker.path</h4>
+</dl><a NAME="E5PathPickerBase.path" ID="E5PathPickerBase.path"></a>
+<h4>E5PathPickerBase.path</h4>
 <b>path</b>(<i></i>)
 <p>
         Public method to get the current path.
@@ -875,8 +573,8 @@
 <dd>
 str
 </dd>
-</dl><a NAME="E5PathPicker.paths" ID="E5PathPicker.paths"></a>
-<h4>E5PathPicker.paths</h4>
+</dl><a NAME="E5PathPickerBase.paths" ID="E5PathPickerBase.paths"></a>
+<h4>E5PathPickerBase.paths</h4>
 <b>paths</b>(<i></i>)
 <p>
         Public method to get the list of entered paths.
@@ -890,8 +588,8 @@
 <dd>
 list of str
 </dd>
-</dl><a NAME="E5PathPicker.setButtonToolTip" ID="E5PathPicker.setButtonToolTip"></a>
-<h4>E5PathPicker.setButtonToolTip</h4>
+</dl><a NAME="E5PathPickerBase.setButtonToolTip" ID="E5PathPickerBase.setButtonToolTip"></a>
+<h4>E5PathPickerBase.setButtonToolTip</h4>
 <b>setButtonToolTip</b>(<i>tooltip</i>)
 <p>
         Public method to set the tool button tool tip.
@@ -900,8 +598,18 @@
 <dd>
 text to be set as a tool tip
 </dd>
-</dl><a NAME="E5PathPicker.setDefaultDirectory" ID="E5PathPicker.setDefaultDirectory"></a>
-<h4>E5PathPicker.setDefaultDirectory</h4>
+</dl><a NAME="E5PathPickerBase.setCurrentIndex" ID="E5PathPickerBase.setCurrentIndex"></a>
+<h4>E5PathPickerBase.setCurrentIndex</h4>
+<b>setCurrentIndex</b>(<i>index</i>)
+<p>
+        Public slot to set the current index.
+</p><dl>
+<dt><i>index</i> (int)</dt>
+<dd>
+index of the item to set current
+</dd>
+</dl><a NAME="E5PathPickerBase.setDefaultDirectory" ID="E5PathPickerBase.setDefaultDirectory"></a>
+<h4>E5PathPickerBase.setDefaultDirectory</h4>
 <b>setDefaultDirectory</b>(<i>directory</i>)
 <p>
         Public method to set the default directory.
@@ -910,8 +618,18 @@
 <dd>
 default directory
 </dd>
-</dl><a NAME="E5PathPicker.setEditorEnabled" ID="E5PathPicker.setEditorEnabled"></a>
-<h4>E5PathPicker.setEditorEnabled</h4>
+</dl><a NAME="E5PathPickerBase.setEditText" ID="E5PathPickerBase.setEditText"></a>
+<h4>E5PathPickerBase.setEditText</h4>
+<b>setEditText</b>(<i>path</i>)
+<p>
+        Public method to set the current path.
+</p><dl>
+<dt><i>path</i> (str)</dt>
+<dd>
+path to be set
+</dd>
+</dl><a NAME="E5PathPickerBase.setEditorEnabled" ID="E5PathPickerBase.setEditorEnabled"></a>
+<h4>E5PathPickerBase.setEditorEnabled</h4>
 <b>setEditorEnabled</b>(<i>enable</i>)
 <p>
         Public method to set the path editor's enabled state.
@@ -920,8 +638,8 @@
 <dd>
 flag indicating the enable state
 </dd>
-</dl><a NAME="E5PathPicker.setEditorToolTip" ID="E5PathPicker.setEditorToolTip"></a>
-<h4>E5PathPicker.setEditorToolTip</h4>
+</dl><a NAME="E5PathPickerBase.setEditorToolTip" ID="E5PathPickerBase.setEditorToolTip"></a>
+<h4>E5PathPickerBase.setEditorToolTip</h4>
 <b>setEditorToolTip</b>(<i>tooltip</i>)
 <p>
         Public method to set the editor tool tip.
@@ -930,8 +648,8 @@
 <dd>
 text to be set as a tool tip
 </dd>
-</dl><a NAME="E5PathPicker.setFilters" ID="E5PathPicker.setFilters"></a>
-<h4>E5PathPicker.setFilters</h4>
+</dl><a NAME="E5PathPickerBase.setFilters" ID="E5PathPickerBase.setFilters"></a>
+<h4>E5PathPickerBase.setFilters</h4>
 <b>setFilters</b>(<i>filters</i>)
 <p>
         Public method to set the filters for the path picker dialog.
@@ -942,8 +660,18 @@
 <dd>
 string containing the file filters
 </dd>
-</dl><a NAME="E5PathPicker.setMode" ID="E5PathPicker.setMode"></a>
-<h4>E5PathPicker.setMode</h4>
+</dl><a NAME="E5PathPickerBase.setInsertPolicy" ID="E5PathPickerBase.setInsertPolicy"></a>
+<h4>E5PathPickerBase.setInsertPolicy</h4>
+<b>setInsertPolicy</b>(<i>policy</i>)
+<p>
+        Public method to set the insertion policy of the combo box.
+</p><dl>
+<dt><i>policy</i> (QComboBox.InsertPolicy)</dt>
+<dd>
+insertion policy
+</dd>
+</dl><a NAME="E5PathPickerBase.setMode" ID="E5PathPickerBase.setMode"></a>
+<h4>E5PathPickerBase.setMode</h4>
 <b>setMode</b>(<i>mode</i>)
 <p>
         Public method to set the path picker mode.
@@ -952,8 +680,8 @@
 <dd>
 picker mode
 </dd>
-</dl><a NAME="E5PathPicker.setNameFilters" ID="E5PathPicker.setNameFilters"></a>
-<h4>E5PathPicker.setNameFilters</h4>
+</dl><a NAME="E5PathPickerBase.setNameFilters" ID="E5PathPickerBase.setNameFilters"></a>
+<h4>E5PathPickerBase.setNameFilters</h4>
 <b>setNameFilters</b>(<i>filters</i>)
 <p>
         Public method to set the name filters for the completer.
@@ -962,8 +690,8 @@
 <dd>
 list of file name filters
 </dd>
-</dl><a NAME="E5PathPicker.setPath" ID="E5PathPicker.setPath"></a>
-<h4>E5PathPicker.setPath</h4>
+</dl><a NAME="E5PathPickerBase.setPath" ID="E5PathPickerBase.setPath"></a>
+<h4>E5PathPickerBase.setPath</h4>
 <b>setPath</b>(<i>path</i>)
 <p>
         Public method to set the current path.
@@ -972,8 +700,18 @@
 <dd>
 path to be set
 </dd>
-</dl><a NAME="E5PathPicker.setPickerEnabled" ID="E5PathPicker.setPickerEnabled"></a>
-<h4>E5PathPicker.setPickerEnabled</h4>
+</dl><a NAME="E5PathPickerBase.setPathsList" ID="E5PathPickerBase.setPathsList"></a>
+<h4>E5PathPickerBase.setPathsList</h4>
+<b>setPathsList</b>(<i>pathsList</i>)
+<p>
+        Public method to set the paths list.
+</p><dl>
+<dt><i>pathsList</i> (list of str)</dt>
+<dd>
+list of paths
+</dd>
+</dl><a NAME="E5PathPickerBase.setPickerEnabled" ID="E5PathPickerBase.setPickerEnabled"></a>
+<h4>E5PathPickerBase.setPickerEnabled</h4>
 <b>setPickerEnabled</b>(<i>enable</i>)
 <p>
         Public method to set the enabled state of the file dialog button.
@@ -982,8 +720,18 @@
 <dd>
 flag indicating the enabled state
 </dd>
-</dl><a NAME="E5PathPicker.setText" ID="E5PathPicker.setText"></a>
-<h4>E5PathPicker.setText</h4>
+</dl><a NAME="E5PathPickerBase.setSizeAdjustPolicy" ID="E5PathPickerBase.setSizeAdjustPolicy"></a>
+<h4>E5PathPickerBase.setSizeAdjustPolicy</h4>
+<b>setSizeAdjustPolicy</b>(<i>policy</i>)
+<p>
+        Public method to set the size adjust policy of the combo box.
+</p><dl>
+<dt><i>policy</i> (QComboBox.SizeAdjustPolicy)</dt>
+<dd>
+size adjust policy
+</dd>
+</dl><a NAME="E5PathPickerBase.setText" ID="E5PathPickerBase.setText"></a>
+<h4>E5PathPickerBase.setText</h4>
 <b>setText</b>(<i>path</i>)
 <p>
         Public method to set the current path.
@@ -992,8 +740,8 @@
 <dd>
 path to be set
 </dd>
-</dl><a NAME="E5PathPicker.setWindowTitle" ID="E5PathPicker.setWindowTitle"></a>
-<h4>E5PathPicker.setWindowTitle</h4>
+</dl><a NAME="E5PathPickerBase.setWindowTitle" ID="E5PathPickerBase.setWindowTitle"></a>
+<h4>E5PathPickerBase.setWindowTitle</h4>
 <b>setWindowTitle</b>(<i>title</i>)
 <p>
         Public method to set the path picker dialog window title.
@@ -1002,8 +750,8 @@
 <dd>
 window title
 </dd>
-</dl><a NAME="E5PathPicker.text" ID="E5PathPicker.text"></a>
-<h4>E5PathPicker.text</h4>
+</dl><a NAME="E5PathPickerBase.text" ID="E5PathPickerBase.text"></a>
+<h4>E5PathPickerBase.text</h4>
 <b>text</b>(<i></i>)
 <p>
         Public method to get the current path.
@@ -1017,8 +765,8 @@
 <dd>
 str
 </dd>
-</dl><a NAME="E5PathPicker.windowTitle" ID="E5PathPicker.windowTitle"></a>
-<h4>E5PathPicker.windowTitle</h4>
+</dl><a NAME="E5PathPickerBase.windowTitle" ID="E5PathPickerBase.windowTitle"></a>
+<h4>E5PathPickerBase.windowTitle</h4>
 <b>windowTitle</b>(<i></i>)
 <p>
         Public method to get the path picker dialog's window title.
--- a/E5Gui/E5Completers.py	Sun Dec 06 19:09:32 2015 +0100
+++ b/E5Gui/E5Completers.py	Sat Dec 12 12:38:50 2015 +0100
@@ -42,7 +42,6 @@
         else:
             self.__model.setFilter(QDir.Filters(
                 QDir.Dirs | QDir.Files | QDir.Drives | QDir.AllDirs))
-        self.__model.directoryLoaded.connect(self.complete)
         self.__model.setRootPath("")
         self.setModel(self.__model)
         self.setCompletionMode(completionMode)
@@ -96,7 +95,6 @@
         else:
             self.__model.setFilter(
                 QDir.Filters(QDir.Drives | QDir.AllDirs))
-        self.__model.directoryLoaded.connect(self.complete)
         self.__model.setRootPath("")
         self.setModel(self.__model)
         self.setCompletionMode(completionMode)
--- a/E5Gui/E5PathPicker.py	Sun Dec 06 19:09:32 2015 +0100
+++ b/E5Gui/E5PathPicker.py	Sat Dec 12 12:38:50 2015 +0100
@@ -40,15 +40,16 @@
     CustomMode = 99
     NoMode = 100
 
-# TODO: Refactor the classes using a base class with common functions
 
-
-class E5PathPicker(QWidget):
+class E5PathPickerBase(QWidget):
     """
-    Class implementing a path picker widget consisting of a line edit and a
-    tool button to open a file dialog.
+    Class implementing the base of a path picker widget consisting of a
+    line edit or combo box and a tool button to open a file dialog.
     
     @signal textChanged(path) emitted when the entered path has changed
+        (line edit based widget)
+    @signal editTextChanged(path) emitted when the entered path has changed
+        (combo box based widget)
     @signal pathSelected(path) emitted after a path has been selected via the
         file dialog
     @signal aboutToShowPathPickerDialog emitted before the file dialog is shown
@@ -58,23 +59,28 @@
     DefaultMode = E5PathPickerModes.NoMode
     
     textChanged = pyqtSignal(str)
+    editTextChanged = pyqtSignal(str)
     pathSelected = pyqtSignal(str)
     aboutToShowPathPickerDialog = pyqtSignal()
     pickerButtonClicked = pyqtSignal()
     
-    def __init__(self, parent=None):
+    def __init__(self, parent=None, useLineEdit=True):
         """
         Constructor
         
         @param parent reference to the parent widget
         @type QWidget
+        @param useLineEdit flag indicating the use of a line edit
+        @type bool
         """
-        super(E5PathPicker, self).__init__(parent)
+        super(E5PathPickerBase, self).__init__(parent)
+        
+        self.__lineEditKind = useLineEdit
         
         self.__mode = E5PathPicker.DefaultMode
         self.__editorEnabled = True
         
-        self.__completer = None
+        self._completer = None
         self.__filters = ""
         self.__defaultDirectory = ""
         self.__windowTitle = ""
@@ -84,20 +90,28 @@
         self.__layout.setContentsMargins(0, 0, 0, 0)
         self.setLayout(self.__layout)
         
-        self.__editor = E5ClearableLineEdit(self, self.tr("Enter Path Name"))
+        if useLineEdit:
+            self._editor = E5ClearableLineEdit(
+                self, self.tr("Enter Path Name"))
+        else:
+            self._editor = E5ClearableComboBox(
+                self, self.tr("Enter Path Name"))
         
         self.__button = QToolButton(self)
         self.__button.setToolButtonStyle(Qt.ToolButtonIconOnly)
         self.__button.setIcon(UI.PixmapCache.getIcon("open.png"))
         
-        self.__layout.addWidget(self.__editor)
+        self.__layout.addWidget(self._editor)
         self.__layout.addWidget(self.__button)
         
         self.__button.clicked.connect(self.__showPathPickerDialog)
-        self.__editor.textEdited.connect(self.__pathEdited)
-        self.__editor.textChanged.connect(self.textChanged)
+        if useLineEdit:
+            self._editor.textEdited.connect(self.__pathEdited)
+            self._editor.textChanged.connect(self.textChanged)
+        else:
+            self._editor.editTextChanged.connect(self.editTextChanged)
         
-        self.setFocusProxy(self.__editor)
+        self.setFocusProxy(self._editor)
         self.setFocusPolicy(Qt.StrongFocus)
         self.setSizePolicy(QSizePolicy.Expanding, QSizePolicy.Preferred)
         
@@ -110,8 +124,8 @@
         @param path current text of the path line edit
         @type str
         """
-        if self.__completer and not self.__completer.popup().isVisible():
-            self.__completer.setRootPath(Utilities.toNativeSeparators(path))
+        if self._completer and not self._completer.popup().isVisible():
+            self._completer.setRootPath(Utilities.toNativeSeparators(path))
     
     def setMode(self, mode):
         """
@@ -125,25 +139,26 @@
         oldMode = self.__mode
         self.__mode = mode
         
-        if mode != oldMode or not self.__completer:
-            if self.__completer:
+        if mode != oldMode or (self.__lineEditKind and not self._completer):
+            if self.__lineEditKind and self._completer:
                 # Remove current completer
-                self.__editor.setCompleter(None)
-                self.__completer = None
+                self._editor.setCompleter(None)
+                self._completer = None
             
             if mode != E5PathPickerModes.NoMode:
-                # Set a new completer
-                if mode == E5PathPickerModes.DirectoryMode:
-                    self.__completer = E5DirCompleter(self.__editor)
-                else:
-                    self.__completer = E5FileCompleter(self.__editor)
+                if self.__lineEditKind:
+                    # Set a new completer
+                    if mode == E5PathPickerModes.DirectoryMode:
+                        self._completer = E5DirCompleter(self._editor)
+                    else:
+                        self._completer = E5FileCompleter(self._editor)
                 
                 # set inactive text
                 if mode == E5PathPickerModes.OpenFilesMode:
-                    self.__editor.setInactiveText(
+                    self._editor.setInactiveText(
                         self.tr("Enter Path Names separated by ';'"))
                 else:
-                    self.__editor.setInactiveText(
+                    self._editor.setInactiveText(
                         self.tr("Enter Path Name"))
         self.__button.setEnabled(self.__mode != E5PathPickerModes.NoMode)
     
@@ -176,9 +191,40 @@
     
     def clear(self):
         """
+        Public method to clear the current path or list of paths.
+        """
+        self._editor.clear()
+    
+    def clearEditText(self):
+        """
         Public method to clear the current path.
         """
-        self.__editor.clear()
+        if not self.__lineEditKind:
+            self._editor.clearEditText()
+    
+    def _setEditorText(self, text):
+        """
+        Protected method to set the text of the editor.
+        
+        @param text text to set
+        @type str
+        """
+        if self.__lineEditKind:
+            self._editor.setText(text)
+        else:
+            self._editor.setEditText(text)
+    
+    def _editorText(self):
+        """
+        Protected method to get the text of the editor.
+        
+        @return text of the editor
+        @rtype str
+        """
+        if self.__lineEditKind:
+            return self._editor.text()
+        else:
+            return self._editor.currentText()
     
     def setText(self, path):
         """
@@ -188,12 +234,12 @@
         @type str
         """
         if self.__mode == E5PathPickerModes.OpenFilesMode:
-            self.__editor.setText(path)
+            self._setEditorText(path)
         else:
             path = Utilities.toNativeSeparators(path)
-            self.__editor.setText(path)
-            if self.__completer:
-                self.__completer.setRootPath(path)
+            self._setEditorText(path)
+            if self._completer:
+                self._completer.setRootPath(path)
     
     def text(self):
         """
@@ -205,10 +251,28 @@
         if self.__mode == E5PathPickerModes.OpenFilesMode:
             return ";".join(
                 [Utilities.toNativeSeparators(path)
-                 for path in self.__editor.text().split(";")])
+                 for path in self._editorText().split(";")])
         else:
             return os.path.expanduser(
-                Utilities.toNativeSeparators(self.__editor.text()))
+                Utilities.toNativeSeparators(self._editorText()))
+    
+    def setEditText(self, path):
+        """
+        Public method to set the current path.
+        
+        @param path path to be set
+        @type str
+        """
+        self.setText(path)
+    
+    def currentText(self):
+        """
+        Public method to get the current path.
+        
+        @return current path
+        @rtype str
+        """
+        return self.text()
     
     def setPath(self, path):
         """
@@ -247,10 +311,7 @@
         @return first path
         @rtype str
         """
-        if self.__mode == E5PathPickerModes.OpenFilesMode:
-            return self.path().split(";")[0]
-        else:
-            return self.path()
+        self.paths()[0]
     
     def lastPath(self):
         """
@@ -259,10 +320,7 @@
         @return first path
         @rtype str
         """
-        if self.__mode == E5PathPickerModes.OpenFilesMode:
-            return self.path().split(";")[-1]
-        else:
-            return self.path()
+        self.paths()[-1]
     
     def setEditorEnabled(self, enable):
         """
@@ -271,9 +329,9 @@
         @param enable flag indicating the enable state
         @type bool
         """
-        if enable != self.__editorEnabled:
-            self.__editorEnabled = enable
-            self.__editor.setEnabled(enable)
+        if enable != self._editorEnabled:
+            self._editorEnabled = enable
+            self._editor.setEnabled(enable)
     
     def editorEnabled(self):
         """
@@ -282,7 +340,7 @@
         @return flag indicating the enabled state
         @rtype bool
         """
-        return self.__editorEnabled
+        return self._editorEnabled
     
     def setDefaultDirectory(self, directory):
         """
@@ -347,7 +405,8 @@
         @param filters list of file name filters
         @type list of str
         """
-        self.__editor.completer().model().setNameFilters(filters)
+        if self._completer:
+            self._completer.model().setNameFilters(filters)
     
     def setButtonToolTip(self, tooltip):
         """
@@ -374,7 +433,7 @@
         @param tooltip text to be set as a tool tip
         @type str
         """
-        self.__editor.setToolTip(tooltip)
+        self._editor.setToolTip(tooltip)
     
     def editorToolTip(self):
         """
@@ -383,7 +442,7 @@
         @return tool tip text
         @rtype str
         """
-        return self.__editor.toolTip()
+        return self._editor.toolTip()
     
     def __showPathPickerDialog(self):
         """
@@ -411,7 +470,7 @@
             elif self.__mode == E5PathPickerModes.DirectoryMode:
                 windowTitle = self.tr("Choose a directory")
         
-        directory = self.__editor.text()
+        directory = self._editorText()
         if not directory and self.__defaultDirectory:
             directory = self.__defaultDirectory
         if self.__mode == E5PathPickerModes.OpenFilesMode:
@@ -471,210 +530,12 @@
                 path = path[:-1]
         
         if path:
-            self.__editor.setText(path)
+            self._setEditorText(path)
             self.pathSelected.emit(path)
-
-
-class E5ComboPathPicker(QWidget):
-    """
-    Class implementing a path picker widget consisting of a combobox and a
-    tool button to open a file dialog.
-    
-    @signal editTextChanged(path) emitted when the entered path has changed
-    @signal pathSelected(path) emitted after a path has been selected via the
-        file dialog
-    @signal aboutToShowPathPickerDialog emitted before the file dialog is shown
-    @signal pickerButtonClicked emitted when the picker button was pressed and
-        the widget mode is custom
-    """
-    DefaultMode = E5PathPickerModes.NoMode
-    
-    editTextChanged = pyqtSignal(str)
-    pathSelected = pyqtSignal(str)
-    aboutToShowPathPickerDialog = pyqtSignal()
-    pickerButtonClicked = pyqtSignal()
-    
-    def __init__(self, parent=None):
-        """
-        Constructor
-        
-        @param parent reference to the parent widget
-        @type QWidget
-        """
-        super(E5ComboPathPicker, self).__init__(parent)
-        
-        self.__mode = E5PathPicker.DefaultMode
-        self.__editorEnabled = True
-        
-        self.__filters = ""
-        self.__defaultDirectory = ""
-        self.__windowTitle = ""
-        
-        self.__layout = QHBoxLayout()
-        self.__layout.setSpacing(0)
-        self.__layout.setContentsMargins(0, 0, 0, 0)
-        self.setLayout(self.__layout)
-        
-        self.__editor = E5ClearableComboBox(self, self.tr("Enter Path Name"))
-        
-        self.__button = QToolButton(self)
-        self.__button.setToolButtonStyle(Qt.ToolButtonIconOnly)
-        self.__button.setIcon(UI.PixmapCache.getIcon("open.png"))
-        
-        self.__layout.addWidget(self.__editor)
-        self.__layout.addWidget(self.__button)
-        
-        self.__button.clicked.connect(self.__showPathPickerDialog)
-        self.__editor.editTextChanged.connect(self.editTextChanged)
-        
-        self.setFocusProxy(self.__editor)
-        self.setFocusPolicy(Qt.StrongFocus)
-        self.setSizePolicy(QSizePolicy.Expanding, QSizePolicy.Preferred)
-        
-        self.__button.setEnabled(self.__mode != E5PathPickerModes.NoMode)
-    
-    def setMode(self, mode):
-        """
-        Public method to set the path picker mode.
-        
-        @param mode picker mode
-        @type E5PathPickerModes
-        """
-        assert mode in E5PathPickerModes
-        
-        oldMode = self.__mode
-        self.__mode = mode
-        
-        if mode != oldMode:
-            if mode != E5PathPickerModes.NoMode:
-                # set inactive text
-                if mode == E5PathPickerModes.OpenFilesMode:
-                    self.__editor.setInactiveText(
-                        self.tr("Enter Path Names separated by ';'"))
-                else:
-                    self.__editor.setInactiveText(
-                        self.tr("Enter Path Name"))
-        self.__button.setEnabled(self.__mode != E5PathPickerModes.NoMode)
-    
-    def mode(self):
-        """
-        Public method to get the path picker mode.
-        
-        @return path picker mode
-        @rtype E5PathPickerModes
-        """
-        return self.__mode
     
-    def setPickerEnabled(self, enable):
-        """
-        Public method to set the enabled state of the file dialog button.
-        
-        @param enable flag indicating the enabled state
-        @type bool
-        """
-        self.__button.setEnabled(enable)
-    
-    def isPickerEnabled(self):
-        """
-        Public method to get the file dialog button enabled state.
-        
-        @return flag indicating the enabled state
-        @rtype bool
-        """
-        return self.__button.isEnabled()
-    
-    def clear(self):
-        """
-        Public method to clear the list of paths.
-        """
-        self.__editor.clear()
-    
-    def clearEditText(self):
-        """
-        Public method to clear the current path.
-        """
-        self.__editor.clearEditText()
-    
-    def setEditText(self, path):
-        """
-        Public method to set the current path.
-        
-        @param path path to be set
-        @type str
-        """
-        if self.__mode == E5PathPickerModes.OpenFilesMode:
-            self.__editor.setEditText(path)
-        else:
-            self.__editor.setEditText(Utilities.toNativeSeparators(path))
-    
-    def currentText(self):
-        """
-        Public method to get the current path.
-        
-        @return current path
-        @rtype str
-        """
-        if self.__mode == E5PathPickerModes.OpenFilesMode:
-            return ";".join(
-                [Utilities.toNativeSeparators(path)
-                 for path in self.__editor.currentText().split(";")])
-        else:
-            return os.path.expanduser(
-                Utilities.toNativeSeparators(self.__editor.currentText()))
-    
-    def setPath(self, path):
-        """
-        Public method to set the current path.
-        
-        @param path path to be set
-        @type str
-        """
-        self.setEditText(path)
-    
-    def path(self):
-        """
-        Public method to get the current path.
-        
-        @return current path
-        @rtype str
-        """
-        return self.currentText()
-    
-    def paths(self):
-        """
-        Public method to get the list of entered paths.
-        
-        @return entered paths
-        @rtype list of str
-        """
-        if self.__mode == E5PathPickerModes.OpenFilesMode:
-            return self.path().split(";")
-        else:
-            return [self.path()]
-    
-    def firstPath(self):
-        """
-        Public method to get the first path of a list of entered paths.
-        
-        @return first path
-        @rtype str
-        """
-        if self.__mode == E5PathPickerModes.OpenFilesMode:
-            return self.path().split(";")[0]
-        else:
-            return self.path()
-    
-    def lastPath(self):
-        """
-        Public method to get the last path of a list of entered paths.
-        
-        @return first path
-        @rtype str
-        """
-        if self.__mode == E5PathPickerModes.OpenFilesMode:
-            return self.path().split(";")[-1]
-        else:
-            return self.path()
+    ##################################################################
+    ## Methods below emulate some of the QComboBox API
+    ##################################################################
     
     def addItems(self, pathsList):
         """
@@ -683,7 +544,7 @@
         @param pathsList list of paths to add
         @type list of str
         """
-        self.__editor.addItems(pathsList)
+        self._editor.addItems(pathsList)
     
     def addItem(self, path):
         """
@@ -692,7 +553,7 @@
         @param path path to add
         @type str
         """
-        self.__editor.addItem(path)
+        self._editor.addItem(path)
     
     def setPathsList(self, pathsList):
         """
@@ -711,119 +572,7 @@
         @param index index of the item to set current
         @type int
         """
-        self.__editor.setCurrentIndex(index)
-    
-    def setEditorEnabled(self, enable):
-        """
-        Public method to set the path editor's enabled state.
-        
-        @param enable flag indicating the enable state
-        @type bool
-        """
-        if enable != self.__editorEnabled:
-            self.__editorEnabled = enable
-            self.__editor.setEnabled(enable)
-    
-    def editorEnabled(self):
-        """
-        Public method to get the path editor's enabled state.
-        
-        @return flag indicating the enabled state
-        @rtype bool
-        """
-        return self.__editorEnabled
-    
-    def setDefaultDirectory(self, directory):
-        """
-        Public method to set the default directory.
-        
-        @param directory default directory
-        @type str
-        """
-        self.__defaultDirectory = directory
-    
-    def defaultDirectory(self):
-        """
-        Public method to get the default directory.
-        
-        @return default directory
-        @rtype str
-        """
-        return self.__defaultDirectory
-    
-    def setWindowTitle(self, title):
-        """
-        Public method to set the path picker dialog window title.
-        
-        @param title window title
-        @type str
-        """
-        self.__windowTitle = title
-    
-    def windowTitle(self):
-        """
-        Public method to get the path picker dialog's window title.
-        
-        @return window title
-        @rtype str
-        """
-        return self.__windowTitle
-    
-    def setFilters(self, filters):
-        """
-        Public method to set the filters for the path picker dialog.
-        
-        Note: Multiple filters must be separated by ';;'.
-        
-        @param filters string containing the file filters
-        @type str
-        """
-        self.__filters = filters
-    
-    def filters(self):
-        """
-        Public methods to get the filter string.
-        
-        @return filter string
-        @rtype str
-        """
-        return self.__filters
-    
-    def setButtonToolTip(self, tooltip):
-        """
-        Public method to set the tool button tool tip.
-        
-        @param tooltip text to be set as a tool tip
-        @type str
-        """
-        self.__button.setToolTip(tooltip)
-    
-    def buttonToolTip(self):
-        """
-        Public method to get the tool button tool tip.
-        
-        @return tool tip text
-        @rtype str
-        """
-        return self.__button.toolTip()
-    
-    def setEditorToolTip(self, tooltip):
-        """
-        Public method to set the editor tool tip.
-        
-        @param tooltip text to be set as a tool tip
-        @type str
-        """
-        self.__editor.setToolTip(tooltip)
-    
-    def editorToolTip(self):
-        """
-        Public method to get the editor tool tip.
-        
-        @return tool tip text
-        @rtype str
-        """
-        return self.__editor.toolTip()
+        self._editor.setCurrentIndex(index)
     
     def setInsertPolicy(self, policy):
         """
@@ -832,7 +581,7 @@
         @param policy insertion policy
         @type QComboBox.InsertPolicy
         """
-        self.__editor.setInsertPolicy(policy)
+        self._editor.setInsertPolicy(policy)
     
     def setSizeAdjustPolicy(self, policy):
         """
@@ -841,91 +590,48 @@
         @param policy size adjust policy
         @type QComboBox.SizeAdjustPolicy
         """
-        self.__editor.setSizeAdjustPolicy(policy)
+        self._editor.setSizeAdjustPolicy(policy)
+
+
+class E5PathPicker(E5PathPickerBase):
+    """
+    Class implementing a path picker widget consisting of a line edit and a
+    tool button to open a file dialog.
     
-    def __showPathPickerDialog(self):
-        """
-        Private slot to show the path picker dialog.
+    @signal textChanged(path) emitted when the entered path has changed
+    @signal pathSelected(path) emitted after a path has been selected via the
+        file dialog
+    @signal aboutToShowPathPickerDialog emitted before the file dialog is shown
+    @signal pickerButtonClicked emitted when the picker button was pressed and
+        the widget mode is custom
+    """
+    def __init__(self, parent=None):
         """
-        if self.__mode == E5PathPickerModes.NoMode:
-            return
-        
-        if self.__mode == E5PathPickerModes.CustomMode:
-            self.pickerButtonClicked.emit()
-            return
-        
-        self.aboutToShowPathPickerDialog.emit()
-        
-        windowTitle = self.__windowTitle
-        if not windowTitle:
-            if self.__mode == E5PathPickerModes.OpenFileMode:
-                windowTitle = self.tr("Choose a file to open")
-            elif self.__mode == E5PathPickerModes.OpenFilesMode:
-                windowTitle = self.tr("Choose files to open")
-            elif self.__mode == E5PathPickerModes.SaveFileMode:
-                windowTitle = self.tr("Choose a file to save")
-            elif self.__mode == E5PathPickerModes.DirectoryMode:
-                windowTitle = self.tr("Choose a directory")
-        
-        directory = self.__editor.currentText()
-        if not directory and self.__defaultDirectory:
-            directory = self.__defaultDirectory
-        if self.__mode == E5PathPickerModes.OpenFilesMode:
-            directory = os.path.expanduser(directory.split(";")[0])
-        else:
-            directory = os.path.expanduser(directory)
-        if not os.path.isabs(directory) and self.__defaultDirectory:
-            directory = os.path.join(self.__defaultDirectory, directory)
-        directory = Utilities.fromNativeSeparators(directory)
+        Constructor
         
-        if self.__mode == E5PathPickerModes.OpenFileMode:
-            path = E5FileDialog.getOpenFileName(
-                self,
-                windowTitle,
-                directory,
-                self.__filters)
-            path = Utilities.toNativeSeparators(path)
-        elif self.__mode == E5PathPickerModes.OpenFilesMode:
-            paths = E5FileDialog.getOpenFileNames(
-                self,
-                windowTitle,
-                directory,
-                self.__filters)
-            path = ";".join([Utilities.toNativeSeparators(path)
-                             for path in paths])
-        elif self.__mode == E5PathPickerModes.SaveFileMode:
-            path = E5FileDialog.getSaveFileName(
-                self,
-                windowTitle,
-                directory,
-                self.__filters,
-                E5FileDialog.Options(E5FileDialog.DontConfirmOverwrite))
-            path = Utilities.toNativeSeparators(path)
-        elif self.__mode == E5PathPickerModes.SaveFileEnsureExtensionMode:
-            path, selectedFilter = E5FileDialog.getSaveFileNameAndFilter(
-                self,
-                windowTitle,
-                directory,
-                self.__filters,
-                None,
-                E5FileDialog.Options(E5FileDialog.DontConfirmOverwrite))
-            path = Utilities.toNativeSeparators(path)
-            if path:
-                ext = QFileInfo(path).suffix()
-                if not ext:
-                    ex = selectedFilter.split("(*")[1].split(")")[0]
-                    if ex:
-                        path += ex
-        elif self.__mode == E5PathPickerModes.DirectoryMode:
-            path = E5FileDialog.getExistingDirectory(
-                self,
-                windowTitle,
-                directory,
-                E5FileDialog.Options(E5FileDialog.ShowDirsOnly))
-            path = Utilities.toNativeSeparators(path)
-            while path.endswith(os.sep):
-                path = path[:-1]
+        @param parent reference to the parent widget
+        @type QWidget
+        """
+        super(E5PathPicker, self).__init__(parent, useLineEdit=True)
+
+
+class E5ComboPathPicker(E5PathPickerBase):
+    """
+    Class implementing a path picker widget consisting of a combobox and a
+    tool button to open a file dialog.
+    
+    @signal editTextChanged(path) emitted when the entered path has changed
+    @signal pathSelected(path) emitted after a path has been selected via the
+        file dialog
+    @signal aboutToShowPathPickerDialog emitted before the file dialog is shown
+    @signal pickerButtonClicked emitted when the picker button was pressed and
+        the widget mode is custom
+    """
+    def __init__(self, parent=None):
+        """
+        Constructor
         
-        if path:
-            self.__editor.setEditText(path)
-            self.pathSelected.emit(path)
+        @param parent reference to the parent widget
+        @type QWidget
+        """
+        super(E5ComboPathPicker, self).__init__(parent, useLineEdit=False)
--- a/i18n/eric6_cs.ts	Sun Dec 06 19:09:32 2015 +0100
+++ b/i18n/eric6_cs.ts	Sat Dec 12 12:38:50 2015 +0100
@@ -7352,36 +7352,6 @@
 </context>
 <context>
     <name>E5ComboPathPicker</name>
-    <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="561"/>
-        <source>Enter Path Name</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="558"/>
-        <source>Enter Path Names separated by &apos;;&apos;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="868"/>
-        <source>Choose a file to open</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="870"/>
-        <source>Choose files to open</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="872"/>
-        <source>Choose a file to save</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="874"/>
-        <source>Choose a directory</source>
-        <translation type="unfinished"></translation>
-    </message>
 </context>
 <context>
     <name>E5ErrorMessage</name>
@@ -7982,36 +7952,39 @@
 </context>
 <context>
     <name>E5PathPicker</name>
-    <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="149"/>
+</context>
+<context>
+    <name>E5PathPickerBase</name>
+    <message>
+        <location filename="../E5Gui/E5PathPicker.py" line="164"/>
         <source>Enter Path Name</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="407"/>
+        <location filename="../E5Gui/E5PathPicker.py" line="161"/>
+        <source>Enter Path Names separated by &apos;;&apos;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../E5Gui/E5PathPicker.py" line="466"/>
         <source>Choose a file to open</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="409"/>
+        <location filename="../E5Gui/E5PathPicker.py" line="468"/>
         <source>Choose files to open</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="413"/>
+        <location filename="../E5Gui/E5PathPicker.py" line="472"/>
         <source>Choose a file to save</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="415"/>
+        <location filename="../E5Gui/E5PathPicker.py" line="474"/>
         <source>Choose a directory</source>
         <translation type="unfinished"></translation>
     </message>
-    <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="146"/>
-        <source>Enter Path Names separated by &apos;;&apos;</source>
-        <translation type="unfinished"></translation>
-    </message>
 </context>
 <context>
     <name>E5RequestModel</name>
Binary file i18n/eric6_de.qm has changed
--- a/i18n/eric6_de.ts	Sun Dec 06 19:09:32 2015 +0100
+++ b/i18n/eric6_de.ts	Sat Dec 12 12:38:50 2015 +0100
@@ -7181,39 +7181,6 @@
     </message>
 </context>
 <context>
-    <name>E5ComboPathPicker</name>
-    <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="561"/>
-        <source>Enter Path Name</source>
-        <translation>Gib den Pfadnamen ein</translation>
-    </message>
-    <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="558"/>
-        <source>Enter Path Names separated by &apos;;&apos;</source>
-        <translation>Gib Pfadnamen getrennt durch &quot;;&quot; ein</translation>
-    </message>
-    <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="868"/>
-        <source>Choose a file to open</source>
-        <translation>Wähle eine zu öffnende Datei aus</translation>
-    </message>
-    <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="870"/>
-        <source>Choose files to open</source>
-        <translation>Wähle zu öffnende Dateien aus</translation>
-    </message>
-    <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="872"/>
-        <source>Choose a file to save</source>
-        <translation>Wähle eine zu schreibende Datei aus</translation>
-    </message>
-    <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="874"/>
-        <source>Choose a directory</source>
-        <translation>Wähle ein Verzeichnis aus</translation>
-    </message>
-</context>
-<context>
     <name>E5ErrorMessage</name>
     <message>
         <location filename="../E5Gui/E5ErrorMessage.py" line="107"/>
@@ -7804,37 +7771,37 @@
     </message>
 </context>
 <context>
-    <name>E5PathPicker</name>
-    <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="149"/>
+    <name>E5PathPickerBase</name>
+    <message>
+        <location filename="../E5Gui/E5PathPicker.py" line="164"/>
         <source>Enter Path Name</source>
         <translation>Gib den Pfadnamen ein</translation>
     </message>
     <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="407"/>
+        <location filename="../E5Gui/E5PathPicker.py" line="161"/>
+        <source>Enter Path Names separated by &apos;;&apos;</source>
+        <translation>Gib Pfadnamen getrennt durch &quot;;&quot; ein</translation>
+    </message>
+    <message>
+        <location filename="../E5Gui/E5PathPicker.py" line="466"/>
         <source>Choose a file to open</source>
         <translation>Wähle eine zu öffnende Datei aus</translation>
     </message>
     <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="409"/>
+        <location filename="../E5Gui/E5PathPicker.py" line="468"/>
         <source>Choose files to open</source>
         <translation>Wähle zu öffnende Dateien aus</translation>
     </message>
     <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="413"/>
+        <location filename="../E5Gui/E5PathPicker.py" line="472"/>
         <source>Choose a file to save</source>
         <translation>Wähle eine zu schreibende Datei aus</translation>
     </message>
     <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="415"/>
+        <location filename="../E5Gui/E5PathPicker.py" line="474"/>
         <source>Choose a directory</source>
         <translation>Wähle ein Verzeichnis aus</translation>
     </message>
-    <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="146"/>
-        <source>Enter Path Names separated by &apos;;&apos;</source>
-        <translation>Gib Pfadnamen getrennt durch &quot;;&quot; ein</translation>
-    </message>
 </context>
 <context>
     <name>E5RequestModel</name>
--- a/i18n/eric6_en.ts	Sun Dec 06 19:09:32 2015 +0100
+++ b/i18n/eric6_en.ts	Sat Dec 12 12:38:50 2015 +0100
@@ -7116,39 +7116,6 @@
     </message>
 </context>
 <context>
-    <name>E5ComboPathPicker</name>
-    <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="561"/>
-        <source>Enter Path Name</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="558"/>
-        <source>Enter Path Names separated by &apos;;&apos;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="868"/>
-        <source>Choose a file to open</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="870"/>
-        <source>Choose files to open</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="872"/>
-        <source>Choose a file to save</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="874"/>
-        <source>Choose a directory</source>
-        <translation type="unfinished"></translation>
-    </message>
-</context>
-<context>
     <name>E5ErrorMessage</name>
     <message>
         <location filename="../E5Gui/E5ErrorMessage.py" line="107"/>
@@ -7725,37 +7692,37 @@
     </message>
 </context>
 <context>
-    <name>E5PathPicker</name>
-    <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="149"/>
+    <name>E5PathPickerBase</name>
+    <message>
+        <location filename="../E5Gui/E5PathPicker.py" line="164"/>
         <source>Enter Path Name</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="407"/>
+        <location filename="../E5Gui/E5PathPicker.py" line="161"/>
+        <source>Enter Path Names separated by &apos;;&apos;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../E5Gui/E5PathPicker.py" line="466"/>
         <source>Choose a file to open</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="409"/>
+        <location filename="../E5Gui/E5PathPicker.py" line="468"/>
         <source>Choose files to open</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="413"/>
+        <location filename="../E5Gui/E5PathPicker.py" line="472"/>
         <source>Choose a file to save</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="415"/>
+        <location filename="../E5Gui/E5PathPicker.py" line="474"/>
         <source>Choose a directory</source>
         <translation type="unfinished"></translation>
     </message>
-    <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="146"/>
-        <source>Enter Path Names separated by &apos;;&apos;</source>
-        <translation type="unfinished"></translation>
-    </message>
 </context>
 <context>
     <name>E5RequestModel</name>
--- a/i18n/eric6_es.ts	Sun Dec 06 19:09:32 2015 +0100
+++ b/i18n/eric6_es.ts	Sat Dec 12 12:38:50 2015 +0100
@@ -7395,36 +7395,6 @@
 </context>
 <context>
     <name>E5ComboPathPicker</name>
-    <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="561"/>
-        <source>Enter Path Name</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="558"/>
-        <source>Enter Path Names separated by &apos;;&apos;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="868"/>
-        <source>Choose a file to open</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="870"/>
-        <source>Choose files to open</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="872"/>
-        <source>Choose a file to save</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="874"/>
-        <source>Choose a directory</source>
-        <translation type="unfinished"></translation>
-    </message>
 </context>
 <context>
     <name>E5ErrorMessage</name>
@@ -8017,36 +7987,39 @@
 </context>
 <context>
     <name>E5PathPicker</name>
-    <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="149"/>
+</context>
+<context>
+    <name>E5PathPickerBase</name>
+    <message>
+        <location filename="../E5Gui/E5PathPicker.py" line="164"/>
         <source>Enter Path Name</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="407"/>
+        <location filename="../E5Gui/E5PathPicker.py" line="161"/>
+        <source>Enter Path Names separated by &apos;;&apos;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../E5Gui/E5PathPicker.py" line="466"/>
         <source>Choose a file to open</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="409"/>
+        <location filename="../E5Gui/E5PathPicker.py" line="468"/>
         <source>Choose files to open</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="413"/>
+        <location filename="../E5Gui/E5PathPicker.py" line="472"/>
         <source>Choose a file to save</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="415"/>
+        <location filename="../E5Gui/E5PathPicker.py" line="474"/>
         <source>Choose a directory</source>
         <translation type="unfinished"></translation>
     </message>
-    <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="146"/>
-        <source>Enter Path Names separated by &apos;;&apos;</source>
-        <translation type="unfinished"></translation>
-    </message>
 </context>
 <context>
     <name>E5RequestModel</name>
--- a/i18n/eric6_fr.ts	Sun Dec 06 19:09:32 2015 +0100
+++ b/i18n/eric6_fr.ts	Sat Dec 12 12:38:50 2015 +0100
@@ -7361,36 +7361,6 @@
 </context>
 <context>
     <name>E5ComboPathPicker</name>
-    <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="561"/>
-        <source>Enter Path Name</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="558"/>
-        <source>Enter Path Names separated by &apos;;&apos;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="868"/>
-        <source>Choose a file to open</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="870"/>
-        <source>Choose files to open</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="872"/>
-        <source>Choose a file to save</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="874"/>
-        <source>Choose a directory</source>
-        <translation type="unfinished"></translation>
-    </message>
 </context>
 <context>
     <name>E5ErrorMessage</name>
@@ -7998,36 +7968,39 @@
 </context>
 <context>
     <name>E5PathPicker</name>
-    <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="149"/>
+</context>
+<context>
+    <name>E5PathPickerBase</name>
+    <message>
+        <location filename="../E5Gui/E5PathPicker.py" line="164"/>
         <source>Enter Path Name</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="407"/>
+        <location filename="../E5Gui/E5PathPicker.py" line="161"/>
+        <source>Enter Path Names separated by &apos;;&apos;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../E5Gui/E5PathPicker.py" line="466"/>
         <source>Choose a file to open</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="409"/>
+        <location filename="../E5Gui/E5PathPicker.py" line="468"/>
         <source>Choose files to open</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="413"/>
+        <location filename="../E5Gui/E5PathPicker.py" line="472"/>
         <source>Choose a file to save</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="415"/>
+        <location filename="../E5Gui/E5PathPicker.py" line="474"/>
         <source>Choose a directory</source>
         <translation type="unfinished"></translation>
     </message>
-    <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="146"/>
-        <source>Enter Path Names separated by &apos;;&apos;</source>
-        <translation type="unfinished"></translation>
-    </message>
 </context>
 <context>
     <name>E5RequestModel</name>
--- a/i18n/eric6_it.ts	Sun Dec 06 19:09:32 2015 +0100
+++ b/i18n/eric6_it.ts	Sat Dec 12 12:38:50 2015 +0100
@@ -7414,36 +7414,6 @@
 </context>
 <context>
     <name>E5ComboPathPicker</name>
-    <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="561"/>
-        <source>Enter Path Name</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="558"/>
-        <source>Enter Path Names separated by &apos;;&apos;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="868"/>
-        <source>Choose a file to open</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="870"/>
-        <source>Choose files to open</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="872"/>
-        <source>Choose a file to save</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="874"/>
-        <source>Choose a directory</source>
-        <translation type="unfinished"></translation>
-    </message>
 </context>
 <context>
     <name>E5ErrorMessage</name>
@@ -8075,36 +8045,39 @@
 </context>
 <context>
     <name>E5PathPicker</name>
-    <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="149"/>
+</context>
+<context>
+    <name>E5PathPickerBase</name>
+    <message>
+        <location filename="../E5Gui/E5PathPicker.py" line="164"/>
         <source>Enter Path Name</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="407"/>
+        <location filename="../E5Gui/E5PathPicker.py" line="161"/>
+        <source>Enter Path Names separated by &apos;;&apos;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../E5Gui/E5PathPicker.py" line="466"/>
         <source>Choose a file to open</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="409"/>
+        <location filename="../E5Gui/E5PathPicker.py" line="468"/>
         <source>Choose files to open</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="413"/>
+        <location filename="../E5Gui/E5PathPicker.py" line="472"/>
         <source>Choose a file to save</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="415"/>
+        <location filename="../E5Gui/E5PathPicker.py" line="474"/>
         <source>Choose a directory</source>
         <translation type="unfinished"></translation>
     </message>
-    <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="146"/>
-        <source>Enter Path Names separated by &apos;;&apos;</source>
-        <translation type="unfinished"></translation>
-    </message>
 </context>
 <context>
     <name>E5RequestModel</name>
--- a/i18n/eric6_pt.ts	Sun Dec 06 19:09:32 2015 +0100
+++ b/i18n/eric6_pt.ts	Sat Dec 12 12:38:50 2015 +0100
@@ -7418,36 +7418,6 @@
 </context>
 <context>
     <name>E5ComboPathPicker</name>
-    <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="561"/>
-        <source>Enter Path Name</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="558"/>
-        <source>Enter Path Names separated by &apos;;&apos;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="868"/>
-        <source>Choose a file to open</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="870"/>
-        <source>Choose files to open</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="872"/>
-        <source>Choose a file to save</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="874"/>
-        <source>Choose a directory</source>
-        <translation type="unfinished"></translation>
-    </message>
 </context>
 <context>
     <name>E5ErrorMessage</name>
@@ -8040,36 +8010,39 @@
 </context>
 <context>
     <name>E5PathPicker</name>
-    <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="149"/>
+</context>
+<context>
+    <name>E5PathPickerBase</name>
+    <message>
+        <location filename="../E5Gui/E5PathPicker.py" line="164"/>
         <source>Enter Path Name</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="407"/>
+        <location filename="../E5Gui/E5PathPicker.py" line="161"/>
+        <source>Enter Path Names separated by &apos;;&apos;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../E5Gui/E5PathPicker.py" line="466"/>
         <source>Choose a file to open</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="409"/>
+        <location filename="../E5Gui/E5PathPicker.py" line="468"/>
         <source>Choose files to open</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="413"/>
+        <location filename="../E5Gui/E5PathPicker.py" line="472"/>
         <source>Choose a file to save</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="415"/>
+        <location filename="../E5Gui/E5PathPicker.py" line="474"/>
         <source>Choose a directory</source>
         <translation type="unfinished"></translation>
     </message>
-    <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="146"/>
-        <source>Enter Path Names separated by &apos;;&apos;</source>
-        <translation type="unfinished"></translation>
-    </message>
 </context>
 <context>
     <name>E5RequestModel</name>
--- a/i18n/eric6_ru.ts	Sun Dec 06 19:09:32 2015 +0100
+++ b/i18n/eric6_ru.ts	Sat Dec 12 12:38:50 2015 +0100
@@ -7451,36 +7451,6 @@
 </context>
 <context>
     <name>E5ComboPathPicker</name>
-    <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="561"/>
-        <source>Enter Path Name</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="558"/>
-        <source>Enter Path Names separated by &apos;;&apos;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="868"/>
-        <source>Choose a file to open</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="870"/>
-        <source>Choose files to open</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="872"/>
-        <source>Choose a file to save</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="874"/>
-        <source>Choose a directory</source>
-        <translation type="unfinished"></translation>
-    </message>
 </context>
 <context>
     <name>E5ErrorMessage</name>
@@ -8072,36 +8042,39 @@
 </context>
 <context>
     <name>E5PathPicker</name>
-    <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="149"/>
+</context>
+<context>
+    <name>E5PathPickerBase</name>
+    <message>
+        <location filename="../E5Gui/E5PathPicker.py" line="164"/>
         <source>Enter Path Name</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="407"/>
+        <location filename="../E5Gui/E5PathPicker.py" line="161"/>
+        <source>Enter Path Names separated by &apos;;&apos;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../E5Gui/E5PathPicker.py" line="466"/>
         <source>Choose a file to open</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="409"/>
+        <location filename="../E5Gui/E5PathPicker.py" line="468"/>
         <source>Choose files to open</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="413"/>
+        <location filename="../E5Gui/E5PathPicker.py" line="472"/>
         <source>Choose a file to save</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="415"/>
+        <location filename="../E5Gui/E5PathPicker.py" line="474"/>
         <source>Choose a directory</source>
         <translation type="unfinished"></translation>
     </message>
-    <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="146"/>
-        <source>Enter Path Names separated by &apos;;&apos;</source>
-        <translation type="unfinished"></translation>
-    </message>
 </context>
 <context>
     <name>E5RequestModel</name>
--- a/i18n/eric6_tr.ts	Sun Dec 06 19:09:32 2015 +0100
+++ b/i18n/eric6_tr.ts	Sat Dec 12 12:38:50 2015 +0100
@@ -7348,36 +7348,6 @@
 </context>
 <context>
     <name>E5ComboPathPicker</name>
-    <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="561"/>
-        <source>Enter Path Name</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="558"/>
-        <source>Enter Path Names separated by &apos;;&apos;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="868"/>
-        <source>Choose a file to open</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="870"/>
-        <source>Choose files to open</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="872"/>
-        <source>Choose a file to save</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="874"/>
-        <source>Choose a directory</source>
-        <translation type="unfinished"></translation>
-    </message>
 </context>
 <context>
     <name>E5ErrorMessage</name>
@@ -7988,36 +7958,39 @@
 </context>
 <context>
     <name>E5PathPicker</name>
-    <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="149"/>
+</context>
+<context>
+    <name>E5PathPickerBase</name>
+    <message>
+        <location filename="../E5Gui/E5PathPicker.py" line="164"/>
         <source>Enter Path Name</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="407"/>
+        <location filename="../E5Gui/E5PathPicker.py" line="161"/>
+        <source>Enter Path Names separated by &apos;;&apos;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../E5Gui/E5PathPicker.py" line="466"/>
         <source>Choose a file to open</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="409"/>
+        <location filename="../E5Gui/E5PathPicker.py" line="468"/>
         <source>Choose files to open</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="413"/>
+        <location filename="../E5Gui/E5PathPicker.py" line="472"/>
         <source>Choose a file to save</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="415"/>
+        <location filename="../E5Gui/E5PathPicker.py" line="474"/>
         <source>Choose a directory</source>
         <translation type="unfinished"></translation>
     </message>
-    <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="146"/>
-        <source>Enter Path Names separated by &apos;;&apos;</source>
-        <translation type="unfinished"></translation>
-    </message>
 </context>
 <context>
     <name>E5RequestModel</name>
--- a/i18n/eric6_zh_CN.GB2312.ts	Sun Dec 06 19:09:32 2015 +0100
+++ b/i18n/eric6_zh_CN.GB2312.ts	Sat Dec 12 12:38:50 2015 +0100
@@ -7339,36 +7339,6 @@
 </context>
 <context>
     <name>E5ComboPathPicker</name>
-    <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="561"/>
-        <source>Enter Path Name</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="558"/>
-        <source>Enter Path Names separated by &apos;;&apos;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="868"/>
-        <source>Choose a file to open</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="870"/>
-        <source>Choose files to open</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="872"/>
-        <source>Choose a file to save</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="874"/>
-        <source>Choose a directory</source>
-        <translation type="unfinished"></translation>
-    </message>
 </context>
 <context>
     <name>E5ErrorMessage</name>
@@ -7959,36 +7929,39 @@
 </context>
 <context>
     <name>E5PathPicker</name>
-    <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="149"/>
+</context>
+<context>
+    <name>E5PathPickerBase</name>
+    <message>
+        <location filename="../E5Gui/E5PathPicker.py" line="164"/>
         <source>Enter Path Name</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="407"/>
+        <location filename="../E5Gui/E5PathPicker.py" line="161"/>
+        <source>Enter Path Names separated by &apos;;&apos;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../E5Gui/E5PathPicker.py" line="466"/>
         <source>Choose a file to open</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="409"/>
+        <location filename="../E5Gui/E5PathPicker.py" line="468"/>
         <source>Choose files to open</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="413"/>
+        <location filename="../E5Gui/E5PathPicker.py" line="472"/>
         <source>Choose a file to save</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="415"/>
+        <location filename="../E5Gui/E5PathPicker.py" line="474"/>
         <source>Choose a directory</source>
         <translation type="unfinished"></translation>
     </message>
-    <message>
-        <location filename="../E5Gui/E5PathPicker.py" line="146"/>
-        <source>Enter Path Names separated by &apos;;&apos;</source>
-        <translation type="unfinished"></translation>
-    </message>
 </context>
 <context>
     <name>E5RequestModel</name>

eric ide

mercurial