64 CRatioLayout(
bool isHorizental =
true, DWORD parsent = 50) : m_isWideMode(isHorizental), m_center(parsent)
75 m_isWideMode = isHorizental;
90 m_param[isFirst ? 0 : 1] =
TParam(hloc, vloc, layout);
124 if ( m_param[i].pLayout->GetMinimumSize(sz) )
129 _size.cy = max(_size.cy, sz.cy);
139 _size.cx = max(_size.cx, sz.cx);
160 virtual void Decide(
int x,
int y, WPARAM wParam, LPARAM lParam)
173 areaSize.cx -= sz.cx;
174 areaSize.cy -= sz.cy;
176 POINT pos[2] = { 0 };
183 size[0].cx *= m_center;
185 size[1].cx -= size[0].cx;
191 size[0].cy *= m_center;
193 size[1].cy -= size[0].cy;
207 bool m_IsValid(
void)
const
#define loop(VAR, CNT)
loop構文.
void AddMargnSize(SIZE &_size) const
[加算] マージンサイズ加算.
void HorizontalItemDecide(ILayout *pLayout, INT_PTR x, INT_PTR xx, INT_PTR width, ELocation loc, WPARAM wParam, LPARAM lParam)
[設定] 水平方向アイテム決定.
SIZE m_gapSize
各アイテム間のギャップ(縦、横)
SIZE m_layoutSize
レイアウト全体サイズ(縦、横)
void VerticalItemDecide(ILayout *pLayout, INT_PTR y, INT_PTR yy, INT_PTR height, ELocation loc, WPARAM wParam, LPARAM lParam)
[設定] 垂直方向アイテム決定.
void AddChinkSize(SIZE &_size, size_t cx, size_t cy) const
[加算] 隙間サイズ加算.
virtual bool GetMinimumSize(SIZE &_size) const
[取得] 最小サイズ取得.
virtual ILayout * Clone(void) const
[作成] クローン作成.
virtual void Decide(int x, int y, WPARAM wParam, LPARAM lParam)
[処理] 決定.
CRatioLayout(bool isHorizental=true, DWORD parsent=50)
コンストラクタ
CRatioLayout & Add(bool isFirst, const ILayout &layout, ELocation hloc=DEFAULT, ELocation vloc=DEFAULT)
[設定] アイテム追加.
void SetParameter(bool isHorizental=true, DWORD parsent=50)
[設定] パラメータ設定.
ELocation horizontalLocate
アイテムの水平配置種
ELocation verticalLocate
アイテムの垂直配置種
ILayout::Ptr pLayout
レイアウトアイテム