public override void ActionStart(uint eventTime, Act action) { ActionTimeLineEvent = new TimeLineEvent("Action", action.Description, eventTime); if (ActivityTimeLineEvent != null) { ActivityTimeLineEvent.AddSubEvent(ActionTimeLineEvent); } }
public override void ActivityStart(uint eventTime, Activity activity, bool continuerun = false) { ActivityTimeLineEvent = new TimeLineEvent("Activity", activity.ActivityName, eventTime); if (BusinessFlowTimeLineEvent != null) { BusinessFlowTimeLineEvent.AddSubEvent(ActivityTimeLineEvent); } }
public void Reset() { timeLineEvents.Clear(); ActivityTimeLineEvent = null; ActionTimeLineEvent = null; BusinessFlowTimeLineEvent = null; PrepActionTimeLineEvent = null; }
private static void OnObjectChanged(DependencyObject d, DependencyPropertyChangedEventArgs e) { TimelineEventControl timelineEventControl = (TimelineEventControl)d; TimeLineEvent timeLineEvent = ((TimeLineEvent)e.NewValue); timelineEventControl.xElapsed.Text = timeLineEvent.Elapsed.ToString(); timelineEventControl.xLine.X1 = timeLineEvent.Start; timelineEventControl.xLine.X2 = timeLineEvent.End; }
void DrawTimeEvent(TimeLineEvent timeLineEvent) { timeLineEvent.time = EditorGUILayout.FloatField("BeginTime", timeLineEvent.time); timeLineEvent.createGo = EditorGUILayout.ObjectField("CreateObj", timeLineEvent.createGo, typeof(GameObject), true) as GameObject; EditorGUILayout.Space(); EditorGUILayout.Space(); EditorGUILayout.Space(); }
public IEnumerator BeginTimeLineEvent(TimeLineEvent lineEvent) { yield return(new WaitForSeconds(lineEvent.time)); if (lineEvent.createGo != null) { CreateGo(lineEvent.createGo); } lineEvent?.act(); }
public TimeLineViewModel(List <ActivityLine> dailyList) { TimeLine day = new TimeLine(); TimeSpan dayDuration = new TimeSpan(); TimeSpan start; string currentTag; currentTag = dailyList[0].Tag; start = dailyList[0].StartTime; TimeLineEvent runningEvent = new TimeLineEvent(dailyList[0].StartTime); runningEvent.Start = dailyList[0].StartTime; runningEvent.Duration = dailyList[0].inAppTime; runningEvent.TextData = dailyList[0].ToString() + "\n"; runningEvent.Color = dailyList[0].TagColor; for (int i = 1; i < dailyList.Count; i++) { if (currentTag.Equals(dailyList[i].Tag)) { runningEvent.Duration = runningEvent.Duration.Add(dailyList[i].inAppTime); runningEvent.TextData += dailyList[i].ToString() + "\n"; } else { day.Events.Add(runningEvent); runningEvent = new TimeLineEvent(dailyList[i].StartTime); currentTag = dailyList[i].Tag; runningEvent.Start = dailyList[i].StartTime; runningEvent.Duration = dailyList[i].inAppTime; runningEvent.TextData = dailyList[i].ToString() + "\n"; runningEvent.Color = dailyList[i].TagColor; } } day.Events.Add(runningEvent); dayDuration = dailyList[dailyList.Count - 1].StartTime.Subtract(start); day.Duration = dayDuration; day.Start = start; day.End = dailyList[dailyList.Count - 1].StartTime; day.SetConstantTimes(day.Start, day.End); this.TimeLines.Add(day); }
private TimeLine JsonToObject(ListTimeLineDto timeLineDto) { var data = new TimeLine(); foreach (var time in timeLineDto.events) { var events = new TimeLineEvent(); var productName = ""; var productPrice = ""; foreach (var item in time.custom_data) { events.revenue = time.revenue; events.timestamp = time.timestamp; if (item.key == "transaction_id") { events.transaction_id = item.value; } if (item.key == "store_name") { events.store_name = item.value; } if (item.key == "product_name") { productName = item.value; } if (item.key == "product_price") { productPrice = item.value.ToString(); } if (!string.IsNullOrEmpty(productName) && !string.IsNullOrEmpty(productPrice)) { var product = new Products(productName, double.Parse(productPrice)); events.products.Add(product); } } data.timeline.Add(events); } data.timeline = data.timeline.OrderByDescending(x => x.timestamp).ThenBy(t => t.timestamp.TimeOfDay).ToList(); return(data); }
public void AddLast(int count) { Sort(); if (timeLineEvents.Count > 0) { for (int i = 0; i < count; i++) { var timeEvent = new TimeLineEvent() { time = timeLineEvents[timeLineEvents.Count - 1].time }; timeLineEvents.Add(timeEvent); } } else { timeLineEvents.Add(new TimeLineEvent()); AddLast(count - 1); } }
public void AddEvent(TimeLineEvent timeLineEvent) { sessionEvents.Add(timeLineEvent); }
/////////////////////////////////////////////////////////////////////////////// // Eventhandler for Custom Defined Events // /////////////////////////////////////////////////////////////////////////////// #region CUSTOMEVENTHANDLER #endregion //CUSTOMEVENTHANDLER #endregion //EVENTS /////////////////////////////////////////////////////////////////////////////// // Methods and Eventhandling for Background tasks // /////////////////////////////////////////////////////////////////////////////// #region BACKGROUNDWORKER #endregion //BACKGROUNDWORKER /////////////////////////////////////////////////////////////////////////////// // Methods for doing main class job // /////////////////////////////////////////////////////////////////////////////// #region PRIVATEMETHODS /// <summary> /// Converts the given <see cref="SortedList{Int32,TrialEvent}"/> to /// <see cref="TimeLineEvent"/> that are displayed in the timeline. /// </summary> /// <param name="trialEvents">A <see cref="SortedList{Int32,TrialEvent}"/> /// with the trial events to be shown.</param> private void SubmitTrialEventsToTimeline(SortedList <int, TrialEvent> trialEvents) { this.TimeLineEvents.Clear(); this.TimeLineMarkers.Clear(); this.slideEvents.Clear(); this.slideEvents.Add(new TimeLineEvent(0, "Slide", 2f, Color.Blue, TimeLinePosition.Above)); if (trialEvents.Count > 30 && !this.EventFilterList.Contains("MouseUp")) { this.EventFilterList.Add("Scroll"); this.EventFilterList.Add("MouseUp"); this.EventFilterList.Add("MouseDown"); this.EventFilterList.Add("KeyDown"); this.EventFilterList.Add("KeyUp"); string message = "To provide acceptable performance OGAMA now hides the mouse and scroll events in the time line " + " at the bottom of the module. You may reactivate them by right-clicking on this timeline."; ExceptionMethods.ProcessMessage("Lots of events in that trial ...", message); } foreach (TrialEvent trialEvent in trialEvents.Values) { TimeLineEvent newTimeLineEvent = new TimeLineEvent(); newTimeLineEvent.Time = (int)trialEvent.Time; switch (trialEvent.Type) { case EventType.Mouse: newTimeLineEvent.Position = TimeLinePosition.Below; newTimeLineEvent.StrokeWidth = 1f; newTimeLineEvent.StrokeColor = Color.Yellow; if (((InputEvent)trialEvent).Task == InputEventTask.Up) { newTimeLineEvent.ImageKey = "MouseUp"; } else if (((InputEvent)trialEvent).Task == InputEventTask.Down) { newTimeLineEvent.ImageKey = "MouseDown"; } this.TimeLineEvents.Add(newTimeLineEvent); break; case EventType.Key: newTimeLineEvent.Position = TimeLinePosition.Below; newTimeLineEvent.StrokeWidth = 1f; newTimeLineEvent.StrokeColor = Color.YellowGreen; newTimeLineEvent.ImageKey = "Key"; this.TimeLineEvents.Add(newTimeLineEvent); break; case EventType.Slide: newTimeLineEvent.Position = TimeLinePosition.Above; newTimeLineEvent.StrokeWidth = 2f; newTimeLineEvent.StrokeColor = Color.Blue; newTimeLineEvent.ImageKey = "Slide"; this.TimeLineEvents.Add(newTimeLineEvent); this.slideEvents.Add(newTimeLineEvent); break; case EventType.Flash: newTimeLineEvent.Position = TimeLinePosition.Above; newTimeLineEvent.StrokeWidth = 2f; newTimeLineEvent.StrokeColor = Color.Magenta; newTimeLineEvent.ImageKey = "Flash"; this.TimeLineEvents.Add(newTimeLineEvent); break; case EventType.Audio: newTimeLineEvent.Position = TimeLinePosition.Below; newTimeLineEvent.StrokeWidth = 1f; newTimeLineEvent.StrokeColor = Color.Orange; newTimeLineEvent.ImageKey = "Sound"; this.TimeLineEvents.Add(newTimeLineEvent); break; case EventType.Video: break; case EventType.Webpage: break; case EventType.Usercam: break; case EventType.Response: newTimeLineEvent.Position = TimeLinePosition.Above; newTimeLineEvent.StrokeWidth = 2f; newTimeLineEvent.StrokeColor = Color.Blue; newTimeLineEvent.ImageKey = "Slide"; this.TimeLineEvents.Add(newTimeLineEvent); break; case EventType.Marker: TimeLineMarker newTimeLineMarker = new TimeLineMarker(); newTimeLineMarker.Time = (int)trialEvent.Time; newTimeLineMarker.EventID = (int)trialEvent.EventID; newTimeLineMarker.MarkerColor = Color.Yellow; this.TimeLineMarkers.Add(newTimeLineMarker); break; case EventType.Scroll: newTimeLineEvent.Position = TimeLinePosition.Above; newTimeLineEvent.StrokeWidth = 0f; newTimeLineEvent.StrokeColor = Color.Transparent; newTimeLineEvent.ImageKey = "Scroll"; this.TimeLineEvents.Add(newTimeLineEvent); break; } } this.Invalidate(); }
public override void PrepActionStart(uint eventTime, Act action) { PrepActionTimeLineEvent = new TimeLineEvent("Prep Action", action.Description, eventTime); ActivityTimeLineEvent.AddSubEvent(PrepActionTimeLineEvent); }
public override void BusinessFlowStart(uint eventTime, BusinessFlow businessFlow, bool ContinueRun = false) { BusinessFlowTimeLineEvent = new TimeLineEvent("BusinessFlow", businessFlow.Name, eventTime); timeLineEvents.AddEvent(BusinessFlowTimeLineEvent); }
public void AddEvent([FromBody] TimeLineEvent test) { _timeLineRepo.AddEvent(test); }
public void TimeLineListener() { //Arrange BusinessFlow mBF = new BusinessFlow(); mBF.Activities = new ObservableList <Activity>(); mBF.Name = "BF TEst time-line events listener"; mBF.Active = true; Activity activitiy1 = new Activity() { Active = true }; activitiy1.Active = true; mBF.Activities.Add(activitiy1); ActDummy action1 = new ActDummy() { Description = "Dummy action 1", Active = true }; activitiy1.Acts.Add(action1); mGingerRunner.Executor.BusinessFlows.Add(mBF); //Act mGingerRunner.Executor.RunBusinessFlow(mBF); List <TimeLineEvent> events = mGingerRunnerTimeLine.timeLineEvents.EventList; //Assert Assert.AreEqual(1, events.Count, "Events count"); TimeLineEvent businessFlowTimeLineEvent = events[0]; Assert.IsTrue(businessFlowTimeLineEvent.Start != 0, "Business FlowTimeLine Event.Start !=0"); Assert.IsTrue(businessFlowTimeLineEvent.End != 0, "Business FlowTimeLine Event.End !=0"); Assert.AreEqual("BusinessFlow", businessFlowTimeLineEvent.ItemType, "ItemType"); TimeLineEvent activityTimeLineEvent = businessFlowTimeLineEvent.ChildrenList[0]; Assert.IsTrue(activityTimeLineEvent.Start != 0, "Activity TimeLine Event.Start !=0"); Assert.IsTrue(activityTimeLineEvent.End != 0, "Activity TimeLine Event.End !=0"); Assert.AreEqual("Activity", activityTimeLineEvent.ItemType, "ItemType"); TimeLineEvent prepActionLineEvent = activityTimeLineEvent.ChildrenList[0]; Assert.IsTrue(prepActionLineEvent.Start != 0, "PrepAction TimeLine Event.Start !=0"); Assert.IsTrue(prepActionLineEvent.End != 0, "PrepAction TimeLine Event.End !=0"); Assert.AreEqual("Prep Action", prepActionLineEvent.ItemType, "ItemType"); TimeLineEvent actionLineEvent = activityTimeLineEvent.ChildrenList[1]; Assert.IsTrue(actionLineEvent.Start != 0, "Action TimeLine Event.Start !=0"); Assert.IsTrue(actionLineEvent.End != 0, "Action TimeLine Event.End !=0"); Assert.AreEqual("Action", actionLineEvent.ItemType, "ItemType"); //TODO: add more test that timeline is in boundries of parent }
public void Add(TimeLineEvent timeEvent) { timeLineEvents.Add(timeEvent); Sort(); }