X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2FFuncStatus.C;h=2f0cf8e064bd3792cc37e6bdd91fd2c595f7f247;hb=61133c4b5625993f600ffa7d209c3e2bc28d26f6;hp=9c83203b66e4192a2cc9fd5952ac5890478d3f99;hpb=0be0fcfd5907d448cd51addf83ed7032719a0692;p=lyx.git diff --git a/src/FuncStatus.C b/src/FuncStatus.C index 9c83203b66..2f0cf8e064 100644 --- a/src/FuncStatus.C +++ b/src/FuncStatus.C @@ -12,64 +12,81 @@ #include "FuncStatus.h" +using std::string; + FuncStatus::FuncStatus() : v_(OK) { } -FuncStatus & FuncStatus::clear () +void FuncStatus::clear() { v_ = OK; - return *this; + message_.erase(); } -void FuncStatus::operator |= (FuncStatus const & f) + +void FuncStatus::operator|=(FuncStatus const & f) { v_ |= f.v_; + if (!f.message_.empty()) + message_ = f.message_; } -FuncStatus & FuncStatus::unknown (bool b) + +void FuncStatus::unknown(bool b) { if (b) v_ |= UNKNOWN; else v_ &= !UNKNOWN; - return *this; } -bool FuncStatus::unknown () const + +bool FuncStatus::unknown() const { return (v_ & UNKNOWN); } -FuncStatus & FuncStatus::disabled (bool b) +void FuncStatus::enabled(bool b) { if (b) - v_ |= DISABLED; - else v_ &= !DISABLED; - return *this; + else + v_ |= DISABLED; } -bool FuncStatus::disabled () const +bool FuncStatus::enabled() const { - return (v_ & DISABLED); + return !(v_ & DISABLED); } -void FuncStatus::setOnOff (bool b) +void FuncStatus::setOnOff(bool b) { v_ |= (b ? ON : OFF); } -bool FuncStatus::onoff (bool b) const +bool FuncStatus::onoff(bool b) const { if (b) return (v_ & ON); else return (v_ & OFF); } + + +void FuncStatus::message(string const & m) +{ + message_ = m; +} + + +string const & FuncStatus::message() const +{ + return message_; +}