diff --git a/src/Gui/DlgParameter.ui b/src/Gui/DlgParameter.ui index 761b9db7a5..1f2ff08707 100644 --- a/src/Gui/DlgParameter.ui +++ b/src/Gui/DlgParameter.ui @@ -36,6 +36,16 @@ 6 + + + + Sorted + + + true + + + diff --git a/src/Gui/DlgParameterImp.cpp b/src/Gui/DlgParameterImp.cpp index 5b169fa7bb..1ad8b1e75a 100644 --- a/src/Gui/DlgParameterImp.cpp +++ b/src/Gui/DlgParameterImp.cpp @@ -63,11 +63,18 @@ DlgParameterImp::DlgParameterImp( QWidget* parent, Qt::WindowFlags fl ) , ui(new Ui_DlgParameter) { ui->setupUi(this); - QStringList groupLabels; + ui->checkSort->setVisible(false); // for testing + + QStringList groupLabels; groupLabels << tr( "Group" ); paramGroup = new ParameterGroup(ui->splitter3); paramGroup->setHeaderLabels(groupLabels); paramGroup->setRootIsDecorated(false); +#if QT_VERSION >= 0x050000 + paramGroup->setSortingEnabled(true); + paramGroup->sortByColumn(0, Qt::AscendingOrder); + paramGroup->header()->setProperty("showSortIndicator", QVariant(true)); +#endif QStringList valueLabels; valueLabels << tr( "Name" ) << tr( "Type" ) << tr( "Value" ); @@ -77,6 +84,7 @@ DlgParameterImp::DlgParameterImp( QWidget* parent, Qt::WindowFlags fl ) #if QT_VERSION >= 0x050000 paramValue->header()->setSectionResizeMode(0, QHeaderView::Stretch); paramValue->setSortingEnabled(true); + paramValue->sortByColumn(0, Qt::AscendingOrder); paramValue->header()->setProperty("showSortIndicator", QVariant(true)); #else paramValue->header()->setResizeMode(0, QHeaderView::Stretch); @@ -144,6 +152,21 @@ void DlgParameterImp::changeEvent(QEvent *e) } } +void DlgParameterImp::on_checkSort_toggled(bool on) +{ +#if QT_VERSION >= 0x050000 + paramGroup->setSortingEnabled(on); + paramGroup->sortByColumn(0, Qt::AscendingOrder); + paramGroup->header()->setProperty("showSortIndicator", QVariant(on)); +#endif + +#if QT_VERSION >= 0x050000 + paramValue->setSortingEnabled(on); + paramValue->sortByColumn(0, Qt::AscendingOrder); + paramValue->header()->setProperty("showSortIndicator", QVariant(on)); +#endif +} + void DlgParameterImp::on_closeButton_clicked() { close(); diff --git a/src/Gui/DlgParameterImp.h b/src/Gui/DlgParameterImp.h index 2f86121ae2..fdea01bb3a 100644 --- a/src/Gui/DlgParameterImp.h +++ b/src/Gui/DlgParameterImp.h @@ -61,6 +61,7 @@ protected Q_SLOTS: void onGroupSelected(QTreeWidgetItem *); void on_closeButton_clicked(); + void on_checkSort_toggled(bool); protected: void changeEvent(QEvent *e);