]> git.lyx.org Git - lyx.git/blobdiff - src/frontends/qt4/GuiIndices.cpp
Fix the tab ordering of GuiDocument components.
[lyx.git] / src / frontends / qt4 / GuiIndices.cpp
index a1198a68841d6f1d26a326bdbd9fddba09dadee1..8694b98cd74184171128ceb621e881138e5a1176 100644 (file)
@@ -52,6 +52,7 @@ GuiIndices::GuiIndices(QWidget * parent)
        indicesTW->headerItem()->setText(1, qt_("Label Color"));
        indicesTW->setSortingEnabled(true);
 
+       // NOTE: we do not provide "custom" here for security reasons!
        indexCO->clear();
        indexCO->addItem(qt_("Default"), QString("default"));
        for (set<string>::const_iterator it = lyxrc.index_alternatives.begin();
@@ -59,6 +60,9 @@ GuiIndices::GuiIndices(QWidget * parent)
                QString const command = toqstr(*it).left(toqstr(*it).indexOf(" "));
                indexCO->addItem(command, command);
        }
+
+       indexOptionsLE->setValidator(new NoNewLineValidator(indexOptionsLE));
+       newIndexLE->setValidator(new NoNewLineValidator(newIndexLE));
 }
 
 void GuiIndices::update(BufferParams const & params)
@@ -81,12 +85,14 @@ void GuiIndices::update(BufferParams const & params)
        int const pos = indexCO->findData(toqstr(command));
        if (pos != -1) {
                indexCO->setCurrentIndex(pos);
-               indexOptionsED->setText(toqstr(options).trimmed());
+               indexOptionsLE->setText(toqstr(options).trimmed());
        } else {
-               indexCO->setCurrentIndex(0);
-               indexOptionsED->clear();
+               // We reset to default if we do not know the specified compiler
+               // This is for security reasons
+               indexCO->setCurrentIndex(indexCO->findData(toqstr("default")));
+               indexOptionsLE->clear();
        }
-       indexOptionsED->setEnabled(
+       indexOptionsLE->setEnabled(
                indexCO->currentIndex() != 0);
 
        updateView();
@@ -142,7 +148,7 @@ void GuiIndices::apply(BufferParams & params) const
        string const index_command =
                fromqstr(indexCO->itemData(
                        indexCO->currentIndex()).toString());
-       string const index_options = fromqstr(indexOptionsED->text());
+       string const index_options = fromqstr(indexOptionsLE->text());
        if (index_command == "default" || index_options.empty())
                params.index_command = index_command;
        else
@@ -152,12 +158,13 @@ void GuiIndices::apply(BufferParams & params) const
 
 void GuiIndices::on_indexCO_activated(int n)
 {
-       indexOptionsED->setEnabled(n != 0);
+       indexOptionsLE->setEnabled(
+               indexCO->itemData(n).toString() != "default");
        changed();
 }
 
 
-void GuiIndices::on_indexOptionsED_textChanged(QString)
+void GuiIndices::on_indexOptionsLE_textChanged(QString)
 {
        changed();
 }