#ifndef _CLAYOUT_HPP_ #define _CLAYOUT_HPP_ /*** SDL Header Files ***/ #include /*** Custom Header Files ***/ #include "cWindow.hpp" #include "GUIHelpers/GUIUtility.hpp" #include "GUIHelpers/Enums.hpp" /*** DLL Header File ***/ #include "dllExport.h" /*** Custom Header Files ***/ #include "../UtilityEngine/cString.hpp" using UtilityEngine::cString; namespace GUIEngine { class EXPORT_FROM_MYDLL cLayout : public cWindow { public: static const cString sNAME; /*= "layout";*/ static const GUIHelpers::eOrientation sORIENTATION; /*= GUIHelpers::eOrientation::VERTICAL;*/ cLayout( cWindow* parent = nullptr, const signed int id = -1, const GUIHelpers::eOrientation& orientation = sORIENTATION, const GUIHelpers::eAlign& align = sALIGN, const GUIHelpers::eLayout& layout = sLAYOUT, const GUIHelpers::Position& pos = sPOSITION, const GUIHelpers::Size& size = sSIZE, const GUIHelpers::Padding& padding = sPADDING, const cString& name = sNAME ); virtual ~cLayout(); ///Functions void Create( cWindow* parent, const signed int id, const GUIHelpers::eOrientation& orientation = sORIENTATION, const GUIHelpers::eAlign& align = sALIGN, const GUIHelpers::eLayout& layout = sLAYOUT, const GUIHelpers::Position& pos = sPOSITION, const GUIHelpers::Size& size = sSIZE, const GUIHelpers::Padding& padding = sPADDING, const cString& name = sNAME ); virtual void Display(); ///Set void setOrientation( const GUIHelpers::eOrientation& orientation = GUIHelpers::eOrientation::VERTICAL ); ///Get const GUIHelpers::eOrientation& getOrientation() const; virtual const GUIHelpers::eType getType() const; virtual void Resize(); virtual void RebuildLayout( const GUIHelpers::eLayout& layout); /*virtual void RebuildPos();*/ private: /*virtual*/ void AddSize(int x, int y, GUIHelpers::Size& mySize) const; private: GUIHelpers::eOrientation m_orientation; };/// END CLASS DEFINITION cLayout }/// END NAMESPACE DEFINITION GUIEngine #endif/// END IFNDEF _CLAYOUT_HPP_