X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2FBranchList.cpp;h=8967fab12f52ca2c2f4cc7c8335c1fadffef284d;hb=fb12b282f1300123c7f4c7f10525c29cb598e1fe;hp=89884e60a2e11e77332dadd67c92e3906dcf0439;hpb=eea79637c78bb9916031924eca7b305cfb8e83df;p=lyx.git diff --git a/src/BranchList.cpp b/src/BranchList.cpp index 89884e60a2..8967fab12f 100644 --- a/src/BranchList.cpp +++ b/src/BranchList.cpp @@ -11,15 +11,30 @@ #include #include "BranchList.h" +#include "Color.h" #include "frontends/Application.h" #include -using std::string; +using namespace std; namespace lyx { +namespace { +class BranchNamesEqual : public std::unary_function { +public: + BranchNamesEqual(docstring const & name) + : name_(name) {} + bool operator()(Branch const & branch) const + { + return branch.getBranch() == name_; + } +private: + docstring name_; +}; +} + Branch::Branch() : selected_(false) { @@ -68,10 +83,10 @@ void Branch::setColor(RGBColor const & c) } -void Branch::setColor(string const & c) +void Branch::setColor(string const & str) { - if (c.size() == 7 && c[0] == '#') - color_ = RGBColor(c); + if (str.size() == 7 && str[0] == '#') + color_ = rgbFromHexName(str); else // no color set or invalid color - use normal background theApp()->getRgbColor(Color_background, color_); @@ -81,7 +96,7 @@ void Branch::setColor(string const & c) Branch * BranchList::find(docstring const & name) { List::iterator it = - std::find_if(list.begin(), list.end(), BranchNamesEqual(name)); + find_if(list.begin(), list.end(), BranchNamesEqual(name)); return it == list.end() ? 0 : &*it; } @@ -89,7 +104,7 @@ Branch * BranchList::find(docstring const & name) Branch const * BranchList::find(docstring const & name) const { List::const_iterator it = - std::find_if(list.begin(), list.end(), BranchNamesEqual(name)); + find_if(list.begin(), list.end(), BranchNamesEqual(name)); return it == list.end() ? 0 : &*it; } @@ -107,7 +122,7 @@ bool BranchList::add(docstring const & s) name = s.substr(i, j - i); // Is this name already in the list? bool const already = - std::find_if(list.begin(), list.end(), + find_if(list.begin(), list.end(), BranchNamesEqual(name)) != list.end(); if (!already) { added = true;