summaryrefslogtreecommitdiff
path: root/src/gui_htmlattrtext.hh
blob: 96b0447598764c80c2a63e4117ce524239643734 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
// -*- mode: c++; c-basic-offset: 2; -*-

#ifndef GUI_HTMLATTRTEXT_HH
#define GUI_HTMLATTRTEXT_HH

#include "gui_attrtext.hh"

class HtmlAttributedText : public AttributedText {
public:
  class Listener {
  public:
    virtual ~Listener() {}

    virtual void changed(HtmlAttributedText* text) = 0;

  protected:
    Listener() {}
  };

  static HtmlAttributedText* create();

  virtual std::string html() const = 0;

  virtual void add_listener(Listener* listener) = 0;
  virtual void remove_listener(Listener* listener) = 0;

protected:
  HtmlAttributedText() {}
};

#endif  // GUI_HTMLATTRTEXT_HH