コード例 #1
0
        public virtual DrawFBDBox GetLeftEndConnectionDrawFBDBox(int _pinno)
        {
            if (LeftPins[_pinno].Connected)
            {
                Guid     wireguid  = LeftPins[_pinno].GetRightGUID();
                DrawWire _drawwire = Parentpagelist.GetDrawWireObject(wireguid);
                return(Parentpagelist.GetFBDBoxObject(_drawwire.LeftGuid));
            }

            return(null);
        }
コード例 #2
0
        public virtual string GetLeftEndConnectionStringOfPin(int _pinno)
        {
            if (LeftPins[_pinno].Connected)
            {
                Guid     wireguid  = LeftPins[_pinno].GetRightGUID();
                DrawWire _drawwire = Parentpagelist.GetDrawWireObject(wireguid);
                return(Parentpagelist.GetFBDBoxObject(_drawwire.LeftGuid).GetOutputPinExpression(_drawwire.LeftPinNo));
                //DrawFBDBox drawfbdbox = drawArea.GetFBDBoxObject(leftguid);
                //return drawfbdbox.GetRightPinConnectionString(_drawwire.LeftPinNo);
            }

            return("");
        }
コード例 #3
0
        public override string GetLeftEndConnectionStringOfPin(int _pinno)
        {
            if (LeftPins[_pinno].Connected)
            {
                Guid       wireguid   = LeftPins[_pinno].GetRightGUID();
                DrawWire   _drawwire  = Parentpagelist.GetDrawWireObject(wireguid);
                Guid       leftguid   = _drawwire.LeftGuid;
                DrawFBDBox drawfbdbox = Parentpagelist.GetFBDBoxObject(leftguid);
                //drawfbdbox.GetLeftEndConnectionStringOfPin(_drawwire.LeftPinNo);
                return(LeftPins[_pinno].PinName + ":=" + drawfbdbox.GetRightPinConnectionString(_drawwire.LeftPinNo));
            }

            return("");
        }
コード例 #4
0
        public virtual List <int> GetRightSideConnectionTypes(int _pinno)
        {
            List <int> _type = new List <int>();

            foreach (Guid guid in  RightPins[_pinno].WireConnectionID)
            {
                DrawWire   _drawwire  = Parentpagelist.GetDrawWireObject(guid);
                Guid       rightguid  = _drawwire.RightGuid;
                DrawFBDBox drawfbdbox = Parentpagelist.GetFBDBoxObject(rightguid);
                _type.Add(drawfbdbox.GetLeftPinType(_drawwire.RightPinNo));
            }

            return(_type);
        }
コード例 #5
0
 public void UpdateWireConnections()
 {
     foreach (FBDPin fbdpin in LeftPins)
     {
         foreach (Guid guid in fbdpin.WireConnectionID)
         {
             Parentpagelist.FindWire(Parentpagelist.ActivePageNo, guid).UpdateWireConections();
         }
     }
     foreach (FBDPin fbdpin in RightPins)
     {
         foreach (Guid guid in fbdpin.WireConnectionID)
         {
             Parentpagelist.FindWire(Parentpagelist.ActivePageNo, guid).UpdateWireConections();
         }
     }
 }
コード例 #6
0
ファイル: DrawWire.cs プロジェクト: ehsanamid/Engineering
        public override bool Save(long _id, int _pageno)
        {
            bool ret = false;

            try
            {
                tblfbdpinconnection.pouID         = _id;
                tblfbdpinconnection.Page          = _pageno;
                tblfbdpinconnection.RightObjectID = Parentpagelist.ReturnFBDBoxSQLID(RightGuid, tblfbdpinconnection.Page);
                tblfbdpinconnection.LeftObjectID  = Parentpagelist.ReturnFBDBoxSQLID(LeftGuid, tblfbdpinconnection.Page);
                tblfbdpinconnection.RightPinNo    = RightPinNo;
                tblfbdpinconnection.LeftPinNo     = LeftPinNo;
                tblfbdpinconnection.autodraw      = AutoDraw;
                tblfbdpinconnection.X0            = pointArray0.X;
                tblfbdpinconnection.Y0            = pointArray0.Y;
                tblfbdpinconnection.X1            = pointArray1.X;
                tblfbdpinconnection.Y1            = pointArray1.Y;
                tblfbdpinconnection.X2            = pointArray2.X;
                tblfbdpinconnection.Y2            = pointArray2.Y;
                tblfbdpinconnection.X3            = pointArray3.X;
                tblfbdpinconnection.Y3            = pointArray3.Y;
                tblfbdpinconnection.X4            = pointArray4.X;
                tblfbdpinconnection.Y4            = pointArray4.Y;
                tblfbdpinconnection.X5            = pointArray5.X;
                tblfbdpinconnection.Y5            = pointArray5.Y;

                if (tblfbdpinconnection.FBDPinConnectionID == -1)
                {
                    tblfbdpinconnection.Insert();
                    //this.SqlTableID = tblfbdpinconnection.FBDPinConnectionID;
                    NewObject = false;
                }
                else
                {
                    tblfbdpinconnection.Update();
                }
                Dirty = false;
                ret   = true;
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
            return(ret);
        }
コード例 #7
0
ファイル: DrawWire.cs プロジェクト: ehsanamid/Engineering
        public override bool Load(object obj)
        {
            bool ret = false;

            Dirty = false;
            tblfbdpinconnection = (tblFBDPinConnection)obj;
            SQLID = tblfbdpinconnection.FBDPinConnectionID;
            //InstanseName = tblfbdpinconnection.InstanceName;
            NewObject = false;
            //OutputObjectName = tblfbdpinconnection.OutputObjectName;
            //InputObjectName = tblfbdpinconnection.InputObjectName;
            RightObjectSQLID = tblfbdpinconnection.RightObjectID;
            LeftObjectSQLID  = tblfbdpinconnection.LeftObjectID;
            RightGuid        = Parentpagelist.ReturnFBDBoxGUID(RightObjectSQLID, tblfbdpinconnection.Page);
            LeftGuid         = Parentpagelist.ReturnFBDBoxGUID(LeftObjectSQLID, tblfbdpinconnection.Page);
            //OutputObjectID = tblfbdpinconnection.OutputObjectID;
            //InputObjectID = tblfbdpinconnection.InputObjectID;
            RightPinNo = tblfbdpinconnection.RightPinNo;
            LeftPinNo  = tblfbdpinconnection.LeftPinNo;
            //OutputPinID = tblfbdpinconnection.OutputPinID;
            //InputPinID = tblfbdpinconnection.InputPinID;
            AutoDraw     = tblfbdpinconnection.autodraw;
            _pointArray0 = Parentpagelist.GetFBDBoxObject(LeftGuid).GetRightPinPosition(LeftPinNo);
            //_pointArray0.X = tblfbdpinconnection.X0;
            //_pointArray0.Y = tblfbdpinconnection.Y0;
            _pointArray1.X = tblfbdpinconnection.X1;
            _pointArray1.Y = tblfbdpinconnection.Y1;
            _pointArray2.X = tblfbdpinconnection.X2;
            _pointArray2.Y = tblfbdpinconnection.Y2;
            _pointArray3.X = tblfbdpinconnection.X3;
            _pointArray3.Y = tblfbdpinconnection.Y3;
            _pointArray4.X = tblfbdpinconnection.X4;
            _pointArray4.Y = tblfbdpinconnection.Y4;
            _pointArray5   = Parentpagelist.GetFBDBoxObject(RightGuid).GetLeftPinPosition(RightPinNo);
            //_pointArray5.X = tblfbdpinconnection.X5;
            //_pointArray5.Y = tblfbdpinconnection.Y5;
            ConnectionIsOk = true;
            Addlinks();
            UpdateWireConections();
            //Leftstring =  drawArea.GetFBDBoxObject(LeftGuid).GetRightPinConnectionString(LeftPinNo);
            Leftstring = Parentpagelist.GetFBDBoxObject(LeftGuid).GetOutputPinExpression(LeftPinNo);
            return(ret);
        }
コード例 #8
0
        public void RefreshVisible()
        {
            try
            {
                int i = 0;
                int n = -1;
                //int m = 0;

                for (i = 0; i < tblfunction.m_tblFormalParameterCollection.Count; i++)
                {
                    if ((tblfunction.m_tblFormalParameterCollection[i].Class == (int)VarClass.Input) ||
                        (tblfunction.m_tblFormalParameterCollection[i].Class == (int)VarClass.InOut) ||
                        (tblfunction.m_tblFormalParameterCollection[i].Class == (int)VarClass.Internal))
                    {
                        if (tblfunction.m_tblFormalParameterCollection[i].Visible)
                        {
                            n++;
                        }
                        if (tblfunction.m_tblFormalParameterCollection[i].Visible != tblfunction.m_tblFormalParameterCollection[i].UVisible)
                        {
                            if (tblfunction.m_tblFormalParameterCollection[i].UVisible == true)
                            {
                                Parentpagelist.AddUpPinNumber(this.GUID, n + 1);
                                LeftPinsLookup.Insert(n + 1, i);
                                LeftPins.Insert(n + 1, new FBDPin(tblfunction.m_tblFormalParameterCollection[i], n + 1));
                            }
                            if (tblfunction.m_tblFormalParameterCollection[i].UVisible == false)
                            {
                                Parentpagelist.RemovePinNumber(this.GUID, n);
                                LeftPinsLookup.RemoveAt(n);
                                LeftPins.RemoveAt(n);
                            }
                            tblfunction.m_tblFormalParameterCollection[i].Visible = tblfunction.m_tblFormalParameterCollection[i].UVisible;
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }
コード例 #9
0
ファイル: DrawWire.cs プロジェクト: ehsanamid/Engineering
 public void Addlinks()
 {
     Parentpagelist.GetFBDBoxObject(RightGuid).AddConnectionToPort(this.GUID, true, RightPinNo);
     Parentpagelist.GetFBDBoxObject(LeftGuid).AddConnectionToPort(this.GUID, false, LeftPinNo);
 }