]> git.lyx.org Git - lyx.git/blobdiff - src/frontends/qt4/GuiCitation.cpp
* fix spelling in comments to please John.
[lyx.git] / src / frontends / qt4 / GuiCitation.cpp
index 601b386221106c36f1c97476fc9fc9343bee385e..35f7e913a7fc835638c4e4251d2a52fa78cdb452 100644 (file)
@@ -114,6 +114,8 @@ GuiCitation::GuiCitation(GuiView & lv)
        connect(selectionManager, SIGNAL(okHook()),
                this, SLOT(on_okPB_clicked()));
 
+       setFocusProxy(availableLV);
+
        // FIXME: the sizeHint() for this is _way_ too high
        infoML->setFixedHeight(60);
 }
@@ -229,8 +231,14 @@ void GuiCitation::updateFormatting(CiteStyle currentStyle)
 
        bool const isNocite = currentStyle == NOCITE;
 
-       fulllistCB->setEnabled(natbib_engine && haveSelection && !isNocite);
-       forceuppercaseCB->setEnabled(natbib_engine && haveSelection && !isNocite);
+       bool const isCiteyear =
+               currentStyle == CITEYEAR ||
+               currentStyle == CITEYEARPAR;
+
+       fulllistCB->setEnabled(natbib_engine && haveSelection && !isNocite
+               && !isCiteyear);
+       forceuppercaseCB->setEnabled(natbib_engine && haveSelection
+               && !isNocite && !isCiteyear);
        textBeforeED->setEnabled(!basic_engine && haveSelection && !isNocite);
        textBeforeLA->setEnabled(!basic_engine && haveSelection && !isNocite);
        textAfterED->setEnabled(haveSelection && !isNocite);
@@ -313,7 +321,7 @@ void GuiCitation::fillFields(BiblioInfo const & bi)
        int const oldIndex = fieldsCO->currentIndex();
        fieldsCO->clear();
        QStringList const fields = to_qstring_list(bi.getFields());
-       fieldsCO->insertItem(0, qt_("All Fields"));
+       fieldsCO->insertItem(0, qt_("All fields"));
        fieldsCO->insertItem(1, qt_("Keys"));
        fieldsCO->insertItems(2, fields);
        if (oldIndex != -1 && oldIndex < fieldsCO->count())
@@ -328,7 +336,7 @@ void GuiCitation::fillEntries(BiblioInfo const & bi)
        int const oldIndex = entriesCO->currentIndex();
        entriesCO->clear();
        QStringList const entries = to_qstring_list(bi.getEntries());
-       entriesCO->insertItem(0, qt_("All Entry Types"));
+       entriesCO->insertItem(0, qt_("All entry types"));
        entriesCO->insertItems(1, entries);
        if (oldIndex != -1 && oldIndex < entriesCO->count())
                entriesCO->setCurrentIndex(oldIndex);
@@ -699,8 +707,8 @@ vector<docstring> GuiCitation::searchKeys(BiblioInfo const & bi,
                        data = to_utf8(*it);
                else if (field.empty())
                        data = to_utf8(*it) + ' ' + to_utf8(kvm.allData());
-               else if (kvm.hasField(field))
-                       data = to_utf8(kvm.getValueForField(field));
+               else 
+                       data = to_utf8(kvm[field]);
                
                if (data.empty())
                        continue;
@@ -727,6 +735,7 @@ void GuiCitation::dispatchParams()
 
 BiblioInfo const & GuiCitation::bibInfo() const
 {
+       buffer().checkBibInfoCache();
        return buffer().masterBibInfo();
 }
 
@@ -763,5 +772,5 @@ Dialog * createGuiCitation(GuiView & lv) { return new GuiCitation(lv); }
 } // namespace frontend
 } // namespace lyx
 
-#include "GuiCitation_moc.cpp"
+#include "moc_GuiCitation.cpp"