--- a/src/qtgui/rclmain_w.cpp
+++ b/src/qtgui/rclmain_w.cpp
@@ -188,13 +188,6 @@
sSearch->queryText->installEventFilter(this);
- if (prefs.keepSort && prefs.sortActive) {
- if (prefs.sortDesc)
- actionSortByDateDesc->setChecked(true);
- else
- actionSortByDateAsc->setChecked(true);
- onSortCtlChanged();
- }
restable = new ResTable(this);
verticalLayout->insertWidget(2, restable);
actionShowResultsAsTable->setChecked(prefs.showResultsAsTable);
@@ -311,6 +304,14 @@
connect(reslist, SIGNAL(headerClicked()),
this, SLOT(showQueryDetails()));
+ if (prefs.keepSort && prefs.sortActive) {
+ if (prefs.sortDesc)
+ actionSortByDateDesc->setChecked(true);
+ else
+ actionSortByDateAsc->setChecked(true);
+ onSortCtlChanged();
+ }
+
// Start timer on a slow period (used for checking ^C). Will be
// speeded up during indexing
periodictimer->start(1000);
@@ -870,7 +871,7 @@
if (m_sortspecnochange)
return;
- LOGDEB(("RclMain::onCtlDataChanged()\n"));
+ LOGDEB(("RclMain::onSortCtlChanged()\n"));
m_sortspec.reset();
if (actionSortByDateAsc->isChecked()) {
m_sortspec.field = "mtime";
@@ -886,7 +887,8 @@
prefs.sortActive = prefs.sortDesc = false;
}
LOGDEB(("RclMain::onCtlDataChanged(): emitting change signals\n"));
- m_source->setSortSpec(m_sortspec);
+ if (m_source.isNotNull())
+ m_source->setSortSpec(m_sortspec);
emit sortDataChanged(m_sortspec);
emit applyFiltSortData();
}