/// <summary> /// Method to subscribe the GroupView Events in the sample /// </summary> /// <param name="item"></param> private void SubscribeToItemEvents(GroupViewItem item) { if (item != null) { } }
/// <summary> /// Set the selected symbol model to the one matching the given symbol /// model name. /// </summary> /// <param name="symbolName">Name of symbol model to select</param> public bool SelectSymbolModel(string symbolName) { bool found = false; for (int gvIdx = 0; gvIdx < this.GroupViewItems.Count; gvIdx++) { GroupViewItem gvItem = this.GroupViewItems[gvIdx]; if (gvItem != null) { if (gvItem.Tag != null) { SymbolModel curSymbolMdl = gvItem.Tag as SymbolModel; if (curSymbolMdl != null) { if (curSymbolMdl.Name == symbolName) { found = true; this.SelectedItem = gvIdx; break; } } } } } return(found); }
/// <summary> /// Loads the given symbol palette into this control. /// </summary> /// <param name="palette">Palette to load</param> /// <returns>true if successful; otherwise false</returns> /// <remarks> /// <seealso cref="Syncfusion.Windows.Forms.Diagram.SymbolPalette"/> /// </remarks> public bool LoadPalette(SymbolPalette palette) { if (palette == null) { return(false); } bool success = true; int symbolMdlIdx; SymbolModel symModel = null; GroupViewItem gvItem = null; for (symbolMdlIdx = 0; symbolMdlIdx < palette.ChildCount; symbolMdlIdx++) { symModel = palette.GetChild(symbolMdlIdx) as SymbolModel; if (symModel != null) { int imageIdx = 0; int lgImageIdx = 0; int smImageIdx = 0; if (symModel.SmallIcon != null) { smImageIdx = this.AddSmallIcon(symModel.SmallIcon); } if (symModel.LargeIcon != null) { lgImageIdx = this.AddLargeIcon(symModel.LargeIcon); } if (this.SmallImageView) { imageIdx = smImageIdx; } else { imageIdx = lgImageIdx; } gvItem = new GroupViewPaletteItem(symModel, imageIdx); this.GroupViewItems.Add(gvItem); } } palette.ChildrenChangeComplete += new NodeCollection.EventHandler(OnPalette_ChildrenChangeComplete); palette.EventsEnabled = true; this.palette = palette; return(success); }
private void AddEditGroup_Load(object sender, EventArgs e) { if (IsEditMode) { this.Text = "Edit Group"; btnSubmit.Text = "Update Group"; txbGroupName.Text = sql.ExecuteScalarACon <string>($"SELECT Name FROM Groups WHERE ID = '{GroupID}'"); } else { this.Text = "Add New Group"; } // Load all devices and add then to the view sql.Open(); using (SQLiteDataReader reader = sql.ExecuteQuery("SELECT * FROM Devices LEFT JOIN GroupAssigns ON Devices.MACAddress = GroupAssigns.MACAddress WHERE GroupAssigns.GroupID IS NULL ORDER BY Devices.Name ASC")) { while (reader.Read()) { // Add device to view GroupViewItem gvi = new GroupViewItem( Convert.ToString(reader["Name"]), grvDevices.SmallImageList.Images.IndexOfKey( Convert.ToString(reader["DeviceType"]) + "_RAW") ); gvi.Tag = Convert.ToString(reader["MACAddress"]); grvDevices.GroupViewItems.Add(gvi); } } if (!IsEditMode) { // Create new group sql.ExecuteNonQuery($"INSERT INTO Groups (Name, Description, DeviceType) VALUES ('{newGroupGuid}', '', '{DeviceType.UnknownDevice}')"); GroupID = sql.ExecuteScalar <int>($"SELECT ID FROM Groups WHERE Name = '{newGroupGuid}'"); } sql.Close(); UpdateGroupDeviceList(); }
private void FillData() { this.groupView1.GroupViewItems.Clear(); this.groupView1.MarkedItems.Clear(); this.groupView1.MarkedBoldItems.Clear(); foreach (ValueThree<Device, bool, FreezeStatus> p in m_Controller.Items) { GroupViewItem item = new GroupViewItem( p.Value1.Type.Name, Convert.ToInt32(p.Value2), true, p.Value1, p.Value1.Type.Name); this.groupView1.GroupViewItems.Add(item); //если у устройства установлен флажок "применить для всего сценария" то выделить жирным if (p.Value3 == FreezeStatus.Freeze) this.groupView1.MarkedBoldItems.Add(item); } //первое заполнение, пользователь еще не выбирал устройство if (this.m_SelectedItem == -1) this.m_SelectedItem = 0; this.groupView1.SelectedItem = this.m_SelectedItem; if (this.m_SelectedItem != -1 && groupView1.SelectedItem != -1) this.m_Controller.ChangeSelectedItem( (Device)groupView1.GroupViewItems[groupView1.SelectedItem].Tag); }
private void UpdateGroupDeviceList() { grvDevicesInGroup.GroupViewItems.Clear(); sql.Open(); using (SQLiteDataReader reader = sql.ExecuteQuery($"SELECT Devices.Name AS Name, Devices.DeviceType, Devices.MACAddress FROM Groups INNER JOIN GroupAssigns ON Groups.ID = GroupAssigns.GroupID INNER JOIN Devices ON GroupAssigns.MACAddress = Devices.MACAddress WHERE Groups.ID = '{GroupID}' ORDER BY Devices.Name ASC")) { while (reader.Read()) { // Add device to view GroupViewItem gvi = new GroupViewItem( Convert.ToString(reader["Name"]), grvDevicesInGroup.SmallImageList.Images.IndexOfKey( Convert.ToString(reader["DeviceType"]) + "_RAW") ); gvi.Tag = Convert.ToString(reader["MACAddress"]); grvDevicesInGroup.GroupViewItems.Add(gvi); } } sql.Close(); }
/// <summary> /// Notifies the click event. /// </summary> /// <param name="sender">Invokes the click event</param> /// <param name="e"></param> void menu_Click(object sender, RoutedEventArgs e) { ContextMenu contextMenu = (ContextMenu)(e.OriginalSource as MenuItem).Parent; if (contextMenu.PlacementTarget is GroupBarItem) { GroupBarItem groupBarItem = (GroupBarItem)contextMenu.PlacementTarget; MessageBox.Show(groupBarItem.HeaderText); } else if (contextMenu.PlacementTarget is GroupView) { GroupView groupBarView = (GroupView)contextMenu.PlacementTarget; for (int i = 0; i < groupBarView.Items.Count; i++) { GroupViewItem groupBarviewItem = (GroupViewItem)groupBarView.Items[i]; if (groupBarviewItem.IsSelected) { MessageBox.Show(groupBarviewItem.Text); break; } } } }
void m_Controller_OnSourcesChanged() { if (this.InvokeRequired) { this.Invoke(new MethodInvoker(m_Controller_OnSourcesChanged)); return; } clear(); foreach (var cat in m_Controller.Categories) { GroupBarItem item = new GroupBarItem() { Text = cat.Key }; this.groupBar1.GroupBarItems.Add(item); SwitchableGroupView view = createGroupView(); item.Client = view; foreach (var src in cat.Value) { var newItem = new GroupViewItem() { Text = src.Key, ToolTipText = src.Key, Tag = src.Value }; view.GroupViewItems.Add(newItem); view.MarkedItems[newItem] = m_Controller.States[cat.Key][src.Key]; //if (!m_Controller.States[cat.Key][src.Key]) // view.MarkedItems.Add(newItem); } } if (this.groupBar1.GroupBarItems.Count > 0) { this.groupBar1.SelectedItem = 0; GroupView currView = (this.groupBar1.GroupBarItems[0].Client as GroupView); if (currView.GroupViewItems.Count > 0) { this.m_Controller.ChangeSelectedItem(currView.GroupViewItems[0].Tag); return; } } this.m_Controller.ChangeSelectedItem(null); }
private CommandItemViewItem GetCommandItem(TreeNode node, GroupViewItem group) => group.CommandItems.Single(c => c.Name == node.Name);
private void AddNewGroup(GroupViewItem group) { BeginUpdate(); var newSubGroupNodes = group.CommandItems.Select(item => { var commandItemNode = new TreeNode { Text = item.Name, Name = item.Name, ContextMenuStrip = new ContextMenuStrip() }; if (string.IsNullOrWhiteSpace(item.CommandLine)) { commandItemNode.ContextMenuStrip.Items.Add(NewUrl, null, (sender, e) => CreateSubNode(commandItemNode, SubGroupName)); } else { var commandLineNode = new HiddenCheckBoxTreeNode { Text = item.CommandLine, Name = item.CommandLine, ContextMenuStrip = new ContextMenuStrip() }; if (!string.IsNullOrWhiteSpace(item.CommandLine)) { commandLineNode.ContextMenuStrip.Items.Add(Edit, null, (sender, e) => EditCommandLineNode(commandLineNode)); } if (!StateImageList.Images.ContainsKey(item.ImageKey)) { item.CreateImageKey(); StateImageList.Images.Add(item.ImageKey, item.Image); commandLineNode.StateImageKey = item.ImageKey; } commandItemNode.Nodes.Add(commandLineNode); } commandItemNode.ContextMenuStrip.Items.Add(Edit, null, (sender, e) => EditTreeNode(commandItemNode, Edit)); return(commandItemNode); }).ToArray(); var newGroupNode = new TreeNode(group.Name, newSubGroupNodes) { Name = group.Name, ContextMenuStrip = new ContextMenuStrip() }; newGroupNode.ContextMenuStrip.Items.Add(NewSubGroup, null, (sender, e) => CreateSubNode(newGroupNode, SubGroupName)); newGroupNode.ContextMenuStrip.Items.Add(Edit, null, (sender, e) => EditTreeNode(newGroupNode, Edit)); if (!ValidateCollection(newGroupNode, Nodes)) { listDataSource.Remove(group); } EndUpdate(); }