UNIVERS  15.3
UNIVERS base processing software API
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
zqb_pixgroup.hpp
1 /* zqb_pixgroup.hpp */
2 /* $Id: zqb_pixgroup.hpp 20080 2009-12-15 15:57:52Z vlad $ */
3 #ifndef __zqb_pixgroup_hpp
4 #define __zqb_pixgroup_hpp
5 
6 #include "zqb_pixgrpmember.hpp"
7 #include "zqb_autoname.hpp"
8 
9 
34 class ZqbPixGroup : public ZqbPixGrpControl,
35  virtual public ZqbAutoName
36 {
37 public:
38 
41  ZqbPixGroup (const char* szGrpName = NULL);
42 
44  virtual ~ZqbPixGroup ();
45 
46 
49  void updateHint ();
50 
51 
52  /*
53  * Group geometry management operations
54  */
55 
57  virtual int getSize () const;
58 
60  virtual int getCoord () const;
61 
63  virtual void getCoords (int c[2]) const;
64 
65 
68  virtual bool setCoords (int c[2]);
69 
72  virtual bool setCoord (int c);
73 
76  virtual bool setSize (int d);
77 
80  virtual ZqbSizeHint getHint () const;
81 
85  virtual int getHintLimit () const;
86 
87 
88  /*
89  * Placement support operations
90  */
91 
94  virtual bool isPlaced () const;
95 
97  virtual void setPlaced (bool bFlag);
98 
99 
101  const char* getParentGroup () const;
102 
104  void setParentGroup (const char* szParentGrpName);
105 
108  float getWeight () const;
109 
112  void setWeight (float fWeight);
113 
114 
115  /*
116  * Group membership operations
117  */
118 
121  void addMember (ZqbPixGrpMember* pMember);
122 
125  void removeMember (ZqbPixGrpMember* pMember);
126 
127 
128  /*
129  * Geometry parameters for children of this group (if any).
130  *
131  * These properties are used only in placement algorithm only.
132  */
133 
135  void setSpace (int iSpace);
136 
138  int getSpace () const;
139 
140 
143  void setMargin (int iMargin);
144 
147  int getMargin () const;
148 
149 
150 protected:/* data */
151 
153  int m_iCoords[2];
154 
156  ZqbSizeHint m_eGrpHint;
157 
159  int m_iGrpHintLimit;
160 
162  ZqbPixGrpMembers m_Members;
163 
167  bool m_bPlaced;
168 
170  char *m_szParentGrpName;
171 
173  float m_fWeightFactor;
174 
176  int m_iNestedSpace;
177 
179  int m_iNestedMargin;
180 
181 private:
182 
184  static int m_iNameCounter;
185 
186 };
187 
188 
189 #endif /* zqb_pixgroup.hpp */
int m_iNestedSpace
Definition: zqb_pixgroup.hpp:176
virtual int getSize() const
void addMember(ZqbPixGrpMember *pMember)
virtual bool setCoords(int c[2])
virtual bool isPlaced() const
virtual ~ZqbPixGroup()
virtual void getCoords(int c[2]) const
bool m_bPlaced
Definition: zqb_pixgroup.hpp:167
virtual bool setSize(int d)
void updateHint()
int getSpace() const
int m_iCoords[2]
Definition: zqb_pixgroup.hpp:153
virtual int getHintLimit() const
ZqbSizeHint m_eGrpHint
Definition: zqb_pixgroup.hpp:156
Definition: zqb_autoname.hpp:18
char * m_szParentGrpName
Definition: zqb_pixgroup.hpp:170
Definition: zqb_pixgrpmember.hpp:24
void setWeight(float fWeight)
Definition: zqb_pixgrpcontrol.hpp:29
ZqbPixGrpMembers m_Members
Definition: zqb_pixgroup.hpp:162
virtual void setPlaced(bool bFlag)
virtual int getCoord() const
virtual ZqbSizeHint getHint() const
void removeMember(ZqbPixGrpMember *pMember)
int m_iGrpHintLimit
Definition: zqb_pixgroup.hpp:159
int getMargin() const
void setParentGroup(const char *szParentGrpName)
float getWeight() const
virtual bool setCoord(int c)
void setMargin(int iMargin)
void setSpace(int iSpace)
float m_fWeightFactor
Definition: zqb_pixgroup.hpp:173
Definition: zqb_pixgroup.hpp:34
ZqbPixGroup(const char *szGrpName=NULL)
int m_iNestedMargin
Definition: zqb_pixgroup.hpp:179
const char * getParentGroup() const