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
|
#if defined(Hiro_MessageWindow)
struct MessageWindow {
enum class Buttons : u32 { Ok, OkCancel, YesNo, YesNoCancel };
enum class Response : u32 { Ok, Cancel, Yes, No };
using type = MessageWindow;
MessageWindow(const string& text = "");
auto error(Buttons = Buttons::Ok) -> Response;
auto information(Buttons = Buttons::Ok) -> Response;
auto question(Buttons = Buttons::YesNo) -> Response;
auto setParent(sWindow parent) -> type&;
auto setText(const string& text = "") -> type&;
auto setTitle(const string& title = "") -> type&;
auto warning(Buttons = Buttons::Ok) -> Response;
//private:
struct State {
MessageWindow::Buttons buttons = MessageWindow::Buttons::Ok;
sWindow parent;
string text;
string title;
} state;
};
#endif
|