Пример #1
0
void Dialog_configureDialog(entity me)
{
	entity closebutton;
	float absWidth, absHeight;

	me.frame = spawnBorderImage();
	me.frame.configureBorderImage(me.frame, me.title, me.titleFontSize, me.color, me.backgroundImage, me.borderLines * me.titleHeight);
	me.frame.zoomedOutTitleBarPosition = me.zoomedOutTitleBarPosition;
	me.frame.zoomedOutTitleBar = me.zoomedOutTitleBar;
	me.frame.alpha = me.alpha;
	me.addItem(me, me.frame, '0 0 0', '1 1 0', 1);

	if not(me.titleFontSize)
		me.titleHeight = 0; // no title bar

	absWidth = me.intendedWidth * conwidth;
	absHeight = me.borderLines * me.titleHeight + me.marginTop + me.rows * me.rowHeight + (me.rows - 1) * me.rowSpacing + me.marginBottom;
	me.itemOrigin  = eX * (me.marginLeft / absWidth)
	               + eY * ((me.borderLines * me.titleHeight + me.marginTop) / absHeight);
	me.itemSize    = eX * ((1 - (me.marginLeft + me.marginRight + me.columnSpacing * (me.columns - 1)) / absWidth) / me.columns)
	               + eY * (me.rowHeight / absHeight);
	me.itemSpacing = me.itemSize
	               + eX * (me.columnSpacing / absWidth)
	               + eY * (me.rowSpacing / absHeight);
	me.intendedHeight = absHeight / conheight;
	me.currentRow = -1;
	me.currentColumn = -1;

	me.fill(me);

	if(me.closable)
	{
		closebutton = me.closeButton = spawnButton();
		closebutton.configureButton(closebutton, "", 0, me.closeButtonImage);
		closebutton.onClick = Dialog_Close; closebutton.onClickEntity = me;
		closebutton.srcMulti = 0;
		me.addItem(me, closebutton, '0 0 0', '1 1 0', 1); // put it as LAST
	}

	me.frame.closeButton = closebutton;
}