00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024 #include "falagard/CEGUIFalLayerSpecification.h"
00025 #include <iostream>
00026
00027
00028 namespace CEGUI
00029 {
00030 LayerSpecification::LayerSpecification(uint priority) :
00031 d_layerPriority(priority)
00032 {}
00033
00034 void LayerSpecification::render(Window& srcWindow, float base_z, const ColourRect* modcols, const Rect* clipper, bool clipToDisplay) const
00035 {
00036
00037 for(SectionList::const_iterator curr = d_sections.begin(); curr != d_sections.end(); ++curr)
00038 {
00039 (*curr).render(srcWindow, base_z, modcols, clipper, clipToDisplay);
00040 }
00041 }
00042
00043 void LayerSpecification::render(Window& srcWindow, const Rect& baseRect, float base_z, const ColourRect* modcols, const Rect* clipper, bool clipToDisplay) const
00044 {
00045
00046 for(SectionList::const_iterator curr = d_sections.begin(); curr != d_sections.end(); ++curr)
00047 {
00048 (*curr).render(srcWindow, baseRect, base_z, modcols, clipper, clipToDisplay);
00049 }
00050 }
00051
00052 void LayerSpecification::addSectionSpecification(const SectionSpecification& section)
00053 {
00054 d_sections.push_back(section);
00055 }
00056
00057 void LayerSpecification::clearSectionSpecifications()
00058 {
00059 d_sections.clear();
00060 }
00061
00062 uint LayerSpecification::getLayerPriority() const
00063 {
00064 return d_layerPriority;
00065 }
00066
00067 bool LayerSpecification::operator<(const LayerSpecification& other) const
00068 {
00069 return d_layerPriority < other.d_layerPriority;
00070 }
00071
00072 void LayerSpecification::writeXMLToStream(OutStream& out_stream) const
00073 {
00074 out_stream << "<Layer";
00075
00076 if (d_layerPriority != 0)
00077 out_stream << " priority=\"" << d_layerPriority << "\"";
00078
00079 out_stream << ">" << std::endl;
00080
00081
00082 for(SectionList::const_iterator curr = d_sections.begin(); curr != d_sections.end(); ++curr)
00083 {
00084 (*curr).writeXMLToStream(out_stream);
00085 }
00086
00087 out_stream << "</Layer>" << std::endl;
00088 }
00089
00090 }