149 lines
6.5 KiB
C#
149 lines
6.5 KiB
C#
|
////////////////////////////////////////////////////////////////
|
||
|
// //
|
||
|
// Neoforce Central //
|
||
|
// //
|
||
|
////////////////////////////////////////////////////////////////
|
||
|
// //
|
||
|
// File: Dialog.cs //
|
||
|
// //
|
||
|
// Version: 0.7 //
|
||
|
// //
|
||
|
// Date: 11/09/2010 //
|
||
|
// //
|
||
|
// Author: Tom Shane //
|
||
|
// //
|
||
|
////////////////////////////////////////////////////////////////
|
||
|
// //
|
||
|
// Copyright (c) by Tom Shane //
|
||
|
// //
|
||
|
////////////////////////////////////////////////////////////////
|
||
|
|
||
|
#region //// Using /////////////
|
||
|
|
||
|
////////////////////////////////////////////////////////////////////////////
|
||
|
////////////////////////////////////////////////////////////////////////////
|
||
|
|
||
|
#endregion
|
||
|
|
||
|
namespace TomShane.Neoforce.Controls
|
||
|
{
|
||
|
|
||
|
public class Dialog: Window
|
||
|
{
|
||
|
|
||
|
#region //// Fields ////////////
|
||
|
|
||
|
////////////////////////////////////////////////////////////////////////////
|
||
|
private Panel pnlTop = null;
|
||
|
private Label lblCapt = null;
|
||
|
private Label lblDesc = null;
|
||
|
private Panel pnlBottom = null;
|
||
|
////////////////////////////////////////////////////////////////////////////
|
||
|
|
||
|
#endregion
|
||
|
|
||
|
#region //// Properties ////////
|
||
|
|
||
|
////////////////////////////////////////////////////////////////////////////
|
||
|
public Panel TopPanel { get { return pnlTop; } }
|
||
|
public Panel BottomPanel { get { return pnlBottom; } }
|
||
|
public Label Caption { get { return lblCapt; } }
|
||
|
public Label Description { get { return lblDesc; } }
|
||
|
////////////////////////////////////////////////////////////////////////////
|
||
|
|
||
|
#endregion
|
||
|
|
||
|
#region //// Events ////////////
|
||
|
|
||
|
////////////////////////////////////////////////////////////////////////////
|
||
|
////////////////////////////////////////////////////////////////////////////
|
||
|
|
||
|
#endregion
|
||
|
|
||
|
#region //// Construstors //////
|
||
|
|
||
|
////////////////////////////////////////////////////////////////////////////
|
||
|
public Dialog(Manager manager): base(manager)
|
||
|
{
|
||
|
pnlTop = new Panel(manager);
|
||
|
pnlTop.Anchor = Anchors.Left | Anchors.Top | Anchors.Right;
|
||
|
pnlTop.Init();
|
||
|
pnlTop.Parent = this;
|
||
|
pnlTop.Width = ClientWidth;
|
||
|
pnlTop.Height = 64;
|
||
|
pnlTop.BevelBorder = BevelBorder.Bottom;
|
||
|
|
||
|
lblCapt = new Label(manager);
|
||
|
lblCapt.Init();
|
||
|
lblCapt.Parent = pnlTop;
|
||
|
lblCapt.Width = lblCapt.Parent.ClientWidth - 16;
|
||
|
lblCapt.Text = "Caption";
|
||
|
lblCapt.Left = 8;
|
||
|
lblCapt.Top = 8;
|
||
|
lblCapt.Alignment = Alignment.TopLeft;
|
||
|
lblCapt.Anchor = Anchors.Left | Anchors.Top | Anchors.Right;
|
||
|
|
||
|
lblDesc = new Label(manager);
|
||
|
lblDesc.Init();
|
||
|
lblDesc.Parent = pnlTop;
|
||
|
lblDesc.Width = lblDesc.Parent.ClientWidth - 16;
|
||
|
lblDesc.Left = 8;
|
||
|
lblDesc.Text = "Description text.";
|
||
|
lblDesc.Alignment = Alignment.TopLeft;
|
||
|
lblDesc.Anchor = Anchors.Left | Anchors.Top | Anchors.Right;
|
||
|
|
||
|
pnlBottom = new Panel(manager);
|
||
|
pnlBottom.Init();
|
||
|
pnlBottom.Parent = this;
|
||
|
pnlBottom.Width = ClientWidth;
|
||
|
pnlBottom.Height = 24 + 16;
|
||
|
pnlBottom.Top = ClientHeight - pnlBottom.Height;
|
||
|
pnlBottom.BevelBorder = BevelBorder.Top;
|
||
|
pnlBottom.Anchor = Anchors.Left | Anchors.Bottom | Anchors.Right;
|
||
|
|
||
|
}
|
||
|
////////////////////////////////////////////////////////////////////////////
|
||
|
|
||
|
#endregion
|
||
|
|
||
|
#region //// Methods ///////////
|
||
|
|
||
|
////////////////////////////////////////////////////////////////////////////
|
||
|
public override void Init()
|
||
|
{
|
||
|
base.Init();
|
||
|
|
||
|
SkinLayer lc = new SkinLayer(lblCapt.Skin.Layers[0]);
|
||
|
lc.Text.Font.Resource = Manager.Skin.Fonts[Manager.Skin.Controls["Dialog"].Layers["TopPanel"].Attributes["CaptFont"].Value].Resource;
|
||
|
lc.Text.Colors.Enabled = Utilities.ParseColor(Manager.Skin.Controls["Dialog"].Layers["TopPanel"].Attributes["CaptFontColor"].Value);
|
||
|
|
||
|
SkinLayer ld = new SkinLayer(lblDesc.Skin.Layers[0]);
|
||
|
ld.Text.Font.Resource = Manager.Skin.Fonts[Manager.Skin.Controls["Dialog"].Layers["TopPanel"].Attributes["DescFont"].Value].Resource;
|
||
|
ld.Text.Colors.Enabled = Utilities.ParseColor(Manager.Skin.Controls["Dialog"].Layers["TopPanel"].Attributes["DescFontColor"].Value);
|
||
|
|
||
|
pnlTop.Color = Utilities.ParseColor(Manager.Skin.Controls["Dialog"].Layers["TopPanel"].Attributes["Color"].Value);
|
||
|
pnlTop.BevelMargin = int.Parse(Manager.Skin.Controls["Dialog"].Layers["TopPanel"].Attributes["BevelMargin"].Value);
|
||
|
pnlTop.BevelStyle = Utilities.ParseBevelStyle(Manager.Skin.Controls["Dialog"].Layers["TopPanel"].Attributes["BevelStyle"].Value);
|
||
|
|
||
|
lblCapt.Skin = new SkinControl(lblCapt.Skin);
|
||
|
lblCapt.Skin.Layers[0] = lc;
|
||
|
lblCapt.Height = Manager.Skin.Fonts[Manager.Skin.Controls["Dialog"].Layers["TopPanel"].Attributes["CaptFont"].Value].Height;
|
||
|
|
||
|
lblDesc.Skin = new SkinControl(lblDesc.Skin);
|
||
|
lblDesc.Skin.Layers[0] = ld;
|
||
|
lblDesc.Height = Manager.Skin.Fonts[Manager.Skin.Controls["Dialog"].Layers["TopPanel"].Attributes["DescFont"].Value].Height;
|
||
|
lblDesc.Top = lblCapt.Top + lblCapt.Height + 4;
|
||
|
lblDesc.Height = lblDesc.Parent.ClientHeight - lblDesc.Top - 8;
|
||
|
|
||
|
pnlBottom.Color = Utilities.ParseColor(Manager.Skin.Controls["Dialog"].Layers["BottomPanel"].Attributes["Color"].Value);
|
||
|
pnlBottom.BevelMargin = int.Parse(Manager.Skin.Controls["Dialog"].Layers["BottomPanel"].Attributes["BevelMargin"].Value);
|
||
|
pnlBottom.BevelStyle = Utilities.ParseBevelStyle(Manager.Skin.Controls["Dialog"].Layers["BottomPanel"].Attributes["BevelStyle"].Value);
|
||
|
}
|
||
|
////////////////////////////////////////////////////////////////////////////
|
||
|
|
||
|
#endregion
|
||
|
|
||
|
}
|
||
|
|
||
|
}
|