Ejemplo n.º 1
0
        /// <summary>Creates a window.</summary>
        /// <param name="Animated"></param>
        /// <param name="Shadowed"></param>
        /// <param name="Length"></param>
        /// <param name="Height"></param>
        /// <param name="LeftPos">Left Position (Specify -1 for centered)</param>
        /// <param name="TopPos">Top Position (Specify -1 for centered</param>
        public Window(Boolean Animated, Boolean Shadowed, ConsoleColor MainBG, ConsoleColor HeaderBG, ConsoleColor HeaderFG, HeaderPosition HeadPos, String Title, int Length, int Height, int LeftPos, int TopPos)
        {
            this.Animated = Animated;
            this.Shadowed = Shadowed;

            this.MainBG   = MainBG;
            this.HeaderBG = HeaderBG;
            this.HeaderFG = HeaderFG;
            this.HeadPos  = HeadPos;

            this.Title  = Title;
            this.Length = Length;
            this.Height = Height;

            if (LeftPos == -1)
            {
                this.LeftPos = ((Console.WindowWidth) - Length) / 2;
            }
            else
            {
                this.LeftPos = LeftPos;
            }
            if (TopPos == -1)
            {
                this.TopPos = ((Console.WindowHeight) - Height) / 2;
            }
            else
            {
                this.TopPos = TopPos;
            }

            AllElements = new ArrayList();
        }
        private void AdjustGridPosition(HeaderPosition fromPosition, HeaderPosition toPosition)
        {
            if (_grid == null || _Header == null || fromPosition == toPosition)
                return;

            if (_initializing)
                return;

            int newTop = _grid.Top;
            int newHeight = _grid.Height;

            switch (fromPosition)
            {
                case HeaderPosition.Bottom:
                    newHeight += _Header.Height;
                    break;
                case HeaderPosition.Top:
                    newTop -= _Header.Height;
                    newHeight += _Header.Height;
                    break;
            }

            switch (toPosition)
            {
                case HeaderPosition.Bottom:
                    newHeight -= _Header.Height;
                    break;
                case HeaderPosition.Top:
                    newTop += _Header.Height;
                    newHeight -= _Header.Height;
                    break;
            }

            AnchorStyles oldStyle = _grid.Anchor;
            _grid.Anchor = AnchorStyles.Top | AnchorStyles.Left;
            _grid.SetBounds(0, newTop, 0, newHeight, BoundsSpecified.Y | BoundsSpecified.Height);
            _grid.Anchor = oldStyle;
        }
Ejemplo n.º 3
0
        private static void HeaderPositionPropertyChanged(DependencyObject d, DependencyPropertyChangedEventArgs e)
        {
            CustomizedTabControl ctrl = d as CustomizedTabControl;

            if (ctrl.HeaderPanel == null)
            {
                return;
            }
            HeaderPosition position = (HeaderPosition)e.NewValue;

            switch (ctrl.TabStripPlacement)
            {
            case Dock.Top:
            case Dock.Bottom:
                switch (position)
                {
                case HeaderPosition.Start:
                    ctrl.HeaderPanel.HorizontalAlignment = HorizontalAlignment.Left;
                    break;

                case HeaderPosition.End:
                    ctrl.HeaderPanel.HorizontalAlignment = HorizontalAlignment.Right;
                    break;

                case HeaderPosition.Center:
                    ctrl.HeaderPanel.HorizontalAlignment = HorizontalAlignment.Center;
                    break;

                case HeaderPosition.Stretch:
                    ctrl.HeaderPanel.HorizontalAlignment = HorizontalAlignment.Stretch;
                    break;
                }
                break;

            case Dock.Left:
            case Dock.Right:
                switch (position)
                {
                case HeaderPosition.Start:
                    ctrl.HeaderPanel.VerticalAlignment = VerticalAlignment.Top;
                    break;

                case HeaderPosition.End:
                    ctrl.HeaderPanel.VerticalAlignment = VerticalAlignment.Bottom;
                    break;

                case HeaderPosition.Center:
                    ctrl.HeaderPanel.VerticalAlignment = VerticalAlignment.Center;
                    break;

                case HeaderPosition.Stretch:
                    ctrl.HeaderPanel.VerticalAlignment = VerticalAlignment.Stretch;
                    break;
                }
                break;
            }
            if (ctrl.MainLine != null)
            {
                ctrl.ReloadMainLine();
            }
            if (ctrl.SelectionLine != null)
            {
                ctrl.ReloadSelectionLine();
            }
        }
Ejemplo n.º 4
0
 /// <summary>
 /// Creates a Tickable Window. You get basically full control of everything with base constructor.
 /// </summary>
 /// <param name="Animated"></param>
 /// <param name="Shadowed"></param>
 /// <param name="MainBG"></param>
 /// <param name="HeaderBG"></param>
 /// <param name="HeaderFG"></param>
 /// <param name="HeadPos"></param>
 /// <param name="Title"></param>
 /// <param name="Length"></param>
 /// <param name="Height"></param>
 /// <param name="LeftPos"></param>
 /// <param name="TopPos"></param>
 public TickableWindow(Boolean Animated, Boolean Shadowed, ConsoleColor MainBG, ConsoleColor HeaderBG, ConsoleColor HeaderFG, HeaderPosition HeadPos, String Title, int Length, int Height, int LeftPos, int TopPos) : base(Animated, Shadowed, MainBG, HeaderBG, HeaderFG, HeadPos, Title, Length, Height, LeftPos, TopPos)
 {
 }
Ejemplo n.º 5
0
 /// <summary>Creates a window centered on the screen</summary>
 /// <param name="Animated"></param>
 /// <param name="Shadowed"></param>
 /// <param name="MainBG"></param>
 /// <param name="HeaderBG"></param>
 /// <param name="HeaderFG"></param>
 /// <param name="HeadPos"></param>
 /// <param name="Title"></param>
 /// <param name="Length"></param>
 /// <param name="Height"></param>
 public Window(Boolean Animated, Boolean Shadowed, ConsoleColor MainBG, ConsoleColor HeaderBG, ConsoleColor HeaderFG, HeaderPosition HeadPos, String Title, int Length, int Height) : this(Animated, Shadowed, MainBG, HeaderBG, HeaderFG, HeadPos, Title, Length, Height, -1, -1)
 {
 }