[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: [partitionmanager] src/gui: Multiple mount point support in EditMountPointDialog
From: Andrius_Å tikonas <null () kde ! org>
Date: 2018-03-31 19:28:47
Message-ID: E1f2MBD-0007xR-Je () code ! kde ! org
[Download RAW message or body]
Git commit e54510b8818e6afd45de7a70d8f79ad851e59d64 by Andrius Å tikonas, on behalf \
of Abhijeet Sharma. Committed on 31/03/2018 at 19:27.
Pushed by stikonas into branch 'master'.
Multiple mount point support in EditMountPointDialog
Multiple mount points can also be modified and removed from fstab.
Differential Revision: https://phabricator.kde.org/D11632
M +1 -1 src/gui/editmountpointdialog.cpp
M +77 -56 src/gui/editmountpointdialogwidget.cpp
M +7 -4 src/gui/editmountpointdialogwidget.h
M +158 -168 src/gui/editmountpointdialogwidgetbase.ui
https://commits.kde.org/partitionmanager/e54510b8818e6afd45de7a70d8f79ad851e59d64
diff --git a/src/gui/editmountpointdialog.cpp b/src/gui/editmountpointdialog.cpp
index f80b112..02b4f36 100644
--- a/src/gui/editmountpointdialog.cpp
+++ b/src/gui/editmountpointdialog.cpp
@@ -78,7 +78,7 @@ void EditMountPointDialog::accept_(MountPointAction action)
widget().acceptChanges();
if (writeMountpoints(widget().fstabEntries())) {
if (action == Edit)
- partition().setMountPoint(widget().editPath().text());
+ partition().setMountPoint(widget().editPath().currentText());
}
else
KMessageBox::sorry(this,
diff --git a/src/gui/editmountpointdialogwidget.cpp \
b/src/gui/editmountpointdialogwidget.cpp index 624b599..8af681f 100644
--- a/src/gui/editmountpointdialogwidget.cpp
+++ b/src/gui/editmountpointdialogwidget.cpp
@@ -50,12 +50,14 @@ EditMountPointDialogWidget::EditMountPointDialogWidget(QWidget* \
parent, Partitio labelType().setText(partition().fileSystem().name());
bool entryFound = false;
+ editPath().setEditable(true);
for (auto &e : m_fstabEntries) {
QString canonicalEntryPath = QFileInfo(e.deviceNode()).canonicalFilePath();
QString canonicalDevicePath = QFileInfo(m_deviceNode).canonicalFilePath();
if (canonicalEntryPath == canonicalDevicePath) { // FIXME fix multiple \
mountpoints entryFound = true;
- entry = &e;
+ entry.append(&e);
+ mountPointList = possibleMountPoints(e.deviceNode());
}
}
@@ -75,37 +77,12 @@ EditMountPointDialogWidget::EditMountPointDialogWidget(QWidget* \
parent, Partitio }
m_fstabEntries.append(FstabEntry(m_deviceNode, QString(), fsName, \
QString()));
- entry = &m_fstabEntries.last();
- }
-
- editPath().setText(entry->mountPoint());
-
- spinDumpFreq().setValue(entry->dumpFreq());
- spinPassNumber().setValue(entry->passNumber());
-
- switch (entry->entryType()) {
- case FstabEntryType::uuid:
- radioUUID().setChecked(true);
- break;
-
- case FstabEntryType::label:
- radioLabel().setChecked(true);
- break;
-
- case FstabEntryType::partuuid:
- radioUUID().setChecked(true);
- break;
-
- case FstabEntryType::partlabel:
- radioLabel().setChecked(true);
- break;
-
- case FstabEntryType::deviceNode:
- radioDeviceNode().setChecked(true);
- break;
- case FstabEntryType::comment:
- break;
+ entry.append(&m_fstabEntries.last());
}
+ currentEntry = entry[0];
+ editPath().addItems(mountPointList);
+ spinDumpFreq().setValue(currentEntry->dumpFreq());
+ spinPassNumber().setValue(currentEntry->passNumber());
boxOptions()[QStringLiteral("ro")] = m_CheckReadOnly;
boxOptions()[QStringLiteral("users")] = m_CheckUsers;
@@ -116,22 +93,21 @@ EditMountPointDialogWidget::EditMountPointDialogWidget(QWidget* \
parent, Partitio boxOptions()[QStringLiteral("noexec")] = m_CheckNoExec;
boxOptions()[QStringLiteral("relatime")] = m_CheckRelAtime;
- setupOptions(entry->options());
-
- if (partition().fileSystem().uuid().isEmpty()) {
- radioUUID().setEnabled(false);
- if (radioUUID().isChecked())
- radioDeviceNode().setChecked(true);
- }
-
- if (partition().fileSystem().label().isEmpty()) {
- radioLabel().setEnabled(false);
- if (radioLabel().isChecked())
- radioDeviceNode().setChecked(true);
- }
+ setupRadio(currentEntry->entryType());
+ setupOptions(currentEntry->options());
connect(m_ButtonMore, &QPushButton::clicked, this, \
&EditMountPointDialogWidget::buttonMoreClicked);
connect(m_ButtonSelect, &QPushButton::clicked, this, \
&EditMountPointDialogWidget::buttonSelectClicked); + connect(m_EditPath, \
QOverload<int>::of(&QComboBox::currentIndexChanged), + [=](int index){ \
currentEntry = entry[index]; + \
spinDumpFreq().setValue(currentEntry->dumpFreq()); + \
spinPassNumber().setValue(currentEntry->passNumber()); + \
setupRadio(currentEntry->entryType()); + for \
(iterator_BoxOptions = boxOptions().begin(); iterator_BoxOptions != \
boxOptions().end(); ++iterator_BoxOptions){ + \
boxOptions()[iterator_BoxOptions->first]->setChecked(false); + \
} + setupOptions(currentEntry->options());
+ });
}
EditMountPointDialogWidget::~EditMountPointDialogWidget()
@@ -141,7 +117,6 @@ EditMountPointDialogWidget::~EditMountPointDialogWidget()
void EditMountPointDialogWidget::setupOptions(const QStringList& options)
{
QStringList optTmpList;
-
for (const auto &o : options) {
if (boxOptions().find(o) != boxOptions().end())
boxOptions()[o]->setChecked(true);
@@ -152,23 +127,69 @@ void EditMountPointDialogWidget::setupOptions(const \
QStringList& options) m_Options = optTmpList.join(QLatin1Char(','));
}
+void EditMountPointDialogWidget::setupRadio(const FstabEntryType entryType)
+{
+ if (partition().fileSystem().uuid().isEmpty()) {
+ radioUUID().setEnabled(false);
+ if (radioUUID().isChecked())
+ radioDeviceNode().setChecked(true);
+ }
+
+ if (partition().fileSystem().label().isEmpty()) {
+ radioLabel().setEnabled(false);
+ if (radioLabel().isChecked())
+ radioDeviceNode().setChecked(true);
+ }
+ switch (entryType) {
+ case FstabEntryType::uuid:
+ radioUUID().setChecked(true);
+ break;
+
+ case FstabEntryType::label:
+ radioLabel().setChecked(true);
+ break;
+
+ case FstabEntryType::partuuid:
+ radioUUID().setChecked(true);
+ break;
+
+ case FstabEntryType::partlabel:
+ radioLabel().setChecked(true);
+ break;
+
+ case FstabEntryType::deviceNode:
+ radioDeviceNode().setChecked(true);
+ break;
+ case FstabEntryType::comment:
+ break;
+ }
+}
+
void EditMountPointDialogWidget::buttonSelectClicked(bool)
{
- const QString s = QFileDialog::getExistingDirectory(this, editPath().text());
+ const QString s = QFileDialog::getExistingDirectory(this, \
editPath().currentText()); if (!s.isEmpty())
- editPath().setText(s);
+ editPath().setCurrentText(s);
}
void EditMountPointDialogWidget::removeMountPoint()
{
int i=0;
for (const auto &e : fstabEntries()) {
- if((e.fsSpec().contains(partition().deviceNode()) && \
!partition().deviceNode().isEmpty() ) || \
(e.fsSpec().contains(partition().fileSystem().uuid()) && \
!partition().fileSystem().uuid().isEmpty()) ||
- (e.fsSpec().contains(partition().fileSystem().label()) && \
!partition().fileSystem().label().isEmpty()) || \
(e.fsSpec().contains(partition().label()) && !partition().label().isEmpty() ) || \
(e.fsSpec().contains(partition().uuid()) && !partition().uuid().isEmpty() ) ) + \
if(editPath().count()<=1 && ((e.fsSpec().contains(partition().deviceNode()) && \
!partition().deviceNode().isEmpty() ) || \
(e.fsSpec().contains(partition().fileSystem().uuid()) && \
!partition().fileSystem().uuid().isEmpty()) || + \
(e.fsSpec().contains(partition().fileSystem().label()) && \
!partition().fileSystem().label().isEmpty()) || \
(e.fsSpec().contains(partition().label()) && !partition().label().isEmpty() ) || \
(e.fsSpec().contains(partition().uuid()) && !partition().uuid().isEmpty() ))) {
fstabEntries().removeAt(i);
partition().setMountPoint(QString());
i--;
+ }
+ else if(editPath().count()>1 && ((&e == currentEntry)))
+ {
+ fstabEntries().removeAt(i);
+ editPath().removeItem(editPath().currentIndex());
+ partition().setMountPoint(editPath().itemText(editPath().currentIndex()));
+ i--;
+ break;
}
i++;
}
@@ -199,15 +220,15 @@ QStringList EditMountPointDialogWidget::options() const
void EditMountPointDialogWidget::acceptChanges()
{
- entry->setDumpFreq(spinDumpFreq().value());
- entry->setPassNumber(spinPassNumber().value());
- entry->setMountPoint(editPath().text());
- entry->setOptions(options());
+ currentEntry->setDumpFreq(spinDumpFreq().value());
+ currentEntry->setPassNumber(spinPassNumber().value());
+ currentEntry->setMountPoint(editPath().currentText());
+ currentEntry->setOptions(options());
if (radioUUID().isChecked() && !partition().fileSystem().uuid().isEmpty())
- entry->setFsSpec(QStringLiteral("UUID=") + partition().fileSystem().uuid());
+ currentEntry->setFsSpec(QStringLiteral("UUID=") + \
partition().fileSystem().uuid());
else if (radioLabel().isChecked() && \
!partition().fileSystem().label().isEmpty())
- entry->setFsSpec(QStringLiteral("LABEL=") + \
partition().fileSystem().label()); + \
currentEntry->setFsSpec(QStringLiteral("LABEL=") + partition().fileSystem().label()); \
else
- entry->setFsSpec(m_deviceNode);
+ currentEntry->setFsSpec(m_deviceNode);
}
diff --git a/src/gui/editmountpointdialogwidget.h \
b/src/gui/editmountpointdialogwidget.h index da54790..56705bc 100644
--- a/src/gui/editmountpointdialogwidget.h
+++ b/src/gui/editmountpointdialogwidget.h
@@ -32,7 +32,7 @@ class Partition;
class QFile;
class QSpinBox;
class QCheckBox;
-class QLineEdit;
+class QComboBox;
class QPushButton;
class QStringList;
@@ -48,7 +48,7 @@ public:
QLabel& labelName() {
return *m_LabelNameValue;
}
- QLineEdit& editPath() {
+ QComboBox& editPath() {
return *m_EditPath;
}
QSpinBox& spinDumpFreq() {
@@ -84,6 +84,7 @@ protected:
private:
void setupOptions(const QStringList& options);
+ void setupRadio(const FstabEntryType entryType);
std::map<QString, QCheckBox*>& boxOptions() {
return m_BoxOptions;
}
@@ -101,12 +102,14 @@ private:
private:
FstabEntryList m_fstabEntries;
- FstabEntry *entry;
-
+ QList<FstabEntry *> entry;
+ FstabEntry *currentEntry;
Partition& m_Partition;
QString m_Options;
QString m_deviceNode;
+ QStringList mountPointList;
std::map<QString, QCheckBox*> m_BoxOptions;
+ std::map<QString, QCheckBox*>::iterator iterator_BoxOptions;
};
#endif
diff --git a/src/gui/editmountpointdialogwidgetbase.ui \
b/src/gui/editmountpointdialogwidgetbase.ui index e83a459..0d95b5e 100644
--- a/src/gui/editmountpointdialogwidgetbase.ui
+++ b/src/gui/editmountpointdialogwidgetbase.ui
@@ -6,51 +6,46 @@
<rect>
<x>0</x>
<y>0</y>
- <width>600</width>
+ <width>613</width>
<height>374</height>
</rect>
</property>
<layout class="QGridLayout" name="gridLayout">
- <item row="5" column="1" colspan="3">
- <widget class="QLineEdit" name="m_EditPath">
- <property name="sizePolicy">
- <sizepolicy hsizetype="Expanding" vsizetype="Fixed">
- <horstretch>3</horstretch>
- <verstretch>0</verstretch>
- </sizepolicy>
+ <item row="4" column="2">
+ <widget class="QRadioButton" name="m_RadioUUID">
+ <property name="text">
+ <string>UU&ID</string>
</property>
</widget>
</item>
- <item row="5" column="0">
- <widget class="QLabel" name="m_LabelPath">
+ <item row="12" column="1">
+ <widget class="QSpinBox" name="m_SpinDumpFreq"/>
+ </item>
+ <item row="7" column="3" colspan="4">
+ <widget class="QCheckBox" name="m_CheckUsers">
<property name="text">
- <string>Path:</string>
- </property>
- <property name="alignment">
- <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
- </property>
- <property name="buddy">
- <cstring>m_EditPath</cstring>
+ <string>Users can mount and unmount</string>
</property>
</widget>
</item>
- <item row="6" column="0">
- <widget class="QLabel" name="m_LabelType">
+ <item row="10" column="3" colspan="4">
+ <widget class="QCheckBox" name="m_CheckRelAtime">
<property name="text">
- <string>Type:</string>
- </property>
- <property name="alignment">
- <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
+ <string>Update access times relative to modification</string>
</property>
</widget>
</item>
- <item row="7" column="0">
- <widget class="QLabel" name="m_LabelOptions">
+ <item row="6" column="1" colspan="2">
+ <widget class="QLabel" name="m_LabelTypeValue">
<property name="text">
- <string>Options:</string>
+ <string/>
</property>
- <property name="alignment">
- <set>Qt::AlignRight|Qt::AlignTop|Qt::AlignTrailing</set>
+ </widget>
+ </item>
+ <item row="2" column="0" colspan="7">
+ <widget class="Line" name="line">
+ <property name="orientation">
+ <enum>Qt::Horizontal</enum>
</property>
</widget>
</item>
@@ -61,38 +56,79 @@
</property>
</widget>
</item>
- <item row="7" column="3" colspan="4">
- <widget class="QCheckBox" name="m_CheckUsers">
+ <item row="12" column="3">
+ <widget class="QLabel" name="m_LabelPassNumber">
<property name="text">
- <string>Users can mount and unmount</string>
+ <string>Pass &Number:</string>
+ </property>
+ <property name="alignment">
+ <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
+ </property>
+ <property name="buddy">
+ <cstring>m_SpinPassNumber</cstring>
</property>
</widget>
</item>
- <item row="8" column="1" colspan="2">
- <widget class="QCheckBox" name="m_CheckNoAuto">
+ <item row="11" column="6">
+ <widget class="QPushButton" name="m_ButtonMore">
<property name="text">
- <string>No automatic mount</string>
+ <string>More...</string>
</property>
</widget>
</item>
- <item row="8" column="3" colspan="3">
- <widget class="QCheckBox" name="m_CheckNoAtime">
+ <item row="11" column="3" colspan="3">
+ <spacer name="horizontalSpacer">
+ <property name="orientation">
+ <enum>Qt::Horizontal</enum>
+ </property>
+ <property name="sizeHint" stdset="0">
+ <size>
+ <width>195</width>
+ <height>22</height>
+ </size>
+ </property>
+ </spacer>
+ </item>
+ <item row="4" column="1">
+ <widget class="QRadioButton" name="m_RadioDeviceNode">
<property name="text">
- <string>No update of file access times</string>
+ <string>De&vice Node</string>
+ </property>
+ <property name="checked">
+ <bool>true</bool>
</property>
</widget>
</item>
- <item row="9" column="1" colspan="2">
- <widget class="QCheckBox" name="m_CheckSync">
+ <item row="7" column="0">
+ <widget class="QLabel" name="m_LabelOptions">
<property name="text">
- <string>Synchronous access</string>
+ <string>Options:</string>
+ </property>
+ <property name="alignment">
+ <set>Qt::AlignRight|Qt::AlignTop|Qt::AlignTrailing</set>
</property>
</widget>
</item>
- <item row="9" column="3" colspan="4">
- <widget class="QCheckBox" name="m_CheckNoDirAtime">
+ <item row="1" column="0" colspan="7">
+ <spacer name="verticalSpacer">
+ <property name="orientation">
+ <enum>Qt::Vertical</enum>
+ </property>
+ <property name="sizeType">
+ <enum>QSizePolicy::Fixed</enum>
+ </property>
+ <property name="sizeHint" stdset="0">
+ <size>
+ <width>20</width>
+ <height>10</height>
+ </size>
+ </property>
+ </spacer>
+ </item>
+ <item row="4" column="3">
+ <widget class="QRadioButton" name="m_RadioLabel">
<property name="text">
- <string>No update of directory access times</string>
+ <string>&Label</string>
</property>
</widget>
</item>
@@ -103,30 +139,59 @@
</property>
</widget>
</item>
- <item row="10" column="3" colspan="4">
- <widget class="QCheckBox" name="m_CheckRelAtime">
- <property name="text">
- <string>Update access times relative to modification</string>
- </property>
- </widget>
+ <item row="12" column="4">
+ <widget class="QSpinBox" name="m_SpinPassNumber"/>
</item>
- <item row="11" column="3" colspan="3">
- <spacer name="horizontalSpacer">
+ <item row="12" column="5" colspan="2">
+ <spacer name="horizontalSpacer_3">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
- <width>195</width>
- <height>22</height>
+ <width>135</width>
+ <height>23</height>
</size>
</property>
</spacer>
</item>
- <item row="11" column="6">
- <widget class="QPushButton" name="m_ButtonMore">
+ <item row="8" column="1" colspan="2">
+ <widget class="QCheckBox" name="m_CheckNoAuto">
<property name="text">
- <string>More...</string>
+ <string>No automatic mount</string>
+ </property>
+ </widget>
+ </item>
+ <item row="5" column="6">
+ <widget class="QPushButton" name="m_ButtonRemove">
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Minimum" vsizetype="Fixed">
+ <horstretch>1</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="text">
+ <string>Remove</string>
+ </property>
+ </widget>
+ </item>
+ <item row="5" column="4">
+ <widget class="QPushButton" name="m_ButtonSelect">
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Minimum" vsizetype="Fixed">
+ <horstretch>1</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="text">
+ <string>Select...</string>
+ </property>
+ </widget>
+ </item>
+ <item row="9" column="3" colspan="4">
+ <widget class="QCheckBox" name="m_CheckNoDirAtime">
+ <property name="text">
+ <string>No update of directory access times</string>
</property>
</widget>
</item>
@@ -143,37 +208,41 @@
</property>
</widget>
</item>
- <item row="12" column="1">
- <widget class="QSpinBox" name="m_SpinDumpFreq"/>
- </item>
- <item row="12" column="2">
- <spacer name="horizontalSpacer_2">
+ <item row="3" column="0" colspan="7">
+ <spacer name="verticalSpacer_2">
<property name="orientation">
- <enum>Qt::Horizontal</enum>
+ <enum>Qt::Vertical</enum>
+ </property>
+ <property name="sizeType">
+ <enum>QSizePolicy::Fixed</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
- <width>70</width>
- <height>23</height>
+ <width>20</width>
+ <height>10</height>
</size>
</property>
</spacer>
</item>
- <item row="12" column="3">
- <widget class="QLabel" name="m_LabelPassNumber">
+ <item row="6" column="0">
+ <widget class="QLabel" name="m_LabelType">
<property name="text">
- <string>Pass &Number:</string>
+ <string>Type:</string>
</property>
<property name="alignment">
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
</property>
- <property name="buddy">
- <cstring>m_SpinPassNumber</cstring>
- </property>
</widget>
</item>
- <item row="12" column="4">
- <widget class="QSpinBox" name="m_SpinPassNumber"/>
+ <item row="5" column="0">
+ <widget class="QLabel" name="m_LabelPath">
+ <property name="text">
+ <string>Path:</string>
+ </property>
+ <property name="alignment">
+ <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
+ </property>
+ </widget>
</item>
<item row="0" column="0" colspan="7">
<widget class="QLabel" name="m_LabelNameValue">
@@ -191,52 +260,6 @@
</property>
</widget>
</item>
- <item row="6" column="1" colspan="2">
- <widget class="QLabel" name="m_LabelTypeValue">
- <property name="text">
- <string/>
- </property>
- </widget>
- </item>
- <item row="2" column="0" colspan="7">
- <widget class="Line" name="line">
- <property name="orientation">
- <enum>Qt::Horizontal</enum>
- </property>
- </widget>
- </item>
- <item row="1" column="0" colspan="7">
- <spacer name="verticalSpacer">
- <property name="orientation">
- <enum>Qt::Vertical</enum>
- </property>
- <property name="sizeType">
- <enum>QSizePolicy::Fixed</enum>
- </property>
- <property name="sizeHint" stdset="0">
- <size>
- <width>20</width>
- <height>10</height>
- </size>
- </property>
- </spacer>
- </item>
- <item row="3" column="0" colspan="7">
- <spacer name="verticalSpacer_2">
- <property name="orientation">
- <enum>Qt::Vertical</enum>
- </property>
- <property name="sizeType">
- <enum>QSizePolicy::Fixed</enum>
- </property>
- <property name="sizeHint" stdset="0">
- <size>
- <width>20</width>
- <height>10</height>
- </size>
- </property>
- </spacer>
- </item>
<item row="13" column="0" colspan="7">
<spacer name="verticalSpacer_3">
<property name="orientation">
@@ -253,79 +276,46 @@
</property>
</spacer>
</item>
- <item row="4" column="1">
- <widget class="QRadioButton" name="m_RadioDeviceNode">
- <property name="text">
- <string>De&vice Node</string>
- </property>
- <property name="checked">
- <bool>true</bool>
- </property>
- </widget>
- </item>
- <item row="4" column="2">
- <widget class="QRadioButton" name="m_RadioUUID">
- <property name="text">
- <string>UU&ID</string>
- </property>
- </widget>
- </item>
- <item row="4" column="3">
- <widget class="QRadioButton" name="m_RadioLabel">
+ <item row="8" column="3" colspan="3">
+ <widget class="QCheckBox" name="m_CheckNoAtime">
<property name="text">
- <string>&Label</string>
+ <string>No update of file access times</string>
</property>
</widget>
</item>
- <item row="4" column="0">
- <widget class="QLabel" name="label">
+ <item row="9" column="1" colspan="2">
+ <widget class="QCheckBox" name="m_CheckSync">
<property name="text">
- <string>Identify by:</string>
- </property>
- <property name="alignment">
- <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
+ <string>Synchronous access</string>
</property>
</widget>
</item>
- <item row="12" column="5" colspan="2">
- <spacer name="horizontalSpacer_3">
+ <item row="12" column="2">
+ <spacer name="horizontalSpacer_2">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
- <width>135</width>
+ <width>70</width>
<height>23</height>
</size>
</property>
</spacer>
</item>
- <item row="5" column="4">
- <widget class="QPushButton" name="m_ButtonSelect">
- <property name="sizePolicy">
- <sizepolicy hsizetype="Minimum" vsizetype="Fixed">
- <horstretch>1</horstretch>
- <verstretch>0</verstretch>
- </sizepolicy>
- </property>
+ <item row="4" column="0">
+ <widget class="QLabel" name="label">
<property name="text">
- <string>Select...</string>
- </property>
- </widget>
- </item>
- <item row="5" column="6">
- <widget class="QPushButton" name="m_ButtonRemove">
- <property name="sizePolicy">
- <sizepolicy hsizetype="Minimum" vsizetype="Fixed">
- <horstretch>1</horstretch>
- <verstretch>0</verstretch>
- </sizepolicy>
+ <string>Identify by:</string>
</property>
- <property name="text">
- <string>Remove</string>
+ <property name="alignment">
+ <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
</property>
</widget>
</item>
+ <item row="5" column="1" colspan="3">
+ <widget class="QComboBox" name="m_EditPath"/>
+ </item>
</layout>
</widget>
<resources/>
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic