22 #ifndef COMMON_VIRTUAL_KEYBOARD_PARSER_H 23 #define COMMON_VIRTUAL_KEYBOARD_PARSER_H 25 #include "common/scummsys.h" 29 #include "common/formats/xmlparser.h" 30 #include "backends/vkeybd/virtual-keyboard.h" 178 class VirtualKeyboardParser :
public XMLParser {
195 kParseCheckResolutions
198 VirtualKeyboardParser(VirtualKeyboard *kbd);
199 void setParseMode(ParseMode m) {
204 CUSTOM_XML_PARSER(VirtualKeyboardParser) {
206 XML_PROP(initial_mode,
true)
207 XML_PROP(v_align, false)
208 XML_PROP(h_align, false)
211 XML_PROP(resolutions, true)
213 XML_PROP(resolution, true)
214 XML_PROP(bitmap, true)
215 XML_PROP(transparent_color, false)
216 XML_PROP(display_font_color, false)
219 XML_PROP(shape, true)
220 XML_PROP(coords, true)
221 XML_PROP(target, true)
228 XML_PROP(code, false)
229 XML_PROP(ascii, false)
230 XML_PROP(modifiers, false)
231 XML_PROP(mode, false)
238 VirtualKeyboard *_keyboard;
241 ParseMode _parseMode;
242 VirtualKeyboard::Mode *_mode;
243 String _initialModeName;
248 virtual
void cleanup();
251 bool parserCallback_keyboard(ParserNode *node);
252 bool parserCallback_mode(ParserNode *node);
253 bool parserCallback_event(ParserNode *node);
254 bool parserCallback_layout(ParserNode *node);
255 bool parserCallback_map(ParserNode *node);
256 bool parserCallback_area(ParserNode *node);
257 virtual
bool closedKeyCallback(ParserNode *node);
260 byte parseFlags(const String &flags);
261 bool parseRect(Rect &rect, const String &coords);
262 bool parsePolygon(Polygon &poly, const String &coords);
263 bool parseRectAsPolygon(Polygon &poly, const String &coords);
268 #endif // #ifdef ENABLE_VKEYBD 270 #endif // #ifndef COMMON_VIRTUAL_KEYBOARD_PARSER_H Definition: algorithm.h:29