/// <summary> /// Конструктор. /// </summary> public FormKinds() { InitializeComponent(); FireCabinetsMenu.Image = IconsGetter.GetIconImage(typeof(FireCabinet)); ExtinguishersMenu.Image = IconsGetter.GetIconImage(typeof(Extinguisher)); HosesMenu.Image = IconsGetter.GetIconImage(typeof(Hose)); }
/// <summary> /// Конструктор. /// </summary> public FormStickers() { InitializeComponent(); dictReport = new Dictionary <Type, Action> { [typeof(FireCabinet)] = () => listView.FillListView(typeof(FireCabinet), fName, filterFireCabinetSticker), [typeof(Extinguisher)] = () => listView.FillListView(typeof(Extinguisher), fName, fParent, filterExtinguisherSticker) }; dictInitColums = new Dictionary <Type, Action> { [typeof(FireCabinet)] = () => listView.InitColumns("Тип", "Наклейка"), [typeof(Extinguisher)] = () => listView.InitColumns("Тип", "Пожарный шкаф", "Наклейка") }; FireCabinetsMenu.Image = IconsGetter.GetIconImage(typeof(FireCabinet)); ExtinguishersMenu.Image = IconsGetter.GetIconImage(typeof(Extinguisher)); FireCabinetsMenu.Click += (s, e) => FillListView(typeof(FireCabinet)); ExtinguishersMenu.Click += (s, e) => FillListView(typeof(Extinguisher)); txbFireCabinets.Tag = typeof(FireCabinet); txbExtinguishers.Tag = typeof(Extinguisher); txbFireCabinets.Text = Sett.Default.SampleNameFireCabinets; txbExtinguishers.Text = Sett.Default.SampleNameExtinguishers; fireCabinetFunc = eq => GetterOfType.GetName(eq, txbFireCabinets.Text); extinguisherFunc = eq => GetterOfType.GetName(eq, txbExtinguishers.Text); filterFireCabinetSticker = new Filter(true, new Instruction(NeedSticker, fireCabinetFunc)); filterExtinguisherSticker = new Filter(true, new Instruction(NeedSticker, extinguisherFunc)); var t = new ToolTip(); t.SetToolTip(txbFireCabinets, "#N - номер пожарного шкафа\n#L - номер помещения"); t.SetToolTip(txbExtinguishers, "#N - номер огнетушителя\n#L - номер помещения\n#F - номер пожарного шкафа"); }
/// <summary> /// Добавить узлы. /// </summary> /// <param name="entities">Сущности.</param> public void NodeAddRange(Hierarchy[] entities) { TreeNode nodeParent; if (entities[0] is Location) { nodeParent = Nodes[0]; } else if (entities[0] is Equipment) { nodeParent = dictNodes[((Equipment)entities[0]).Parent.GetSign()]; } else { return; } var indImage = IconsGetter.GetIndexIcon(entities[0].GetType()); var contextMenuStrip = ContextMenuGetter.GetMenu(entities[0].GetType()); var newNodes = new List <TreeNode>(entities.Length); foreach (var entity in entities) { var newNode = new TreeNode(entity.ToString(), indImage, indImage); newNode.ContextMenuStrip = contextMenuStrip; newNode.Tag = entity.GetSign(); dictNodes.Add(entity.GetSign(), newNode); newNodes.Add(newNode); } nodeParent.Nodes.AddRange(newNodes.ToArray()); SelectedNode = newNodes.First(); Sort(); }
/// <summary> /// Конструктор. /// </summary> public FormReport() { InitializeComponent(); FullMenu.Image = IconsGetter.GetIconImage(typeof(Location)); FireCabinetsMenu.Image = IconsGetter.GetIconImage(typeof(FireCabinet)); ExtinguishersMenu.Image = IconsGetter.GetIconImage(typeof(Extinguisher)); HosesMenu.Image = IconsGetter.GetIconImage(typeof(Hose)); HydrantsMenu.Image = IconsGetter.GetIconImage(typeof(Hydrant)); RechargeExtinguishersMenu.Image = IconsGetter.GetIconImage(typeof(Extinguisher)); FullMenu.Click += (s, e) => FullReport(); FullMenu.Click += (s, e) => lastReport = () => FullReport(); FireCabinetsMenu.Click += (s, e) => FireCabinetsReport(); FireCabinetsMenu.Click += (s, e) => lastReport = () => FireCabinetsReport(); ExtinguishersMenu.Click += (s, e) => ExtinguishersReport(); ExtinguishersMenu.Click += (s, e) => lastReport = () => ExtinguishersReport(); HosesMenu.Click += (s, e) => HosesReport(); HosesMenu.Click += (s, e) => lastReport = () => HosesReport(); HydrantsMenu.Click += (s, e) => HydrantsReport(); HydrantsMenu.Click += (s, e) => lastReport = () => HydrantsReport(); RechargeExtinguishersMenu.Click += (s, e) => RechargeExtinguishersReport(); RechargeExtinguishersMenu.Click += (s, e) => lastReport = () => RechargeExtinguishersReport(); }
/// <summary> /// Заполнить данными. /// </summary> public void LoadFromContext() { this.SuspendDrawing(); using (var ec = new EntityController()) { var projectNode = new TreeNode("Проект"); projectNode.ContextMenuStrip = ContextMenuGetter.GetMenu(0.GetType()); Nodes.Add(projectNode); foreach (var location in ec.Locations) { var locationSign = location.GetSign(); var nodeLocation = CreateNode(projectNode, locationSign, location.ToString(), ContextMenuGetter.GetMenu(typeof(Location))); foreach (var fireCabinet in location.FireCabinets) { var fireCabinetSign = fireCabinet.GetSign(); var nodeFireCabinet = CreateNode(nodeLocation, fireCabinetSign, fireCabinet.ToString(), ContextMenuGetter.GetMenu(typeof(FireCabinet))); foreach (var extinguisher in fireCabinet.Extinguishers) { var extinguisherSign = extinguisher.GetSign(); CreateNode(nodeFireCabinet, extinguisherSign, extinguisher.ToString(), ContextMenuGetter.GetMenu(typeof(Extinguisher))); } foreach (var hose in fireCabinet.Hoses) { var hoseSign = hose.GetSign(); CreateNode(nodeFireCabinet, hoseSign, hose.ToString(), ContextMenuGetter.GetMenu(typeof(Hose))); } foreach (var hydrant in fireCabinet.Hydrants) { var hydrantSign = hydrant.GetSign(); CreateNode(nodeFireCabinet, hydrantSign, hydrant.ToString(), ContextMenuGetter.GetMenu(typeof(Hydrant))); } } } } Sort(); Nodes[0].Expand(); this.ResumeDrawing(); TreeNode CreateNode(TreeNode parent, EntitySign entitySign, string text, ContextMenuStrip menu = null) { var indImage = IconsGetter.GetIndexIcon(entitySign.Type); var child = new TreeNode(text, indImage, indImage); child.ContextMenuStrip = ContextMenuGetter.GetMenu(entitySign.Type); parent.Nodes.Add(child); child.Tag = entitySign; dictNodes.Add(entitySign, child); return(child); } }