--- a
+++ b/src/qtgui/uiprefs.ui.h
@@ -0,0 +1,112 @@
+/****************************************************************************
+** ui.h extension file, included from the uic-generated form implementation.
+**
+** If you want to add, delete, or rename functions or slots, use
+** Qt Designer to update this file, preserving your code.
+**
+** You should not define a constructor or destructor in this file.
+** Instead, write your code in functions called init() and destroy().
+** These will automatically be called by the form's constructor and
+** destructor.
+*****************************************************************************/
+
+#include "qfontdialog.h"
+#include "qspinbox.h"
+#include "qmessagebox.h"
+
+#include "recoll.h"
+
+void UIPrefsDialog::init()
+{
+ // Entries per result page spinbox
+ pageLenSB->setValue(prefs_respagesize);
+ // Show icons checkbox
+ useIconsCB->setChecked(prefs_showicons);
+ // Result list font family and size
+ reslistFontFamily = prefs_reslistfontfamily;
+ reslistFontSize = prefs_reslistfontsize;
+ QString s;
+ if (prefs_reslistfontfamily.length() == 0) {
+ reslistFontPB->setText(this->font().family() + "-" +
+ s.setNum(this->font().pointSize()));
+ } else {
+ reslistFontPB->setText(reslistFontFamily + "-" +
+ s.setNum(reslistFontSize));
+ }
+ // Stemming language combobox
+ stemLangCMB->insertItem("(no stemming)");
+ list<string> langs;
+#if 0
+ string slangs;
+ if (rclconfig->getConfParam("indexstemminglanguages", slangs)) {
+ stringToStrings(slangs, langs);
+ }
+#else
+ string reason;
+ if (!maybeOpenDb(reason)) {
+ QMessageBox::critical(0, "Recoll", QString(reason.c_str()));
+ exit(1);
+ }
+ langs = rcldb->getStemLangs();
+#endif
+
+ int i = 0, cur = -1;
+ for (list<string>::const_iterator it = langs.begin();
+ it != langs.end(); it++) {
+ stemLangCMB->
+ insertItem(QString::fromAscii(it->c_str(), it->length()));
+ i++;
+ if (cur == -1) {
+ if (!strcmp(prefs_queryStemLang.ascii(), it->c_str()))
+ cur = i;
+ }
+ }
+ if (cur < 0)
+ cur = 0;
+ stemLangCMB->setCurrentItem(cur);
+
+ connect(reslistFontPB, SIGNAL(clicked()), this, SLOT(showFontDialog()));
+ connect(resetFontPB, SIGNAL(clicked()), this, SLOT(resetReslistFont()));
+}
+
+void UIPrefsDialog::accept()
+{
+ emit uiprefsDone();
+ QDialog::accept();
+}
+
+void UIPrefsDialog::showFontDialog()
+{
+ bool ok;
+ QFont font;
+ if (prefs_reslistfontfamily.length()) {
+ font.setFamily(prefs_reslistfontfamily);
+ font.setPointSize(prefs_reslistfontsize);
+ }
+
+ font = QFontDialog::getFont(&ok, font, this );
+ if (ok) {
+ // Check if the default font was set, in which case we
+ // erase the preference
+ if (font.family().compare(this->font().family()) ||
+ font.pointSize() != this->font().pointSize()) {
+ reslistFontFamily = font.family();
+ reslistFontSize = font.pointSize();
+ QString s;
+ reslistFontPB->setText(reslistFontFamily + "-" +
+ s.setNum(reslistFontSize));
+ } else {
+ reslistFontFamily = "";
+ reslistFontSize = 0;
+ }
+ }
+}
+
+
+void UIPrefsDialog::resetReslistFont()
+{
+ reslistFontFamily = "";
+ reslistFontSize = 0;
+ reslistFontPB->setText(this->font().family() + "-" +
+ QString().setNum(this->font().pointSize()));
+}