halflife25-sdk/game_shared/vgui_helpers.cpp
2013-08-30 13:34:05 -07:00

45 lines
1.1 KiB
C++

//========= Copyright © 1996-2002, Valve LLC, All rights reserved. ============
//
// Purpose:
//
// $NoKeywords: $
//=============================================================================
#include "vgui_helpers.h"
using namespace vgui;
void AlignPanel(Panel *pChild, Panel *pParent, int alignment)
{
int w, h, cw, ch;
pParent->getSize(w, h);
pChild->getSize(cw, ch);
int xCenter = (w - cw) / 2;
int yCenter = (h - ch) / 2;
if(alignment == Label::a_west)
pChild->setPos(0, yCenter);
else if(alignment == Label::a_northwest)
pChild->setPos(0,0);
else if(alignment == Label::a_north)
pChild->setPos(xCenter, 0);
else if(alignment == Label::a_northeast)
pChild->setPos(w - cw, 0);
else if(alignment == Label::a_east)
pChild->setPos(w - cw, yCenter);
else if(alignment == Label::a_southeast)
pChild->setPos(w - cw, h - ch);
else if(alignment == Label::a_south)
pChild->setPos(xCenter, h - ch);
else if(alignment == Label::a_southwest)
pChild->setPos(0, h - ch);
else if(alignment == Label::a_center)
pChild->setPos(xCenter, yCenter);
}