Esempio n. 1
0
        void ScheduleEntriesCalendar_AddAppointment(object sender, RoutedEventArgs e)
        {
            if (ctrlCalendar.ReadOnly)
            {
                return;
            }
            var item  = (CalendarTimeslotItem)e.OriginalSource;
            var entry = new ScheduleEntryDTO();

            entry.StartTime = item.StartTime.ToUniversalTime();
            entry.EndTime   = entry.StartTime.AddHours(1);
            var viewModelItem = new ScheduleEntryViewModel(entry, ctrlCalendar);

            viewModel.Entries.Add(viewModelItem);
            viewModel.SelectedAppointment = viewModelItem;
            viewModel.EditSelected();
            //if (ctrlCalendar.DisplayMode == ScheduleDisplayMode.Room)
            //{
            //    entry.RoomId = Identifier;
            //}
            //else
            //{
            //    entry.EmployeeId = Identifier;
            //}

            //EditDomainObjectView dlg = new EditDomainObjectView();
            //var ctrl = new ScheduleEntryEditorView();

            //dlg.SetControl(ctrl);
            //ctrl.Fill(entry, ctrlCalendar.DisplayMode);
            //if (dlg.ShowDialog() == true)
            //{
            //    ServiceManager.Default.SaveScheduleEntry(entry);
            //    var usluga = DomainModelCache.Uslugi[entry.UslugaId];

            //    IList<Appointment> list = (IList<Appointment>)ctrlCalendar.Appointments;
            //    Appointment app = new Appointment();
            //    app.Color = usluga.Color;
            //    app.Subject = usluga.Name;
            //    app.Tag = new ScheduleEntryViewModel(entry, ctrlCalendar);
            //    app.StartTime = entry.StartTime;
            //    app.EndTime = entry.EndTime;
            //    list.Add(app);
            //    ctrlCalendar.RefreshAppointments();
            //}
        }
Esempio n. 2
0
        private AdaptiveGroup GetAdaptiveGroup(ScheduleEntryViewModel entry, TileSize size, bool subtle, bool addSpacing)
        {
            AdaptiveSubgroup subgroup;

            switch (size)
            {
            case TileSize.Large:
                subgroup = new AdaptiveSubgroup()
                {
                    Children =
                    {
                        new AdaptiveText()
                        {
                            Text      = entry.Name,
                            HintStyle = subtle ? AdaptiveTextStyle.BaseSubtle : AdaptiveTextStyle.Base
                        },
                        new AdaptiveText()
                        {
                            Text      = entry.TimeRangeRoomDisplay,
                            HintStyle = subtle ? AdaptiveTextStyle.CaptionSubtle : AdaptiveTextStyle.Caption
                        }
                    }
                };
                break;

            case TileSize.Wide:
                subgroup = new AdaptiveSubgroup()
                {
                    Children =
                    {
                        new AdaptiveText()
                        {
                            Text      = entry.Name,
                            HintStyle = subtle ? AdaptiveTextStyle.BaseSubtle : AdaptiveTextStyle.Base
                        },
                        new AdaptiveText()
                        {
                            Text      = entry.TimeRangeRoomDisplay,
                            HintStyle = AdaptiveTextStyle.CaptionSubtle
                        }
                    }
                };
                break;

            case TileSize.Medium:
                subgroup = new AdaptiveSubgroup()
                {
                    Children =
                    {
                        new AdaptiveText()
                        {
                            Text         = entry.Name,
                            HintWrap     = true,
                            HintMaxLines = 2,
                            HintStyle    = subtle ? AdaptiveTextStyle.BaseSubtle : AdaptiveTextStyle.Base
                        },
                        new AdaptiveText()
                        {
                            Text      = entry.TimeRangeDisplay,
                            HintStyle = AdaptiveTextStyle.CaptionSubtle
                        },
                        new AdaptiveText()
                        {
                            Text      = entry.Room,
                            HintStyle = AdaptiveTextStyle.CaptionSubtle
                        }
                    }
                };
                break;

            default:
                throw new ArgumentOutOfRangeException(nameof(size));
            }

            if (addSpacing)
            {
                subgroup.Children.Add(new AdaptiveText()
                {
                    HintStyle = AdaptiveTextStyle.Caption
                });
            }

            return(new AdaptiveGroup()
            {
                Children =
                {
                    subgroup
                }
            });
        }