summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorisanae <14251494+isanae@users.noreply.github.com>2019-11-26 10:05:48 -0500
committerisanae <14251494+isanae@users.noreply.github.com>2019-11-26 10:05:48 -0500
commitb8e1a45840a72e1e959f1fad2f00015a72500161 (patch)
tree46a2337433b925f252a963bea56f1fa0f69b3e2e /src
parentf85478a5b40ba609a0b36a2095e2b7fd3588857f (diff)
sortable filetree, remember settings
Diffstat (limited to 'src')
-rw-r--r--src/modinfodialog.ui3
-rw-r--r--src/modinfodialogfiletree.cpp11
-rw-r--r--src/modinfodialogfiletree.h2
3 files changed, 16 insertions, 0 deletions
diff --git a/src/modinfodialog.ui b/src/modinfodialog.ui
index 13a245f1..59263e1c 100644
--- a/src/modinfodialog.ui
+++ b/src/modinfodialog.ui
@@ -1258,6 +1258,9 @@ p, li { white-space: pre-wrap; }
<property name="uniformRowHeights">
<bool>true</bool>
</property>
+ <property name="sortingEnabled">
+ <bool>true</bool>
+ </property>
</widget>
</item>
</layout>
diff --git a/src/modinfodialogfiletree.cpp b/src/modinfodialogfiletree.cpp
index 71ea9210..ca007c1c 100644
--- a/src/modinfodialogfiletree.cpp
+++ b/src/modinfodialogfiletree.cpp
@@ -21,6 +21,7 @@ FileTreeTab::FileTreeTab(ModInfoDialogTabContext cx)
m_fs->setReadOnly(false);
ui->filetree->setModel(m_fs);
ui->filetree->setColumnWidth(0, 300);
+ ui->filetree->sortByColumn(0, Qt::AscendingOrder);
m_actions.newFolder = new QAction(tr("&New Folder"), ui->filetree);
m_actions.open = new QAction(tr("&Open/Execute"), ui->filetree);
@@ -55,6 +56,16 @@ void FileTreeTab::clear()
setHasData(true);
}
+void FileTreeTab::saveState(Settings& s)
+{
+ s.geometry().saveState(ui->filetree->header());
+}
+
+void FileTreeTab::restoreState(const Settings& s)
+{
+ s.geometry().restoreState(ui->filetree->header());
+}
+
void FileTreeTab::update()
{
const auto rootPath = mod().absolutePath();
diff --git a/src/modinfodialogfiletree.h b/src/modinfodialogfiletree.h
index 42773899..494a7e14 100644
--- a/src/modinfodialogfiletree.h
+++ b/src/modinfodialogfiletree.h
@@ -12,6 +12,8 @@ public:
FileTreeTab(ModInfoDialogTabContext cx);
void clear() override;
+ void saveState(Settings& s);
+ void restoreState(const Settings& s);
void update() override;
bool deleteRequested() override;