Beispiel #1
0
        /// <summary>
        /// Создать объект дерева, описывающий базу по S88.
        /// </summary>
        /// <param name="selectedType">Выбранный на форме тип объекта</param>
        /// <returns></returns>
        private ITreeViewItem GetTreeItem(string selectedType)
        {
            ITreeViewItem treeItem = treeObjects
                                     .Where(x => x.EditText[0] == selectedType)
                                     .FirstOrDefault();

            if (treeItem == null)
            {
                ITreeViewItem newTreeItem;
                switch (selectedType)
                {
                case ProcessCell.Name:
                    newTreeItem = new ProcessCell(instance);
                    break;

                case UserObject.Name:
                    newTreeItem = new UserObject(instance);
                    break;

                default:
                    newTreeItem = new S88Object(selectedType, instance);
                    break;
                }

                treeObjects.Add(newTreeItem);
                SortTreeObjectsByCustomComparer();
                newTreeItem.AddParent(instance);

                return(newTreeItem);
            }
            else
            {
                return(treeItem);
            }
        }
Beispiel #2
0
        /// <summary>
        /// Добавить аппарат из LUA
        /// </summary>
        /// <param name="obj">Объект</param>
        /// <param name="name">Имя объекта</param>
        /// <returns></returns>
        private void AddS88ObjectFromLua(TechObject obj, string name)
        {
            var s88Item = treeObjects
                          .Where(x => x is S88Object && x.DisplayText[0].Contains(name))
                          .FirstOrDefault() as S88Object;

            if (s88Item == null)
            {
                s88Item = new S88Object(name);
                treeObjects.Add(s88Item);
            }

            s88Item.AddObjectWhenLoadFromLua(obj);
        }