diff --git a/src/qtgui/advsearch.ui b/src/qtgui/advsearch.ui
index 51e8330f..eb2acb42 100644
--- a/src/qtgui/advsearch.ui
+++ b/src/qtgui/advsearch.ui
@@ -66,7 +66,7 @@
Search for <br>documents<br>satisfying:
- All non blank fields will be combined with OR or AND conjunctions. <br>"Any" "All" and "None" field types can accept a mix of simple words, and phrases enclosed in double quotes.<br>Fields with no data are ignored.
+ All non empty fields on the right will be combined with AND ("All clauses" choice) or OR ("Any clause" choice) conjunctions. <br>"Any" "All" and "None" field types can accept a mix of simple words, and phrases enclosed in double quotes.<br>Fields with no data are ignored.
@@ -81,6 +81,9 @@
0
+
+ All non empty fields on the right will be combined with AND ("All clauses" choice) or OR ("Any clause" choice) conjunctions. <br>"Any" "All" and "None" field types can accept a mix of simple words, and phrases enclosed in double quotes.<br>Fields with no data are ignored.
+
@@ -179,7 +182,7 @@
- line3
+ line4
HLine
@@ -413,7 +416,7 @@
- line3
+ line5
HLine
diff --git a/src/qtgui/rclmain_w.cpp b/src/qtgui/rclmain_w.cpp
index d3cea459..be31ca35 100644
--- a/src/qtgui/rclmain_w.cpp
+++ b/src/qtgui/rclmain_w.cpp
@@ -847,18 +847,18 @@ void RclMain::startNativeViewer(Rcl::Doc doc)
}
if (cmdpath.empty()) {
+ QString mt = QString::fromAscii(doc.mimetype.c_str());
QString message = tr("The viewer specified in mimeconf for %1: %2"
" is not found.\nDo you want to start the "
" preferences dialog ?")
- .arg(QString::fromAscii(doc.mimetype.c_str()))
- .arg(QString::fromLocal8Bit(lcmd.front().c_str()));
+ .arg(mt).arg(QString::fromLocal8Bit(lcmd.front().c_str()));
switch(QMessageBox::warning(0, "Recoll", message,
"Yes", "No", 0, 0, 1)) {
case 0:
showUIPrefs();
if (uiprefs)
- uiprefs->showViewAction();
+ uiprefs->showViewAction(mt);
break;
case 1:
diff --git a/src/qtgui/uiprefs_w.cpp b/src/qtgui/uiprefs_w.cpp
index 33b2b6d2..69d1aba4 100644
--- a/src/qtgui/uiprefs_w.cpp
+++ b/src/qtgui/uiprefs_w.cpp
@@ -316,6 +316,11 @@ void UIPrefsDialog::showViewAction()
}
m_viewAction->show();
}
+void UIPrefsDialog::showViewAction(const QString& mt)
+{
+ showViewAction();
+ m_viewAction->selectMT(mt);
+}
////////////////////////////////////////////
// External / extra search indexes setup
diff --git a/src/qtgui/uiprefs_w.h b/src/qtgui/uiprefs_w.h
index c59d9097..efde0bf4 100644
--- a/src/qtgui/uiprefs_w.h
+++ b/src/qtgui/uiprefs_w.h
@@ -66,9 +66,10 @@ public:
public slots:
virtual void showFontDialog();
virtual void showViewAction();
+ virtual void showViewAction(const QString& mt);
virtual void resetReslistFont();
virtual void showBrowserDialog();
- virtual void extraDbTextChanged( const QString & text );
+ virtual void extraDbTextChanged(const QString& text);
virtual void addExtraDbPB_clicked();
virtual void delExtraDbPB_clicked();
virtual void browseDbPB_clicked();
diff --git a/src/qtgui/viewaction.ui b/src/qtgui/viewaction.ui
index d462b90f..1f0d7e49 100644
--- a/src/qtgui/viewaction.ui
+++ b/src/qtgui/viewaction.ui
@@ -8,7 +8,7 @@
0
0
- 224
+ 400
132
@@ -27,6 +27,14 @@
unnamed
+
+
+ textLabel1
+
+
+ Select one or several mime types then click "Change Action"
+
+
diff --git a/src/qtgui/viewaction_w.cpp b/src/qtgui/viewaction_w.cpp
index ed9e06b3..eeb53e41 100644
--- a/src/qtgui/viewaction_w.cpp
+++ b/src/qtgui/viewaction_w.cpp
@@ -28,11 +28,13 @@ using namespace std;
#if (QT_VERSION < 0x040000)
#include
+#define QLVEXACTMATCH Qt::ExactMatch
#else
#include
#define QListView Q3ListView
#define QListViewItem Q3ListViewItem
#define QListViewItemIterator Q3ListViewItemIterator
+#define QLVEXACTMATCH Q3ListView::ExactMatch
#endif
#include
@@ -57,7 +59,7 @@ void ViewAction::init()
#endif
this, SLOT(editAction()));
fillLists();
- resize(QSize(450, 250).expandedTo(minimumSizeHint()) );
+ resize(QSize(640, 250).expandedTo(minimumSizeHint()) );
}
void ViewAction::fillLists()
@@ -74,6 +76,16 @@ void ViewAction::fillLists()
}
+void ViewAction::selectMT(const QString& mt)
+{
+ QListViewItem *item = actionsLV->findItem(mt, 0, QLVEXACTMATCH);
+ if (item) {
+ actionsLV->ensureItemVisible(item);
+ actionsLV->setSelected(item, true);
+ actionsLV->setSelectionAnchor(item);
+ }
+}
+
// To avoid modifying the listview state from the dbl click signal, as
// advised by the manual
void ViewAction::listDblClicked()
diff --git a/src/qtgui/viewaction_w.h b/src/qtgui/viewaction_w.h
index bfd25e58..afa35730 100644
--- a/src/qtgui/viewaction_w.h
+++ b/src/qtgui/viewaction_w.h
@@ -61,6 +61,8 @@ public:
}
~ViewAction() {}
+ void selectMT(const QString& mt);
+
public slots:
virtual void editAction();
virtual void listDblClicked();