Don't allow newline characters in document settings.

Set a validator on QLineEdit widgets. The validator removes any
\n and \r characters, thus preventing users from copy-pasting
newline characters into these fields, and subsequently saving
them, inadvertantly, to their lyx file.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@39745 a592a061-630c-0410-9148-cb99ea01b6c8
This commit is contained in:
Julien Rioux 2011-09-24 16:39:23 +00:00
parent f24b24464a
commit c48091f33a
3 changed files with 35 additions and 0 deletions

View File

@ -70,6 +70,8 @@ GuiBranches::GuiBranches(QWidget * parent)
undef_, SLOT(accept()));
connect(undef_->cancelPB, SIGNAL(clicked()),
undef_, SLOT(reject()));
newBranchLE->setValidator(new NoNewLineValidator(newBranchLE));
}
void GuiBranches::update(BufferParams const & params)

View File

@ -780,6 +780,9 @@ GuiDocument::GuiDocument(GuiView & lv)
outputModule->synccustomCB->addItem("\\synctex=-1");
outputModule->synccustomCB->addItem("\\usepackage[active]{srcltx}");
outputModule->synccustomCB->setValidator(new NoNewLineValidator(
outputModule->synccustomCB));
// fonts
fontModule = new UiWidget<Ui::FontUi>;
connect(fontModule->osFontsCB, SIGNAL(clicked()),
@ -819,6 +822,11 @@ GuiDocument::GuiDocument(GuiView & lv)
connect(fontModule->fontOsfCB, SIGNAL(clicked()),
this, SLOT(change_adaptor()));
fontModule->fontencLE->setValidator(new NoNewLineValidator(
fontModule->fontencLE));
fontModule->cjkFontLE->setValidator(new NoNewLineValidator(
fontModule->cjkFontLE));
updateFontlist();
fontModule->fontsizeCO->addItem(qt_("Default"));
@ -1012,6 +1020,9 @@ GuiDocument::GuiDocument(GuiView & lv)
connect(langModule->languagePackageCO, SIGNAL(currentIndexChanged(int)),
this, SLOT(languagePackageChanged(int)));
langModule->languagePackageLE->setValidator(new NoNewLineValidator(
langModule->languagePackageLE));
QAbstractItemModel * language_model = guiApp->languageModel();
// FIXME: it would be nice if sorting was enabled/disabled via a checkbox.
language_model->sort(0);
@ -1105,6 +1116,9 @@ GuiDocument::GuiDocument(GuiView & lv)
connect(biblioModule->bibtexOptionsLE, SIGNAL(textChanged(QString)),
this, SLOT(change_adaptor()));
biblioModule->bibtexOptionsLE->setValidator(new NoNewLineValidator(
biblioModule->bibtexOptionsLE));
biblioModule->citeStyleCO->addItem(qt_("Author-year"));
biblioModule->citeStyleCO->addItem(qt_("Numerical"));
biblioModule->citeStyleCO->setCurrentIndex(0);
@ -1187,6 +1201,11 @@ GuiDocument::GuiDocument(GuiView & lv)
connect(latexModule->refstyleCB, SIGNAL(clicked()),
this, SLOT(change_adaptor()));
latexModule->optionsLE->setValidator(new NoNewLineValidator(
latexModule->optionsLE));
latexModule->childDocLE->setValidator(new NoNewLineValidator(
latexModule->childDocLE));
// postscript drivers
for (int n = 0; tex_graphics[n][0]; ++n) {
QString enc = qt_(tex_graphics_gui[n]);
@ -1288,6 +1307,17 @@ GuiDocument::GuiDocument(GuiView & lv)
connect(pdfSupportModule->optionsLE, SIGNAL(textChanged(QString)),
this, SLOT(change_adaptor()));
pdfSupportModule->titleLE->setValidator(new NoNewLineValidator(
pdfSupportModule->titleLE));
pdfSupportModule->authorLE->setValidator(new NoNewLineValidator(
pdfSupportModule->authorLE));
pdfSupportModule->subjectLE->setValidator(new NoNewLineValidator(
pdfSupportModule->subjectLE));
pdfSupportModule->keywordsLE->setValidator(new NoNewLineValidator(
pdfSupportModule->keywordsLE));
pdfSupportModule->optionsLE->setValidator(new NoNewLineValidator(
pdfSupportModule->optionsLE));
for (int i = 0; backref_opts[i][0]; ++i)
pdfSupportModule->backrefCO->addItem(qt_(backref_opts_gui[i]));

View File

@ -60,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)