//add newsymbolpaletteItem into SymbolPaletteGroup private SymbolPaletteItem addSymbolItem(String name, String tooltip, Path path) { SymbolPaletteItem item = new SymbolPaletteItem(); item.Name = name; item.ToolTip = tooltip; item.Content = path; symbolgroup.Items.Add(item); return(item); }
//Add the new symbolpaletteitem to symbolgroups private SymbolPaletteItem addSymbolItem(object content, String name, String tooltip) { SymbolPaletteItem item = new SymbolPaletteItem(); item.Background = Brushes.Beige; item.Content = content; item.Name = name; item.ToolTip = tooltip; symbolGroup.Items.Add(item); return(item); }
//If the SymbolPaletteItem selection changed private void SymbolItem_SelectionChanged(object sender, SelectionChangedEventArgs e) { foreach (SymbolPaletteItem items in Selectedgroup.Items) { if (SymbolItem.SelectedItem != null && items.ItemName == (SymbolItem.SelectedItem as ComboBoxItem).Content) { SelectedItem = items; break; } } }
// Function set content of the SymbolPalette Item private SymbolPaletteItem addSymbolItem(ImageSource imgSource) { SymbolPaletteItem item = new SymbolPaletteItem(); Image i = new Image(); i.Source = imgSource; // Setting Content of the SymbolPalette Item item.Content = i; i.Stretch = Stretch.Fill; symbolGroup.Items.Add(item); return(item); }
///Add image to Symbolpalette item private void CreateSymbolPaletteItem(SymbolPaletteGroup g, string name) { SymbolPaletteItem item = new SymbolPaletteItem(); item.Height = 60; item.Width = 60; DrawingImage di = App.Current.Resources[name] as DrawingImage; Image i = new Image(); i.Source = di; item.Content = i; item.Name = name; g.Items.Add(item); }
/// <summary> /// Loads the palette with custom shapes /// </summary> void LoadPalette() { //Clear the SymbolPaletteGroups diagramControl.SymbolPalette.SymbolGroups.Clear(); //Clear out the defualt symbolpalettegroups and symbolpalettefilters diagramControl.SymbolPalette.SymbolFilters.Remove(diagramControl.SymbolPalette.SymbolFilters[5]); diagramControl.SymbolPalette.SymbolFilters.Remove(diagramControl.SymbolPalette.SymbolFilters[4]); diagramControl.SymbolPalette.SymbolFilters.Remove(diagramControl.SymbolPalette.SymbolFilters[3]); diagramControl.SymbolPalette.SymbolFilters.Remove(diagramControl.SymbolPalette.SymbolFilters[2]); diagramControl.SymbolPalette.SymbolFilters.Remove(diagramControl.SymbolPalette.SymbolFilters[1]); diagramControl.SymbolPalette.SymbolFilters.Remove(diagramControl.SymbolPalette.SymbolFilters[0]); diagramControl.SymbolPalette.ItemPadding = new Thickness(1); //SymbolPaletteFilter creates a filter for the palette groups. SymbolPaletteFilter sfilter = new SymbolPaletteFilter(); sfilter.Label = "Electrical Components"; diagramControl.SymbolPalette.SymbolFilters.Add(sfilter); //SymbolPaletteGroup creates a group and assigns a specific filter index. symbolGroup = new SymbolPaletteGroup(); symbolGroup.Label = "Electrical Components"; SymbolPalette.SetFilterIndexes(symbolGroup, new Int32Collection(new int[] { 0, 6 })); diagramControl.SymbolPalette.SymbolGroups.Add(symbolGroup); //SymbolPaletteItem specifies the item which can be added to the group. SymbolPaletteItem symbolItem1 = addSymbolItem(this.Resources["i1"] as DrawingImage); SymbolPaletteItem symbolItem2 = addSymbolItem(this.Resources["Diode"] as DrawingImage); SymbolPaletteItem symbolItem3 = addSymbolItem(this.Resources["VerResistor"] as DrawingImage); SymbolPaletteItem symbolItem4 = addSymbolItem(this.Resources["HorResistor"] as DrawingImage); SymbolPaletteItem symbolItem5 = addSymbolItem(this.Resources["VerCapacitor"] as DrawingImage); SymbolPaletteItem symbolItem6 = addSymbolItem(this.Resources["HorCapacitor"] as DrawingImage); SymbolPaletteItem symbolItem7 = addSymbolItem(this.Resources["Junction"] as DrawingImage); SymbolPaletteItem symbolItem8 = addSymbolItem(this.Resources["Image1"] as DrawingImage); SymbolPaletteItem symbolItem9 = addSymbolItem(this.Resources["Battery"] as DrawingImage); SymbolPaletteItem symbolItem10 = addSymbolItem(this.Resources["Switch"] as DrawingImage); SymbolPaletteItem symbolItem11 = addSymbolItem(this.Resources["Coil"] as DrawingImage); SymbolPaletteItem symbolItem12 = addSymbolItem(this.Resources["Image2"] as DrawingImage); SymbolPaletteItem symbolItem13 = addSymbolItem(this.Resources["Image3"] as DrawingImage); SymbolPaletteItem symbolItem14 = addSymbolItem(this.Resources["Image4"] as DrawingImage); SymbolPaletteItem symbolItem15 = addSymbolItem(this.Resources["Image5"] as DrawingImage); SymbolPaletteItem symbolItem16 = addSymbolItem(this.Resources["Image6"] as DrawingImage); SymbolPaletteItem symbolItem17 = addSymbolItem(this.Resources["Image7"] as DrawingImage); SymbolPaletteItem symbolItem18 = addSymbolItem(this.Resources["Image12"] as DrawingImage); SymbolPaletteItem symbolItem19 = addSymbolItem(this.Resources["Image9"] as DrawingImage); SymbolPaletteItem symbolItem20 = addSymbolItem(this.Resources["Image10"] as DrawingImage); SymbolPaletteItem symbolItem21 = addSymbolItem(this.Resources["Image11"] as DrawingImage); SymbolPaletteItem symbolItem22 = addSymbolItem(this.Resources["Image13"] as DrawingImage); SymbolPaletteItem symbolItem23 = addSymbolItem(this.Resources["Image8"] as DrawingImage); }
//Adding custom items to the palette void LoadPalette() { //SymbolPaletteFilter creates a filter for the palette groups. SymbolPaletteFilter sfilter = new SymbolPaletteFilter(); sfilter.Label = "Layout Shapes"; diagramControl.SymbolPalette.SymbolFilters.Add(sfilter); //SymbolPaletteGroup creates a group and assigns a specific filter index. symbolgroup = new SymbolPaletteGroup(); symbolgroup.Label = "Layout Shapes"; SymbolPalette.SetFilterIndexes(symbolgroup, new Int32Collection(new int[] { 0, 3 })); diagramControl.SymbolPalette.SymbolGroups.Add(symbolgroup); //Creating New SymbolPaletteItem SymbolPaletteItem symbolItem1 = addSymbolItem("Class", "Class", App.Current.Resources["RoundedRectangle1"] as Path); SymbolPaletteItem symbolItem2 = addSymbolItem("Interface", "Interface", App.Current.Resources["RoundedRectangle2"] as Path); SymbolPaletteItem symbolItem3 = addSymbolItem("Red", "Red", App.Current.Resources["RoundedRectangle3"] as Path); SymbolPaletteItem symbolItem4 = addSymbolItem("Blue", "Blue", App.Current.Resources["RoundedRectangle4"] as Path); }
//Adding custom items to the palette void LoadPalette() { //SymbolPaletteFilter creates a filter for the palette groups. SymbolPaletteFilter sfilter = new SymbolPaletteFilter(); sfilter.Label = "Layout Shapes"; diagramControl.SymbolPalette.SymbolFilters.Add(sfilter); //SymbolPaletteGroup creates a group and assigns a specific filter index. symbolGroup = new SymbolPaletteGroup(); symbolGroup.Label = "Layout Shapes"; SymbolPalette.SetFilterIndexes(symbolGroup, new Int32Collection(new int[] { 0, 6 })); diagramControl.SymbolPalette.SymbolGroups.Add(symbolGroup); //SymbolPaletteItem specifies the item which can be added to the group. SymbolPaletteItem symbolItem1 = addSymbolItem(App.Current.Resources["ellipse"] as Ellipse, "Ellipse", "Ellipse"); SymbolPaletteItem symbolItem2 = addSymbolItem(App.Current.Resources["roundedrect"] as Path, "Rect", "RoundedRect"); SymbolPaletteItem symbolItem3 = addSymbolItem(App.Current.Resources["id"] as Path, "NodeId", "NodeId"); SymbolPaletteItem symbolItem4 = addSymbolItem(App.Current.Resources["Arrow"] as Border, "Arrow", "Arrow"); }