123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428 |
- #ifndef __cocos2d_libs__LayoutComponent__
- #define __cocos2d_libs__LayoutComponent__
- #include "2d/CCComponent.h"
- #include "ui/GUIExport.h"
- NS_CC_BEGIN
- namespace ui {
-
- class CC_GUI_DLL LayoutComponent : public Component
- {
- public:
-
- LayoutComponent();
-
- ~LayoutComponent();
- virtual bool init()override;
-
- CREATE_FUNC(LayoutComponent);
-
- static LayoutComponent* bindLayoutComponent(Node* node);
-
- enum class HorizontalEdge
- {
- None,
- Left,
- Right,
- Center
- };
-
- enum class VerticalEdge
- {
- None,
- Bottom,
- Top,
- Center
- };
-
- void setUsingPercentContentSize(bool isUsed);
-
- bool getUsingPercentContentSize()const;
-
- void setPercentContentSize(const Vec2 &percent);
-
- Vec2 getPercentContentSize()const;
-
- const Point& getAnchorPosition()const;
-
- void setAnchorPosition(const Point& point);
-
- const Point& getPosition()const;
-
-
- void setPosition(const Point& position);
-
- bool isPositionPercentXEnabled()const;
-
-
- void setPositionPercentXEnabled(bool isUsed);
-
- float getPositionPercentX()const;
-
- void setPositionPercentX(float percentMargin);
-
- bool isPositionPercentYEnabled()const;
-
- void setPositionPercentYEnabled(bool isUsed);
-
- float getPositionPercentY()const;
-
- void setPositionPercentY(float percentMargin);
-
- HorizontalEdge getHorizontalEdge()const;
-
- void setHorizontalEdge(HorizontalEdge hEage);
-
- VerticalEdge getVerticalEdge()const;
-
- void setVerticalEdge(VerticalEdge vEage);
-
- float getLeftMargin()const;
-
- void setLeftMargin(float margin);
-
- float getRightMargin()const;
-
- void setRightMargin(float margin);
-
- float getTopMargin()const;
-
- void setTopMargin(float margin);
-
- float getBottomMargin()const;
-
- void setBottomMargin(float margin);
-
- const Size& getSize()const;
-
- void setSize(const Size& size);
-
- bool isPercentWidthEnabled()const;
-
- void setPercentWidthEnabled(bool isUsed);
-
- float getSizeWidth()const;
-
- void setSizeWidth(float width);
-
- float getPercentWidth()const;
-
- void setPercentWidth(float percentWidth);
-
- bool isPercentHeightEnabled()const;
-
- void setPercentHeightEnabled(bool isUsed);
-
- float getSizeHeight()const;
-
- void setSizeHeight(float height);
-
- float getPercentHeight()const;
-
- void setPercentHeight(float percentHeight);
-
- bool isStretchWidthEnabled()const;
-
- void setStretchWidthEnabled(bool isUsed);
-
- bool isStretchHeightEnabled()const;
-
- void setStretchHeightEnabled(bool isUsed);
-
-
- void setPercentOnlyEnabled(bool enable);
-
- void setActiveEnabled(bool enable);
-
- void refreshLayout();
- protected:
- Node* getOwnerParent();
- void refreshHorizontalMargin();
- void refreshVerticalMargin();
- protected:
- HorizontalEdge _horizontalEdge;
- VerticalEdge _verticalEdge;
- float _leftMargin;
- float _rightMargin;
- float _bottomMargin;
- float _topMargin;
- bool _usingPositionPercentX;
- float _positionPercentX;
- bool _usingPositionPercentY;
- float _positionPercentY;
- bool _usingStretchWidth;
- bool _usingStretchHeight;
- float _percentWidth;
- bool _usingPercentWidth;
-
- float _percentHeight;
- bool _usingPercentHeight;
- bool _actived;
- bool _isPercentOnly;
- };
- }
- NS_CC_END
- #endif
|