示例#1
0
        private void DrawLabel(Objects.Label Lab)
        {
            CmdAddLabel CmdAddLabel = new CmdAddLabel();

            CmdAddLabel.Execute(Lab);
            CmdAddLabel.hierarchyID = Lab.HierarchyID;
            Objects.Add(Lab);
        }
示例#2
0
        private void DrawLab_Inverse(Objects.Label Lab)
        {
            CmdAddLabel CmdAddLabel = new CmdAddLabel();

            CmdAddLabel.Unexecute(Lab);
            CmdAddLabel.hierarchyID = Lab.HierarchyID;
            Objects.Remove(Lab);
        }
示例#3
0
        private void btnAddLabel_Click(object sender, EventArgs e)
        {
            Objects.Label Label_object = new Objects.Label();
            if (Selected.Count == 1)
            {
                CmdAddLabel CmdLabel = new CmdAddLabel();
                if (!Selected[0].EventList.Any())
                {
                    Label_object = new Objects.Label(Selected[0].X + 20, Selected[0].Y + 10);
                    Label_object.EventList.Add(Selected[0]);
                    Label_object.Username = Username;

                    for (int i = 0; i < 5; i++)
                    {
                        if (Label_object.EventList[0].HierarchyID[i] != new Guid("00000000-0000-0000-0000-000000000000"))
                        {
                            Label_object.HierarchyID[i] = Label_object.EventList[0].HierarchyID[i];
                        }
                        else
                        {
                            Label_object.HierarchyID[i] = Guid.NewGuid();
                        }
                    }
                }
                else if (Selected[0].EventList.Count == 1)
                {
                    Label_object = new Objects.Label(Selected[0].X + 20, Selected[0].Y + 30);
                    Label_object.EventList.Add(Selected[0]);
                    Label_object.Username = Username;

                    for (int i = 0; i < 5; i++)
                    {
                        if (Label_object.EventList[0].HierarchyID[i] != new Guid("00000000-0000-0000-0000-000000000000"))
                        {
                            Label_object.HierarchyID[i] = Label_object.EventList[0].HierarchyID[i];
                        }
                        else
                        {
                            Label_object.HierarchyID[i] = Guid.NewGuid();
                        }
                    }
                }
                else if (Selected[0].EventList.Count == 2)
                {
                    Label_object = new Objects.Label(Selected[0].X + 20, Selected[0].Y + 50);
                    Label_object.EventList.Add(Selected[0]);
                    Label_object.Username = Username;

                    for (int i = 0; i < 5; i++)
                    {
                        if (Label_object.EventList[0].HierarchyID[i] != new Guid("00000000-0000-0000-0000-000000000000"))
                        {
                            Label_object.HierarchyID[i] = Label_object.EventList[0].HierarchyID[i];
                        }
                        else
                        {
                            Label_object.HierarchyID[i] = Guid.NewGuid();
                        }
                    }
                }

                Selected[0].EventList.Add(Label_object);

                CmdLabel.username   = Username;
                CmdLabel.ID_Command = Guid.NewGuid();
                CmdLabel.Execute(Label_object);
                CmdLabel.hierarchyID = Label_object.HierarchyID;

                Command_manager = Manager.SaveCommand(CmdLabel, CmdLabel.isUndo, CmdLabel.isRedo);

                BinaryFormatter bf = new BinaryFormatter();
                using (MemoryStream data = new MemoryStream())
                {
                    bf.Serialize(data, CmdLabel);
                    ServerStream_priv.Write(data.ToArray(), 0, data.ToArray().Length);
                    ServerStream_priv.Flush();
                }
            }
        }