/// <summary> /// Построение дерева на основе определенных операций проекта. /// </summary> public bool ShowModes(TechObject.TechObjectManager techManager, bool showCheckBoxes, bool showOneNode, ITreeViewItem item, ITreeViewItem checkedMode, OnSetNewValue fn, bool isRebuiltTree = false) { if (fn != null) { functionAfterCheck = fn; } if (showCheckBoxes) { modesTreeViewAdv.NodeControls.Insert(0, nodeCheckBox); } else { modesTreeViewAdv.NodeControls.Remove(nodeCheckBox); } //Проверяем на изменение типов отображаемых операций. if (isRebuiltTree == false) { ShowDlg(); return(true); } Refresh(techManager, checkedMode, showOneNode, item); ShowDlg(); return(true); }
/// <summary> /// Выбор операции на дереве, которые входят в ограничения. /// </summary> /// <param name="checkedDev">Объект, в котором хранятся ограничения.</param> /// <param name="fn">Делегат, который вызывается при последующих изменениях операций в ограничениях.</param> public void SelectDevices(ITreeViewItem checkedDev, OnSetNewValue fn) { modesTreeViewAdv.BeginUpdate(); foreach (TreeNodeAdv boxedNode in modesTreeViewAdv.AllNodes) { Node node = boxedNode.Tag as Node; node.CheckState = CheckState.Unchecked; } nodeCheckBox.CheckStateChanged -= new EventHandler <TreePathEventArgs>(treeItem_AfterCheck); if (fn != null) { functionAfterCheck = fn; } TreeModel treeModel = modesTreeViewAdv.Model as TreeModel; List <Node> nodes = treeModel.Nodes.ToList(); selectedDevices(nodes, checkedDev); nodeCheckBox.CheckStateChanged += new EventHandler <TreePathEventArgs>(treeItem_AfterCheck); modesTreeViewAdv.EndUpdate(); }
/// <summary> /// Построение дерева на основе определенных операций проекта. /// </summary> public bool ShowModes(TechObject.TechObjectManager techManager, bool showCheckBoxes, bool showOneNode, Editor.ITreeViewItem item, Editor.ITreeViewItem checkedMode, OnSetNewValue function, bool isRebuiltTree = false) { if (function != null) { functionAfterCheck = function; } if (showCheckBoxes) { modesTreeViewAdv.NodeControls.Insert(0, nodeCheckBox); } else { modesTreeViewAdv.NodeControls.Remove(nodeCheckBox); } if (isRebuiltTree == true) { Refresh(techManager, checkedMode, showOneNode, item); } ShowDlg(); return(true); }
/// <summary> /// Выбор операции на дереве, которые входят в ограничения. /// </summary> /// <param name="checkedDev">Объект, в котором хранятся ограничения. /// </param> /// <param name="function">Делегат, который вызывается при последующих /// изменениях операций в ограничениях.</param> public void SelectDevices(Editor.ITreeViewItem checkedDev, OnSetNewValue function) { modesTreeViewAdv.BeginUpdate(); foreach (TreeNodeAdv boxedNode in modesTreeViewAdv.AllNodes) { Node node = boxedNode.Tag as Node; node.CheckState = CheckState.Unchecked; } nodeCheckBox.CheckStateChanged -= treeItem_AfterCheck; if (function != null) { functionAfterCheck = function; } var treeModel = modesTreeViewAdv.Model as TreeModel; List <Node> nodes = treeModel.Nodes.ToList(); SelectedDevices(nodes, checkedDev); nodeCheckBox.CheckStateChanged += treeItem_AfterCheck; modesTreeViewAdv.EndUpdate(); var root = (Node)modesTreeViewAdv.AllNodes.First()?.Tag; OnCheckOperationTree.RefreshDict(root); }
/// <summary> /// Построение дерева на основе определенных устройств проекта. /// </summary> /// <param name="deviceManager">Менеджер устройств проекта.</param> /// <param name="devTypes">Показывать данные типы устройств.</param> /// /// <param name="devSubTypes">Показывать данные подтипы устройств. /// </param> public bool ShowDevices(Device.DeviceManager deviceManager, Device.DeviceType[] devTypes, Device.DeviceSubType[] devSubTypes, bool showChannels, bool showCheckboxes, string checkedDev, OnSetNewValue fn, bool isRebuiltTree = false) { prevShowChannels = showChannels; prevShowCheckboxes = showCheckboxes; if (fn != null) { functionAfterCheck = fn; } if (showCheckboxes) { devicesTreeViewAdv.NodeControls.Insert(0, nodeCheckBox); } else { devicesTreeViewAdv.NodeControls.Remove(nodeCheckBox); } //Проверяем на изменение типов отображаемых устройств. if (Equals(devTypes, devTypesLastSelected) && Equals(devSubTypes, devSubTypesLastSelected) && isRebuiltTree == false) { ShowDlg(); return(true); } devTypesLastSelected = devTypes; devSubTypesLastSelected = devSubTypes; Refresh(deviceManager, checkedDev); ShowDlg(); return(true); }