commit 34943a4e5f2202e71029865f3a51ab985662423f
Author: Juergen Spitzmueller <[email protected]>
Date:   Sat Jan 14 12:13:33 2017 +0100

    Make Japanese Biblatex-aware
    
    Biblatex can be used with Japanese, but then, biber (not pbibtex) should
    be used as processor.
    
    I this context, bring the jbibtex UI in line with bibtex, allowing for
    a selection of alternatives.
---
 lib/configure.py                    |   11 +-
 lib/scripts/prefs2prefs_prefs.py    |    8 +-
 src/BufferParams.cpp                |   28 +++-
 src/LyXRC.cpp                       |   22 ++-
 src/LyXRC.h                         |    3 +
 src/frontends/qt4/GuiPrefs.cpp      |   73 +++++++-
 src/frontends/qt4/GuiPrefs.h        |    3 +
 src/frontends/qt4/ui/PrefLatexUi.ui |  343 +++++++++++++++++++----------------
 8 files changed, 322 insertions(+), 169 deletions(-)

diff --git a/lib/configure.py b/lib/configure.py
index fba2973..3d4c0cf 100644
--- a/lib/configure.py
+++ b/lib/configure.py
@@ -1177,11 +1177,12 @@ def checkOtherEntries():
         rc_entry = [ r'\chktex_command "%%"' ])
     checkProgAlternatives('BibTeX or alternative programs',
         ['bibtex', 'bibtex8', 'biber'],
-        rc_entry = [ r'\bibtex_command "%%"' ],
+        rc_entry = [ r'\bibtex_command "automatic"' ],
         alt_rc_entry = [ r'\bibtex_alternatives "%%"' ])
-    checkProg('a specific Japanese BibTeX variant',
-        ['pbibtex', 'jbibtex', 'bibtex'],
-        rc_entry = [ r'\jbibtex_command "%%"' ])
+    checkProgAlternatives('a specific Japanese BibTeX variant',
+        ['pbibtex', 'upbibtex', 'jbibtex', 'bibtex', 'biber'],
+        rc_entry = [ r'\jbibtex_command "automatic"' ],
+        alt_rc_entry = [ r'\jbibtex_alternatives "%%"' ])
     checkProgAlternatives('available index processors',
         ['texindy', 'makeindex -c -q', 'xindy'],
         rc_entry = [ r'\index_command "%%"' ],
@@ -1711,7 +1712,7 @@ if __name__ == '__main__':
     lyx_check_config = True
     lyx_kpsewhich = True
     outfile = 'lyxrc.defaults'
-    lyxrc_fileformat = 20
+    lyxrc_fileformat = 21
     rc_entries = ''
     lyx_keep_temps = False
     version_suffix = ''
diff --git a/lib/scripts/prefs2prefs_prefs.py b/lib/scripts/prefs2prefs_prefs.py
index ff31836..290a871 100644
--- a/lib/scripts/prefs2prefs_prefs.py
+++ b/lib/scripts/prefs2prefs_prefs.py
@@ -84,6 +84,11 @@
 #   Add options to forbid/ignore 'needauth' option
 #   No conversion necessary.
 
+# Incremented to format 21, by spitz
+#   Add jbibtex_alternatives, allow "automatic" value
+#   of bibtex_command and jbibtex_command (actually the
+#   default now)
+
 # NOTE: The format should also be updated in LYXRC.cpp and
 # in configure.py.
 
@@ -380,5 +385,6 @@ conversions = [
        [ 17, [remove_rtl]],
        [ 18, []],
        [ 19, [remove_print_support]],
-       [ 20, []]
+       [ 20, []],
+       [ 21, []]
 ]
diff --git a/src/BufferParams.cpp b/src/BufferParams.cpp
index 46baa3b..fb65780 100644
--- a/src/BufferParams.cpp
+++ b/src/BufferParams.cpp
@@ -3360,15 +3360,31 @@ string const BufferParams::bibtexCommand() const
        // Return document-specific setting if available
        if (bibtex_command != "default")
                return bibtex_command;
-       // For Japanese, return the specific program
-       else if (encoding().package() == Encoding::japanese)
-               return lyxrc.jbibtex_command;
-       // Else return the processor set in prefs
+
+       // If we have "default" in document settings, consult the prefs
+       // 1. Japanese (uses a specific processor)
+       if (encoding().package() == Encoding::japanese) {
+               if (lyxrc.jbibtex_command != "automatic")
+                       // Return the specified program, if "automatic" is not 
set
+                       return lyxrc.jbibtex_command;
+               else if (!useBiblatex()) {
+                       // With classic BibTeX, return pbibtex, jbibtex, bibtex
+                       if (lyxrc.jbibtex_alternatives.find("pbibtex") != 
lyxrc.jbibtex_alternatives.end())
+                               return "pbibtex";
+                       if (lyxrc.jbibtex_alternatives.find("jbibtex") != 
lyxrc.jbibtex_alternatives.end())
+                               return "jbibtex";
+                       return "bibtex";
+               }
+       }
+       // 2. All other languages
        else if (lyxrc.bibtex_command != "automatic")
+               // Return the specified program, if "automatic" is not set
                return lyxrc.bibtex_command;
-       // Automatic means: find the most suitable for the current cite 
framework
+
+       // 3. Automatic: find the most suitable for the current cite framework
        if (useBiblatex()) {
-               // For biblatex, we prefer biber and fall back to bibtex8 and, 
as last resort, bibtex
+               // For Biblatex, we prefer biber (also for Japanese)
+               // and fall back to bibtex8 and, as last resort, bibtex
                if (lyxrc.bibtex_alternatives.find("biber") != 
lyxrc.bibtex_alternatives.end())
                        return "biber";
                else if (lyxrc.bibtex_alternatives.find("bibtex8") != 
lyxrc.bibtex_alternatives.end())
diff --git a/src/LyXRC.cpp b/src/LyXRC.cpp
index 32ba8fd..34998f2 100644
--- a/src/LyXRC.cpp
+++ b/src/LyXRC.cpp
@@ -59,7 +59,7 @@ namespace {
 
 // The format should also be updated in configure.py, and conversion code
 // should be added to prefs2prefs_prefs.py.
-static unsigned int const LYXRC_FILEFORMAT = 20; // tommaso: 'needauth' options
+static unsigned int const LYXRC_FILEFORMAT = 21; // spitz: jbibtex_alternatives
 
 // when adding something to this array keep it sorted!
 LexerKeyword lyxrcTags[] = {
@@ -124,6 +124,7 @@ LexerKeyword lyxrcTags[] = {
        { "\\index_alternatives", LyXRC::RC_INDEX_ALTERNATIVES },
        { "\\index_command", LyXRC::RC_INDEX_COMMAND },
        { "\\input", LyXRC::RC_INPUT },
+       { "\\jbibtex_alternatives", LyXRC::RC_JBIBTEX_ALTERNATIVES },
        { "\\jbibtex_command", LyXRC::RC_JBIBTEX_COMMAND },
        { "\\jindex_command", LyXRC::RC_JINDEX_COMMAND },
        { "\\kbmap", LyXRC::RC_KBMAP },
@@ -573,6 +574,12 @@ LyXRC::ReturnValues LyXRC::read(Lexer & lexrc, bool 
check_format)
                        }
                        break;
 
+               case RC_JBIBTEX_ALTERNATIVES:
+                       if (lexrc.next(true)) {
+                               jbibtex_alternatives.insert(lexrc.getString());
+                       }
+                       break;
+
                case RC_INDEX_ALTERNATIVES:
                        if (lexrc.next(true)) {
                                index_alternatives.insert(lexrc.getString());
@@ -1441,6 +1448,18 @@ void LyXRC::write(ostream & os, bool 
ignore_system_lyxrc, string const & name) c
                }
                if (tag != RC_LAST)
                        break;
+       case RC_JBIBTEX_ALTERNATIVES: {
+               CommandSet::const_iterator it = jbibtex_alternatives.begin();
+               CommandSet::const_iterator end = jbibtex_alternatives.end();
+               for ( ; it != end; ++it) {
+                       if (ignore_system_lyxrc
+                           || !system_lyxrc.jbibtex_alternatives.count(*it))
+                               os << "\\jbibtex_alternatives \""
+                                  << *it << "\"\n";
+               }
+               if (tag != RC_LAST)
+                       break;
+       }
        case RC_INDEX_ALTERNATIVES: {
                CommandSet::const_iterator it = index_alternatives.begin();
                CommandSet::const_iterator end = index_alternatives.end();
@@ -2786,6 +2805,7 @@ void actOnUpdatedPrefs(LyXRC const & lyxrc_orig, LyXRC 
const & lyxrc_new)
        case LyXRC::RC_INDEX_ALTERNATIVES:
        case LyXRC::RC_INDEX_COMMAND:
        case LyXRC::RC_JBIBTEX_COMMAND:
+       case LyXRC::RC_JBIBTEX_ALTERNATIVES:
        case LyXRC::RC_JINDEX_COMMAND:
        case LyXRC::RC_NOMENCL_COMMAND:
        case LyXRC::RC_INPUT:
diff --git a/src/LyXRC.h b/src/LyXRC.h
index 8a9cc17..dccb300 100644
--- a/src/LyXRC.h
+++ b/src/LyXRC.h
@@ -98,6 +98,7 @@ public:
                RC_INDEX_ALTERNATIVES,
                RC_INDEX_COMMAND,
                RC_INPUT,
+               RC_JBIBTEX_ALTERNATIVES,
                RC_JBIBTEX_COMMAND,
                RC_JINDEX_COMMAND,
                RC_KBMAP,
@@ -240,6 +241,8 @@ public:
        std::string bibtex_command;
        /// command to run japanese bibtex incl. options
        std::string jbibtex_command;
+       /// all available commands to run japanese bibtex incl. options
+       CommandSet jbibtex_alternatives;
        /// all available index commands incl. options
        CommandSet index_alternatives;
        /// command to run makeindex incl. options or other index programs
diff --git a/src/frontends/qt4/GuiPrefs.cpp b/src/frontends/qt4/GuiPrefs.cpp
index 0ffe256..de3fcfd 100644
--- a/src/frontends/qt4/GuiPrefs.cpp
+++ b/src/frontends/qt4/GuiPrefs.cpp
@@ -743,6 +743,8 @@ PrefLatex::PrefLatex(GuiPreferences * form)
                this, SIGNAL(changed()));
        connect(latexBibtexED, SIGNAL(textChanged(QString)),
                this, SIGNAL(changed()));
+       connect(latexJBibtexCO, SIGNAL(activated(int)),
+               this, SIGNAL(changed()));
        connect(latexJBibtexED, SIGNAL(textChanged(QString)),
                this, SIGNAL(changed()));
        connect(latexIndexCO, SIGNAL(activated(int)),
@@ -779,7 +781,7 @@ void PrefLatex::on_latexBibtexCO_activated(int n)
        QString const bibtex = latexBibtexCO->itemData(n).toString();
        if (bibtex.isEmpty()) {
                latexBibtexED->clear();
-               latexBibtexOptionsLA->setText(qt_("Co&mmand:"));
+               latexBibtexOptionsLA->setText(qt_("C&ommand:"));
                return;
        }
        for (LyXRC::CommandSet::const_iterator it = bibtex_alternatives.begin();
@@ -799,6 +801,31 @@ void PrefLatex::on_latexBibtexCO_activated(int n)
 }
 
 
+void PrefLatex::on_latexJBibtexCO_activated(int n)
+{
+       QString const jbibtex = latexJBibtexCO->itemData(n).toString();
+       if (jbibtex.isEmpty()) {
+               latexJBibtexED->clear();
+               latexJBibtexOptionsLA->setText(qt_("Co&mmand:"));
+               return;
+       }
+       for (LyXRC::CommandSet::const_iterator it = 
jbibtex_alternatives.begin();
+            it != jbibtex_alternatives.end(); ++it) {
+               QString const bib = toqstr(*it);
+               int ind = bib.indexOf(" ");
+               QString sel_command = bib.left(ind);
+               QString sel_options = ind < 0 ? QString() : bib.mid(ind + 1);
+               if (jbibtex == sel_command) {
+                       if (ind < 0)
+                               latexJBibtexED->clear();
+                       else
+                               latexJBibtexED->setText(sel_options.trimmed());
+               }
+       }
+       latexJBibtexOptionsLA->setText(qt_("Opt&ions:"));
+}
+
+
 void PrefLatex::on_latexIndexCO_activated(int n)
 {
        QString const index = latexIndexCO->itemData(n).toString();
@@ -838,6 +865,18 @@ void PrefLatex::applyRC(LyXRC & rc) const
        else
                rc.bibtex_command = fromqstr(bibtex) + " " + fromqstr(bibopt);
 
+       // If jbibtex is not empty, jbibopt contains the options, otherwise
+       // it is a customized bibtex command with options.
+       QString const jbibtex = latexJBibtexCO->itemData(
+               latexJBibtexCO->currentIndex()).toString();
+       QString const jbibopt = latexJBibtexED->text();
+       if (jbibtex.isEmpty())
+               rc.jbibtex_command = fromqstr(jbibopt);
+       else if (jbibopt.isEmpty())
+               rc.jbibtex_command = fromqstr(jbibtex);
+       else
+               rc.jbibtex_command = fromqstr(jbibtex) + " " + 
fromqstr(jbibopt);
+
        // If index is not empty, idxopt contains the options, otherwise
        // it is a customized index command with options.
        QString const index = latexIndexCO->itemData(
@@ -855,7 +894,6 @@ void PrefLatex::applyRC(LyXRC & rc) const
        else
                rc.fontenc = "default";
        rc.chktex_command = fromqstr(latexChecktexED->text());
-       rc.jbibtex_command = fromqstr(latexJBibtexED->text());
        rc.jindex_command = fromqstr(latexJIndexED->text());
        rc.nomencl_command = fromqstr(latexNomenclED->text());
        rc.auto_reset_options = latexAutoresetCB->isChecked();
@@ -893,7 +931,35 @@ void PrefLatex::updateRC(LyXRC const & rc)
        } else {
                latexBibtexED->setText(toqstr(rc.bibtex_command));
                latexBibtexCO->setCurrentIndex(0);
-               latexBibtexOptionsLA->setText(qt_("Co&mmand:"));
+               latexBibtexOptionsLA->setText(qt_("C&ommand:"));
+       }
+
+       latexJBibtexCO->clear();
+
+       latexJBibtexCO->addItem(qt_("Automatic"), "automatic");
+       latexJBibtexCO->addItem(qt_("Custom"), QString());
+       for (LyXRC::CommandSet::const_iterator it = 
rc.jbibtex_alternatives.begin();
+                            it != rc.jbibtex_alternatives.end(); ++it) {
+               QString const command = toqstr(*it).left(toqstr(*it).indexOf(" 
"));
+               latexJBibtexCO->addItem(command, command);
+       }
+
+       jbibtex_alternatives = rc.jbibtex_alternatives;
+
+       QString const jbib = toqstr(rc.jbibtex_command);
+       ind = jbib.indexOf(" ");
+       sel_command = jbib.left(ind);
+       sel_options = ind < 0 ? QString() : jbib.mid(ind + 1);
+
+       pos = latexJBibtexCO->findData(sel_command);
+       if (pos != -1) {
+               latexJBibtexCO->setCurrentIndex(pos);
+               latexJBibtexED->setText(sel_options.trimmed());
+               latexJBibtexOptionsLA->setText(qt_("Opt&ions:"));
+       } else {
+               latexJBibtexED->setText(toqstr(rc.bibtex_command));
+               latexJBibtexCO->setCurrentIndex(0);
+               latexJBibtexOptionsLA->setText(qt_("Co&mmand:"));
        }
 
        latexIndexCO->clear();
@@ -932,7 +998,6 @@ void PrefLatex::updateRC(LyXRC const & rc)
                latexEncodingED->setText(toqstr(rc.fontenc));
        }
        latexChecktexED->setText(toqstr(rc.chktex_command));
-       latexJBibtexED->setText(toqstr(rc.jbibtex_command));
        latexJIndexED->setText(toqstr(rc.jindex_command));
        latexNomenclED->setText(toqstr(rc.nomencl_command));
        latexAutoresetCB->setChecked(rc.auto_reset_options);
diff --git a/src/frontends/qt4/GuiPrefs.h b/src/frontends/qt4/GuiPrefs.h
index 612ffe6..ca93781 100644
--- a/src/frontends/qt4/GuiPrefs.h
+++ b/src/frontends/qt4/GuiPrefs.h
@@ -216,12 +216,15 @@ public:
 private Q_SLOTS:
        void on_latexEncodingCB_stateChanged(int state);
        void on_latexBibtexCO_activated(int n);
+       void on_latexJBibtexCO_activated(int n);
        void on_latexIndexCO_activated(int n);
 
 private:
        ///
        std::set<std::string> bibtex_alternatives;
        ///
+       std::set<std::string> jbibtex_alternatives;
+       ///
        std::set<std::string> index_alternatives;
 };
 
diff --git a/src/frontends/qt4/ui/PrefLatexUi.ui 
b/src/frontends/qt4/ui/PrefLatexUi.ui
index 9c48a2c..71d4731 100644
--- a/src/frontends/qt4/ui/PrefLatexUi.ui
+++ b/src/frontends/qt4/ui/PrefLatexUi.ui
@@ -1,3 +1,4 @@
+<?xml version="1.0" encoding="UTF-8"?>
 <ui version="4.0">
  <class>PrefLatexUi</class>
  <widget class="QWidget" name="PrefLatexUi">
@@ -5,17 +6,26 @@
    <rect>
     <x>0</x>
     <y>0</y>
-    <width>393</width>
-    <height>431</height>
+    <width>425</width>
+    <height>620</height>
    </rect>
   </property>
   <property name="windowTitle">
    <string/>
   </property>
-  <layout class="QGridLayout" name="gridLayout_5">
+  <layout class="QGridLayout" name="gridLayout_8">
    <item row="0" column="0">
     <layout class="QGridLayout" name="gridLayout_4">
-     <property name="margin">
+     <property name="leftMargin">
+      <number>0</number>
+     </property>
+     <property name="topMargin">
+      <number>0</number>
+     </property>
+     <property name="rightMargin">
+      <number>0</number>
+     </property>
+     <property name="bottomMargin">
       <number>0</number>
      </property>
      <item row="0" column="0">
@@ -67,6 +77,19 @@
      </property>
     </spacer>
    </item>
+   <item row="1" column="0">
+    <spacer name="verticalSpacer_2">
+     <property name="orientation">
+      <enum>Qt::Vertical</enum>
+     </property>
+     <property name="sizeHint" stdset="0">
+      <size>
+       <width>20</width>
+       <height>1</height>
+      </size>
+     </property>
+    </spacer>
+   </item>
    <item row="2" column="0" colspan="2">
     <widget class="QGroupBox" name="bibtexGB">
      <property name="title">
@@ -75,41 +98,72 @@
      <property name="flat">
       <bool>true</bool>
      </property>
-     <layout class="QGridLayout" name="gridLayout">
-      <property name="margin">
-       <number>3</number>
-      </property>
-      <item row="0" column="0">
-       <widget class="QLabel" name="latexBibtexLA">
-        <property name="text">
-         <string>&amp;Processor:</string>
-        </property>
-        <property name="buddy">
-         <cstring>latexBibtexCO</cstring>
-        </property>
-       </widget>
+     <layout class="QGridLayout" name="gridLayout_7">
+      <item row="0" column="0" rowspan="2">
+       <layout class="QGridLayout" name="gridLayout">
+        <item row="0" column="0">
+         <widget class="QLabel" name="latexBibtexLA">
+          <property name="text">
+           <string>P&amp;rocessor:</string>
+          </property>
+          <property name="buddy">
+           <cstring>latexBibtexCO</cstring>
+          </property>
+         </widget>
+        </item>
+        <item row="0" column="1">
+         <widget class="QComboBox" name="latexBibtexCO"/>
+        </item>
+        <item row="1" column="0">
+         <widget class="QLabel" name="latexBibtexOptionsLA">
+          <property name="text">
+           <string>Op&amp;tions:</string>
+          </property>
+          <property name="buddy">
+           <cstring>latexBibtexED</cstring>
+          </property>
+         </widget>
+        </item>
+        <item row="1" column="1">
+         <widget class="QLineEdit" name="latexBibtexED">
+          <property name="toolTip">
+           <string>BibTeX command and options</string>
+          </property>
+         </widget>
+        </item>
+        <item row="2" column="0">
+         <widget class="QLabel" name="latexJBibtexLA">
+          <property name="text">
+           <string>Processor for &amp;Japanese:</string>
+          </property>
+          <property name="buddy">
+           <cstring>latexJBibtexCO</cstring>
+          </property>
+         </widget>
+        </item>
+        <item row="2" column="1">
+         <widget class="QComboBox" name="latexJBibtexCO"/>
+        </item>
+        <item row="3" column="0">
+         <widget class="QLabel" name="latexJBibtexOptionsLA">
+          <property name="text">
+           <string>Options:</string>
+          </property>
+          <property name="buddy">
+           <cstring>latexJBibtexED</cstring>
+          </property>
+         </widget>
+        </item>
+        <item row="3" column="1">
+         <widget class="QLineEdit" name="latexJBibtexED">
+          <property name="toolTip">
+           <string>Specific BibTeX command and options for pLaTeX 
(Japanese)</string>
+          </property>
+         </widget>
+        </item>
+       </layout>
       </item>
       <item row="0" column="1">
-       <widget class="QComboBox" name="latexBibtexCO"/>
-      </item>
-      <item row="1" column="0">
-       <widget class="QLabel" name="latexBibtexOptionsLA">
-        <property name="text">
-         <string>&amp;Options:</string>
-        </property>
-        <property name="buddy">
-         <cstring>latexBibtexED</cstring>
-        </property>
-       </widget>
-      </item>
-      <item row="1" column="1">
-       <widget class="QLineEdit" name="latexBibtexED">
-        <property name="toolTip">
-         <string>BibTeX command and options</string>
-        </property>
-       </widget>
-      </item>
-      <item row="1" column="2">
        <spacer name="horizontalSpacer">
         <property name="orientation">
          <enum>Qt::Horizontal</enum>
@@ -122,39 +176,22 @@
         </property>
        </spacer>
       </item>
-      <item row="2" column="0">
-       <widget class="QLabel" name="latexJBibtexLA">
-        <property name="text">
-         <string>Processor for &amp;Japanese:</string>
-        </property>
-        <property name="buddy">
-         <cstring>latexJBibtexED</cstring>
+      <item row="1" column="1">
+       <spacer name="horizontalSpacer_3">
+        <property name="orientation">
+         <enum>Qt::Horizontal</enum>
         </property>
-       </widget>
-      </item>
-      <item row="2" column="1">
-       <widget class="QLineEdit" name="latexJBibtexED">
-        <property name="toolTip">
-         <string>Specific BibTeX command and options for pLaTeX 
(Japanese)</string>
+        <property name="sizeHint" stdset="0">
+         <size>
+          <width>49</width>
+          <height>20</height>
+         </size>
         </property>
-       </widget>
+       </spacer>
       </item>
      </layout>
     </widget>
    </item>
-   <item row="5" column="0">
-    <spacer name="verticalSpacer">
-     <property name="orientation">
-      <enum>Qt::Vertical</enum>
-     </property>
-     <property name="sizeHint" stdset="0">
-      <size>
-       <width>20</width>
-       <height>40</height>
-      </size>
-     </property>
-    </spacer>
-   </item>
    <item row="3" column="0" colspan="2">
     <widget class="QGroupBox" name="indexGB">
      <property name="title">
@@ -163,24 +200,59 @@
      <property name="flat">
       <bool>true</bool>
      </property>
-     <layout class="QGridLayout" name="gridLayout_2">
-      <property name="margin">
-       <number>3</number>
-      </property>
+     <layout class="QGridLayout" name="gridLayout_5">
       <item row="0" column="0">
-       <widget class="QLabel" name="latexIndexLA">
-        <property name="text">
-         <string>Pr&amp;ocessor:</string>
-        </property>
-        <property name="buddy">
-         <cstring>latexIndexCO</cstring>
-        </property>
-       </widget>
+       <layout class="QGridLayout" name="gridLayout_2">
+        <item row="0" column="0">
+         <widget class="QLabel" name="latexIndexLA">
+          <property name="text">
+           <string>&amp;Processor:</string>
+          </property>
+          <property name="buddy">
+           <cstring>latexIndexCO</cstring>
+          </property>
+         </widget>
+        </item>
+        <item row="0" column="1">
+         <widget class="QComboBox" name="latexIndexCO"/>
+        </item>
+        <item row="1" column="0">
+         <widget class="QLabel" name="latexIndexOptionsLA">
+          <property name="text">
+           <string>Op&amp;tions:</string>
+          </property>
+          <property name="buddy">
+           <cstring>latexIndexED</cstring>
+          </property>
+         </widget>
+        </item>
+        <item row="1" column="1">
+         <widget class="QLineEdit" name="latexIndexED">
+          <property name="toolTip">
+           <string>Index command and options (makeindex, xindy)</string>
+          </property>
+         </widget>
+        </item>
+        <item row="2" column="0">
+         <widget class="QLabel" name="latexJIndexLA">
+          <property name="text">
+           <string>Processor for &amp;Japanese:</string>
+          </property>
+          <property name="buddy">
+           <cstring>latexJIndexED</cstring>
+          </property>
+         </widget>
+        </item>
+        <item row="2" column="1">
+         <widget class="QLineEdit" name="latexJIndexED">
+          <property name="toolTip">
+           <string>Specific index command and options for pLaTeX 
(Japanese)</string>
+          </property>
+         </widget>
+        </item>
+       </layout>
       </item>
       <item row="0" column="1">
-       <widget class="QComboBox" name="latexIndexCO"/>
-      </item>
-      <item row="0" column="2" rowspan="2">
        <spacer name="horizontalSpacer_2">
         <property name="orientation">
          <enum>Qt::Horizontal</enum>
@@ -193,40 +265,6 @@
         </property>
        </spacer>
       </item>
-      <item row="1" column="0">
-       <widget class="QLabel" name="latexIndexOptionsLA">
-        <property name="text">
-         <string>Op&amp;tions:</string>
-        </property>
-        <property name="buddy">
-         <cstring>latexIndexED</cstring>
-        </property>
-       </widget>
-      </item>
-      <item row="1" column="1">
-       <widget class="QLineEdit" name="latexIndexED">
-        <property name="toolTip">
-         <string>Index command and options (makeindex, xindy)</string>
-        </property>
-       </widget>
-      </item>
-      <item row="2" column="0">
-       <widget class="QLabel" name="latexJIndexLA">
-        <property name="text">
-         <string>Processor for &amp;Japanese:</string>
-        </property>
-        <property name="buddy">
-         <cstring>latexJIndexED</cstring>
-        </property>
-       </widget>
-      </item>
-      <item row="2" column="1">
-       <widget class="QLineEdit" name="latexJIndexED">
-        <property name="toolTip">
-         <string>Specific index command and options for pLaTeX 
(Japanese)</string>
-        </property>
-       </widget>
-      </item>
      </layout>
     </widget>
    </item>
@@ -238,45 +276,46 @@
      <property name="flat">
       <bool>true</bool>
      </property>
-     <layout class="QGridLayout" name="gridLayout_3">
-      <property name="margin">
-       <number>3</number>
-      </property>
+     <layout class="QGridLayout" name="gridLayout_6">
       <item row="0" column="0">
-       <widget class="QLabel" name="latexNomenclLA">
-        <property name="text">
-         <string>&amp;Nomenclature command:</string>
-        </property>
-        <property name="buddy">
-         <cstring>latexNomenclED</cstring>
-        </property>
-       </widget>
-      </item>
-      <item row="0" column="1">
-       <widget class="QLineEdit" name="latexNomenclED">
-        <property name="toolTip">
-         <string>Command and options for nomencl (usually makeindex)</string>
-        </property>
-       </widget>
+       <layout class="QGridLayout" name="gridLayout_3">
+        <item row="0" column="1">
+         <widget class="QLineEdit" name="latexNomenclED">
+          <property name="toolTip">
+           <string>Command and options for nomencl (usually makeindex)</string>
+          </property>
+         </widget>
+        </item>
+        <item row="1" column="1">
+         <widget class="QLineEdit" name="latexChecktexED">
+          <property name="toolTip">
+           <string>CheckTeX start options and flags</string>
+          </property>
+         </widget>
+        </item>
+        <item row="1" column="0">
+         <widget class="QLabel" name="latexChecktexLA">
+          <property name="text">
+           <string>&amp;CheckTeX command:</string>
+          </property>
+          <property name="buddy">
+           <cstring>latexChecktexED</cstring>
+          </property>
+         </widget>
+        </item>
+        <item row="0" column="0">
+         <widget class="QLabel" name="latexNomenclLA">
+          <property name="text">
+           <string>&amp;Nomenclature command:</string>
+          </property>
+          <property name="buddy">
+           <cstring>latexNomenclED</cstring>
+          </property>
+         </widget>
+        </item>
+       </layout>
       </item>
       <item row="1" column="0">
-       <widget class="QLabel" name="latexChecktexLA">
-        <property name="text">
-         <string>Chec&amp;kTeX command:</string>
-        </property>
-        <property name="buddy">
-         <cstring>latexChecktexED</cstring>
-        </property>
-       </widget>
-      </item>
-      <item row="1" column="1">
-       <widget class="QLineEdit" name="latexChecktexED">
-        <property name="toolTip">
-         <string>CheckTeX start options and flags</string>
-        </property>
-       </widget>
-      </item>
-      <item row="2" column="0" colspan="2">
        <widget class="QCheckBox" name="pathCB">
         <property name="enabled">
          <bool>true</bool>
@@ -292,7 +331,7 @@
         </property>
        </widget>
       </item>
-      <item row="3" column="0" colspan="3">
+      <item row="2" column="0">
        <widget class="QCheckBox" name="latexAutoresetCB">
         <property name="toolTip">
          <string>Set class options to default on class change</string>
@@ -305,8 +344,8 @@
      </layout>
     </widget>
    </item>
-   <item row="1" column="0" colspan="2">
-    <spacer name="verticalSpacer_2">
+   <item row="5" column="0">
+    <spacer name="verticalSpacer">
      <property name="orientation">
       <enum>Qt::Vertical</enum>
      </property>

Reply via email to