You.i Engine
YiAutoLinearLayout.h
Go to the documentation of this file.
1 // © You i Labs Inc. 2000-2017. All rights reserved.
2 #ifndef _YI_AUTO_LINEAR_LAYOUT_H_
3 #define _YI_AUTO_LINEAR_LAYOUT_H_
4 
6 
78 {
79 public:
83  enum CONDITION
84  {
88  };
89 
91  virtual ~CYIAutoLinearLayout();
92 
96  void SetCondition(CONDITION eCondition);
97  CONDITION GetCondition() const;
98 
103  void SetFlipGravityOnConditionChange(bool bFlipGravity);
105 
111  void SetUseInvertedCondition(bool bUseInvertedCondition);
112  bool IsUsingInvertedCondition() const;
113 
114 protected:
115  virtual void Configure() override;
116  virtual void OnSceneViewAttached() override;
117 
118  virtual void OnMeasure(const CYISceneNode::MeasureSpec &widthSpec, const CYISceneNode::MeasureSpec &heightSpec, const CYISceneNode::MeasureSpec &depthSpec) override;
119 
123 
124 private:
125  void OnSurfaceSizeChanged();
126  ORIENTATION m_eLastOrientation;
127 
129 };
130 
133 #endif // _YI_AUTO_LINEAR_LAYOUT_H_
A linear layout that switches between horizontal and vertical orientations based on a configurable co...
Definition: YiAutoLinearLayout.h:77
void SetUseInvertedCondition(bool bUseInvertedCondition)
Definition: YiSceneNode.h:356
A layout that positions all of its children in a row, a column, or a 'shaft'.
Definition: YiLinearLayout.h:90
ORIENTATION
Definition: YiLinearLayout.h:93
CONDITION GetCondition() const
bool m_bFlipGravityOnConditionChange
Definition: YiAutoLinearLayout.h:121
#define YI_TYPE_BASES(...)
Definition: YiRtti.h:350
bool IsFlippingGravityOnConditionChange() const
virtual void OnSceneViewAttached() override
CONDITION m_eCondition
Definition: YiAutoLinearLayout.h:120
virtual ~CYIAutoLinearLayout()
bool m_bInvertCondition
Definition: YiAutoLinearLayout.h:122
Use the user-specified orientation value.
Definition: YiAutoLinearLayout.h:87
bool IsUsingInvertedCondition() const
CONDITION
Definition: YiAutoLinearLayout.h:83
Definition: YiSignalHandler.h:174
Use the current surface's dimensions to determine the orientation.
Definition: YiAutoLinearLayout.h:85
void SetCondition(CONDITION eCondition)
void SetFlipGravityOnConditionChange(bool bFlipGravity)
virtual void Configure() override
virtual void OnMeasure(const CYISceneNode::MeasureSpec &widthSpec, const CYISceneNode::MeasureSpec &heightSpec, const CYISceneNode::MeasureSpec &depthSpec) override
Use the measure specs received by the layout to determine the orientation.
Definition: YiAutoLinearLayout.h:86