示例#1
0
		void UpdateBorderSize()
		{
			T *Title = &m_DialogItems[0];
			intptr_t MaxWidth = MaxTextWidth();
			intptr_t MaxHeight = 0;
			Title->X2 = Title->X1 + MaxWidth + 3;

			for (int i=1; i<m_DialogItemsCount; i++)
			{
				if (m_DialogItems[i].Type == DI_SINGLEBOX)
				{
					m_Indent = 2;
					m_DialogItems[i].X2 = Title->X2;
				}
				else if (m_DialogItems[i].Type == DI_TEXT && (m_DialogItems[i].Flags & DIF_CENTERTEXT))
				{//BUGBUG: two columns items are not supported
					m_DialogItems[i].X2 = m_DialogItems[i].X1 + MaxWidth - 1;
				}
				
				if (m_DialogItems[i].Y2 > MaxHeight)
				{
					MaxHeight = m_DialogItems[i].Y2;
				}
			}

			Title->X2 += m_Indent;
			Title->Y2 = MaxHeight + 1;
			m_Indent = 0;
		}
示例#2
0
		void UpdateBorderSize()
		{
			T *Title = &DialogItems[0];
			Title->X2 = Title->X1 + MaxTextWidth() + 3;
			Title->Y2 = DialogItems [DialogItemsCount-1].Y2 + 1;

			for (int i=1; i<DialogItemsCount; i++)
			{
				if (DialogItems[i].Type == DI_SINGLEBOX)
				{
					Indent = 2;
					DialogItems[i].X2 = Title->X2;
				}
			}

			Title->X2 += Indent;
			Indent = 0;
		}