Etterna 0.74.4
Loading...
Searching...
No Matches
DialogDriver.h
1#ifndef DIALOG_BOX_DRIVER_H
2#define DIALOG_BOX_DRIVER_H
3
4#include "Dialog.h"
5#include "RageUtil/Utils/RageUtil.h"
6
8{
9 public:
10 static DialogDriver* Create();
11
12 virtual void Error(const std::string& sMessage, const std::string& sID)
13 {
14 printf("Error: %s\n", sMessage.c_str());
15 }
16 virtual void OK(const std::string& sMessage, const std::string& sID) {}
17 virtual Dialog::Result OKCancel(const std::string& sMessage,
18 const std::string& sID)
19 {
20 return Dialog::ok;
21 }
22 virtual Dialog::Result AbortRetryIgnore(const std::string& sMessage,
23 const std::string& sID)
24 {
25 return Dialog::ignore;
26 }
27 virtual Dialog::Result AbortRetry(const std::string& sMessage,
28 const std::string& sID)
29 {
30 return Dialog::abort;
31 }
32 virtual Dialog::Result YesNo(const std::string& sMessage,
33 const std::string& sID)
34 {
35 return Dialog::no;
36 }
37
38 virtual std::string Init() { return std::string(); }
39 virtual ~DialogDriver() {}
40};
42{
43};
44#define USE_DIALOG_DRIVER_NULL
45
46typedef DialogDriver* (*CreateDialogDriverFn)();
48{
49 static std::map<istring, CreateDialogDriverFn>* g_pRegistrees;
50 RegisterDialogDriver(const istring& sName, CreateDialogDriverFn pfn);
51};
52#define REGISTER_DIALOG_DRIVER_CLASS(name) \
53 static RegisterDialogDriver register_##name( \
54 #name, CreateClass<DialogDriver_##name, DialogDriver>)
55
56#endif
Definition DialogDriver.h:42
Definition DialogDriver.h:8
Definition DialogDriver.h:48