Exemple #1
0
        public ILink createLink(string PrecursorID, string FollowerID, eLnkType type, double delay)
        {
            identity prec = _project.getTaskFactory().getTask(PrecursorID).getIDobject();
            identity foll = _project.getTaskFactory().getTask(FollowerID).getIDobject();

            return(createLink(prec, foll, type, 0));
        }
Exemple #2
0
            private void onTypePropertyWrite(eLnkType newValue)
            {
                DateTime oldDate = date;
                eLnkDot  oldDot  = fDot;
                eLnkType oldType = _type;


                _type = newValue;


                eLnkDot precD = __hlp.getPrecursor(newValue);
                eLnkDot follD = __hlp.getFollower(newValue);

                bool prcChanged = false;
                bool flwChanged = false;

                if (precD != pDot)
                {
                    prcChanged = pDotRelation(precD);
                }
                if (follD != fDot)
                {
                    flwChanged = fDotRelation(follD);
                }

                DateTime newDate     = date;
                bool     dateChanged = oldDate != newDate;


                EA_flwChanges args = new EA_flwChanges();

                if (dateChanged)
                {
                    args.setDate(oldDate, newDate);
                    updateLimitDate();
                }
                if (flwChanged)
                {
                    args.setDot(oldDot, fDot);
                }


                updateLimitType();


                if (dateChanged || flwChanged)
                {
                    parent.onFollowerUpdate(args);
                }
                if (dateChanged)
                {
                    onMngDateChanged(oldDate, newDate);
                }


                parent.onTypeChanged(new EA_valueChange <eLnkType>(oldType, _type));
            }
Exemple #3
0
            public typeManager(link parent, eLnkType type, double delay)
            {
                _delay      = delay;
                this.parent = parent;
                init_functions();

                eLnkDot precD = __hlp.getPrecursor(type);
                eLnkDot follD = __hlp.getFollower(type);

                pDotRelation(precD);
                fDotRelation(follD);
            }
Exemple #4
0
 public static eFLim lnk2lim(eLnkType type)
 {
     switch (type)
     {
     case eLnkType.FinishFinish:
     case eLnkType.FinishStart:
     case eLnkType.StartFinish:
     case eLnkType.StartStart:
         return(eFLim.Fixed);
     }
     throw new Exception("Неверное значение параметра <eLnkType type> функции lnk2lim класса link.");
 }
Exemple #5
0
        public ILink createLink(identity PrecursorID, identity FollowerID, eLnkType type, double delay)
        {
            link newLink = new link(_project,
                                    _project.getTaskFactory().getTask(PrecursorID),
                                    _project.getTaskFactory().getTask(FollowerID),
                                    type, delay);

            newLink.event_linkDeleted += handler_linkDelete;
            addElement(newLink);

            return(newLink);
        }
Exemple #6
0
        public link(IProject Project, ITask Precursor, ITask Follower, eLnkType type, double delay = 0)
        {
            _ID = new identity(eEntity.link);

            _project = Project;
            _project.getLinkFactory().event_linkFactoryDelete += handler_factoryDelete;

            _precursor = Precursor;
            _follower  = Follower;

            lnkLimit  = new limit(link.lnk2lim(type), __hlp.initDate);
            tpManager = new typeManager(this, type, delay);
        }
Exemple #7
0
 public static eLnkDot getPrecursor(eLnkType Type)
 {
     eLnkTypeChunk TC = (eLnkTypeChunk)Type;
     return ((TC & eLnkTypeChunk.Finish_) == eLnkTypeChunk.Finish_) ? eLnkDot.Finish : eLnkDot.Start;
 }
Exemple #8
0
 public static eLnkDot getFollower(eLnkType Type)
 {
     eLnkTypeChunk TC = (eLnkTypeChunk)Type;
     return ((TC & eLnkTypeChunk._Finish) == eLnkTypeChunk._Finish) ? eLnkDot.Finish : eLnkDot.Start;
 }
Exemple #9
0
 public ILink createLink(string PrecursorID, string FollowerID, eLnkType type)
 {
     return(createLink(PrecursorID, FollowerID, type, 0));
 }
Exemple #10
0
 public void setTypeLink(eLnkType type)
 {
     this.type = type;
 }
Exemple #11
0
 public ILink createLink(identity PrecursorID, identity FollowerID, eLnkType type)
 {
     return(createLink(PrecursorID, FollowerID, type, 0));
 }
Exemple #12
0
 public void onLinkTypeChanged(eLnkType type, ITask precrusor, ITask follower)
 {
 }
Exemple #13
0
 public static eFLim lnk2lim(eLnkType type)
 {
     switch(type)
     {
         case eLnkType.FinishFinish:
         case eLnkType.FinishStart:
         case eLnkType.StartFinish:
         case eLnkType.StartStart:
             return eFLim.Fixed;
     }
     throw new Exception("Неверное значение параметра <eLnkType type> функции lnk2lim класса link.");
 }
Exemple #14
0
            public typeManager(link parent, eLnkType type, double delay)
            {
                _delay = delay;
                this.parent = parent;
                init_functions();

                eLnkDot precD = __hlp.getPrecursor(type);
                eLnkDot follD = __hlp.getFollower(type);

                pDotRelation(precD);
                fDotRelation(follD);
            }
Exemple #15
0
 public ILink createLink(string PrecursorID, string FollowerID, eLnkType type)
 {
     return createLink(PrecursorID, FollowerID, type, 0);
 }
Exemple #16
0
 public ILink createLink(string PrecursorID, string FollowerID, eLnkType type, double delay)
 {
     identity prec = _project.getTaskFactory().getTask(PrecursorID).getIDobject();
     identity foll = _project.getTaskFactory().getTask(FollowerID).getIDobject();
     return createLink(prec, foll, type, 0);
 }
Exemple #17
0
 public ILink createLink(identity PrecursorID, identity FollowerID, eLnkType type)
 {
     return createLink(PrecursorID, FollowerID, type, 0);
 }
Exemple #18
0
        public ILink createLink(identity PrecursorID, identity FollowerID, eLnkType type, double delay)
        {
            link newLink = new link(_project,
                _project.getTaskFactory().getTask(PrecursorID),
                _project.getTaskFactory().getTask(FollowerID),
                type, delay);

            newLink.event_linkDeleted += handler_linkDelete;
            addElement(newLink);

            return newLink;
        }
Exemple #19
0
 public void onLinkTypeChanged(eLnkType type, ITask precrusor, ITask follower)
 {
 }
Exemple #20
0
 public void setTypeLink(eLnkType type)
 {
     this.type = type;
 }
Exemple #21
0
        public static eLnkDot getPrecursor(eLnkType Type)
        {
            eLnkTypeChunk TC = (eLnkTypeChunk)Type;

            return(((TC & eLnkTypeChunk.Finish_) == eLnkTypeChunk.Finish_) ? eLnkDot.Finish : eLnkDot.Start);
        }
Exemple #22
0
            private void onTypePropertyWrite(eLnkType newValue)
            {
                DateTime oldDate = date;
                eLnkDot oldDot = fDot;
                eLnkType oldType = _type;

                _type = newValue;

                eLnkDot precD = __hlp.getPrecursor(newValue);
                eLnkDot follD = __hlp.getFollower(newValue);

                bool prcChanged = false;
                bool flwChanged = false;

                if (precD != pDot) prcChanged = pDotRelation(precD);
                if(follD != fDot) flwChanged = fDotRelation(follD);

                DateTime newDate = date;
                bool dateChanged = oldDate != newDate;

                EA_flwChanges args = new EA_flwChanges();
                if (dateChanged)
                {
                    args.setDate(oldDate, newDate);
                    updateLimitDate();
                }
                if (flwChanged) args.setDot(oldDot, fDot);

                updateLimitType();

                if (dateChanged || flwChanged) parent.onFollowerUpdate(args);
                if (dateChanged) onMngDateChanged(oldDate, newDate);

                parent.onTypeChanged(new EA_valueChange<eLnkType>(oldType, _type));
            }
Exemple #23
0
        public static eLnkDot getFollower(eLnkType Type)
        {
            eLnkTypeChunk TC = (eLnkTypeChunk)Type;

            return(((TC & eLnkTypeChunk._Finish) == eLnkTypeChunk._Finish) ? eLnkDot.Finish : eLnkDot.Start);
        }
Exemple #24
0
        public link(IProject Project, ITask Precursor, ITask Follower, eLnkType type, double delay = 0)
        {
            _ID = new identity(eEntity.link);

            _project = Project;
            _project.getLinkFactory().event_linkFactoryDelete += handler_factoryDelete;

            _precursor = Precursor;
            _follower = Follower;

            lnkLimit = new limit(link.lnk2lim(type), __hlp.initDate);
            tpManager = new typeManager(this, type, delay);
        }