25 #include "common/stream.h" 26 #include "common/array.h" 27 #include "common/error.h" 28 #include "common/rect.h" 29 #include "common/serializer.h" 31 #include "dgds/dgds_rect.h" 49 kDlgFlagHiFinished = 0x10000,
50 kDlgFlagHi2 = 0x20000,
51 kDlgFlagHi4 = 0x40000,
52 kDlgFlagRedrawSelectedActionChanged = 0x80000,
53 kDlgFlagHi10 = 0x100000,
54 kDlgFlagHi20 = 0x200000,
55 kDlgFlagHi40 = 0x400000,
56 kDlgFlagVisible = 0x800000,
57 kDlgFlagOpening = 0x1000000,
60 enum DialogFrameType {
67 enum DialogDrawStage {
68 kDlgDrawStageForeground = 0,
69 kDlgDrawStageBackground = 1,
70 kDlgDrawFindSelectionPointXY = 2,
71 kDlgDrawFindSelectionTxtOffset = 3,
86 DialogState() : _hideTime(0), _lastMouseX(0), _lastMouseY(0), _charWidth(0),
87 _charHeight(0), _strMouseLoc(0), _selectedAction(
nullptr) {}
109 uint16 _selectionBgCol;
110 uint16 _selectonFontCol;
113 DialogFrameType _frameType;
115 uint16 _nextDialogFileNum;
116 uint16 _nextDialogDlgNum;
125 void setFlag(DialogFlags flg);
126 void clearFlag(DialogFlags flg);
127 void flipFlag(DialogFlags flg);
128 bool hasFlag(DialogFlags flg)
const;
129 void updateSelectedAction(
int delta);
130 struct DialogAction *pickAction(
bool isClosing,
bool isForceClose);
136 void fixupStringAndActions();
148 void drawFindSelectionXY();
149 void drawFindSelectionTxtOffset();
152 const DgdsFont *getDlgTextFont()
const;
154 static int _lastSelectedDialogItemNum;
155 static Dialog *_lastDialogSelectionChangedFor;
162 #endif // DGDS_DIALOG_H Definition: managed_surface.h:51
Common::Array< SceneOp > sceneOpList
End of clickable text for this action.
Definition: dialog.h:79
uint16 strEnd
The start of the clickable text for this action.
Definition: dialog.h:77
Definition: serializer.h:79
Definition: dgds_rect.h:32
Definition: formatinfo.h:28