47 lines
1.1 KiB
C
47 lines
1.1 KiB
C
|
/*
|
||
|
* FillLayout
|
||
|
*/
|
||
|
|
||
|
#ifndef DUI_FILLLAYOUT_H_INCLUDED
|
||
|
#define DUI_FILLLAYOUT_H_INCLUDED
|
||
|
|
||
|
#pragma once
|
||
|
|
||
|
namespace DirectUI
|
||
|
{
|
||
|
|
||
|
// FillLayout positions
|
||
|
// "Auto (-1)" means stretch to size of parent
|
||
|
// All other layout positions describe a limited type of stretch
|
||
|
// (i.e. "left" means stretch all edges to parent except right edge)
|
||
|
#define FLP_Left 0
|
||
|
#define FLP_Top 1
|
||
|
#define FLP_Right 2
|
||
|
#define FLP_Bottom 3
|
||
|
|
||
|
////////////////////////////////////////////////////////
|
||
|
// FillLayout
|
||
|
|
||
|
class FillLayout : public Layout
|
||
|
{
|
||
|
public:
|
||
|
static HRESULT Create(int dNumParams, int* pParams, OUT Value** ppValue); // For parser
|
||
|
static HRESULT Create(OUT Layout** ppLayout);
|
||
|
|
||
|
// Layout callbacks
|
||
|
virtual void DoLayout(Element* pec, int dWidth, int dHeight);
|
||
|
virtual SIZE UpdateDesiredSize(Element* pec, int dConstW, int dConstH, Surface* psrf);
|
||
|
virtual Element* GetAdjacent(Element* pec, Element* peFrom, int iNavDir, NavReference const* pnr, bool bKeyableOnly);
|
||
|
|
||
|
FillLayout() { };
|
||
|
void Initialize();
|
||
|
virtual ~FillLayout() { };
|
||
|
|
||
|
private:
|
||
|
RECT rcMargin;
|
||
|
};
|
||
|
|
||
|
} // namespace DirectUI
|
||
|
|
||
|
#endif // DUI_FILLLAYOUT_H_INCLUDED
|