public PropTimelineData createData(ShowPropAction showProp, ShowPropSubAction subAction, PropEditController propEditController) { PropTimelineData timelineData = new PropTimelineData(subAction, propEditController); actionDataBindings.Add(subAction, timelineData); return(timelineData); }
void propEditController_PropClosed(PropEditController source, ShowPropAction arg) { uint itemIndex = propList.findItemWithData(arg); if (itemIndex != uint.MaxValue) { propList.removeItemAt(itemIndex); } }
/// <summary> /// Add the actions from the container to the timeline. This will NOT /// create copies of the actions and relies on the clipboard to do this. /// </summary> /// <param name="propData"></param> /// <param name="propTimeline"></param> /// <param name="markerTime"></param> /// <param name="totalDuration"></param> public void addActionsToTimeline(ShowPropAction propData, PropTimeline propTimeline, float markerTime, float totalDuration) { foreach (ShowPropSubAction copiedAction in copiedActions) { copiedAction.StartTime = copiedAction.StartTime - startTimeZeroOffset + markerTime; if (copiedAction.EndTime > totalDuration) { copiedAction.StartTime -= (copiedAction.EndTime - totalDuration); if (copiedAction.StartTime < 0) { copiedAction.StartTime = 0.0f; copiedAction.Duration = totalDuration; } } propData.addSubAction(copiedAction); } }
public void setPropData(ShowPropAction showProp) { if (propData != null) { propData.Updated -= propData_Updated; propData.ActionAdded -= propData_ActionAdded; propData.ActionRemoved -= propData_ActionRemoved; } timelineView.clearTracks(); timelineDataManager.clearData(); this.propData = showProp; if (propData != null) { ShowPropTrackInfo propTrackInfo; if (propFactory.tryGetTrackInfo(showProp.PropType, out propTrackInfo)) { foreach (ShowPropSubActionPrototype prototype in propTrackInfo.Tracks) { timelineView.addTrack(prototype.TrackName, prototype); } } foreach (ShowPropSubAction action in showProp.SubActions) { addSubActionData(action, false); } timelineView.Duration = showProp.Duration; propData.Updated += propData_Updated; propData.ActionAdded += propData_ActionAdded; propData.ActionRemoved += propData_ActionRemoved; } else { timelineView.Duration = 0.0f; } MarkerTime = propEditController.MarkerPosition; }
void propEditController_ShowPropActionChanged(ShowPropAction obj) { setPropData(obj); }
void propData_ActionAdded(ShowPropAction showProp, ShowPropSubAction subAction) { addSubActionData(subAction, true); }
void propData_ActionRemoved(ShowPropAction showProp, ShowPropSubAction subAction) { timelineView.removeData(timelineDataManager[subAction]); timelineDataManager.destroyData(subAction); }
void propEditController_PropOpened(PropEditController source, ShowPropAction arg) { propList.addItem(arg.PropType, arg); }
void showProp_PropTypeChanged(ShowPropAction obj) { propEditController.CurrentShowPropAction = showProp; }
public ShowPropActionData(ShowPropAction showPropAction, PropEditController propEditController) : base(showPropAction) { this.propEditController = propEditController; this.showProp = showPropAction; }