private void RibbonSplitButton_DropDownOpened(object sender, EventArgs e) { if (GisEditor.ActiveMap != null) { editingLayerMenuItem.Visibility = (GisEditor.ActiveMap.FeatureLayerEditOverlay != null && GisEditor.ActiveMap.FeatureLayerEditOverlay.EditTargetLayer != null) ? Visibility.Visible : Visibility.Collapsed; foreach (var item in needToRemove) { ribbonSplitButton.Items.Remove(item); } needToRemove.Clear(); var visibleInMemoryLayers = GisEditor.ActiveMap.GetFeatureLayers(true).OfType <InMemoryFeatureLayer>().ToList(); if (visibleInMemoryLayers.Count > 0) { RibbonSeparator ribbonSeparator = new RibbonSeparator(); needToRemove.Add(ribbonSeparator); ribbonSplitButton.Items.Add(ribbonSeparator); foreach (var item in visibleInMemoryLayers) { RibbonMenuItem ribbonMenuItem = new RibbonMenuItem(); ribbonMenuItem.Header = item.Name; ribbonMenuItem.Tag = item; ribbonMenuItem.Click += new RoutedEventHandler(CopyToExistingLayerRibbonMenuItem_Click); ribbonSplitButton.Items.Add(ribbonMenuItem); needToRemove.Add(ribbonMenuItem); } } } }
// 当菜单将动态属性 // 设置为 true 并且用户单击下拉菜单时会激发“菜单项正在加载”事件。这允许在运行时动态 // 添加菜单项。 private void mDynamicMenu_ItemsLoading(object sender, RibbonControlEventArgs e) { mDynamicMenu.Items.Clear(); if (cbButton.Checked) { RibbonButton tmp = this.Factory.CreateRibbonButton(); tmp.Label = "Button"; mDynamicMenu.Items.Add(tmp); } if (cbSeparator.Checked) { RibbonSeparator tmp = this.Factory.CreateRibbonSeparator(); tmp.Title = "Menu Separator"; mDynamicMenu.Items.Add(tmp); } if (cbSubMenu.Checked) { RibbonButton subButton = this.Factory.CreateRibbonButton(); subButton.Label = "SubMenu Button"; subButton.OfficeImageId = "_3DMaterialMetal"; subButton.Description = "Large Button in a Sub Menu"; RibbonMenu mSubMenu = this.Factory.CreateRibbonMenu(); mSubMenu.ItemSize = Microsoft.Office.Core.RibbonControlSize.RibbonControlSizeLarge; mSubMenu.Label = "Sub Menu"; mSubMenu.Items.Add(subButton); mDynamicMenu.Items.Add(mSubMenu); } }
/// <summary> /// Gets the height that a separator should be on the DropDown /// </summary> /// <param name="s"></param> /// <returns></returns> private int SeparatorHeight(RibbonSeparator s) { if (!string.IsNullOrEmpty(s.Text)) { return(20); } return(3); }
public static void AddRibbonButton(Ribbon ribbon, string tabText, string buttonName, string text, Image image, string tooltip, bool enable, bool isChecked, RibbonButtonAlignment alignment, EventHandler clickHandler) { if (ribbon == null) { return; } RibbonItem ribbonItem = null; if (RibbonModulePluginProvider.Ribbon_Separator.Equals(buttonName)) { ribbonItem = new RibbonSeparator(); } else { ribbonItem = new RibbonButton(); ribbonItem.Text = text; ribbonItem.Image = image; ribbonItem.ToolTip = tooltip; ribbonItem.Enabled = enable; ribbonItem.Checked = isChecked; ribbonItem.Click += new EventHandler(clickHandler); } ribbonItem.Name = buttonName; RibbonTab ribbonTab = RibbonHelper.FindRibbonTab(ribbon, tabText); if (ribbonTab == null) { return; } int panelIndex = alignment == RibbonButtonAlignment.Right ? 1 : 0; ribbonTab.Panels[panelIndex].Items.Add(ribbonItem); }
protected override void PrepareContainerForItemOverride(DependencyObject element, object item) { base.PrepareContainerForItemOverride(element, item); if (element is RibbonGallery) { HasGallery = (++_galleryCount > 0); } else { RibbonSeparator separator = element as RibbonSeparator; if (separator != null) { ValueSource vs = DependencyPropertyHelper.GetValueSource(separator, StyleProperty); if (vs.BaseValueSource <= BaseValueSource.ImplicitStyleReference) { separator.SetResourceReference(StyleProperty, MenuItem.SeparatorStyleKey); } separator.DefaultStyleKeyInternal = MenuItem.SeparatorStyleKey; } } }
public void Fill() { if (_data.Rows.Count == 0) { return; } //Obtenemos un DataView filtrando todos o que tengan el tipo Tab //entonces el campo MenuTipoID debe ser igual a 1 DataView dvHijos = new DataView(_data); dvHijos.RowFilter = "MenuTipoID=1"; foreach (DataRowView drvHijos in dvHijos) { RibbonTab rbTab; RibbonGroup rbGroup = new RibbonGroup(); // Creamos el Tab rbTab = _objRibbon.Tabs.Add(drvHijos["NomMenu"].ToString().Trim()); DataView dvGroups = new DataView(_data); dvGroups.RowFilter = "MenuPadreID=" + drvHijos["MenuID"].ToString().Trim(); dvGroups.Sort = "MenuCodigo ASC"; foreach (DataRowView drvGroupItem in dvGroups) { // Creamos el Grupo rbGroup = rbTab.Groups.Add(drvGroupItem["NomMenu"].ToString().Trim()); // Busquemos sus botones para agregar DataView dvItems = new DataView(_data); dvItems.RowFilter = "MenuPadreID=" + drvGroupItem["MenuID"].ToString().Trim(); dvItems.Sort = "MenuCodigo ASC"; foreach (DataRowView drvItem in dvItems) { if (Convert.ToInt32(drvItem["MenuTipoID"]) == 2) { // Creamos el Boton RibbonButton rbutton; rbutton = new RibbonButton(); rbutton.Text = drvItem["NomMenu"].ToString().Trim(); rbutton.ToolTip = drvItem["NomMenu"].ToString().Trim(); rbutton.ID = drvItem["MenuCodigo"].ToString().Trim() + ";" + drvItem["Ensamblado"].ToString().Trim() + ";" + drvItem["Clase"].ToString().Trim(); // Debe se asegurarse que el nombre de la imagen sin extension sea exactamente el mismo al // ResourceImage de la base de datos if (drvItem["Imagen"].ToString().Trim() != "") { rbutton.LargeImage = (Image)Halley.Presentacion.Properties.Resources.ResourceManager.GetObject(drvItem["Imagen"].ToString().Trim()); if (Convert.ToBoolean(drvItem["LargeImage"]) == true) { rbutton.TextImageRelation = TextImageRelation.ImageAboveText; } else { rbutton.TextImageRelation = TextImageRelation.ImageBeforeText; } } rbutton.Tag = drvItem["ModoCargaVentana"].ToString().Trim(); rbGroup.Items.Add(rbutton); // Asignamos el evento para saber cuando pulsamos el boton rbutton.Click += new EventHandler(rbutton_Click); } else if (Convert.ToInt32(drvItem["MenuTipoID"]) == 3) { // Creamos los Separadores RibbonSeparator rbSep = new RibbonSeparator(); rbSep.ID = drvItem["MenuCodigo"].ToString().Trim(); rbGroup.Items.Add(rbSep); } //agregado para ver el split else if (Convert.ToInt32(drvItem["MenuTipoID"]) == 5) { // Creamos el SplitBoton RibbonSplitButton Splitrbutton; Splitrbutton = new RibbonSplitButton(); Splitrbutton.Text = drvItem["NomMenu"].ToString().Trim(); Splitrbutton.ToolTip = drvItem["NomMenu"].ToString().Trim(); // Debe se asegurarse que el nombre de la imagen sin extension sea exactamente el mismo al // ResourceImage de la base de datos if (drvItem["Imagen"].ToString().Trim() != "") { Splitrbutton.LargeImage = (Image)Halley.Presentacion.Properties.Resources.ResourceManager.GetObject(drvItem["Imagen"].ToString().Trim()); if (Convert.ToBoolean(drvItem["LargeImage"]) == true) { Splitrbutton.TextImageRelation = TextImageRelation.ImageAboveText; } else { Splitrbutton.TextImageRelation = TextImageRelation.ImageBeforeText; } } //agregado para que el split tenga botenes hijos DataView dvSplitHijos = new DataView(_data); dvSplitHijos.RowFilter = "MenuPadreID=" + drvItem["MenuID"].ToString().Trim(); foreach (DataRowView drvSplit in dvSplitHijos) { if (Convert.ToInt32(drvSplit["MenuTipoID"]) == 2 && drvSplit["MenuCodigo"].ToString().Length == 10) { // Creamos el Boton RibbonButton rbutton; rbutton = new RibbonButton(); rbutton.Text = drvSplit["NomMenu"].ToString().Trim(); rbutton.ToolTip = drvSplit["NomMenu"].ToString().Trim(); rbutton.ID = drvSplit["MenuCodigo"].ToString().Trim() + ";" + drvSplit["Ensamblado"].ToString().Trim() + ";" + drvSplit["Clase"].ToString().Trim(); // Debe se asegurarse que el nombre de la imagen sin extension sea exactamente el mismo al // ResourceImage de la base de datos if (drvSplit["Imagen"].ToString().Trim() != "") { rbutton.LargeImage = (Image)Halley.Presentacion.Properties.Resources.ResourceManager.GetObject(drvSplit["Imagen"].ToString().Trim()); if (Convert.ToBoolean(drvSplit["LargeImage"]) == true) { rbutton.TextImageRelation = TextImageRelation.ImageAboveText; } else { rbutton.TextImageRelation = TextImageRelation.ImageBeforeText; } } rbutton.Tag = drvSplit["ModoCargaVentana"].ToString().Trim(); Splitrbutton.Items.Add(rbutton); // Asignamos el evento para saber cuando pulsamos el boton rbutton.Click += new EventHandler(rbutton_Click); } } rbGroup.Items.Add(Splitrbutton); } } } } // poniendo el foco en el primer tab creado _objRibbon.Tabs[0].Selected = true; }
public void IconButton() { //タブに同じものがない場合は実行されるようにする if (!_added) { RibbonControl ribbonControl = ComponentManager.Ribbon; RibbonTab Tab = null; foreach (RibbonTab tab in ribbonControl.Tabs) { if (tab.AutomationName == "Extra") { Tab = tab; break; } } if (Tab == null) { //タブの作成 Tab = new RibbonTab(); Tab.Title = "Extra"; Tab.Id = "EXTRA_TAB_ID"; ribbonControl.Tabs.Add(Tab); //パネルの作成 RibbonPanelSource srcPanel = new RibbonPanelSource(); srcPanel.Title = "CreateLinefromCSV"; srcPanel.Id = "CREATELINEFROMCSV_ID"; RibbonPanel Panel = new RibbonPanel(); Panel.Source = srcPanel; Tab.Panels.Add(Panel); //ボタンの作成、コマンドハンドラー実装 RibbonButton button = new RibbonButton(); button.CommandHandler = new CommandHandler(); button.CommandParameter = "._HelloWorld "; // 埋め込みソースの画像を使う場合には名前空間.画像名とします button.Text = "CreateLinefromCSV"; button.Size = RibbonItemSize.Large; button.Image = LoadImage("AMDsample.Logo100.jpg", 32, 32); button.LargeImage = LoadImage("AMDsample.Logo100.jpg", 64, 64); button.ShowText = true; RibbonRowPanel ribRowPanel = new RibbonRowPanel(); ribRowPanel.Items.Add(button); ribRowPanel.Items.Add(new RibbonRowBreak()); srcPanel.Items.Add(ribRowPanel); RibbonSeparator rsP = new RibbonSeparator(); rsP.SeparatorStyle = RibbonSeparatorStyle.Invisible; srcPanel.Items.Add(rsP); Tab.IsActive = true; _added = true; } } }
/// <summary> /// Initializes automation peer for RibbonSeparator. /// </summary> public RibbonSeparatorAutomationPeer(RibbonSeparator owner) : base(owner) { }
public void DrawSeparator(Graphics g, RibbonSeparator separator) { if (separator.SizeMode == RibbonElementSizeMode.DropDown) { if (!string.IsNullOrEmpty(separator.Text)) { using (SolidBrush b = new SolidBrush(ColorTable.SeparatorBg)) { g.FillRectangle(b, separator.Bounds); } using (Pen p = new Pen(ColorTable.SeparatorLine)) { g.DrawLine(p, new Point(separator.Bounds.Left, separator.Bounds.Bottom), new Point(separator.Bounds.Right, separator.Bounds.Bottom)); } } else { using (Pen p = new Pen(ColorTable.DropDownImageSeparator)) { g.DrawLine(p, new Point(separator.Bounds.Left + 30, separator.Bounds.Top + 1), new Point(separator.Bounds.Right, separator.Bounds.Top + 1)); } } } else { using (Pen p = new Pen(ColorTable.SeparatorDark)) { g.DrawLine(p, new Point(separator.Bounds.Left, separator.Bounds.Top), new Point(separator.Bounds.Left, separator.Bounds.Bottom)); } using (Pen p = new Pen(ColorTable.SeparatorLight)) { g.DrawLine(p, new Point(separator.Bounds.Left + 1, separator.Bounds.Top), new Point(separator.Bounds.Left + 1, separator.Bounds.Bottom)); } } }
/// <summary> /// Gets the height that a separator should be on the DropDown /// </summary> /// <param name="s"></param> /// <returns></returns> private int SeparatorHeight(RibbonSeparator s) { if (!string.IsNullOrEmpty(s.Text)) { return 20; } return 3; }
protected virtual void InitCommands(RibbonPanel panel) { RibbonSeparator separator = new RibbonSeparator(); panel.Items.Add(separator); }
private void InitPane() { var panel = new RibbonPanel("Default"); var btnCopyToRight = new RibbonButton("Copy to right"); panel.Items.Add(btnCopyToRight); btnCopyToRight.Click += btnCopyToRight_Click; btnCopyToRight.Image = Properties.Resources.right_normal; btnCopyToRight.SmallImage = Properties.Resources.right_normal; var btnCopyToLeft = new RibbonButton("Copy to left"); panel.Items.Add(btnCopyToLeft); btnCopyToLeft.Click += btnCopyToLeft_Click; btnCopyToLeft.Image = Properties.Resources.left_normal; btnCopyToLeft.SmallImage = Properties.Resources.left_normal; var delimiter1 = new RibbonSeparator(); panel.Items.Add(delimiter1); btnSaveLeft = new RibbonButton("Save left"); panel.Items.Add(btnSaveLeft); btnSaveLeft.Click += btnSaveLeft_Click; btnSaveLeft.Image = Properties.Resources.Save; btnSaveLeft.SmallImage = Properties.Resources.Save; btnSaveLeft.Enabled = false; btnSaveRight = new RibbonButton("Save right"); panel.Items.Add(btnSaveRight); btnSaveRight.Click += btnSaveRight_Click; btnSaveRight.Image = Properties.Resources.Save; btnSaveRight.SmallImage = Properties.Resources.Save; btnSaveRight.Enabled = false; btnSaveAll = new RibbonButton("Save all"); panel.Items.Add(btnSaveAll); btnSaveAll.Click += btnSaveAll_Click; btnSaveAll.Image = Properties.Resources.SaveAll; btnSaveAll.SmallImage = Properties.Resources.SaveAll; btnSaveAll.Enabled = false; var delimiter = new RibbonSeparator(); panel.Items.Add(delimiter); var btnRecalculate = new RibbonButton("Re-calculate"); panel.Items.Add(btnRecalculate); btnRecalculate.Click += btnRecalculate_Click; btnRecalculate.Image = Properties.Resources.CalcScores; btnRecalculate.SmallImage = Properties.Resources.CalcScores; this.ribbonTabMain.Panels.Add(panel); this.splitContainer.SplitterDistance = this.Width / 2; }
//Ribbon hinzufügen public void addRessourceTab() { RibbonSeparator separator = new RibbonSeparator(); separator.SeparatorStyle = RibbonSeparatorStyle.Spacer; //************** //PanelSource IO RibbonPanelSource panelSrcIO = new RibbonPanelSource(); panelSrcIO.Title = "Punkte Import/Export"; //Pt Import RibbonButton bt_PtImport = new RibbonButton(); bt_PtImport.Id = "PtImport"; bt_PtImport.Text = "Punkte importieren"; bt_PtImport.Image = myUtilities.Media.Images.ToImageSource(global::CAS2018.Resources.IN_small); bt_PtImport.LargeImage = myUtilities.Media.Images.ToImageSource(global::CAS2018.Resources.IN_small); bt_PtImport.Orientation = System.Windows.Controls.Orientation.Horizontal; bt_PtImport.Size = RibbonItemSize.Standard; bt_PtImport.ShowText = false; bt_PtImport.ShowImage = true; bt_PtImport.CommandHandler = new RibbonCommandHandler(); bt_PtImport.ShowToolTipOnDisabled = true; bt_PtImport.Description = "Punkte importieren"; //Import 3d? RibbonCheckBox ribchkBoxImport3d = new RibbonCheckBox(); ribchkBoxImport3d.Id = "PtImport3d"; ribchkBoxImport3d.Text = "3d"; ribchkBoxImport3d.Initialized += new EventHandler(ribchkBoxImport3d_Initialized); ribchkBoxImport3d.PropertyChanged += new System.ComponentModel.PropertyChangedEventHandler(ribchkBoxImport3d_PropertyChanged); ribchkBoxImport3d.CommandHandler = new RibbonCommandHandler(); //Pt Export RibbonButton bt_PtExport = new RibbonButton(); bt_PtExport.Id = "PtExport"; bt_PtExport.Text = "Punkte exportieren"; bt_PtExport.Image = myUtilities.Media.Images.ToImageSource(global::CAS2018.Resources.Out_small); bt_PtExport.LargeImage = myUtilities.Media.Images.ToImageSource(global::CAS2018.Resources.Out); bt_PtExport.Orientation = System.Windows.Controls.Orientation.Horizontal; bt_PtExport.Size = RibbonItemSize.Standard; bt_PtExport.ShowText = false; bt_PtExport.ShowImage = true; bt_PtExport.CommandHandler = new RibbonCommandHandler(); bt_PtExport.ShowToolTipOnDisabled = true; bt_PtExport.Description = "Punkte exportieren"; //ComboBox für aktuellen Punktlayer RibbonCombo ribCB_Basislayer = new RibbonCombo(); ribCB_Basislayer.Text = "Basislayer:"; ribCB_Basislayer.ShowText = true; ribCB_Basislayer.MinWidth = 100; ribCB_Basislayer.DropDownWidth = 150; ribCB_Basislayer.Initialized += new EventHandler(ribCB_Basislayer_Initialized); ribCB_Basislayer.CurrentChanged += new EventHandler <RibbonPropertyChangedEventArgs>(ribCB_Basislayer_CurrentChanged); ribCB_Basislayer.DropDownOpened += new EventHandler <EventArgs>(ribCB_Basislayer_DropDownOpened); RibbonRowPanel rowPanel_IO = new RibbonRowPanel(); rowPanel_IO.Items.Add(bt_PtImport); rowPanel_IO.Items.Add(ribchkBoxImport3d); rowPanel_IO.Items.Add(new RibbonRowBreak()); rowPanel_IO.Items.Add(bt_PtExport); rowPanel_IO.Items.Add(separator); rowPanel_IO.Items.Add(ribCB_Basislayer); panelSrcIO.Items.Add(rowPanel_IO); //************** //PanelSource Tools Autodesk.Windows.RibbonPanelSource panelSrcTools = new Autodesk.Windows.RibbonPanelSource(); panelSrcTools.Title = "Tools"; //Punkte einfügen Autodesk.Windows.RibbonButton bt_PtIns = new Autodesk.Windows.RibbonButton(); bt_PtIns.Id = "PtIns"; bt_PtIns.Text = "Punkte einfügen"; bt_PtIns.Image = myUtilities.Media.Images.ToImageSource(global::CAS2018.Resources.BlockManipulation); bt_PtIns.LargeImage = myUtilities.Media.Images.ToImageSource(global::CAS2018.Resources.BlockManipulation); bt_PtIns.Orientation = System.Windows.Controls.Orientation.Horizontal; bt_PtIns.Size = Autodesk.Windows.RibbonItemSize.Standard; bt_PtIns.ShowText = false; bt_PtIns.ShowImage = true; bt_PtIns.CommandHandler = new RibbonCommandHandler(); bt_PtIns.ShowToolTipOnDisabled = true; bt_PtIns.Description = "Punkte einfügen"; //Blockattribute Pre-/Suffix Autodesk.Windows.RibbonButton bt_attPreSuf = new Autodesk.Windows.RibbonButton(); bt_attPreSuf.Id = "BlockManipulator"; bt_attPreSuf.Text = "Block Operationen"; bt_attPreSuf.Image = myUtilities.Media.Images.ToImageSource(global::CAS2018.Resources.BlockManipulation); bt_attPreSuf.LargeImage = myUtilities.Media.Images.ToImageSource(global::CAS2018.Resources.BlockManipulation); bt_attPreSuf.Orientation = System.Windows.Controls.Orientation.Horizontal; bt_attPreSuf.Size = Autodesk.Windows.RibbonItemSize.Standard; bt_attPreSuf.ShowText = false; bt_attPreSuf.ShowImage = true; bt_attPreSuf.CommandHandler = new RibbonCommandHandler(); bt_attPreSuf.ShowToolTipOnDisabled = true; bt_attPreSuf.Description = "Blöcke manipulieren"; //Layer exportieren Autodesk.Windows.RibbonButton bt_layExport = new Autodesk.Windows.RibbonButton(); bt_layExport.Id = "layExport"; bt_layExport.Text = "Layer exportieren"; bt_layExport.Image = myUtilities.Media.Images.ToImageSource(global::CAS2018.Resources.LayerEport); bt_layExport.LargeImage = myUtilities.Media.Images.ToImageSource(global::CAS2018.Resources.LayerEport); bt_layExport.Orientation = System.Windows.Controls.Orientation.Horizontal; bt_layExport.Size = Autodesk.Windows.RibbonItemSize.Large; bt_layExport.ShowText = false; bt_layExport.ShowImage = true; bt_layExport.CommandHandler = new RibbonCommandHandler(); bt_layExport.ShowToolTipOnDisabled = true; bt_layExport.Description = "Layer exportieren"; //Objekte auf 3d heben Autodesk.Windows.RibbonButton bt_Obj3d = new Autodesk.Windows.RibbonButton(); bt_layExport.Id = "Obj3d"; bt_layExport.Text = "Objekte auf 3d heben"; bt_layExport.Image = myUtilities.Media.Images.ToImageSource(global::CAS2018.Resources.ObjTo3d); bt_layExport.LargeImage = myUtilities.Media.Images.ToImageSource(global::CAS2018.Resources.ObjTo3d); bt_layExport.Orientation = System.Windows.Controls.Orientation.Horizontal; bt_layExport.Size = Autodesk.Windows.RibbonItemSize.Standard; bt_layExport.ShowText = false; bt_layExport.ShowImage = true; bt_layExport.CommandHandler = new RibbonCommandHandler(); bt_layExport.ShowToolTipOnDisabled = true; bt_layExport.Description = "Objekte auf 3d heben"; panelSrcTools.Items.Add(bt_PtIns); panelSrcTools.Items.Add(bt_attPreSuf); panelSrcTools.Items.Add(bt_layExport); panelSrcTools.Items.Add(new RibbonRowBreak()); panelSrcTools.Items.Add(bt_Obj3d); //************** //PanelSource Attribute Autodesk.Windows.RibbonPanelSource panelSrcAtt = new Autodesk.Windows.RibbonPanelSource(); panelSrcAtt.Title = "Blockattribute"; Autodesk.Windows.RibbonSubPanelSource panelSubSrcAtt = new Autodesk.Windows.RibbonSubPanelSource(); //Att Pon Autodesk.Windows.RibbonButton bt_AttPon = new Autodesk.Windows.RibbonButton(); bt_AttPon.Id = "AttPon"; bt_AttPon.Image = myUtilities.Media.Images.ToImageSource(global::CAS2018.Resources.AttPon); bt_AttPon.LargeImage = myUtilities.Media.Images.ToImageSource(global::CAS2018.Resources.AttPon); bt_AttPon.Orientation = System.Windows.Controls.Orientation.Vertical; bt_AttPon.Size = Autodesk.Windows.RibbonItemSize.Standard; bt_AttPon.ShowText = false; bt_AttPon.ShowImage = true; bt_AttPon.CommandHandler = new RibbonCommandHandler(); bt_AttPon.ShowToolTipOnDisabled = true; bt_AttPon.Description = "PNr einschalten"; //Att Poff Autodesk.Windows.RibbonButton bt_AttPoff = new Autodesk.Windows.RibbonButton(); bt_AttPoff.Id = "AttPoff"; bt_AttPoff.Image = myUtilities.Media.Images.ToImageSource(global::CAS2018.Resources.AttPoff_small); bt_AttPoff.LargeImage = myUtilities.Media.Images.ToImageSource(global::CAS2018.Resources.AttPoff); bt_AttPoff.Orientation = System.Windows.Controls.Orientation.Horizontal; bt_AttPoff.Size = Autodesk.Windows.RibbonItemSize.Standard; bt_AttPoff.ShowText = false; bt_AttPoff.ShowImage = true; bt_AttPoff.CommandHandler = new RibbonCommandHandler(); bt_AttPoff.ShowToolTipOnDisabled = true; bt_AttPoff.Description = "PNr ausschalten"; //Att Hon Autodesk.Windows.RibbonButton bt_AttHon = new Autodesk.Windows.RibbonButton(); bt_AttHon.Id = "AttHon"; bt_AttHon.Image = myUtilities.Media.Images.ToImageSource(global::CAS2018.Resources.AttHon_small); bt_AttHon.LargeImage = myUtilities.Media.Images.ToImageSource(global::CAS2018.Resources.AttHon_small1); bt_AttHon.Orientation = System.Windows.Controls.Orientation.Horizontal; bt_AttHon.Size = Autodesk.Windows.RibbonItemSize.Standard; bt_AttHon.ShowText = false; bt_AttHon.ShowImage = true; bt_AttHon.CommandHandler = new RibbonCommandHandler(); bt_AttHon.ShowToolTipOnDisabled = true; bt_AttHon.Description = "Höhe einschalten"; //Att Hoff Autodesk.Windows.RibbonButton bt_AttHoff = new Autodesk.Windows.RibbonButton(); bt_AttHoff.Id = "AttHoff"; bt_AttHoff.Image = myUtilities.Media.Images.ToImageSource(global::CAS2018.Resources.AttHoff); bt_AttHoff.LargeImage = myUtilities.Media.Images.ToImageSource(global::CAS2018.Resources.AttHoff); bt_AttHoff.Orientation = System.Windows.Controls.Orientation.Horizontal; bt_AttHoff.Size = Autodesk.Windows.RibbonItemSize.Standard; bt_AttHoff.ShowText = false; bt_AttHoff.ShowImage = true; bt_AttHoff.CommandHandler = new RibbonCommandHandler(); bt_AttHoff.ShowToolTipOnDisabled = true; bt_AttHoff.Description = "Höhe ausschalten"; Autodesk.Windows.RibbonRowPanel rowPanel_Att = new Autodesk.Windows.RibbonRowPanel(); rowPanel_Att.Items.Add(bt_AttPon); rowPanel_Att.Items.Add(bt_AttPoff); rowPanel_Att.Items.Add(new RibbonRowBreak()); rowPanel_Att.Items.Add(bt_AttHon); rowPanel_Att.Items.Add(bt_AttHoff); panelSrcAtt.Items.Add(rowPanel_Att); //************** //PanelSource Zeichnen Autodesk.Windows.RibbonPanelSource panelSrcZeichnen = new Autodesk.Windows.RibbonPanelSource(); panelSrcZeichnen.Title = "Zeichnen"; //Settings Autodesk.Windows.RibbonButton bt_Block3P = new Autodesk.Windows.RibbonButton(); bt_Block3P.Id = "Block3P"; bt_Block3P.Text = "Einstellungen"; bt_Block3P.Image = myUtilities.Media.Images.ToImageSource(global::CAS2018.Resources.Block3P); bt_Block3P.LargeImage = myUtilities.Media.Images.ToImageSource(global::CAS2018.Resources.Block3P); bt_Block3P.Orientation = System.Windows.Controls.Orientation.Horizontal; bt_Block3P.Size = Autodesk.Windows.RibbonItemSize.Standard; bt_Block3P.ShowText = false; bt_Block3P.ShowImage = true; bt_Block3P.CommandHandler = new RibbonCommandHandler(); bt_Block3P.ShowToolTipOnDisabled = true; bt_Block3P.Description = "Block mit 3 Punkten einfügen"; panelSrcZeichnen.Items.Add(bt_Block3P); //************** //PanelSource Settings Autodesk.Windows.RibbonPanelSource panelSrcSettings = new Autodesk.Windows.RibbonPanelSource(); panelSrcSettings.Title = "Settings"; //Settings Autodesk.Windows.RibbonButton bt_Settings = new Autodesk.Windows.RibbonButton(); bt_Settings.Id = "Settings"; bt_Settings.Text = "Einstellungen"; bt_Settings.Image = myUtilities.Media.Images.ToImageSource(global::CAS2018.Resources.settings_16x16); bt_Settings.LargeImage = myUtilities.Media.Images.ToImageSource(global::CAS2018.Resources.Settings); bt_Settings.Orientation = System.Windows.Controls.Orientation.Horizontal; bt_Settings.Size = Autodesk.Windows.RibbonItemSize.Large; bt_Settings.ShowText = false; bt_Settings.ShowImage = true; bt_Settings.CommandHandler = new RibbonCommandHandler(); bt_Settings.ShowToolTipOnDisabled = true; bt_Settings.Description = "Einstellungen "; panelSrcSettings.Items.Add(bt_Settings); //************** //PanelSource Help Autodesk.Windows.RibbonPanelSource panelSrcHelp = new Autodesk.Windows.RibbonPanelSource(); panelSrcHelp.Title = "Hilfe"; //AboutBox Autodesk.Windows.RibbonButton bt_About = new Autodesk.Windows.RibbonButton(); bt_About.Id = "AboutBox"; bt_About.Text = "Info zu CAS2018"; bt_About.Image = myUtilities.Media.Images.ToImageSource(global::CAS2018.Resources.helpdoc); bt_About.LargeImage = myUtilities.Media.Images.ToImageSource(global::CAS2018.Resources.helpdoc); bt_About.Orientation = System.Windows.Controls.Orientation.Horizontal; bt_About.Size = Autodesk.Windows.RibbonItemSize.Large; bt_About.ShowText = false; bt_About.ShowImage = true; bt_About.CommandHandler = new RibbonCommandHandler(); bt_About.ShowToolTipOnDisabled = true; bt_About.Description = "Info über CAS2018"; panelSrcHelp.Items.Add(bt_About); // Row Panel Autodesk.Windows.RibbonRowPanel rowPanel1 = new Autodesk.Windows.RibbonRowPanel(); rowPanel1.Items.Add(bt_About); rowPanel1.Items.Add(bt_attPreSuf); //rowPanel.Items.Add( panelSubSrcAtt); rowPanel1.Items.Add(bt_Settings); rowPanel1.ResizeStyle = Autodesk.Windows.RibbonItemResizeStyles.ChangeSize; rowPanel1.Size = Autodesk.Windows.RibbonItemSize.Standard; // Create a panel for holding the panel // source content Autodesk.Windows.RibbonPanel panelCAS = new Autodesk.Windows.RibbonPanel(); panelCAS.Source = panelSrcIO; Autodesk.Windows.RibbonControl control = panelCAS.RibbonControl; //Tabs Autodesk.Windows.RibbonPanel panel_IO = new Autodesk.Windows.RibbonPanel(); panel_IO.Source = panelSrcIO; Autodesk.Windows.RibbonPanel panel_Tools = new Autodesk.Windows.RibbonPanel(); panel_Tools.Source = panelSrcTools; Autodesk.Windows.RibbonPanel panel_Att = new Autodesk.Windows.RibbonPanel(); panel_Att.Source = panelSrcAtt; Autodesk.Windows.RibbonPanel panel_Zeichnen = new RibbonPanel(); panel_Zeichnen.Source = panelSrcZeichnen; Autodesk.Windows.RibbonPanel panel_Settings = new Autodesk.Windows.RibbonPanel(); panel_Settings.Source = panelSrcSettings; Autodesk.Windows.RibbonPanel panel_Help = new Autodesk.Windows.RibbonPanel(); panel_Help.Source = panelSrcHelp; Autodesk.Windows.RibbonTab tabCAS2018 = new Autodesk.Windows.RibbonTab(); tabCAS2018.Title = "CAS2018"; tabCAS2018.Id = "CAS2018"; tabCAS2018.IsContextualTab = false; tabCAS2018.Panels.Add(panel_IO); tabCAS2018.Panels.Add(panel_Tools); tabCAS2018.Panels.Add(panel_Att); tabCAS2018.Panels.Add(panel_Zeichnen); tabCAS2018.Panels.Add(panel_Settings); tabCAS2018.Panels.Add(panel_Help); // Now add the tab to AutoCAD Ribbon bar... try { Autodesk.Windows.RibbonControl ribbonControl = RibbonServices.RibbonPaletteSet.RibbonControl; Autodesk.Windows.RibbonTab ribTab = new Autodesk.Windows.RibbonTab(); ribbonControl.Tabs.Add(tabCAS2018); } catch { } }
private void taskCategory_DropDownOpened(object sender, EventArgs e) { taskCategoryGallery.Items.Clear(); MenuItem clearCategory = new MenuItem(); clearCategory.Header = "_Clear Category"; clearCategory.Click += taskClearCategory_Click; taskCategoryGallery.Items.Add(clearCategory); bool enabled = tasksView.ActiveTaskCategoryID != ""; if (!enabled) { clearCategory.Loaded += taskSeparator_Loaded; } RibbonSeparator separator = new RibbonSeparator(); separator.Margin = new Thickness(32, 1, 0, 0); separator.Loaded += taskSeparator_Loaded; taskCategoryGallery.Items.Add(separator); Category[] categories = TaskDatabase.GetCategories(); foreach (Category each in categories) { if (!each.ReadOnly) { MenuItem m = new MenuItem(); m.Click += TaskCategory_Click; m.Header = each.Name; m.Tag = each.ID; Border b = new Border(); b.BorderThickness = new Thickness(1); b.Width = b.Height = 14; Color c = each.Color; b.Background = new SolidColorBrush(c); b.BorderBrush = new SolidColorBrush(Color.FromRgb((byte)(c.R > 75 ? c.R - 75 : 0), (byte)(c.G > 70 ? c.G - 70 : 0), (byte)(c.B > 80 ? c.B - 80 : 0))); m.Icon = b; taskCategoryGallery.Items.Add(m); } } RibbonSeparator separator2 = new RibbonSeparator(); separator2.Margin = new Thickness(32, 1, 0, 0); separator2.Loaded += taskSeparator_Loaded; taskCategoryGallery.Items.Add(separator2); MenuItem modifyCategories = new MenuItem(); modifyCategories.Header = "_Edit Categories"; Image icon = new Image(); icon.Stretch = Stretch.None; icon.Source = new BitmapImage(new Uri("pack://application:,,,/Daytimer.Images;component/Images/categorize_sml.png", UriKind.Absolute)); modifyCategories.Icon = icon; modifyCategories.Click += taskModifyCategories_Click; taskCategoryGallery.Items.Add(modifyCategories); }