示例#1
0
 internal void UpdateTimelineType(TimeLineType type)
 {
     foreach (var threadListItem in Threads)
     {
         threadListItem.TimeLineType = type;
     }
 }
示例#2
0
 void UpdateTimeLine(RestUsage r, RestUpdateDelegate func, TimeLineType type, int sinceListIndex)
 {
     r.LastExecTime = DateTime.Now;
     r.IsRunning    = true;
     ThreadPool.QueueUserWorkItem(delegate(object o) {
         try {
             Status[] statuses = func(_restSinceList[sinceListIndex], null, r.Count, null);
             _restSinceList[sinceListIndex] = TwitterClient.GetMaxStatusID(_restSinceList[sinceListIndex], statuses);
             _dispatcher.BeginInvoke(new EmptyDelegate(delegate() {
                 for (int i = 0; i < statuses.Length; i++)
                 {
                     statuses[i].AccountInfo = this;
                     if (type == TimeLineType.Home && IsMention(statuses[i]))
                     {
                         Mentions.Add(statuses[i]);
                         if (!_mgr.HomeIncludeMentions)
                         {
                             continue;
                         }
                     }
                     else if (type == TimeLineType.Mentions && _mgr.HomeIncludeMentions)
                     {
                         HomeTimeline.Add(statuses[i]);
                     }
                     r.TimeLine.Add(statuses[i]);
                 }
             }));
         } catch {
         } finally {
             r.IsRunning    = false;
             r.LastExecTime = DateTime.Now;
             r.UpdateNextExecTimeRemaining();
         }
     });
 }
示例#3
0
        public ITimeLineService GetTimeLineService(TimeLineType timeLineType)
        {
            switch (timeLineType)
            {
            case TimeLineType.Home:
            {
                return(_serviceProvider.GetService <HomeTimeLineService>());
            }

            default:
            {
                throw new Exception("Does not implement ITimeLineService for default case");
            }
            }
        }
        public static ISpecialTimeLine[] GetList(TimeLineType timeLineType)
        {
            var s = new List<ISpecialTimeLine>();
            lock (Items)
            {
                foreach (var item in Items.Values)
                {
                    if (item.Timelinetype == timeLineType)
                    {
                        s.Add(item);
                    }
                }
            }

            return s.ToArray();
        }
        public JTimelineBase AddNewTimeline(TimeLineType type)
        {
            JTimelineBase timeline = null;
            string        name     = Enum.GetName(typeof(TimeLineType), type);

            UnityEngine.Transform line = transform.Find(name + "Timeline for " + affectedObject.name);
            if (line == null)
            {
                GameObject newTimeline = new GameObject(name + "Timeline for " + affectedObject.name);
                newTimeline.transform.parent = transform;
                line = newTimeline.transform;
            }

            if (type == TimeLineType.Animation && (timeline = line.GetComponent <JTimelineAnimation>()) == null)
            {
                timeline = line.gameObject.AddComponent <JTimelineAnimation>();
            }
            if (type == TimeLineType.Particle && (timeline = line.GetComponent <JTimelineParticle>()) == null)
            {
                timeline = line.gameObject.AddComponent <JTimelineParticle>();
            }
            if (type == TimeLineType.Sound && (timeline = line.GetComponent <JTimelineSound>()) == null)
            {
                timeline = line.gameObject.AddComponent <JTimelineSound>();
            }
            if (type == TimeLineType.Transform && (timeline = line.GetComponent <JTimelineTransform>()) == null)
            {
                timeline = line.gameObject.AddComponent <JTimelineTransform>();
            }
            if (type == TimeLineType.Event && (timeline = line.GetComponent <JTimelineEvent>()) == null)
            {
                timeline = line.gameObject.AddComponent <JTimelineEvent>();
            }
            if (type == TimeLineType.Trajectory && (timeline = line.GetComponent <JTimelineTrajectory>()) == null)
            {
                timeline = line.gameObject.AddComponent <JTimelineTrajectory>();
            }
            if (type == TimeLineType.CameraAction && (timeline = line.GetComponent <JTimelineCamera>()) == null)
            {
                timeline = line.gameObject.AddComponent <JTimelineCamera>();
            }
            if (type == TimeLineType.Effect && (timeline = line.GetComponent <JTimelineEffect>()) == null)
            {
                timeline = line.gameObject.AddComponent <JTimelineEffect>();
            }
            return(timeline);
        }
示例#6
0
 void UpdateTimeLine(RestUsage r, RestUpdateDelegate func, TimeLineType type, int sinceListIndex)
 {
     r.LastExecTime = DateTime.Now;
     r.IsRunning = true;
     ThreadPool.QueueUserWorkItem (delegate (object o) {
         try {
             Status[] statuses = func (_restSinceList[sinceListIndex], null, r.Count, null);
             _restSinceList[sinceListIndex] = TwitterClient.GetMaxStatusID (_restSinceList[sinceListIndex], statuses);
             _dispatcher.BeginInvoke (new EmptyDelegate (delegate () {
                 for (int i = 0; i < statuses.Length; i++) {
                     statuses[i].AccountInfo = this;
                     if (type == TimeLineType.Home && IsMention (statuses[i])) {
                         Mentions.Add (statuses[i]);
                         if (!_mgr.HomeIncludeMentions)
                             continue;
                     } else if (type == TimeLineType.Mentions && _mgr.HomeIncludeMentions) {
                         HomeTimeline.Add (statuses[i]);
                     }
                     r.TimeLine.Add (statuses[i]);
                 }
             }));
         } catch {
         } finally {
             r.IsRunning = false;
             r.LastExecTime = DateTime.Now;
             r.UpdateNextExecTimeRemaining ();
         }
     });
 }