コード例 #1
0
        /// <summary>
        /// Initialize a new instance of the KryptonGallery class.
        /// </summary>
        public KryptonGallery()
        {
            // Defaults
            _mouseOver          = false;
            _alwaysActive       = true;
            _selectedIndex      = -1;
            _trackingIndex      = -1;
            _eventTrackingIndex = -1;
            _preferredItemSize  = new Size(5, 1);
            _dropMaxItemWidth   = 128;
            _dropMinItemWidth   = 3;

            // Timer used to generate tracking change event
            _trackingEventTimer = new Timer
            {
                Interval = 120
            };
            _trackingEventTimer.Tick += OnTrackingTick;

            // Create content storage
            Images           = new GalleryImages(NeedPaintDelegate);
            DropButtonRanges = new KryptonGalleryRangeCollection();

            // Create the palette storage
            StateCommon   = new PaletteGalleryRedirect(Redirector, NeedPaintDelegate);
            StateNormal   = new PaletteGalleryState(StateCommon, NeedPaintDelegate);
            StateDisabled = new PaletteGalleryState(StateCommon, NeedPaintDelegate);
            StateActive   = new PaletteGalleryState(StateCommon, NeedPaintDelegate);

            // Create and organize the buttons
            _buttonUp      = new ViewDrawRibbonGalleryButton(Redirector, PaletteRelativeAlign.Near, PaletteRibbonGalleryButton.Up, Images, NeedPaintDelegate);
            _buttonDown    = new ViewDrawRibbonGalleryButton(Redirector, PaletteRelativeAlign.Center, PaletteRibbonGalleryButton.Down, Images, NeedPaintDelegate);
            _buttonContext = new ViewDrawRibbonGalleryButton(Redirector, PaletteRelativeAlign.Far, PaletteRibbonGalleryButton.DropDown, Images, NeedPaintDelegate);
            _buttonsLayout = new ViewLayoutRibbonGalleryButtons
            {
                _buttonUp,
                _buttonDown,
                _buttonContext
            };

            // The draw layout that contains the actual selection images
            _backBorder = new PaletteGalleryBackBorder(StateNormal);
            _drawDocker = new ViewDrawDocker(_backBorder, _backBorder);
            _drawItems  = new ViewLayoutRibbonGalleryItems(Redirector, this, NeedPaintDelegate, _buttonUp, _buttonDown, _buttonContext);
            _drawDocker.Add(_drawItems, ViewDockStyle.Fill);

            // Top level layout view
            _layoutDocker = new ViewLayoutDocker
            {
                { _drawDocker, ViewDockStyle.Fill },
                { _buttonsLayout, ViewDockStyle.Right }
            };

            // Create the view manager instance
            ViewManager = new ViewManager(this, _layoutDocker);

            // Set the default padding value
            base.Padding = new Padding(3);
        }
コード例 #2
0
 /// <summary>
 /// Define the new state to use for sourcing values.
 /// </summary>
 /// <param name="state">New state for background/border.</param>
 public void SetState(PaletteGalleryState state)
 {
     Debug.Assert(state != null);
     _state = state;
 }
コード例 #3
0
 /// <summary>
 /// Initialize a new instance of the PaletteGalleryBackBorder class.
 /// </summary>
 /// <param name="state">Initial state for background/border.</param>
 public PaletteGalleryBackBorder(PaletteGalleryState state)
 {
     Debug.Assert(state != null);
     _state = state;
 }