/// <summary> /// Initialize a new instance of the ViewDrawRibbonGroupButton class. /// </summary> /// <param name="ribbon">Reference to owning ribbon control.</param> /// <param name="ribbonButton">Reference to source button definition.</param> /// <param name="needPaint">Delegate for notifying paint requests.</param> public ViewDrawRibbonGroupButton(KryptonRibbon ribbon, KryptonRibbonGroupButton ribbonButton, NeedPaintHandler needPaint) { Debug.Assert(ribbon != null); Debug.Assert(ribbonButton != null); Debug.Assert(needPaint != null); // Remember incoming references _ribbon = ribbon; GroupButton = ribbonButton; _needPaint = needPaint; _currentSize = GroupButton.ItemSizeCurrent; // Associate this view with the source component (required for design time selection) Component = GroupButton; // Create the different views for different sizes of the button CreateLargeButtonView(); CreateMediumSmallButtonView(); // Update all views to reflect current button state UpdateEnabledState(); UpdateCheckedState(); UpdateDropDownState(); UpdateItemSizeState(); // Hook into changes in the ribbon button definition GroupButton.PropertyChanged += OnButtonPropertyChanged; }
/// <summary> /// Initialize a new instance of the ViewDrawRibbonGroupButtonImage class. /// </summary> /// <param name="ribbon">Reference to owning ribbon control.</param> /// <param name="ribbonButton">Reference to ribbon group button definition.</param> /// <param name="large">Show the large image.</param> public ViewDrawRibbonGroupButtonImage(KryptonRibbon ribbon, KryptonRibbonGroupButton ribbonButton, bool large) : base(ribbon) { Debug.Assert(ribbonButton != null); //Seb dpi aware _smallSize = new Size((int)(16 * FactorDpiX), (int)(16 * FactorDpiY)); _largeSize = new Size((int)(32 * FactorDpiX), (int)(32 * FactorDpiY)); _ribbonButton = ribbonButton; _large = large; }
/// <summary> /// Initialize a new instance of the ViewDrawRibbonGroupButtonText class. /// </summary> /// <param name="ribbon">Source ribbon control.</param> /// <param name="ribbonButton">Group button to display title for.</param> /// <param name="firstText">Should show the first button text.</param> public ViewDrawRibbonGroupButtonText(KryptonRibbon ribbon, KryptonRibbonGroupButton ribbonButton, bool firstText) { Debug.Assert(ribbon != null); Debug.Assert(ribbonButton != null); _ribbon = ribbon; _ribbonButton = ribbonButton; _firstText = firstText; // Use a class to convert from ribbon group to content interface _contentProvider = new RibbonGroupNormalDisabledTextToContent(ribbon.StateCommon.RibbonGeneral, ribbon.StateNormal.RibbonGroupButtonText, ribbon.StateDisabled.RibbonGroupButtonText); }
private void OnAddTriple(object sender, EventArgs e) { if ((_ribbonGroup?.Ribbon != null) && _ribbonGroup.RibbonTab.Groups.Contains(_ribbonGroup)) { // Use a transaction to support undo/redo actions DesignerTransaction transaction = _designerHost.CreateTransaction("KryptonRibbonGroup AddTriple"); try { // Get access to the Items property MemberDescriptor propertyItems = TypeDescriptor.GetProperties(_ribbonGroup)["Items"]; RaiseComponentChanging(propertyItems); // Get designer to create the new triple component KryptonRibbonGroupTriple triple = (KryptonRibbonGroupTriple)_designerHost.CreateComponent(typeof(KryptonRibbonGroupTriple)); _ribbonGroup.Items.Add(triple); // Get access to the Triple.Items property MemberDescriptor propertyTripleItems = TypeDescriptor.GetProperties(triple)["Items"]; RaiseComponentChanging(propertyTripleItems); // Get designer to create three new button components KryptonRibbonGroupButton button1 = (KryptonRibbonGroupButton)_designerHost.CreateComponent(typeof(KryptonRibbonGroupButton)); KryptonRibbonGroupButton button2 = (KryptonRibbonGroupButton)_designerHost.CreateComponent(typeof(KryptonRibbonGroupButton)); KryptonRibbonGroupButton button3 = (KryptonRibbonGroupButton)_designerHost.CreateComponent(typeof(KryptonRibbonGroupButton)); triple.Items.Add(button1); triple.Items.Add(button2); triple.Items.Add(button3); RaiseComponentChanged(propertyTripleItems, null, null); RaiseComponentChanged(propertyItems, null, null); } finally { // If we managed to create the transaction, then do it transaction?.Commit(); } } }
/// <summary> /// Initializes the designer with the specified component. /// </summary> /// <param name="component">The IComponent to associate the designer with.</param> public override void Initialize(IComponent component) { Debug.Assert(component != null); // Validate the parameter reference if (component == null) { throw new ArgumentNullException(nameof(component)); } // Let base class do standard stuff base.Initialize(component); // Cast to correct type _ribbonButton = (KryptonRibbonGroupButton)component; _ribbonButton.DesignTimeContextMenu += OnContextMenu; // Get access to the services _designerHost = (IDesignerHost)GetService(typeof(IDesignerHost)); _changeService = (IComponentChangeService)GetService(typeof(IComponentChangeService)); // We need to know when we are being removed/changed _changeService.ComponentChanged += OnComponentChanged; }
private void InitializeComponent() { this.components = new System.ComponentModel.Container(); this.kryptonRibbon1 = new Krypton.Ribbon.KryptonRibbon(); this.kryptonRibbonTab1 = new Krypton.Ribbon.KryptonRibbonTab(); this.kryptonRibbonGroup1 = new Krypton.Ribbon.KryptonRibbonGroup(); this.kryptonRibbonGroupTriple1 = new Krypton.Ribbon.KryptonRibbonGroupTriple(); this.kgbtnDropShadowOn = new Krypton.Ribbon.KryptonRibbonGroupButton(); this.kgbtnDropShadowOff = new Krypton.Ribbon.KryptonRibbonGroupButton(); this.kryptonRibbonGroup2 = new Krypton.Ribbon.KryptonRibbonGroup(); this.kryptonRibbonGroupTriple2 = new Krypton.Ribbon.KryptonRibbonGroupTriple(); this.krgcmbThemeChooser = new Krypton.Ribbon.KryptonRibbonGroupComboBox(); this.krgdThemeSelector = new Krypton.Ribbon.KryptonRibbonGroupDomainUpDown(); this.krgbApplyTheme = new Krypton.Ribbon.KryptonRibbonGroupButton(); this.kryptonPanel1 = new Krypton.Toolkit.KryptonPanel(); this.kryptonPanel2 = new Krypton.Toolkit.KryptonPanel(); this.statusStrip1 = new System.Windows.Forms.StatusStrip(); this.toolStripStatusLabel1 = new System.Windows.Forms.ToolStripStatusLabel(); this.kryptonManager1 = new Krypton.Toolkit.KryptonManager(this.components); ((System.ComponentModel.ISupportInitialize)(this.kryptonRibbon1)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.kryptonPanel1)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.kryptonPanel2)).BeginInit(); this.kryptonPanel2.SuspendLayout(); this.statusStrip1.SuspendLayout(); this.SuspendLayout(); // // kryptonRibbon1 // this.kryptonRibbon1.AllowFormIntegrate = true; this.kryptonRibbon1.InDesignHelperMode = true; this.kryptonRibbon1.Name = "kryptonRibbon1"; this.kryptonRibbon1.RibbonTabs.AddRange(new Krypton.Ribbon.KryptonRibbonTab[] { this.kryptonRibbonTab1 }); this.kryptonRibbon1.SelectedTab = this.kryptonRibbonTab1; this.kryptonRibbon1.Size = new System.Drawing.Size(1347, 115); this.kryptonRibbon1.TabIndex = 0; // // kryptonRibbonTab1 // this.kryptonRibbonTab1.Groups.AddRange(new Krypton.Ribbon.KryptonRibbonGroup[] { this.kryptonRibbonGroup1, this.kryptonRibbonGroup2 }); // // kryptonRibbonGroup1 // this.kryptonRibbonGroup1.Items.AddRange(new Krypton.Ribbon.KryptonRibbonGroupContainer[] { this.kryptonRibbonGroupTriple1 }); // // kryptonRibbonGroupTriple1 // this.kryptonRibbonGroupTriple1.Items.AddRange(new Krypton.Ribbon.KryptonRibbonGroupItem[] { this.kgbtnDropShadowOn, this.kgbtnDropShadowOff }); // // kgbtnDropShadowOn // this.kgbtnDropShadowOn.ButtonType = Krypton.Ribbon.GroupButtonType.Check; this.kgbtnDropShadowOn.TextLine1 = "Turn Drop Shadow"; this.kgbtnDropShadowOn.TextLine2 = "On"; this.kgbtnDropShadowOn.Click += new System.EventHandler(this.kgbtnDropShadowOn_Click); // // kgbtnDropShadowOff // this.kgbtnDropShadowOff.ButtonType = Krypton.Ribbon.GroupButtonType.Check; this.kgbtnDropShadowOff.TextLine1 = "Turn Drop Shadow"; this.kgbtnDropShadowOff.TextLine2 = "Off"; this.kgbtnDropShadowOff.Click += new System.EventHandler(this.kgbtnDropShadowOff_Click); // // kryptonRibbonGroup2 // this.kryptonRibbonGroup2.Items.AddRange(new Krypton.Ribbon.KryptonRibbonGroupContainer[] { this.kryptonRibbonGroupTriple2 }); // // kryptonRibbonGroupTriple2 // this.kryptonRibbonGroupTriple2.Items.AddRange(new Krypton.Ribbon.KryptonRibbonGroupItem[] { this.krgcmbThemeChooser, this.krgdThemeSelector, this.krgbApplyTheme }); // // krgcmbThemeChooser // this.krgcmbThemeChooser.DropDownWidth = 121; this.krgcmbThemeChooser.FormattingEnabled = false; this.krgcmbThemeChooser.ItemHeight = 15; this.krgcmbThemeChooser.Text = ""; // // krgdThemeSelector // this.krgdThemeSelector.Text = ""; // // krgbApplyTheme // this.krgbApplyTheme.TextLine1 = "Apply"; this.krgbApplyTheme.TextLine2 = "Theme"; this.krgbApplyTheme.Click += new System.EventHandler(this.krgbApplyTheme_Click); // // kryptonPanel1 // this.kryptonPanel1.Dock = System.Windows.Forms.DockStyle.Fill; this.kryptonPanel1.Location = new System.Drawing.Point(0, 115); this.kryptonPanel1.Name = "kryptonPanel1"; this.kryptonPanel1.Size = new System.Drawing.Size(1347, 555); this.kryptonPanel1.TabIndex = 1; // // kryptonPanel2 // this.kryptonPanel2.Controls.Add(this.statusStrip1); this.kryptonPanel2.Dock = System.Windows.Forms.DockStyle.Bottom; this.kryptonPanel2.Location = new System.Drawing.Point(0, 648); this.kryptonPanel2.Name = "kryptonPanel2"; this.kryptonPanel2.Size = new System.Drawing.Size(1347, 22); this.kryptonPanel2.TabIndex = 0; // // statusStrip1 // this.statusStrip1.Font = new System.Drawing.Font("Segoe UI", 9F); this.statusStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { this.toolStripStatusLabel1 }); this.statusStrip1.Location = new System.Drawing.Point(0, 0); this.statusStrip1.Name = "statusStrip1"; this.statusStrip1.RenderMode = System.Windows.Forms.ToolStripRenderMode.ManagerRenderMode; this.statusStrip1.Size = new System.Drawing.Size(1347, 22); this.statusStrip1.TabIndex = 0; this.statusStrip1.Text = "statusStrip1"; // // toolStripStatusLabel1 // this.toolStripStatusLabel1.Name = "toolStripStatusLabel1"; this.toolStripStatusLabel1.Size = new System.Drawing.Size(118, 17); this.toolStripStatusLabel1.Text = "toolStripStatusLabel1"; // // RibbonApp // this.ClientSize = new System.Drawing.Size(1347, 670); this.Controls.Add(this.kryptonPanel2); this.Controls.Add(this.kryptonPanel1); this.Controls.Add(this.kryptonRibbon1); this.Name = "RibbonApp"; this.TextExtra = "Test"; this.UseDropShadow = false; this.Load += new System.EventHandler(this.RibbonApp_Load); ((System.ComponentModel.ISupportInitialize)(this.kryptonRibbon1)).EndInit(); ((System.ComponentModel.ISupportInitialize)(this.kryptonPanel1)).EndInit(); ((System.ComponentModel.ISupportInitialize)(this.kryptonPanel2)).EndInit(); this.kryptonPanel2.ResumeLayout(false); this.kryptonPanel2.PerformLayout(); this.statusStrip1.ResumeLayout(false); this.statusStrip1.PerformLayout(); this.ResumeLayout(false); this.PerformLayout(); }