mirror of
https://git.lyx.org/repos/lyx.git
synced 2024-12-22 13:18:28 +00:00
Respect "literal" setting when entering citation via LyX server.
This requires moving the bool that tracks this somewhere that it
is visible from BufferView. It seemed to make sense to put it as
a static member of InsetCitation.
(cherry picked from commit f8e8877f83
)
This commit is contained in:
parent
721cc085a2
commit
04e8526460
@ -2022,6 +2022,8 @@ void BufferView::dispatch(FuncRequest const & cmd, DispatchResult & dr)
|
||||
icp["key"] = from_utf8(arg);
|
||||
if (!opt1.empty())
|
||||
icp["before"] = from_utf8(opt1);
|
||||
icp["literal"] =
|
||||
from_ascii(InsetCitation::last_literal ? "true" : "false");
|
||||
string icstr = InsetCommand::params2string(icp);
|
||||
FuncRequest fr(LFUN_INSET_INSERT, icstr);
|
||||
lyx::dispatch(fr);
|
||||
|
@ -27,6 +27,7 @@
|
||||
#include "TextClass.h"
|
||||
#include "FuncRequest.h"
|
||||
|
||||
#include "insets/InsetCitation.h"
|
||||
#include "insets/InsetCommand.h"
|
||||
|
||||
#include "support/debug.h"
|
||||
@ -92,7 +93,7 @@ static vector<lyx::docstring> to_docstring_vector(QStringList const & qlist)
|
||||
|
||||
GuiCitation::GuiCitation(GuiView & lv)
|
||||
: DialogView(lv, "citation", qt_("Citation")),
|
||||
style_(QString()), literal_(false), params_(insetCode("citation"))
|
||||
style_(QString()), params_(insetCode("citation"))
|
||||
{
|
||||
setupUi(this);
|
||||
|
||||
@ -237,7 +238,7 @@ void GuiCitation::on_restorePB_clicked()
|
||||
|
||||
void GuiCitation::on_literalCB_clicked()
|
||||
{
|
||||
literal_ = literalCB->isChecked();
|
||||
InsetCitation::last_literal = literalCB->isChecked();
|
||||
changed();
|
||||
}
|
||||
|
||||
@ -768,7 +769,7 @@ void GuiCitation::init()
|
||||
// if this is a new citation, we set the literal checkbox
|
||||
// to its last set value.
|
||||
if (cited_keys_.isEmpty())
|
||||
literalCB->setChecked(literal_);
|
||||
literalCB->setChecked(InsetCitation::last_literal);
|
||||
else
|
||||
literalCB->setChecked(params_["literal"] == "true");
|
||||
|
||||
@ -1061,7 +1062,7 @@ void GuiCitation::saveSession(QSettings & settings) const
|
||||
settings.setValue(
|
||||
sessionKey() + "/citestyle", style_);
|
||||
settings.setValue(
|
||||
sessionKey() + "/literal", literal_);
|
||||
sessionKey() + "/literal", InsetCitation::last_literal);
|
||||
}
|
||||
|
||||
|
||||
@ -1073,7 +1074,8 @@ void GuiCitation::restoreSession()
|
||||
casesense_->setChecked(settings.value(sessionKey() + "/casesensitive").toBool());
|
||||
instant_->setChecked(settings.value(sessionKey() + "/autofind", true).toBool());
|
||||
style_ = settings.value(sessionKey() + "/citestyle").toString();
|
||||
literal_ = settings.value(sessionKey() + "/literal", false).toBool();
|
||||
InsetCitation::last_literal =
|
||||
settings.value(sessionKey() + "/literal", false).toBool();
|
||||
updateFilterHint();
|
||||
}
|
||||
|
||||
|
@ -183,9 +183,6 @@ private:
|
||||
|
||||
/// last used citation style
|
||||
QString style_;
|
||||
/// last set value for literal
|
||||
/// this is used only for new citations
|
||||
bool literal_;
|
||||
///
|
||||
GuiSelectionManager * selectionManager;
|
||||
/// available keys.
|
||||
|
@ -62,6 +62,12 @@ InsetCitation::~InsetCitation()
|
||||
}
|
||||
|
||||
|
||||
// May well be over-ridden when session settings are loaded
|
||||
// in GuiCitation. Unfortunately, that will not happen until
|
||||
// such a dialog is created.
|
||||
bool InsetCitation::last_literal = true;
|
||||
|
||||
|
||||
ParamInfo const & InsetCitation::findInfo(string const & /* cmdName */)
|
||||
{
|
||||
// standard cite does only take one argument, but biblatex, jurabib
|
||||
|
@ -88,6 +88,8 @@ public:
|
||||
std::vector<CitationStyle> const & valid_styles) const;
|
||||
///
|
||||
std::map<docstring, docstring> getQualifiedLists(docstring const p) const;
|
||||
///
|
||||
static bool last_literal;
|
||||
|
||||
private:
|
||||
/// tries to make a pretty label and makes a basic one if not
|
||||
|
@ -33,6 +33,9 @@ What's new
|
||||
- Handle properly top/bottom of inset with mac-like cursor movement
|
||||
(bug 10701).
|
||||
|
||||
- Respect the last setting of the 'literal' checkbox when adding citations
|
||||
via the LyX server (e.g., from JabRef).
|
||||
|
||||
- Allow unification of graphic groups inside marked block via context
|
||||
menu.
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user