15 #include <QtWidgets/QWidget>
16 #include <QtWidgets/QScrollArea>
18 #include <QtGui/QIcon>
71 virtual QIcon icon() = 0;
78 virtual QString title() = 0;
81 virtual const std::string& pageClassName()
const = 0;
84 virtual PageAction pageAction();
87 virtual void setPageAction(PageAction action);
90 virtual void setActionFlag(
int flag);
93 virtual int actionFlag();
96 virtual void setParentDialog(
QWidget* paraentDialog);
99 virtual QWidget* parentDialog();
102 virtual void activate() = 0;
105 virtual void deactivate() = 0;
109 virtual bool shouldAskBeforeAction(PageAction action);
114 virtual void askBeforeAction();
118 virtual void executeAfterAsk(
bool revert);
121 virtual void resumeLastAction();
124 virtual void onCloseEvent();
127 virtual void onSwitchEvent();
131 virtual QWidget* wrapPageWithScrollArea(
QWidget* scrollableWidget,
132 bool isHorizontalScrollingEnabled =
false,
bool isVerticalScrollingEnabled =
true);
136 bool isHorizontalScrollingEnabled =
false,
bool isVerticalScrollingEnabled =
true);
164 virtual std::string pageClassName()
const = 0;
167 virtual DtPage* create(
QWidget* parent = 0, Qt::WindowFlags f = 0) = 0;
180 template <
typename PageClass>
200 return PageClass::thePageClassName();
206 return new PageClass(
myDe, parent, f);