public void GenerateBorders(Canvas canvas) { double currentTop = 0; double currentLeft = 0; foreach (var obj in AxisDataCollection) { if (obj.IsDisplayed == false) { continue; } foreach (var time in TimeRangeCollection) { var tbModel = new TimeBorderViewModel() { StartDateTime = time.StartDateTime, EndDateTime = time.EndDateTime, SourceObject = obj }; tbModel.MyBrush = obj.DrawBrush; MoveToTimePosition(ref currentLeft, ref currentTop, time); GenerateBorder(canvas, tbModel, currentLeft, currentTop, obj.Width, obj.IsUnbound); } MoveToNextObject(ref currentLeft, ref currentTop, obj.Width); } }
public override void GenerateBorders(Canvas canvas) { double currentTop = 0; double currentLeft = 0; foreach (var obj in _axisDataCollection) { if (obj.IsDisplayed == false) { continue; } foreach (var time in TimeRangeCollection) { var tbModel = new TimeBorderViewModel() { StartDateTime = time.StartDateTime, EndDateTime = time.EndDateTime, SourceObject = obj }; tbModel.MyBrush = obj.DrawBrush; MoveToTimePosition(ref currentLeft, ref currentTop, time); GenerateBorder(canvas, tbModel, currentLeft, currentTop, obj.Width, obj.IsUnbound); } MoveToNextObject(ref currentLeft, ref currentTop, obj.Width); } }
private Border GenerateBorder(Canvas canvas, TimeBorderViewModel model, double x, double y, double width, bool isUnbound) { var border = VacantBorder(width); border.DataContext = model; if (isUnbound) { border.Style = canvas.FindResource("UnboundBorder") as Style; } Canvas.SetTop(border, y); Canvas.SetLeft(border, x); canvas.Children.Add(border); return(border); }
public void ShowEventOnVacantCell(TimeBorderViewModel borderModel) { EventViewModel evtModel = new EventViewModel() { StartDateTime = borderModel.StartDateTime, EndDateTime = borderModel.EndDateTime, AppearListViewItems = GenerateAppearListViewItemModel(borderModel) }; CommonLightBox lightBox = new CommonLightBox(); EventRegister register = new EventRegister(); register.DataContext = evtModel; lightBox.LightBoxKind = CommonLightBox.CommonLightBoxKind.SaveCancel; lightBox.BindUIElement(register); lightBox.Owner = Application.Current.MainWindow; lightBox.OnSaveAndQuit += register.OnSaveAndQuit; if (ShowDialogManager.ShowDialog(lightBox) == true) { var participants = GetParticipants(evtModel.AppearListViewItems); // 参加者がいないイベント作っても意味ないよね if (participants.Count() == 0) { return; } var addEvent = new EventModel() { StartDateTime = evtModel.StartDateTime, EndDateTime = evtModel.EndDateTime, Title = evtModel.Title, Detail = evtModel.Detail, Participants = participants, }; _eventModelManager.Add(addEvent); _view.OnEventChanged(_view, new Timeline.EventChangedArgs() { kind = Timeline.EventChangedKind.Add, model = addEvent }); Initialize(); } }
public void GenerateScale(Canvas canvas) { double currentTop = 0; double currentLeft = 0; TimeRange prev = null; foreach (var time in TimeRangeCollection) { var tbModel = new TimeBorderViewModel() { StartDateTime = time.StartDateTime, EndDateTime = time.EndDateTime, SourceObject = null }; MoveToTimePosition(ref currentLeft, ref currentTop, time); var border = GenerateBorder(canvas, tbModel, currentLeft, currentTop, _scaleWidth, false); border.Child = GenerateScaleControl(prev, time); prev = time; } }
public ObservableCollection <AppearListViewItemModel> GenerateAppearListViewItemModel(TimeBorderViewModel borderModel) { ObservableCollection <AppearListViewItemModel> modelList = new ObservableCollection <AppearListViewItemModel>(); foreach (var item in _dataSource) { if (item.IsUnbound) { continue; } if (borderModel.SourceObject.Id == item.Id) { modelList.Add(new AppearListViewItemModel(item.HeaderName, true, "登場する", "登場しない", item) { BackgroundBrush = item.DrawBrush }); } else { modelList.Add(new AppearListViewItemModel(item.HeaderName, false, "登場する", "登場しない", item) { BackgroundBrush = item.DrawBrush }); } } return(modelList); }
private Border GenerateBorder(Canvas canvas, TimeBorderViewModel model, double x, double y, double width, bool isUnbound) { var border = VacantBorder(width); border.DataContext = model; if (isUnbound) { border.Style = canvas.FindResource("UnboundBorder") as Style; } Canvas.SetTop(border, y); Canvas.SetLeft(border, x); canvas.Children.Add(border); return border; }
public void GenerateScale(Canvas canvas) { double currentTop = 0; double currentLeft = 0; TimeRange prev = null; foreach (var time in TimeRangeCollection) { var tbModel = new TimeBorderViewModel() { StartDateTime = time.StartDateTime, EndDateTime = time.EndDateTime, SourceObject = null }; MoveToTimePosition(ref currentLeft, ref currentTop, time); var border = GenerateBorder(canvas, tbModel, currentLeft, currentTop, _scaleWidth, false); border.Child = GenerateScaleControl(prev, time); prev = time; } }
public void ShowEventOnVacantCell(TimeBorderViewModel borderModel) { EventViewModel evtModel = new EventViewModel() { StartDateTime = borderModel.StartDateTime, EndDateTime = borderModel.EndDateTime, AppearListViewItems = GenerateAppearListViewItemModel(borderModel) }; CommonLightBox lightBox = new CommonLightBox(); EventRegister register = new EventRegister(); register.DataContext = evtModel; lightBox.LightBoxKind = CommonLightBox.CommonLightBoxKind.SaveCancel; lightBox.BindUIElement(register); lightBox.Owner = Application.Current.MainWindow; lightBox.OnSaveAndQuit += register.OnSaveAndQuit; if (ShowDialogManager.ShowDialog(lightBox) == true) { var participants = GetParticipants(evtModel.AppearListViewItems); // 参加者がいないイベント作っても意味ないよね if (participants.Count() == 0) { return; } var addEvent = new EventModel() { StartDateTime = evtModel.StartDateTime, EndDateTime = evtModel.EndDateTime, Title = evtModel.Title, Detail = evtModel.Detail, Participants = participants, }; _eventModelManager.Add(addEvent); _view.OnEventChanged(_view, new Timeline.EventChangedArgs(){kind = Timeline.EventChangedKind.Add, model = addEvent}); Initialize(); } }
public ObservableCollection<AppearListViewItemModel> GenerateAppearListViewItemModel(TimeBorderViewModel borderModel) { ObservableCollection<AppearListViewItemModel> modelList = new ObservableCollection<AppearListViewItemModel>(); foreach(var item in _dataSource) { if (item.IsUnbound) { continue; } if(borderModel.SourceObject.Id == item.Id) { modelList.Add(new AppearListViewItemModel(item.HeaderName, true,"登場する", "登場しない", item) { BackgroundBrush = item.DrawBrush }); } else { modelList.Add(new AppearListViewItemModel(item.HeaderName, false,"登場する", "登場しない", item) { BackgroundBrush = item.DrawBrush }); } } return modelList; }