예제 #1
0
        private Graphic CreateNewStopToAdd(Stop beforeStop, int durationInMinutes)
        {
            string sequenceFieldAlias = Stop.SequenceFieldAlias;
            string sequenceFieldName  = beforeStop.AliasToName(sequenceFieldAlias);

            if (beforeStop.Graphic == null || !beforeStop.Graphic.Attributes.ContainsKey(sequenceFieldName))
            {
                return(null);
            }

            Graphic newStop = Helper.CloneGraphic(beforeStop.Graphic);

            // sequence
            object newSequence = beforeStop.GetPropertyValue(sequenceFieldAlias);

            newStop.Attributes[sequenceFieldName] = newSequence;

            // name
            string idFieldAlias = Stop.IdFieldAlias;
            string idFieldName  = beforeStop.AliasToName(idFieldAlias);
            string newName      = "Break-" + _routeName + "-Created-" + DateTime.Now.ToString("MM_dd-HH_mm_ss");

            newStop.Attributes[idFieldName] = newName;

            // type
            string typeFieldAlias = Stop.TypeFieldAlias;
            string typeFieldName  = beforeStop.AliasToName(typeFieldAlias);
            string typeBreak      = Stop.BreakType;

            newStop.Attributes[typeFieldName] = typeBreak;

            // scheduled duration
            string scheduledDurationFieldAlias = Stop.ScheduledDurationFieldAlias;
            string scheduledDurationFieldName  = beforeStop.AliasToName(scheduledDurationFieldAlias);

            newStop.Attributes[scheduledDurationFieldName] = durationInMinutes;

            return(newStop);
        }
예제 #2
0
        private Graphic CreateNewStopToEdit(Stop stop, int durationInMinutes)
        {
            if (stop.Graphic == null)
            {
                return(null);
            }

            Graphic newStop = Helper.CloneGraphic(stop.Graphic);

            // scheduled duration
            string scheduledDurationFieldAlias = Stop.ScheduledDurationFieldAlias;
            string scheduledDurationFieldName  = stop.AliasToName(scheduledDurationFieldAlias);

            newStop.Attributes[scheduledDurationFieldName] = durationInMinutes;

            return(newStop);
        }
        private Graphic CreateNewStopToMove(Stop stopToMove, Stop beforeStop)
        {
            string sequenceFieldAlias = Stop.SequenceFieldAlias;
              string sequenceFieldName = beforeStop.AliasToName(sequenceFieldAlias);
              if (stopToMove.Graphic == null || !stopToMove.Graphic.Attributes.ContainsKey(sequenceFieldName))
            return null;
              if (beforeStop.Graphic == null || !beforeStop.Graphic.Attributes.ContainsKey(sequenceFieldName))
            return null;

              object newSequence = CalculateMovedStopNewSequence(stopToMove, beforeStop);
              if (newSequence == null)
            return null;

              Graphic newStop = Helper.CloneGraphic(stopToMove.Graphic);
              newStop.Attributes[sequenceFieldName] = newSequence;

              return newStop;
        }
        private Graphic CreateNewStopToEdit(Stop stop, int durationInMinutes)
        {
            if (stop.Graphic == null)
            return null;

              Graphic newStop = Helper.CloneGraphic(stop.Graphic);

              // scheduled duration
              string scheduledDurationFieldAlias = Stop.ScheduledDurationFieldAlias;
              string scheduledDurationFieldName = stop.AliasToName(scheduledDurationFieldAlias);
              newStop.Attributes[scheduledDurationFieldName] = durationInMinutes;

              return newStop;
        }
        private Graphic CreateNewStopToAdd(Stop beforeStop, int durationInMinutes)
        {
            string sequenceFieldAlias = Stop.SequenceFieldAlias;
              string sequenceFieldName = beforeStop.AliasToName(sequenceFieldAlias);
              if (beforeStop.Graphic == null || !beforeStop.Graphic.Attributes.ContainsKey(sequenceFieldName))
            return null;

              Graphic newStop = Helper.CloneGraphic(beforeStop.Graphic);

              // sequence
              object newSequence = beforeStop.GetPropertyValue(sequenceFieldAlias);
              newStop.Attributes[sequenceFieldName] = newSequence;

              // name
              string idFieldAlias = Stop.IdFieldAlias;
              string idFieldName = beforeStop.AliasToName(idFieldAlias);
              string newName = "Break-" + _routeName + "-Created-" + DateTime.Now.ToString("MM_dd-HH_mm_ss");
              newStop.Attributes[idFieldName] = newName;

              // type
              string typeFieldAlias = Stop.TypeFieldAlias;
              string typeFieldName = beforeStop.AliasToName(typeFieldAlias);
              string typeBreak = Stop.BreakType;
              newStop.Attributes[typeFieldName] = typeBreak;

              // scheduled duration
              string scheduledDurationFieldAlias = Stop.ScheduledDurationFieldAlias;
              string scheduledDurationFieldName = beforeStop.AliasToName(scheduledDurationFieldAlias);
              newStop.Attributes[scheduledDurationFieldName] = durationInMinutes;

              return newStop;
        }