40 #ifndef _uirenderable_h
41 #define _uirenderable_h
43 #include "uienumerations.h"
44 #include "UI/vertex.h"
52 class ScreenRenderData;
88 virtual void ProtoSerializeImpl(
XML::Node& SelfRoot)
const;
92 virtual void ProtoDeSerializeImpl(
const XML::Node& SelfRoot);
110 const String& GetName()
const;
116 Screen* GetScreen()
const;
123 virtual void SetVisible(Boolean CanSee) = 0;
126 virtual Boolean GetVisible()
const = 0;
132 virtual Boolean IsVisible()
const = 0;
134 virtual void Show() = 0;
136 virtual void Hide() = 0;
143 virtual void ProtoSerialize(
XML::Node& ParentNode)
const;
146 virtual void ProtoSerializeProperties(
XML::Node& SelfRoot)
const;
150 virtual void ProtoDeSerialize(
const XML::Node& SelfRoot);
153 virtual void ProtoDeSerializeProperties(
const XML::Node& SelfRoot);
158 virtual String GetDerivedSerializableName()
const;
161 static String GetSerializableName();
169 bool _IsDirty()
const;
172 virtual void _MarkDirty() = 0;