X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Finsets%2FInsetListingsParams.h;h=c956643cb49ba1c15316f1f4b0914fa90b9e8083;hb=15ae3eb85c5494b4343936108cb3b5b7c53bafe4;hp=dc76ed40ad1db4cd34b24582b50c1aa7bf6a37b7;hpb=985ba3b296d55f8073d9fe9b61dae5e02811be49;p=lyx.git diff --git a/src/insets/InsetListingsParams.h b/src/insets/InsetListingsParams.h index dc76ed40ad..c956643cb4 100644 --- a/src/insets/InsetListingsParams.h +++ b/src/insets/InsetListingsParams.h @@ -12,11 +12,10 @@ #ifndef INSETLISTINGSPARAMS_H #define INSETLISTINGSPARAMS_H -#include -#include -#include "Lexer.h" #include "InsetCollapsable.h" +#include + namespace lyx { class InsetListingsParams { @@ -37,8 +36,10 @@ public: /// valid parameter string std::string params(std::string const & sep=",") const; - /// add key=value to params_ - void addParam(std::string const & key, std::string const & value); + /// add key=value to params_. key_=value will be used if key=value already exists + /// unless replace=true. + void addParam(std::string const & key, std::string const & value, + bool replace = false); /// add a few parameters void addParams(std::string const & par); @@ -82,8 +83,15 @@ private: /// inline or normal listings bool inline_; + /// Do we have a param with the given \c key? + bool hasParam(std::string const & key) const; + /// return the value for the given \c key, if avaible, else empty string + std::string getValue(std::string const & key) const; + /// key-value pairs of the parameters - std::map params_; + // Use a vector of pairs in order to maintain the order of insertion. + typedef std::vector > keyValuePair; + keyValuePair params_; /// collapsable status InsetCollapsable::CollapseStatus status_;