X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Ffrontends%2Fqt4%2FGuiListings.cpp;h=9bb8f05dba0cef6f8f7df61ee45ec5722ff725e4;hb=425d092204118ea6c24c28e85fdf03fcf2bb51a4;hp=38077d434cb08da1703274a01dd539fd97e8e45d;hpb=eb963540d4532d716a7d460eee6a3ab5d976e0c6;p=lyx.git diff --git a/src/frontends/qt4/GuiListings.cpp b/src/frontends/qt4/GuiListings.cpp index 38077d434c..9bb8f05dba 100644 --- a/src/frontends/qt4/GuiListings.cpp +++ b/src/frontends/qt4/GuiListings.cpp @@ -4,7 +4,7 @@ * Licence details can be found in the file COPYING. * * \author Bo Peng - * \author Jürgen Spitzmüller + * \author Jürgen Spitzmüller * * Full author contact details are available in file CREDITS. */ @@ -20,6 +20,7 @@ #include "insets/InsetListings.h" #include "insets/InsetListingsParams.h" +#include "support/convert.h" #include "support/debug.h" #include "support/gettext.h" #include "support/lstrings.h" @@ -198,17 +199,19 @@ GuiListings::GuiListings(GuiView & lv) this, SLOT(change_adaptor())); connect(spaceInStringCB, SIGNAL(clicked()), this, SLOT(change_adaptor())); + connect(tabsizeSB, SIGNAL(valueChanged(int)), + this, SLOT(change_adaptor())); connect(extendedcharsCB, SIGNAL(clicked()), this, SLOT(change_adaptor())); connect(listingsED, SIGNAL(textChanged()), this, SLOT(change_adaptor())); connect(listingsED, SIGNAL(textChanged()), - this, SLOT(set_listings_msg())); + this, SLOT(setListingsMsg())); connect(bypassCB, SIGNAL(clicked()), this, SLOT(change_adaptor())); connect(bypassCB, SIGNAL(clicked()), - this, SLOT(set_listings_msg())); + this, SLOT(setListingsMsg())); for (int n = 0; languages[n][0]; ++n) languageCO->addItem(qt_(languages_gui[n])); @@ -296,6 +299,7 @@ string GuiListings::construct_params() basicstyle += "\\" + fontstyle; bool breakline = breaklinesCB->isChecked(); bool space = spaceCB->isChecked(); + int tabsize = tabsizeSB->value(); bool spaceInString = spaceInStringCB->isChecked(); bool extendedchars = extendedcharsCB->isChecked(); string extra = fromqstr(listingsED->toPlainText()); @@ -331,6 +335,8 @@ string GuiListings::construct_params() par.addParam("showspaces", "true"); if (!spaceInString) par.addParam("showstringspaces", "false"); + if (tabsize != 8) + par.addParam("tabsize", convert(tabsize)); if (extendedchars) par.addParam("extendedchars", "true"); par.addParams(extra); @@ -357,7 +363,7 @@ docstring GuiListings::validate_listings_params() } -void GuiListings::set_listings_msg() +void GuiListings::setListingsMsg() { static bool isOK = true; docstring msg = validate_listings_params(); @@ -456,6 +462,7 @@ void GuiListings::updateContents() breaklinesCB->setChecked(false); spaceCB->setChecked(false); spaceInStringCB->setChecked(true); + tabsizeSB->setValue(8); extendedcharsCB->setChecked(false); // set values from param string @@ -583,6 +590,9 @@ void GuiListings::updateContents() } else if (prefixIs(*it, "showstringspaces=")) { spaceInStringCB->setChecked(contains(*it, "true")); *it = ""; + } else if (prefixIs(*it, "tabsize=")) { + tabsizeSB->setValue(convert(plainParam(it->substr(8)))); + *it = ""; } else if (prefixIs(*it, "extendedchars=")) { extendedcharsCB->setChecked(contains(*it, "true")); *it = ""; @@ -637,4 +647,4 @@ Dialog * createGuiListings(GuiView & lv) { return new GuiListings(lv); } } // namespace lyx -#include "GuiListings_moc.cpp" +#include "moc_GuiListings.cpp"