Implement redirected storage for common navigator appearance.
Inheritance: ComponentFactory.Krypton.Toolkit.PaletteDoubleMetricRedirect
 /// <summary>
 /// Initialize a new instance of the PaletteNavigatorOtherEx class.
 /// </summary>
 /// <param name="redirect">Inheritence redirection instance.</param>
 /// <param name="needPaint">Delegate for notifying paint requests.</param>
 public PaletteNavigatorOtherEx(PaletteNavigatorRedirect redirect,
                                NeedPaintHandler needPaint)
     : base(redirect, needPaint)
 {
     // Create the palette storage
     _paletteSeparator = new PaletteSeparatorPadding(redirect.Separator, redirect.Separator, needPaint);
 }
Example #2
0
 /// <summary>
 /// Initialize a new instance of the PaletteNavigatorOtherEx class.
 /// </summary>
 /// <param name="redirect">Inheritence redirection instance.</param>
 /// <param name="needPaint">Delegate for notifying paint requests.</param>
 public PaletteNavigatorOtherEx(PaletteNavigatorRedirect redirect,
                                NeedPaintHandler needPaint)
     : base(redirect, needPaint)
 {
     // Create the palette storage
     Separator = new PaletteSeparatorPadding(redirect.Separator, redirect.Separator, needPaint);
 }
 /// <summary>
 /// Initialize a new instance of the PaletteNavigatorOther class.
 /// </summary>
 /// <param name="redirect">Inheritence redirection instance.</param>
 /// <param name="needPaint">Delegate for notifying paint requests.</param>
 public PaletteNavigatorOther(PaletteNavigatorRedirect redirect,
                              NeedPaintHandler needPaint)
 {
     // Create the palette storage
     CheckButton    = new PaletteTriple(redirect.CheckButton, needPaint);
     OverflowButton = new PaletteTriple(redirect.OverflowButton, needPaint);
     MiniButton     = new PaletteTriple(redirect.MiniButton, needPaint);
     Tab            = new PaletteTabTriple(redirect.Tab, needPaint);
     RibbonTab      = new PaletteRibbonTabContent(redirect.RibbonTab.TabDraw, redirect.RibbonTab.TabDraw, redirect.RibbonTab.Content, needPaint);
 }
 /// <summary>
 /// Initialize a new instance of the PaletteNavigatorNormabled class.
 /// </summary>
 /// <param name="redirect">Inheritence redirection instance.</param>
 /// <param name="needPaint">Delegate for notifying paint requests.</param>
 public PaletteNavigator(PaletteNavigatorRedirect redirect,
                         NeedPaintHandler needPaint)
     : base(redirect, needPaint)
 {
     // Create the palette storage
     PalettePage    = new PalettePage(redirect.PalettePage, needPaint);
     HeaderGroup    = new PaletteNavigatorHeaderGroup(redirect.HeaderGroup, redirect.HeaderGroup.HeaderPrimary, redirect.HeaderGroup.HeaderSecondary, redirect.HeaderGroup.HeaderBar, redirect.HeaderGroup.HeaderOverflow, needPaint);
     CheckButton    = new PaletteTriple(redirect.CheckButton, needPaint);
     OverflowButton = new PaletteTriple(redirect.OverflowButton, needPaint);
     MiniButton     = new PaletteTriple(redirect.MiniButton, needPaint);
     BorderEdge     = new PaletteBorderEdge(redirect.BorderEdge, needPaint);
     Separator      = new PaletteSeparatorPadding(redirect.Separator, redirect.Separator, needPaint);
     Tab            = new PaletteTabTriple(redirect.Tab, needPaint);
     RibbonTab      = new PaletteRibbonTabContent(redirect.RibbonTab.TabDraw, redirect.RibbonTab.TabDraw, redirect.RibbonTab.Content, needPaint);
 }
 /// <summary>
 /// Initialize a new instance of the PaletteNavigatorNormabled class.
 /// </summary>
 /// <param name="redirect">Inheritence redirection instance.</param>
 /// <param name="needPaint">Delegate for notifying paint requests.</param>
 public PaletteNavigator(PaletteNavigatorRedirect redirect,
                         NeedPaintHandler needPaint)
     : base(redirect, needPaint)
 {
     // Create the palette storage
     _palettePage = new PalettePage(redirect.PalettePage, needPaint);
     _paletteHeaderGroup = new PaletteNavigatorHeaderGroup(redirect.HeaderGroup, redirect.HeaderGroup.HeaderPrimary, redirect.HeaderGroup.HeaderSecondary, redirect.HeaderGroup.HeaderBar, redirect.HeaderGroup.HeaderOverflow, needPaint);
     _paletteCheckButton = new PaletteTriple(redirect.CheckButton, needPaint);
     _paletteOverflowButton = new PaletteTriple(redirect.OverflowButton, needPaint);
     _paletteMiniButton = new PaletteTriple(redirect.MiniButton, needPaint);
     _paletteBorderEdge = new PaletteBorderEdge(redirect.BorderEdge, needPaint);
     _paletteSeparator = new PaletteSeparatorPadding(redirect.Separator, redirect.Separator, needPaint);
     _paletteTab = new PaletteTabTriple(redirect.Tab, needPaint);
     _paletteRibbonTab = new PaletteRibbonTabContent(redirect.RibbonTab.TabDraw, redirect.RibbonTab.TabDraw, redirect.RibbonTab.Content, needPaint);
 }
Example #6
0
        /// <summary>
        /// Initialize a new instance of the KryptonPage class.
        /// </summary>
        /// <param name="text">Initial text.</param>
        /// <param name="imageSmall">Initial small image.</param>
        /// <param name="uniqueName">Initial unique name.</param>
        public KryptonPage(string text, Image imageSmall, string uniqueName)
        {
            // Default properties
            Text = text;
            MinimumSize = new Size(50, 50);
            _textTitle = "Page Title";
            _textDescription = "Page Description";
            _toolTipTitle = "Page ToolTip";
            _toolTipBody = string.Empty;
            _toolTipImage = null;
            _toolTipStyle = LabelStyle.ToolTip;
            _toolTipImageTransparentColor = Color.Empty;
            _imageSmall = imageSmall;
            _setVisible = true;
            _autoHiddenSlideSize = new Size(200, 200);
            _uniqueName = (string.IsNullOrEmpty(uniqueName) ? CommonHelper.UniqueString : uniqueName);
            _flags.Flags = (int)(KryptonPageFlags.All);
            _flags.ClearFlags((int)KryptonPageFlags.PageInOverflowBarForOutlookMode);

            // Create delegates
            _needDisabledPaint = new NeedPaintHandler(OnNeedDisabledPaint);
            _needNormalPaint = new NeedPaintHandler(OnNeedNormalPaint);

            // Create redirector for inheriting from owning navigator
            _redirectNavigator = new PaletteRedirectDoubleMetric(Redirector);
            _redirectNavigatorPage = new PaletteRedirectDouble(Redirector);
            _redirectNavigatorHeaderGroup = new PaletteRedirectDoubleMetric(Redirector);
            _redirectNavigatorHeaderPrimary = new PaletteRedirectTripleMetric(Redirector);
            _redirectNavigatorHeaderSecondary = new PaletteRedirectTripleMetric(Redirector);
            _redirectNavigatorHeaderBar = new PaletteRedirectTripleMetric(Redirector);
            _redirectNavigatorHeaderOverflow = new PaletteRedirectTripleMetric(Redirector);
            _redirectNavigatorCheckButton = new PaletteRedirectTriple(Redirector);
            _redirectNavigatorOverflowButton = new PaletteRedirectTriple(Redirector);
            _redirectNavigatorMiniButton = new PaletteRedirectTriple(Redirector);
            _redirectNavigatorBar = new PaletteRedirectMetric(Redirector);
            _redirectNavigatorSeparator = new PaletteRedirectDoubleMetric(Redirector);
            _redirectNavigatorTab = new PaletteRedirectTriple(Redirector);
            _redirectNavigatorRibbonTab = new PaletteRedirectRibbonTabContent(Redirector);

            // Create the palette storage
            _stateCommon = new PaletteNavigatorRedirect(null,
                                                        _redirectNavigator,
                                                        _redirectNavigatorPage,
                                                        _redirectNavigatorHeaderGroup,
                                                        _redirectNavigatorHeaderPrimary,
                                                        _redirectNavigatorHeaderSecondary,
                                                        _redirectNavigatorHeaderBar,
                                                        _redirectNavigatorHeaderOverflow,
                                                        _redirectNavigatorCheckButton,
                                                        _redirectNavigatorOverflowButton,
                                                        _redirectNavigatorMiniButton,
                                                        _redirectNavigatorBar,
                                                        new PaletteRedirectBorder(Redirector),
                                                        _redirectNavigatorSeparator,
                                                        _redirectNavigatorTab,
                                                        _redirectNavigatorRibbonTab,
                                                        new PaletteRedirectRibbonGeneral(Redirector),
                                                        NeedPaintDelegate);

            _stateDisabled = new PaletteNavigator(_stateCommon, _needDisabledPaint);
            _stateNormal = new PaletteNavigator(_stateCommon, _needNormalPaint);
            _stateTracking = new PaletteNavigatorOtherEx(_stateCommon, _needNormalPaint);
            _statePressed = new PaletteNavigatorOtherEx(_stateCommon, _needNormalPaint);
            _stateSelected = new PaletteNavigatorOther(_stateCommon, _needNormalPaint);

            _stateFocus = new PaletteNavigatorOtherRedirect(_redirectNavigatorCheckButton,
                                                            _redirectNavigatorOverflowButton,
                                                            _redirectNavigatorMiniButton,
                                                            _redirectNavigatorTab,
                                                            _redirectNavigatorRibbonTab, _needNormalPaint);

            // Our view contains just a simple canvas that covers entire client area
            _drawPanel = new ViewDrawPanel(_stateNormal.Page);

            // Create page specific button spec storage
            _buttonSpecs = new PageButtonSpecCollection(this);

            // Create the view manager instance
            ViewManager = new ViewManager(this, _drawPanel);
        }
Example #7
0
        /// <summary>
        /// Define the state to use when inheriting state values.
        /// </summary>
        /// <param name="alignControl">Control to use when aligning rectangles.</param>
        /// <param name="common">State palette for inheriting common values.</param>
        /// <param name="disabled">State palette for inheriting disabled values.</param>
        /// <param name="normal">State palette for inheriting normal values.</param>
        /// <param name="tracking">State palette for inheriting tracking values.</param>
        /// <param name="pressed">State palette for inheriting pressed values.</param>
        /// <param name="selected">State palette for inheriting selected values.</param>
        /// <param name="focus">State palette for inheriting focus values.</param>
        public virtual void SetInherit(Control alignControl,
                                       PaletteNavigatorRedirect common,
                                       PaletteNavigator disabled,
                                       PaletteNavigator normal,
                                       PaletteNavigatorOtherEx tracking,
                                       PaletteNavigatorOtherEx pressed,
                                       PaletteNavigatorOther selected,
                                       PaletteNavigatorOtherRedirect focus)
        {
            ViewManager.AlignControl = alignControl;

            // Setup the redirection states
            _redirectNavigator.SetRedirectStates(disabled, disabled, normal, normal);
            _redirectNavigatorPage.SetRedirectStates(disabled.PalettePage, normal.PalettePage);
            _redirectNavigatorHeaderGroup.SetRedirectStates(disabled.HeaderGroup, disabled.HeaderGroup, normal.HeaderGroup, normal.HeaderGroup);
            _redirectNavigatorHeaderPrimary.SetRedirectStates(disabled.HeaderGroup.HeaderPrimary, disabled.HeaderGroup.HeaderPrimary, normal.HeaderGroup.HeaderPrimary, normal.HeaderGroup.HeaderPrimary);
            _redirectNavigatorHeaderSecondary.SetRedirectStates(disabled.HeaderGroup.HeaderSecondary, disabled.HeaderGroup.HeaderSecondary,  normal.HeaderGroup.HeaderSecondary, normal.HeaderGroup.HeaderSecondary);
            _redirectNavigatorHeaderBar.SetRedirectStates(disabled.HeaderGroup.HeaderBar, disabled.HeaderGroup.HeaderBar, normal.HeaderGroup.HeaderBar, normal.HeaderGroup.HeaderBar);
            _redirectNavigatorHeaderOverflow.SetRedirectStates(disabled.HeaderGroup.HeaderOverflow, disabled.HeaderGroup.HeaderOverflow, normal.HeaderGroup.HeaderOverflow, normal.HeaderGroup.HeaderOverflow);
            _redirectNavigatorCheckButton.SetRedirectStates(disabled.CheckButton, normal.CheckButton, pressed.CheckButton, tracking.CheckButton, selected.CheckButton, selected.CheckButton, selected.CheckButton, focus.CheckButton, null);
            _redirectNavigatorOverflowButton.SetRedirectStates(disabled.OverflowButton, normal.OverflowButton, pressed.OverflowButton, tracking.OverflowButton, selected.OverflowButton, selected.OverflowButton, selected.OverflowButton, focus.OverflowButton, null);
            _redirectNavigatorMiniButton.SetRedirectStates(disabled.MiniButton, normal.MiniButton, pressed.MiniButton, tracking.MiniButton, selected.MiniButton, selected.MiniButton, selected.MiniButton, focus.MiniButton, null);
            _redirectNavigatorBar.SetRedirectStates(common.Bar, common.Bar);
            _redirectNavigatorSeparator.SetRedirectStates(disabled.Separator, disabled.Separator, normal.Separator, normal.Separator, pressed.Separator, pressed.Separator, tracking.Separator, tracking.Separator);
            _redirectNavigatorTab.SetRedirectStates(disabled.Tab, normal.Tab, pressed.Tab, tracking.Tab, selected.Tab, selected.Tab, selected.Tab, focus.Tab, null);
            _redirectNavigatorRibbonTab.SetRedirectStates(disabled.RibbonTab, normal.RibbonTab, pressed.RibbonTab, tracking.RibbonTab, selected.RibbonTab, focus.RibbonTab);
            _stateCommon.RedirectBorderEdge = new PaletteRedirectBorderEdge(Redirector, disabled.BorderEdge, normal.BorderEdge);
            _stateCommon.RedirectRibbonGeneral = new PaletteRedirectRibbonGeneral(Redirector);
        }
Example #8
0
        private void CreateStorageObjects()
        {
            // Create the page print specific delegate
            _needPagePaint = new NeedPaintHandler(OnNeedPagePaint);

            // Create state storage objects
            _stateCommon = new PaletteNavigatorRedirect(this, Redirector, _needPagePaint);
            _stateDisabled = new PaletteNavigator(_stateCommon, _needPagePaint);
            _stateNormal = new PaletteNavigator(_stateCommon, _needPagePaint);
            _stateTracking = new PaletteNavigatorOtherEx(_stateCommon, _needPagePaint);
            _statePressed = new PaletteNavigatorOtherEx(_stateCommon, _needPagePaint);
            _stateSelected = new PaletteNavigatorOther(_stateCommon, _needPagePaint);
            _stateFocus = new PaletteNavigatorOtherRedirect(Redirector, Redirector, Redirector,
                                                            Redirector, Redirector, _needPagePaint);

            // Create other storage objects
            _bar = new NavigatorBar(this, NeedPaintDelegate);
            _button = new NavigatorButton(this, NeedPaintDelegate);
            _group = new NavigatorGroup(this, NeedPaintDelegate);
            _header = new NavigatorHeader(this, NeedPaintDelegate);
            _outlook = new NavigatorOutlook(this, NeedPaintDelegate);
            _panel = new NavigatorPanel(this, NeedPaintDelegate);
            _popupPages = new NavigatorPopupPages(this, NeedPaintDelegate);
            _stack = new NavigatorStack(this, NeedPaintDelegate);
            _toolTips = new NavigatorToolTips(this, NeedPaintDelegate);

            // Need to know when the context button is about to show a context menu, so we
            // can then populate it with the correct set of values dependant on the current pages
            _button.ContextButton.KryptonContextMenu.Opening += new CancelEventHandler(OnOpeningContextMenu);
        }