// -*- mode: c++; c-basic-offset: 2; -*- #include "common.hh" #include "gui_plainattrtext.hh" namespace { class PlainAttributedTextImpl : public PlainAttributedText { public: void append(const char* str, size_t len, Attribute const&, size_t start, size_t length) override { if (!str || start >= len) return; length = std::min(len - start, length); if (length == 0) return; text_.append(str + start, length); } void add(Attribute const&, size_t, size_t) override { } void set(Attribute const&, size_t, size_t) override { } void clear(size_t, size_t) override { } std::string text() const override { return text_; } void reset() override { text_.clear(); } private: std::string text_; }; } // namespace // static PlainAttributedText* PlainAttributedText::create() { return new PlainAttributedTextImpl(); }