public void BuildForm() { int form_height = 0; // Setup Main Instruction switch (m_mainIcon) { case eSysIcons.Information: imgMain.Image = SystemIcons.Information.ToBitmap(); break; case eSysIcons.Question: imgMain.Image = SystemIcons.Question.ToBitmap(); break; case eSysIcons.Warning: imgMain.Image = SystemIcons.Warning.ToBitmap(); break; case eSysIcons.Error: imgMain.Image = SystemIcons.Error.ToBitmap(); break; } //AdjustLabelHeight(lbMainInstruction); //pnlMainInstruction.Height = Math.Max(41, lbMainInstruction.Height + 16); if (m_mainInstructionHeight == 0) GetMainInstructionTextSizeF(); pnlMainInstruction.Height = Math.Max(41, m_mainInstructionHeight + 16); form_height += pnlMainInstruction.Height; // Setup Content pnlContent.Visible = (Content != ""); if (Content != "") { AdjustLabelHeight(lbContent); pnlContent.Height = lbContent.Height + 4; form_height += pnlContent.Height; } bool show_verify_checkbox = (cbVerify.Text != ""); cbVerify.Visible = show_verify_checkbox; // Setup Expanded Info and Buttons panels if (ExpandedInfo == "") { pnlExpandedInfo.Visible = false; lbShowHideDetails.Visible = false; cbVerify.Top = 12; pnlButtons.Height = 40; } else { AdjustLabelHeight(lbExpandedInfo); pnlExpandedInfo.Height = lbExpandedInfo.Height + 4; pnlExpandedInfo.Visible = m_Expanded; lbShowHideDetails.Text = (m_Expanded ? " Hide details" : " Show details"); lbShowHideDetails.ImageIndex = (m_Expanded ? 0 : 3); if (!show_verify_checkbox) pnlButtons.Height = 40; if (m_Expanded) form_height += pnlExpandedInfo.Height; } // Setup RadioButtons pnlRadioButtons.Visible = (m_radioButtons != ""); if (m_radioButtons != "") { string[] arr = m_radioButtons.Split(new char[] { '|' }); int pnl_height = 12; for (int i = 0; i < arr.Length; i++) { RadioButton rb = new RadioButton(); rb.Parent = pnlRadioButtons; rb.Location = new Point(60, 4 + (i * rb.Height)); rb.Text = arr[i]; rb.Tag = i; rb.Checked = (m_defaultButtonIndex == i); rb.Width = this.Width - rb.Left - 15; pnl_height += rb.Height; m_radioButtonCtrls.Add(rb); } pnlRadioButtons.Height = pnl_height; form_height += pnlRadioButtons.Height; } // Setup CommandButtons pnlCommandButtons.Visible = (m_commandButtons != ""); if (m_commandButtons != "") { string[] arr = m_commandButtons.Split(new char[] { '|' }); int t = 8; int pnl_height = 16; for (int i = 0; i < arr.Length; i++) { CommandButton btn = new CommandButton(); btn.Parent = pnlCommandButtons; btn.Location = new Point(50, t); if (m_isVista) // <- tweak font if vista btn.Font = new Font(btn.Font, FontStyle.Regular); btn.Text = arr[i]; btn.Size = new Size(this.Width - btn.Left - 15, btn.GetBestHeight()); t += btn.Height; pnl_height += btn.Height; btn.Tag = i; btn.Click += new EventHandler(CommandButton_Click); if (i == m_defaultButtonIndex) m_focusControl = btn; } pnlCommandButtons.Height = pnl_height; form_height += pnlCommandButtons.Height; } // Setup Buttons switch (m_Buttons) { case eTaskDialogButtons.YesNo: bt1.Visible = false; bt2.Text = "&Yes"; bt2.DialogResult = DialogResult.Yes; bt3.Text = "&No"; bt3.DialogResult = DialogResult.No; this.AcceptButton = bt2; this.CancelButton = bt3; break; case eTaskDialogButtons.YesNoCancel: bt1.Text = "&Yes"; bt1.DialogResult = DialogResult.Yes; bt2.Text = "&No"; bt2.DialogResult = DialogResult.No; bt3.Text = "&Cancel"; bt3.DialogResult = DialogResult.Cancel; this.AcceptButton = bt1; this.CancelButton = bt3; break; case eTaskDialogButtons.OKCancel: bt1.Visible = false; bt2.Text = "&OK"; bt2.DialogResult = DialogResult.OK; bt3.Text = "&Cancel"; bt3.DialogResult = DialogResult.Cancel; this.AcceptButton = bt2; this.CancelButton = bt3; break; case eTaskDialogButtons.OK: bt1.Visible = false; bt2.Visible = false; bt3.Text = "&OK"; bt3.DialogResult = DialogResult.OK; this.AcceptButton = bt3; this.CancelButton = bt3; break; case eTaskDialogButtons.Close: bt1.Visible = false; bt2.Visible = false; bt3.Text = "&Close"; bt3.DialogResult = DialogResult.Cancel; this.CancelButton = bt3; break; case eTaskDialogButtons.Cancel: bt1.Visible = false; bt2.Visible = false; bt3.Text = "&Cancel"; bt3.DialogResult = DialogResult.Cancel; this.CancelButton = bt3; break; case eTaskDialogButtons.None: bt1.Visible = false; bt2.Visible = false; bt3.Visible = false; break; } this.ControlBox = (Buttons == eTaskDialogButtons.Cancel || Buttons == eTaskDialogButtons.Close || Buttons == eTaskDialogButtons.OKCancel || Buttons == eTaskDialogButtons.YesNoCancel); if (!show_verify_checkbox && ExpandedInfo == "" && m_Buttons == eTaskDialogButtons.None) pnlButtons.Visible = false; else form_height += pnlButtons.Height; pnlFooter.Visible = (Footer != ""); if (Footer != "") { AdjustLabelHeight(lbFooter); pnlFooter.Height = Math.Max(28, lbFooter.Height + 16); switch (m_footerIcon) { case eSysIcons.Information: // SystemIcons.Information.ToBitmap().GetThumbnailImage(16, 16, null, IntPtr.Zero); imgFooter.Image = ResizeBitmap(SystemIcons.Information.ToBitmap(), 16, 16); break; case eSysIcons.Question: // SystemIcons.Question.ToBitmap().GetThumbnailImage(16, 16, null, IntPtr.Zero); imgFooter.Image = ResizeBitmap(SystemIcons.Question.ToBitmap(), 16, 16); break; case eSysIcons.Warning: // SystemIcons.Warning.ToBitmap().GetThumbnailImage(16, 16, null, IntPtr.Zero); imgFooter.Image = ResizeBitmap(SystemIcons.Warning.ToBitmap(), 16, 16); break; case eSysIcons.Error: // SystemIcons.Error.ToBitmap().GetThumbnailImage(16, 16, null, IntPtr.Zero); imgFooter.Image = ResizeBitmap(SystemIcons.Error.ToBitmap(), 16, 16); break; } form_height += pnlFooter.Height; } this.ClientSize = new Size(ClientSize.Width, form_height); m_formBuilt = true; }
public void BuildForm() { int form_height = 0; // Setup Main Instruction switch (m_mainIcon) { case eSysIcons.Information: imgMain.Image = SystemIcons.Information.ToBitmap(); break; case eSysIcons.Question: imgMain.Image = SystemIcons.Question.ToBitmap(); break; case eSysIcons.Warning: imgMain.Image = SystemIcons.Warning.ToBitmap(); break; case eSysIcons.Error: imgMain.Image = SystemIcons.Error.ToBitmap(); break; } AdjustLabelHeight(lbMainInstruction); pnlMainInstruction.Height = Math.Max(41, lbMainInstruction.Height + 16); form_height += pnlMainInstruction.Height; // Setup Content pnlContent.Visible = (Content != ""); if (Content != "") { AdjustLabelHeight(lbContent); pnlContent.Height = lbContent.Height + 4; form_height += pnlContent.Height; } bool show_verify_checkbox = (cbVerify.Text != ""); cbVerify.Visible = show_verify_checkbox; // Setup Expanded Info and Buttons panels if (ExpandedInfo == "") { pnlExpandedInfo.Visible = false; lbShowHideDetails.Visible = false; cbVerify.Top = 12; pnlButtons.Height = 40; } else { AdjustLabelHeight(lbExpandedInfo); pnlExpandedInfo.Height = lbExpandedInfo.Height + 4; pnlExpandedInfo.Visible = m_Expanded; lbShowHideDetails.Text = (m_Expanded ? " Hide details" : " Show details"); lbShowHideDetails.ImageIndex = (m_Expanded ? 0 : 3); if (!show_verify_checkbox) { pnlButtons.Height = 40; } if (m_Expanded) { form_height += pnlExpandedInfo.Height; } } // Setup RadioButtons pnlRadioButtons.Visible = (m_radioButtons != ""); if (m_radioButtons != "") { string[] arr = m_radioButtons.Split(new char[] { '|' }); int pnl_height = 12; for (int i = 0; i < arr.Length; i++) { RadioButton rb = new RadioButton(); rb.Parent = pnlRadioButtons; rb.Location = new Point(60, 4 + (i * rb.Height)); rb.Text = arr[i]; rb.Tag = i; rb.Checked = (m_initialRadioButtonIndex == i); rb.Width = this.Width - rb.Left - 15; pnl_height += rb.Height; m_radioButtonCtrls.Add(rb); } pnlRadioButtons.Height = pnl_height; form_height += pnlRadioButtons.Height; } // Setup CommandButtons pnlCommandButtons.Visible = (m_commandButtons != ""); if (m_commandButtons != "") { string[] arr = m_commandButtons.Split(new char[] { '|' }); int t = 8; int pnl_height = 16; for (int i = 0; i < arr.Length; i++) { CommandButton btn = new CommandButton(); btn.Parent = pnlCommandButtons; btn.Location = new Point(50, t); if (m_isVista) // <- tweak font if vista { btn.Font = new Font(btn.Font, FontStyle.Regular); } btn.Text = arr[i]; btn.Size = new Size(this.Width - btn.Left - 15, btn.GetBestHeight()); t += btn.Height; pnl_height += btn.Height; btn.Tag = i; btn.Click += new EventHandler(CommandButton_Click); } pnlCommandButtons.Height = pnl_height; form_height += pnlCommandButtons.Height; } // Setup Buttons switch (m_Buttons) { case eTaskDialogButtons.YesNo: bt1.Visible = false; bt2.Text = "&Yes"; bt2.DialogResult = DialogResult.Yes; bt3.Text = "&No"; bt3.DialogResult = DialogResult.No; this.AcceptButton = bt2; this.CancelButton = bt3; break; case eTaskDialogButtons.YesNoCancel: bt1.Text = "&Yes"; bt1.DialogResult = DialogResult.Yes; bt2.Text = "&No"; bt2.DialogResult = DialogResult.No; bt3.Text = "&Cancel"; bt3.DialogResult = DialogResult.Cancel; this.AcceptButton = bt1; this.CancelButton = bt3; break; case eTaskDialogButtons.OKCancel: bt1.Visible = false; bt2.Text = "&OK"; bt2.DialogResult = DialogResult.OK; bt3.Text = "&Cancel"; bt3.DialogResult = DialogResult.Cancel; this.AcceptButton = bt2; this.CancelButton = bt3; break; case eTaskDialogButtons.OK: bt1.Visible = false; bt2.Visible = false; bt3.Text = "&OK"; bt3.DialogResult = DialogResult.OK; this.AcceptButton = bt3; this.CancelButton = bt3; break; case eTaskDialogButtons.Close: bt1.Visible = false; bt2.Visible = false; bt3.Text = "&Close"; bt3.DialogResult = DialogResult.Cancel; this.CancelButton = bt3; break; case eTaskDialogButtons.Cancel: bt1.Visible = false; bt2.Visible = false; bt3.Text = "&Cancel"; bt3.DialogResult = DialogResult.Cancel; this.CancelButton = bt3; break; case eTaskDialogButtons.None: bt1.Visible = false; bt2.Visible = false; bt3.Visible = false; break; } this.ControlBox = (Buttons == eTaskDialogButtons.Cancel || Buttons == eTaskDialogButtons.Close || Buttons == eTaskDialogButtons.OKCancel || Buttons == eTaskDialogButtons.YesNoCancel); if (!show_verify_checkbox && ExpandedInfo == "" && m_Buttons == eTaskDialogButtons.None) { pnlButtons.Visible = false; } else { form_height += pnlButtons.Height; } pnlFooter.Visible = (Footer != ""); if (Footer != "") { AdjustLabelHeight(lbFooter); pnlFooter.Height = Math.Max(28, lbFooter.Height + 16); switch (m_footerIcon) { case eSysIcons.Information: imgFooter.Image = SystemIcons.Information.ToBitmap().GetThumbnailImage(16, 16, null, IntPtr.Zero); break; case eSysIcons.Question: imgFooter.Image = SystemIcons.Question.ToBitmap().GetThumbnailImage(16, 16, null, IntPtr.Zero); break; case eSysIcons.Warning: imgFooter.Image = SystemIcons.Warning.ToBitmap().GetThumbnailImage(16, 16, null, IntPtr.Zero); break; case eSysIcons.Error: imgFooter.Image = SystemIcons.Error.ToBitmap().GetThumbnailImage(16, 16, null, IntPtr.Zero); break; } form_height += pnlFooter.Height; } this.ClientSize = new Size(ClientSize.Width, form_height); m_formBuilt = true; }