Exemple #1
0
        /// <summary>
        /// Constructor.
        /// </summary>
        /// <param name="game">The currently running Game object.</param>
        /// <param name="guiManager">GUIManager that this control is part of.</param>
        public Window(Game game, GUIManager guiManager)
            : base(game, guiManager)
        {
            this.isResizable  = true;
            this.transparency = -1;

            #region Create Child Controls
            this.box                   = new Box(game, guiManager);
            this.viewPort              = new UIComponent(game, guiManager);
            this.titleBar              = new Bar(game, guiManager);
            this.movableArea           = new MovableArea(game, guiManager);
            this.backgroundMovableArea = new MovableArea(game, guiManager);
            this.label                 = new Label(game, guiManager);
            this.closeButton           = new ImageButton(game, guiManager);
            #endregion

            #region Add Child Controls
            base.Add(this.box);
            base.Add(this.viewPort);
            base.Add(this.titleBar);
            base.Add(this.label);
            base.Add(this.movableArea);
            #endregion

            #region Add Resizable Areas
            this.resizableAreas = new ResizableArea[8];

            for (int i = 0; i < 8; i++)
            {
                this.resizableAreas[i]                = new ResizableArea(game, guiManager);
                this.resizableAreas[i].ZOrder         = 0.3f;
                this.resizableAreas[i].StartResizing += new StartResizingHandler(OnStartAnimating);
                this.resizableAreas[i].EndResizing   += new EndResizingHandler(OnEndAnimating);
                base.Add(this.resizableAreas[i]);
            }

            this.resizableAreas[0].ResizeArea = ResizeAreas.TopLeft;
            this.resizableAreas[1].ResizeArea = ResizeAreas.Top;
            this.resizableAreas[2].ResizeArea = ResizeAreas.TopRight;
            this.resizableAreas[3].ResizeArea = ResizeAreas.Left;
            this.resizableAreas[4].ResizeArea = ResizeAreas.Right;
            this.resizableAreas[5].ResizeArea = ResizeAreas.BottomLeft;
            this.resizableAreas[6].ResizeArea = ResizeAreas.Bottom;
            this.resizableAreas[7].ResizeArea = ResizeAreas.BottomRight;
            #endregion

            #region Set Non-Default Properties
            this.movableArea.ZOrder    = 0.1f;
            this.closeButton.ZOrder    = 0.4f;
            this.viewPort.ZOrder       = 0.2f;
            this.viewPort.CanHaveFocus = true;
            MinWidth = 150;
            #endregion

            #region Set Default Properties
            Margin                   = defaultMargin;
            HasCloseButton           = defaultHasCloseButton;
            HasFullWindowMovableArea = defaultFullWindowMovableArea;
            TitleBarHeight           = defaultTitleBarHeight;
            Width                  = MinWidth;
            Height                 = MinHeight;
            ButtonSize             = defaultButtonSize;
            Skin                   = defaultSkin;
            TitleBarSkin           = defaultTitleBarSkin;
            CloseButtonSkin        = defaultCloseButtonSkin;
            CloseButtonHoverSkin   = defaultCloseButtonHoverSkin;
            CloseButtonPressedSkin = defaultCloseButtonPressedSkin;
            #endregion

            #region Event Handlers
            this.closeButton.Click                 += new ClickHandler(OnClose);
            this.movableArea.StartMoving           += new StartMovingHandler(OnStartAnimating);
            this.movableArea.EndMoving             += new EndMovingHandler(OnEndAnimating);
            this.backgroundMovableArea.StartMoving += new StartMovingHandler(OnStartAnimating);
            this.backgroundMovableArea.EndMoving   += new EndMovingHandler(OnEndAnimating);
            #endregion

            Refresh();
        }
Exemple #2
0
        /// <summary>
        /// Constructor.
        /// </summary>
        /// <param name="game">The currently running Game object.</param>
        /// <param name="guiManager">GUIManager that this control is part of.</param>
        public Window(Game game, GUIManager guiManager)
            : base(game, guiManager)
        {
            this.isResizable = true;
            this.transparency = -1;

            #region Create Child Controls
            this.box = new Box(game, guiManager);
            this.viewPort = new UIComponent(game, guiManager);
            this.titleBar = new Bar(game, guiManager);
            this.movableArea = new MovableArea(game, guiManager);
            this.backgroundMovableArea = new MovableArea(game, guiManager);
            this.label = new Label(game, guiManager);
            this.closeButton = new ImageButton(game, guiManager);
            #endregion

            #region Add Child Controls
            base.Add(this.box);
            base.Add(this.viewPort);
            base.Add(this.titleBar);
            base.Add(this.label);
            base.Add(this.movableArea);
            #endregion

            #region Add Resizable Areas
            this.resizableAreas = new ResizableArea[8];

            for (int i = 0; i < 8; i++)
            {
                this.resizableAreas[i] = new ResizableArea(game, guiManager);
                this.resizableAreas[i].ZOrder = 0.3f;
                this.resizableAreas[i].StartResizing += new StartResizingHandler(OnStartAnimating);
                this.resizableAreas[i].EndResizing += new EndResizingHandler(OnEndAnimating);
                base.Add(this.resizableAreas[i]);
            }

            this.resizableAreas[0].ResizeArea = ResizeAreas.TopLeft;
            this.resizableAreas[1].ResizeArea = ResizeAreas.Top;
            this.resizableAreas[2].ResizeArea = ResizeAreas.TopRight;
            this.resizableAreas[3].ResizeArea = ResizeAreas.Left;
            this.resizableAreas[4].ResizeArea = ResizeAreas.Right;
            this.resizableAreas[5].ResizeArea = ResizeAreas.BottomLeft;
            this.resizableAreas[6].ResizeArea = ResizeAreas.Bottom;
            this.resizableAreas[7].ResizeArea = ResizeAreas.BottomRight;
            #endregion

            #region Set Non-Default Properties
            this.movableArea.ZOrder = 0.1f;
            this.closeButton.ZOrder = 0.4f;
            this.viewPort.ZOrder = 0.2f;
            this.viewPort.CanHaveFocus = true;
            MinWidth = 150;
            #endregion

            #region Set Default Properties
            Margin = defaultMargin;
            HasCloseButton = defaultHasCloseButton;
            HasFullWindowMovableArea = defaultFullWindowMovableArea;
            TitleBarHeight = defaultTitleBarHeight;
            Width = MinWidth;
            Height = MinHeight;
            ButtonSize = defaultButtonSize;
            Skin = defaultSkin;
            TitleBarSkin = defaultTitleBarSkin;
            CloseButtonSkin = defaultCloseButtonSkin;
            CloseButtonHoverSkin = defaultCloseButtonHoverSkin;
            CloseButtonPressedSkin = defaultCloseButtonPressedSkin;
            #endregion

            #region Event Handlers
            this.closeButton.Click += new ClickHandler(OnClose);
            this.movableArea.StartMoving += new StartMovingHandler(OnStartAnimating);
            this.movableArea.EndMoving += new EndMovingHandler(OnEndAnimating);
            this.backgroundMovableArea.StartMoving += new StartMovingHandler(OnStartAnimating);
            this.backgroundMovableArea.EndMoving += new EndMovingHandler(OnEndAnimating);
            #endregion

            Refresh();
        }