예제 #1
0
        void ValueNodeTextBox_LabelChanged(object sender, LabelEventArgs e)
        {
            NodeTextBox box = sender as NodeTextBox;

            if (box.Parent.CurrentNode == null)
            {
                return;
            }
            VariableNode node = box.Parent.CurrentNode.Tag as VariableNode;

            node.IsEditing = false;
            try
            {
                var         debugManager   = PluginMain.debugManager;
                var         flashInterface = debugManager.FlashInterface;
                IASTBuilder b   = new ASTBuilder(false);
                ValueExp    exp = b.parse(new java.io.StringReader(node.GetVariablePath()));
                var         ctx = new ExpressionContext(flashInterface.Session, flashInterface.GetFrames()[debugManager.CurrentFrame]);
                var         obj = exp.evaluate(ctx);
                node.Variable = (Variable)obj;
                if (!watchMode)
                {
                    PanelsHelper.watchUI.UpdateElements();
                }
                if (ValueChanged != null)
                {
                    ValueChanged(this, EventArgs.Empty);
                }
            }
            catch (Exception ex)
            {
                ErrorManager.ShowError(TextHelper.GetString("Error.Reevaluate"), ex);
            }
        }
예제 #2
0
        private void projViewer_AfterLabelEdit(object sender, LabelEventArgs e)
        {
            if (string.IsNullOrEmpty(e.NewLabel))
            {
                return;
            }

            ProjectFolder folder = e.Subject as ProjectFolder;

            if (folder != null)
            {
                folder.Name = e.NewLabel;
            }
            else
            {
                ProjectFile file = e.Subject as ProjectFile;
                if (file == null)
                {
                    return;
                }

                FilePath dir = file.FileFullPath.GetDirectoryName();
                if (string.IsNullOrEmpty(dir))
                {
                    return;
                }

                FilePath newFile = dir.Combine(e.NewLabel);
                File.Move(file.FileFullPath, newFile);
                file.FileFullPath = newFile;
            }
        }
예제 #3
0
        void NameNodeTextBox_LabelChanged(object sender, LabelEventArgs e)
        {
            NodeTextBox box = sender as NodeTextBox;

            if (box.Parent.CurrentNode == null)
            {
                return;
            }
            DataNode node = box.Parent.CurrentNode.Tag as DataNode;

            if (e.NewLabel.Trim() == "" || e.NewLabel.Trim() == TextHelper.GetString("Label.AddExpression"))
            {
                node.Text = e.OldLabel != "" ? e.OldLabel : TextHelper.GetString("Label.AddExpression");
                return;
            }
            bool newExp;

            if (node.NextNode == null)
            {
                newExp = PanelsHelper.watchUI.AddElement(e.NewLabel);
            }
            else
            {
                newExp = PanelsHelper.watchUI.ReplaceElement(e.OldLabel, e.NewLabel);
            }
            if (!newExp)
            {
                node.Text = e.OldLabel;
            }
        }
예제 #4
0
        /// <summary>
        /// 插入标注
        /// </summary>
        /// <param name="_esymb"></param>
        /// <param name="position"></param>
        /// <param name="rotateAngle"></param>
        /// <param name="layerId"></param>
        /// <param name="alignment"></param>
        /// <param name="xmlDbManager"></param>
        public static void InsertLabel(ElectronSymbol _esymb, Point3d position, double rotateAngle, ObjectId layerId, int alignment, XmlDBManager xmlDbManager)
        {
            if (_esymb.EntityState != EntityState.Delete)
            {
                _esymb.EntityType = EntityType.Label;
                var value = new LabelEventArgs {
                    xmlDB = xmlDbManager, color = CADColor.FromRgb(0, 0, 0)
                };
                value = GetLabelTextStyle(_esymb, value);

                if (string.IsNullOrEmpty(value.lbText))
                {
                    value.lbText = "";
                }
                //打开图层再添加标注
                PublicMethod.Instance.SetLayerDisplay(layerId, false);
                //标注高度
                var lbHeight = value.lbHeight / MapConfig.Instance.earthscale;

                if (value.lbText.Contains("\n"))
                {
                    var mText = Mtext(value.lbText, position, rotateAngle, lbHeight, layerId);
                    AddEntity(mText, _esymb);
                }
                else
                {
                    var mText = AddText(value.lbText, position, rotateAngle, lbHeight, layerId, value.color, alignment);
                    AddEntity(mText, _esymb);
                }
            }
        }
예제 #5
0
        private static void GetG3e_textstyle(string g3e_UserName, LabelEventArgs e)
        {
            const double increment = 0.05;

            try
            {
                var textstyle = CDDBManager.Instance.GetEntity <G3e_textstyle>(o => o.G3E_USERNAME.ToUpper() == g3e_UserName);
                if (textstyle != null)
                {
                    if (textstyle.G3E_COLOR != null)
                    {
                        e.color = cadColor.FromColor(Color.FromArgb((int)textstyle.G3E_COLOR));
                    }
                    if (textstyle.G3E_SIZE != null)
                    {
                        e.lbHeight = (double)textstyle.G3E_SIZE + increment;
                    }
                }
                else
                {
                    e.lbHeight = 0.2 + increment;
                    e.color    = cadColor.FromRgb(0, 0, 0);
                }
            }
            catch
            {
                e.lbHeight = 0.2 + increment;
                e.color    = cadColor.FromRgb(0, 0, 0);
            }
        }
 private async void OnLabelAdded(object sender, LabelEventArgs e)
 {
     if (sender is TaskModel taskModel)
     {
         await repository.TaskLabels.AddAsync(
             new TaskLabelEntity { LabelId = e.LabelModel.Id, TaskId = taskModel.Id });
     }
 }
예제 #7
0
        /// <summary>
        /// 获取标注值
        /// </summary>
        /// <param name="g3e_cno"></param>
        /// <param name="g3e_fno"> </param>
        /// <param name="g3e_fid"> </param>
        /// <returns></returns>
        public static LabelEventArgs GetLabelText(string g3e_cno, long g3e_fid, long g3e_fno)
        {
            var labelEventArgs = new LabelEventArgs {
                xmlDB = DBManager.Instance as XmlDBManager, color = CADColor.FromRgb(0, 0, 0)
            };

            labelEventArgs = GetLabelTextStyle(g3e_cno, g3e_fid, g3e_fno, labelEventArgs);
            return(labelEventArgs);
        }
예제 #8
0
        /// <summary>
        /// 获取标注值
        /// </summary>
        /// <param name="g3e_cno"></param>
        /// <param name="g3eObject"> </param>
        /// <returns></returns>
        public static LabelEventArgs GetLabelText(string g3e_cno, G3EObject g3eObject)
        {
            var labelEventArgs = new LabelEventArgs {
                xmlDB = DBManager.Instance as XmlDBManager, color = CADColor.FromRgb(0, 0, 0)
            };

            labelEventArgs = GetLabelTextStyle(g3e_cno, g3eObject.G3E_FID, g3eObject.G3E_FNO, labelEventArgs);
            return(labelEventArgs);
        }
예제 #9
0
        /// <summary>
        /// 获取标注值
        /// </summary>
        /// <param name="electronSymbol">标注的坐标表</param>
        /// <returns></returns>
        public static LabelEventArgs GetLabelText(ElectronSymbol electronSymbol)
        {
            var labelEventArgs = new LabelEventArgs {
                xmlDB = DBManager.Instance as XmlDBManager, color = CADColor.FromRgb(0, 0, 0)
            };

            labelEventArgs = GetLabelTextStyle(electronSymbol, labelEventArgs);
            return(labelEventArgs);
        }
예제 #10
0
파일: PiscesTree.cs 프로젝트: woohn/Pisces
 void tb_LabelChanged(object sender, LabelEventArgs e)
 {
     if (treeView1.SelectedNode != null)
     {
         if (LabelChanged != null)
         {
             LabelChanged(this, EventArgs.Empty);
         }
     }
 }
예제 #11
0
        public static void Gg_pd_dlhgq_lb_sdogeom(object sender, LabelEventArgs e)
        {
            var electronSymbol = sender as ElectronSymbol;
            var dbSymbolEntry  = GetDBSymbolEntry(electronSymbol.G3E_FNO);
            //var lbcn =  e.xmlDB.GetEntity<Common_n>((long) sender);
            //if (lbcn == null) return;
            //e.lbText = lbcn.SBMC;
            var str = dbSymbolEntry.Label.SingleOrDefault(o => o.CNO == electronSymbol.GetValue("CNO"));

            GetG3e_textstyle(str.Name, e);
        }
예제 #12
0
        public static void Gg_pd_bdcx_lb_sdogeom(object sender, LabelEventArgs e)
        {
            const string str  = "变低出线标注";
            var          lbcn = e.xmlDB.GetEntity <Common_n>((long)sender);

            if (lbcn == null)
            {
                return;
            }
            GetG3e_textstyle(str, e);
        }
예제 #13
0
        public static void Gg_pd_zfjddz_lb_sdogeom(object sender, LabelEventArgs e)
        {
            const string str  = "站房接地刀闸标注";
            var          lbcn = e.xmlDB.GetEntity <Common_n>((long)sender);

            if (lbcn == null)
            {
                return;
            }
            e.lbText = lbcn.YXBH;
            GetG3e_textstyle(str, e);
        }
예제 #14
0
        public static void Gg_pd_dldy_lb_sdogeom(object sender, LabelEventArgs e)
        {
            const string str  = "低压断连标注";
            var          lbcn = e.xmlDB.GetEntity <Gg_pd_dldy_n>((long)sender);

            if (lbcn == null)
            {
                return;
            }
            e.lbText = lbcn.JDBH;
            GetG3e_textstyle(str, e);
        }
예제 #15
0
        public static void Gg_jc_pwy_lb_sdogeom(object sender, LabelEventArgs e)
        {
            const string str = "配网仪标注";
            var          lbn = e.xmlDB.GetEntity <Gg_jc_pwy_n>((long)sender);

            if (lbn == null)
            {
                return;
            }
            e.lbText = string.Format("{0}最小、最大、平均电流{1}{2}{3}最小、最大、平均电压:{4}{5}{6}最小、最大、平均有功:{7}{8}{9}最小、最大、平均无功:{10}{11}{12}", lbn.PBMC, lbn.ZXDL, lbn.ZDDL, lbn.PJDL, lbn.ZXDY, lbn.ZDDY, lbn.PJDY, lbn.ZXYGDL, lbn.ZDYGDL, lbn.PJYGDL, lbn.ZXWGDL, lbn.ZDWGDL, lbn.PJWGDL);
            GetG3e_textstyle(str, e);
        }
예제 #16
0
        public static void Gg_gz_dyzc_lb_sdogeom(object sender, LabelEventArgs e)
        {
            const string str = "低压支撑标注";
            var          lbn = e.Status ? e.xmlDB.GetEntity <Gg_gz_dyzc_n>((long)sender) : DBManager.Instance.GetEntity <Gg_gz_dyzc_n>((long)sender);

            if (lbn == null)
            {
                return;
            }
            e.lbText = string.Format("{0}{1}", lbn.CD_JCLX, lbn.JCXH);
            GetG3e_textstyle(str, e);
        }
예제 #17
0
        public static void Gg_pd_cbx_pt_sdogeom(object sender, LabelEventArgs e)
        {
            const string str = "低压集中抄表箱标注";
            var          lbn = e.xmlDB.GetEntity <Gg_pd_cbx_n>((long)sender);

            if (lbn == null)
            {
                return;
            }
            e.lbText = lbn.HH;
            GetG3e_textstyle(str, e);
        }
예제 #18
0
        public static void Gg_jc_ldkgx_lb_sdogeom(object sender, LabelEventArgs e)
        {
            const string str  = "路灯开关箱标注";
            var          lbcn = e.xmlDB.GetEntity <Common_n>((long)sender);

            if (lbcn == null)
            {
                return;
            }
            e.lbText = lbcn.SBMC;
            GetG3e_textstyle(str, e);
        }
        private async void OnLabelRemoved(object sender, LabelEventArgs e)
        {
            if (sender is TaskModel taskModel)
            {
                var taskLabelEntities = await repository.TaskLabels.LoadAsync();

                var taskLabelEntity = taskLabelEntities.Single(tle =>
                                                               tle.LabelId == e.LabelModel.Id &&
                                                               tle.TaskId == taskModel.Id);
                await repository.TaskLabels.RemoveAsync(taskLabelEntity);
            }
        }
예제 #20
0
        public static void Gg_pd_dl_lb1_sdogeom(object sender, LabelEventArgs e)
        {
            const string str  = "10KV电缆沿布图标注(设备编码)";
            var          lbcn = e.xmlDB.GetEntity <Common_n>((long)sender);

            if (lbcn == null)
            {
                return;
            }
            e.lbText = lbcn.SBBM;
            GetG3e_textstyle(str, e);
        }
예제 #21
0
        public static void Gg_jc_fk_lb_sdogeom(object sender, LabelEventArgs e)
        {
            const string str = "负控标注";
            var          lbn = e.Status ? e.xmlDB.GetEntity <Gg_jc_fk_n>((long)sender) : DBManager.Instance.GetEntity <Gg_jc_fk_n>((long)sender);

            if (lbn == null)
            {
                return;
            }
            e.lbText = string.Format("{0}最大电流:{1}最小电流{2}平均电流:{3}最大电压:{4}最小电压:{5}平均电压:{6}", lbn.YHH, lbn.ZDDL, lbn.ZXDL, lbn.PJDL, lbn.ZDDL, lbn.ZXDL, lbn.PJDY);
            GetG3e_textstyle(str, e);
        }
예제 #22
0
        public static void Gg_gz_dg_lb_sdogeom(object sender, LabelEventArgs e)
        {
            var          g3e_fid = (long)sender;
            const string str     = "电杆标注";
            var          lbcn    = e.xmlDB.GetEntity <Gg_gz_dg_n>(g3e_fid);

            if (lbcn == null)
            {
                return;
            }
            e.lbText = lbcn.GH;
            GetG3e_textstyle(str, e);
        }
예제 #23
0
        public static void Gg_pd_dydx_lb_sdogeom(object sender, LabelEventArgs e)
        {
            const string str = "低压导线标注";

            var lbn  = e.xmlDB.GetEntity <Gg_pd_dydx_n>((long)sender);
            var lbcn = e.xmlDB.GetEntity <Common_n>((long)sender);

            if (lbn != null && lbcn != null)
            {
                e.lbText = string.Format("{0}-{1}/{2}", lbcn.CD_XHGE, lbn.DXJMJ, lbn.DXCD);
                GetG3e_textstyle(str, e);
            }
        }
예제 #24
0
        public static void Gg_pd_zfbyq_pt_sdogeom2(object sender, LabelEventArgs e)
        {
            var          g3e_fid = (long)sender;
            const string str     = "变压器沿布图标注(用户用电号)";
            var          lbcn    = e.xmlDB.GetEntity <Gg_pd_zfbyq_n>(g3e_fid);

            if (lbcn == null)
            {
                return;
            }
            e.lbText = lbcn.BZ;
            GetG3e_textstyle(str, e);
        }
예제 #25
0
        public static void Gg_pd_dykg_lb_sdogeom(object sender, LabelEventArgs e)
        {
            var          g3e_fid = (long)sender;
            const string str     = "低压开关标注";
            var          lbcn    = e.xmlDB.GetEntity <Common_n>(g3e_fid);

            if (lbcn == null)
            {
                return;
            }
            e.lbText = lbcn.SBMC;
            GetG3e_textstyle(str, e);
        }
예제 #26
0
        public static void Gg_pd_zfhwg_lb1_sdogeom(object sender, LabelEventArgs e)
        {
            var          g3e_fid = (long)sender;
            const string str     = "10kV开关标注(设备编码)";
            var          lbcn    = e.xmlDB.GetEntity <Common_n>(g3e_fid);

            if (lbcn == null)
            {
                return;
            }
            e.lbText = lbcn.YXBH;
            GetG3e_textstyle(str, e);
        }
예제 #27
0
        /// <summary>
        /// Called after a label has been edited.  We need to do some name validation here
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        void textBox_LabelChanged(object sender, LabelEventArgs e)
        {
            SceneNode node = e.Subject as SceneNode;

            if (node == null)
            {
                return;
            }

            GUIView    view    = node.Tag as GUIView;
            GUIControl control = node.Tag as GUIControl;

            if (view != null)
            {
                GUIView existingView = Scene.GetView(e.NewLabel);
                if (existingView != null)
                {
                    MessageBox.Show("Name already in use", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    return;
                }

                // If we got here, it's a unique name.  Change it now.
                view.Name = e.NewLabel;

                if (SelectedViewRenamed != null)
                {
                    SelectedViewRenamed(this, view);
                }
            }
            else if (control != null)
            {
                // Check to see if the parent sceneView contains any other controls by the same name.
                if (control.ParentView.Controls.GetControl(e.NewLabel) != null)
                {
                    MessageBox.Show("Name already in use", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    return;
                }

                // If we got here, it's a unique name.  Change it now.
                control.Name = e.NewLabel;

                if (SelectedControlRenamed != null)
                {
                    SelectedControlRenamed(this, control);
                }
            }
        }
예제 #28
0
 /// <summary>
 /// 更新标注
 /// </summary>
 /// <param name="electronSymbol">Fid</param>
 /// <param name="objectId">标注对象ID</param>
 public static void UpdateDBText1(ElectronSymbol electronSymbol, ObjectId objectId)
 {
     try
     {
         var value = new LabelEventArgs {
             xmlDB = DBManager.Instance as XmlDBManager
         };
         value = GetLabelTextStyle(electronSymbol, value);
         if (!string.IsNullOrEmpty((value.lbText)))
         {
             UpdateDBText(objectId, value.lbText);
         }
     }catch (Exception exception)
     {
         LogManager.Instance.Error(string.Format("更新标注错误!G3E_FID:{0}\n错误信息:{1}", electronSymbol.G3E_FID, exception));
     }
 }
예제 #29
0
        public static void Gg_pd_dx_lb2_sdogeom(object sender, LabelEventArgs e)
        {
            var          g3e_fid = (long)sender;
            const string str     = "10KV导线杂项标注";
            var          n       = e.xmlDB.GetEntity <Gg_pd_dx_n>(g3e_fid);

            if (n == null)
            {
                return;
            }
            //[DXGG] -[JMJ] /[CD]m
            if (!string.IsNullOrEmpty(n.DXGG) && !string.IsNullOrEmpty(n.JMJ.ToString()) && !string.IsNullOrEmpty(n.CD.ToString()))
            {
                e.lbText = string.Format("{0}-{1}/{2}m", n.DXGG, n.JMJ, n.CD);
            }
            GetG3e_textstyle(str, e);
        }
예제 #30
0
 public static void Gg_pd_zfbyq_pt_sdogeom(object sender, LabelEventArgs e)
 {
     ////var g3e_fid = (long)sender;
     ////const string str = "站房变压器标注";
     ////var lbcn = e.xmlDB.GetEntity<Common_n>(g3e_fid);
     ////if (lbcn == null) return;
     ////e.lbText = lbcn.CD_XHGE;
     ////GetG3e_textstyle(str, e);
     //var electronSymbol = sender as ElectronSymbol;
     //var dbSymbolEntry = GetDBSymbolEntry(electronSymbol.G3E_FNO);
     ////var lbcn =  e.xmlDB.GetEntity<Common_n>((long) sender);
     ////if (lbcn == null) return;
     ////e.lbText = lbcn.SBMC;
     //var str = dbSymbolEntry.Label.SingleOrDefault(o => o.CNO == electronSymbol.GetValue("CNO"));
     //GetG3e_textstyle(str.Name, e);
     GetLabelTextStyle(sender, e);
 }
예제 #31
0
 void LabelAdded(object sender, LabelEventArgs e)
 {
     Add(e.Label);
 }
예제 #32
0
 void LabelRemoved(object sender, LabelEventArgs e)
 {
     Remove(e.Label);
 }