X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Flyxtextclasslist.C;h=99c2d94a3acf32b2ae8af998a49ff46cdc9270b0;hb=65ca7003ba47b7348610393a9a0d2d309b4e9702;hp=8fb1c1098348506c91eda421769f247556241829;hpb=91de22ef340abbf1e9ba7d422bcd9024fa90d63f;p=lyx.git diff --git a/src/lyxtextclasslist.C b/src/lyxtextclasslist.C index 8fb1c10983..99c2d94a3a 100644 --- a/src/lyxtextclasslist.C +++ b/src/lyxtextclasslist.C @@ -16,22 +16,28 @@ #include "debug.h" #include "lyxlex.h" -#include "support/lyxfunctional.h" #include "support/filetools.h" +#include -using namespace lyx::support; +using lyx::textclass_type; + +using lyx::support::LibFileSearch; +using lyx::support::MakeDisplayPath; + +using boost::bind; #ifndef CXX_GLOBAL_CSTD using std::exit; #endif -using lyx::textclass_type; -using std::pair; -using std::make_pair; using std::endl; +using std::equal_to; using std::find_if; +using std::make_pair; using std::sort; +using std::string; +using std::pair; // Gets textclass number from name @@ -40,7 +46,10 @@ LyXTextClassList::NumberOfClass(string const & textclass) const { ClassList::const_iterator cit = find_if(classlist_.begin(), classlist_.end(), - lyx::compare_memfun(&LyXTextClass::name, textclass)); + bind(equal_to(), + bind(&LyXTextClass::name, _1), + textclass)); + return cit != classlist_.end() ? make_pair(true, textclass_type(cit - classlist_.begin())) : make_pair(false, textclass_type(0)); @@ -60,16 +69,20 @@ LyXTextClassList::operator[](textclass_type textclass) const // used when sorting the textclass list. -class less_textclass_avail_desc { +class less_textclass_avail_desc + : public std::binary_function +{ public: - int operator()(LyXTextClass const & tc1, LyXTextClass const & tc2) { + int operator()(LyXTextClass const & tc1, + LyXTextClass const & tc2) const + { // Ordering criteria: // 1. Availability of text class // 2. Description (lexicographic) return (tc1.isTeXClassAvailable() && !tc2.isTeXClassAvailable()) || - (tc1.isTeXClassAvailable() == tc2.isTeXClassAvailable() && - tc1.description() < tc2.description()); + (tc1.isTeXClassAvailable() == tc2.isTeXClassAvailable() && + tc1.description() < tc2.description()); } };