27 #ifndef _CEGUIFalagard_xmlHandler_h_
28 #define _CEGUIFalagard_xmlHandler_h_
30 #include "../ChainedXMLHandler.h"
31 #include "./Dimensions.h"
32 #include "../Window.h"
36 # pragma warning(push)
37 # pragma warning(disable : 4251)
44 class WidgetLookManager;
46 class WidgetComponent;
49 class LayerSpecification;
50 class SectionSpecification;
51 class ImageryComponent;
57 class PropertyDefinitionBase;
58 class EventLinkDefinition;
64 class CEGUIEXPORT Falagard_xmlHandler :
public ChainedXMLHandler
71 Falagard_xmlHandler(WidgetLookManager* mgr);
77 ~Falagard_xmlHandler();
80 static const String NativeVersion;
83 static const String PropertyDefinitionHelpDefaultValue;
86 static const String PropertyLinkDefinitionHelpDefaultValue;
89 static const String GenericDataType;
93 static const String ParentIdentifier;
99 static const String FalagardElement;
100 static const String WidgetLookElement;
101 static const String ChildElement;
102 static const String ImagerySectionElement;
103 static const String StateImageryElement;
104 static const String LayerElement;
106 static const String ImageryComponentElement;
107 static const String TextComponentElement;
108 static const String FrameComponentElement;
109 static const String AreaElement;
110 static const String ImageElement;
112 static const String VertFormatElement;
113 static const String HorzFormatElement;
114 static const String VertAlignmentElement;
115 static const String HorzAlignmentElement;
116 static const String PropertyElement;
117 static const String DimElement;
118 static const String UnifiedDimElement;
119 static const String AbsoluteDimElement;
121 static const String ImagePropertyDimElement;
126 static const String ColourPropertyElement;
127 static const String ColourRectPropertyElement;
129 static const String PropertyDefinitionElement;
130 static const String PropertyLinkDefinitionElement;
131 static const String PropertyLinkTargetElement;
133 static const String VertFormatPropertyElement;
134 static const String HorzFormatPropertyElement;
136 static const String ImagePropertyElement;
140 static const String EventLinkDefinitionElement;
141 static const String EventLinkTargetElement;
142 static const String NamedAreaSourceElement;
151 static const String BottomRightAttribute;
155 static const String SectionNameAttribute;
163 static const String WidgetAttribute;
165 static const String FontAttribute;
166 static const String InitialValueAttribute;
167 static const String ClippedAttribute;
170 static const String LayoutOnWriteAttribute;
171 static const String RedrawOnWriteAttribute;
172 static const String TargetPropertyAttribute;
173 static const String ControlPropertyAttribute;
176 static const String ControlValueAttribute;
177 static const String ControlWidgetAttribute;
197 void elementStartLocal(
const String& element,
199 void elementEndLocal(
const String& element);
210 typedef std::map<String, ElementStartHandler, StringFastLessCompare> ElementStartHandlerMap;
212 typedef std::map<String, ElementEndHandler, StringFastLessCompare> ElementEndHandlerMap;
222 void assignAreaDimension(
Dimension& dim);
223 void assignColours(
const ColourRect& colours);
229 void doBaseDimStart(
const BaseDim* dim);
241 void elementWidgetLookStart(
const XMLAttributes& attributes);
253 void elementImagerySectionStart(
const XMLAttributes& attributes);
259 void elementStateImageryStart(
const XMLAttributes& attributes);
277 void elementImageryComponentStart(
const XMLAttributes& attributes);
283 void elementTextComponentStart(
const XMLAttributes& attributes);
289 void elementFrameComponentStart(
const XMLAttributes& attributes);
313 void elementVertFormatStart(
const XMLAttributes& attributes);
319 void elementHorzFormatStart(
const XMLAttributes& attributes);
325 void elementVertAlignmentStart(
const XMLAttributes& attributes);
331 void elementHorzAlignmentStart(
const XMLAttributes& attributes);
349 void elementUnifiedDimStart(
const XMLAttributes& attributes);
355 void elementAbsoluteDimStart(
const XMLAttributes& attributes);
367 void elementImagePropertyDimStart(
const XMLAttributes& attributes);
385 void elementPropertyDimStart(
const XMLAttributes& attributes);
397 void elementColourRectPropertyStart(
const XMLAttributes& attributes);
409 void elementPropertyDefinitionStart(
const XMLAttributes& attributes);
415 void elementPropertyLinkDefinitionStart(
const XMLAttributes& attributes);
421 void elementOperatorDimStart(
const XMLAttributes& attributes);
427 void elementVertFormatPropertyStart(
const XMLAttributes& attributes);
433 void elementHorzFormatPropertyStart(
const XMLAttributes& attributes);
439 void elementAreaPropertyStart(
const XMLAttributes& attributes);
445 void elementImagePropertyStart(
const XMLAttributes& attributes);
451 void elementTextPropertyStart(
const XMLAttributes& attributes);
457 void elementFontPropertyStart(
const XMLAttributes& attributes);
466 void elementPropertyLinkTargetStart(
const XMLAttributes& attributes);
469 void elementAnimationDefinitionStart(
const XMLAttributes& attributes);
472 void elementEventLinkDefinitionStart(
const XMLAttributes& attributes);
475 void elementEventLinkTargetStart(
const XMLAttributes& attributes);
478 void elementNamedAreaSourceStart(
const XMLAttributes& attributes);
480 void elementEventActionStart(
const XMLAttributes& attributes);
486 void elementFalagardEnd();
492 void elementWidgetLookEnd();
498 void elementChildEnd();
504 void elementImagerySectionEnd();
510 void elementStateImageryEnd();
516 void elementLayerEnd();
522 void elementSectionEnd();
528 void elementImageryComponentEnd();
534 void elementTextComponentEnd();
540 void elementFrameComponentEnd();
546 void elementAreaEnd();
552 void elementNamedAreaEnd();
558 void elementAnyDimEnd();
561 void elementPropertyLinkDefinitionEnd();
564 void elementEventLinkDefinitionEnd();
570 void registerElementStartHandler(
const String& element, ElementStartHandler handler);
576 void registerElementEndHandler(
const String& element, ElementEndHandler handler);
579 void processEventLinkTarget(
const String& widget,
const String& event);
590 ElementStartHandlerMap d_startHandlersMap;
591 ElementEndHandlerMap d_endHandlersMap;
608 CEGUI_VECTOR_ALLOC(
BaseDim*)> d_dimStack;
617 #if defined(_MSC_VER)
618 # pragma warning(pop)
621 #endif // end of guard _CEGUIFalagard_xmlHandler_h_