Exemplo n.º 1
0
 private void OnDaySelected(DaySelected args)
 {
     if (BindingContext is MainPageViewModel viewModel)
     {
         viewModel.AddEventsOfDay(args.Events);
     }
 }
Exemplo n.º 2
0
        private void Day_MouseUp(object sender, MouseButtonEventArgs e)
        {
            var day = GetDay(sender);

            if (day == null)
            {
                return;
            }

            switch (e.ChangedButton)
            {
            case MouseButton.Left:
            {
                //ничего не делаем, если зажат Shift/Ctrl - идёт мультиселект
                bool keyPressed = ((Keyboard.Modifiers & ModifierKeys.Shift) == ModifierKeys.Shift) ||
                                  (Keyboard.Modifiers & ModifierKeys.Control) == ModifierKeys.Control;

                if (m_selectingStartDay == 0)
                {
                    HighLightDay(day, false, keyPressed);

                    SetEmptySelection();
                }
                else
                {
                    DaySelected?.Invoke(day);

                    //if (m_selectingDays.Count > 0)
                    SelectedDaysOut = m_selectingDays.ToList();

                    var set = GetSet();
                    if (set == null)
                    {
                        return;
                    }

                    if (IsMultiselecting())
                    {
                        set.Sort(new DateTime(Month.Year, Month.Index, m_selectingDays.Min().Index), new DateTime(Month.Year, Month.Index, m_selectingDays.Max().Index));
                    }
                    else
                    {
                        set.Sort(new DateTime(Month.Year, Month.Index, day.Index));
                    }
                    //Sort(SortManager.SelectByDay(m_baseCollection, day.Index));
                }
            }
            break;

            default:
                break;
            }

            //todo : select
        }
        public void ClickHeaderTest()
        {
            DaySelected dayNotify = new DaySelected();
            DateTime date = new DateTime(2010, 1, 1);
            SchedulerDayModel day = new SchedulerDayModel(new SchedulerDisplayInfo(new CultureInfo("cs-CZ")), date);
            day.SetDate(date);
            SchedulerMonthDayHeaderViewModel target = new SchedulerMonthDayHeaderViewModel(dayNotify, day);

            Assert.IsNull(dayNotify.Day, "Day should be null.");

            ICommand command = target.ClickHeaderCommand;
            command.Execute(null);

            Assert.IsNotNull(dayNotify.Day, "Day should be assigned.");
            Assert.AreEqual(date, dayNotify.Day.Date, "Date should be 1/1/2010.");
        }
 private void Control_Click(object sender, MouseEventArgs e)
 {
     if (!RaiseEvents)
     {
         return;
     }
     if (e.Button != MouseButtons.Left)
     {
         return;
     }
     if (!Day.BelongsToSchedules)
     {
         return;
     }
     DaySelected?.Invoke(this, new SelectDayEventArgs(this, ModifierKeys));
 }
Exemplo n.º 5
0
        private void CheckBox_SelectionChanged(object sender, bool e)
        {
            var index = (sender as UIView).Tag;

            var dayIntValue = index + 1;

            if (Enum.TryParse <DayOfWeek>(dayIntValue.ToString(), out var day))
            {
                if (e)
                {
                    DaySelected?.Invoke(this, day);
                }
                else
                {
                    DayUnSelected?.Invoke(this, day);
                }
            }
        }
Exemplo n.º 6
0
        public void ClickHeaderTest()
        {
            DaySelected       dayNotify = new DaySelected();
            DateTime          date      = new DateTime(2010, 1, 1);
            SchedulerDayModel day       = new SchedulerDayModel(new SchedulerDisplayInfo(new CultureInfo("cs-CZ")), date);

            day.SetDate(date);
            SchedulerDayHeaderViewModel target = new SchedulerDayHeaderViewModel(dayNotify, day);

            Assert.IsNull(dayNotify.Day, "Day should be null.");

            ICommand command = target.ClickHeaderCommand;

            command.Execute(null);

            Assert.IsNotNull(dayNotify.Day, "Day should be assigned.");
            Assert.AreEqual(date, dayNotify.Day.Date, "Date should be 1/1/2010.");
        }
        public MonthViewModel(int month, int year)
        {
            MonthInt = month;
            YearInt  = year;

            var firstDayOfMonth        = new DateTime(year, month, 1);
            var weekDaysBeforeFirstDay = GetWeekDay(firstDayOfMonth);
            var days = new List <DayViewModel>();

            for (var i = 0; i < weekDaysBeforeFirstDay; i++)
            {
                days.Add(new DayViewModel(0));
            }

            var daysInMonth = new DateTime(year, month, 1).AddMonths(1).AddDays(-1).Day;

            for (var i = 1; i <= daysInMonth; i++)
            {
                var currentI = i;
                days.Add(new DayViewModel(i));
            }

            var remainingDaysInMonth = 6 - GetWeekDay(new DateTime(year, month, daysInMonth));

            for (var i = 0; i < remainingDaysInMonth; i++)
            {
                days.Add(new DayViewModel(0));
            }

            foreach (var day in days)
            {
                day.DaySelected += sel => DaySelected?.Invoke(sel);
            }

            Days  = days;
            Year  = year.ToString();
            Month = firstDayOfMonth.ToString("MMMM");
        }
Exemplo n.º 8
0
        private void Day_MouseDown(object sender, MouseButtonEventArgs e)
        {
            var day = GetDay(sender);

            if (day == null)
            {
                return;
            }

            if (e.ChangedButton == MouseButton.Left)
            {
                m_selectingStartDay = m_selectingStartDay == day.Index ? 0 : day.Index;

                //изменяем подсветку для Дня при клике
                //  кликнули первый раз - подсветили
                //  кликнули повторно - убрали
                //if (!HasHightlighted(day))
                //{
                bool isMultyselecting = ((Keyboard.Modifiers & ModifierKeys.Shift) == ModifierKeys.Shift) ||
                                        (Keyboard.Modifiers & ModifierKeys.Control) == ModifierKeys.Control;

                HighLightDay(day, true, isMultyselecting);

                DaySelected?.Invoke(day);
                //NameSearchText = string.Empty;

                Keyboard.ClearFocus();

                //}
            }
            else if (e.ChangedButton == MouseButton.Right)
            {
                DownlightDays();

                SetEmptySelection();
            }
        }
Exemplo n.º 9
0
 public void SendDaySelected()
 {
     DaySelected?.Invoke(this, EventArgs.Empty);
 }
Exemplo n.º 10
0
 private void OnDaySelected(DaySelected daySelected)
 {
     SelectedDay.Text  = daySelected.DateTime.ToString("G");
     AmountEvents.Text = daySelected.Events.Count().ToString();
 }
Exemplo n.º 11
0
 private void OnDaySelected(object _, EventArgs __) => DaySelected?.Invoke(this);
Exemplo n.º 12
0
 void daySelected(object sender, DaySelectedEventArgs e)
 {
     DaySelected.Invoke(sender, e);
 }
Exemplo n.º 13
0
        void OnEventClick(object sender, RoutedEventArgs e)
        {
            Button source = (Button)sender;

            DaySelected.Invoke(sender, new DaySelectedEventArgs((long)source.Tag));
        }