// -*- mode: c++; c-basic-offset: 2; -*- #ifndef GUI_MESSAGE_HH #define GUI_MESSAGE_HH #include #include #include "gui_window.hh" class GuiMessage : public GuiWindow { public: class Listener : public GuiWindow::Listener { public: virtual ~Listener() {} protected: Listener() {} }; enum Type { ERROR, OTHER, }; static GuiMessage* create(Type type, std::string const& title, std::string const& text); virtual void add_listener(Listener* listener) = 0; virtual void remove_listener(Listener* listener) = 0; virtual void show(GuiWindow* parent) = 0; protected: GuiMessage() {} }; #endif // GUI_MESSAGE_HH