22#ifndef MADS_NEBULAR_MAC_DIALOGS_H
23#define MADS_NEBULAR_MAC_DIALOGS_H
25#include "common/array.h"
26#include "common/rect.h"
27#include "common/str-array.h"
31class MacWindowManager;
38class MacResourceProvider;
40class RexNebularEngine;
42enum MacDialogEditCommand {
96 Item *getItem(
int itemNumber);
97 const Item *getItem(
int itemNumber)
const;
99 bool loadDialogResource(uint16 resourceID, uint16 &itemResourceID);
100 bool loadDialogItems(uint16 resourceID);
102 void drawItem(Item &item,
int itemNumber);
103 void drawButton(
const Item &item,
const Common::Rect &bounds,
105 void drawCheckbox(
const Item &item,
const Common::Rect &bounds);
106 void drawRadioButton(
const Item &item,
const Common::Rect &bounds);
107 void drawEditable(Item &item,
const Common::Rect &bounds,
109 void drawList(
const Item &item,
const Common::Rect &bounds,
111 void setFocus(
int itemNumber);
112 void focusNext(
bool backwards);
113 void selectRadio(
int itemNumber);
114 void selectList(Item &item,
int selection);
115 void ensureListSelectionVisible(Item &item);
116 void moveCaret(Item &item,
int position,
bool extend);
117 void deleteSelection(Item &item);
118 void rememberUndo(Item &item);
119 void insertCharacter(Item &item,
char character);
120 void handleKey(
const Common::Event &event,
int &result,
bool &done);
122 void handleMouseUp(
const Common::Point &point,
int &result,
bool &done);
131 bool load(uint16 resourceID);
132 void configureInlineEditable(
const Common::Rect &bounds,
135 void setItemEnabled(
int itemNumber,
bool enabled);
136 void setItemChecked(
int itemNumber,
bool checked);
137 bool isItemChecked(
int itemNumber)
const;
139 void setItemMaxLength(
int itemNumber, uint maxLength);
143 int getListSelection(
int itemNumber)
const;
144 bool hasEditableFocus()
const;
145 bool isEditCommandEnabled(MacDialogEditCommand commandId)
const;
146 bool handleEditCommand(MacDialogEditCommand commandId);
147 int runModal(
int defaultItem,
int cancelItem);
Definition: macwindowmanager.h:149
Definition: managed_surface.h:51
Definition: mac_dialogs.h:50
Definition: mac_resources.h:43
Definition: formatinfo.h:28