27 #ifndef _CEGUIFalImagerySection_h_
28 #define _CEGUIFalImagerySection_h_
30 #include "./ImageryComponent.h"
31 #include "./TextComponent.h"
32 #include "./FrameComponent.h"
33 #include "../XMLSerializer.h"
36 # pragma warning(push)
37 # pragma warning(disable : 4251)
47 class CEGUIEXPORT ImagerySection :
48 public AllocatedObject<ImagerySection>
52 typedef std::vector<ImageryComponent* CEGUI_VECTOR_ALLOC(ImageryComponent*)> ImageryComponentPointerList;
54 typedef std::vector<TextComponent* CEGUI_VECTOR_ALLOC(TextComponent*)> TextComponentPointerList;
56 typedef std::vector<FrameComponent* CEGUI_VECTOR_ALLOC(FrameComponent*)> FrameComponentPointerList;
73 ImagerySection(
const String& name);
88 void render(Window& srcWindow,
const CEGUI::ColourRect* modColours = 0,
const Rectf* clipper = 0,
bool clipToDisplay =
false)
const;
106 void render(Window& srcWindow,
const Rectf& baseRect,
const CEGUI::ColourRect* modColours = 0,
const Rectf* clipper = 0,
bool clipToDisplay =
false)
const;
115 void addImageryComponent(
const ImageryComponent& imageryComponent);
126 void removeImageryComponent(
const ImageryComponent& imageryComponent);
135 void clearImageryComponents();
144 void addTextComponent(
const TextComponent& textComponent);
155 void removeTextComponent(
const TextComponent& textComponent);
164 void clearTextComponents();
173 void clearFrameComponents();
182 void addFrameComponent(
const FrameComponent& frameComponent);
193 void removeFrameComponent(
const FrameComponent& frameComponent);
202 const ColourRect& getMasterColours()
const;
214 void setMasterColours(
const ColourRect& cols);
223 const String& getName()
const;
235 void setName(
const String& name);
244 const String& getMasterColoursPropertySource()
const;
256 void setMasterColoursPropertySource(
const String& property);
262 Rectf getBoundingRect(
const Window& wnd)
const;
268 Rectf getBoundingRect(
const Window& wnd,
const Rectf& rect)
const;
281 void writeXMLToStream(XMLSerializer& xml_stream)
const;
284 bool handleFontRenderSizeChange(Window& window,
const Font* font)
const;
295 ImageryComponentPointerList getImageryComponentPointers();
306 TextComponentPointerList getTextComponentPointers();
317 FrameComponentPointerList getFrameComponentPointers();
329 void initMasterColourRect(
const Window& wnd, ColourRect& cr)
const;
332 typedef std::vector<ImageryComponent
333 CEGUI_VECTOR_ALLOC(ImageryComponent)> ImageryList;
334 typedef std::vector<TextComponent
335 CEGUI_VECTOR_ALLOC(TextComponent)> TextList;
336 typedef std::vector<FrameComponent
337 CEGUI_VECTOR_ALLOC(FrameComponent)> FrameList;
342 ImageryList d_images;
344 String d_colourPropertyName;
348 typedef ConstVectorIterator<ImageryList> ImageryComponentIterator;
350 typedef ConstVectorIterator<TextList> TextComponentIterator;
352 typedef ConstVectorIterator<FrameList> FrameComponentIterator;
364 ImageryComponentIterator getImageryComponentIterator()
const;
375 TextComponentIterator getTextComponentIterator()
const;
386 FrameComponentIterator getFrameComponentIterator()
const;
393 #if defined(_MSC_VER)
394 # pragma warning(pop)
397 #endif // end of guard _CEGUIFalImagerySection_h_