Beispiel #1
0
        private void listEntries_SelectedIndexChanged(object sender, EventArgs e)
        {
            if ((InternalListeEntriesSelect) || (listEntries.SelectedIndex == -1))
            {
                InternalListeEntriesSelect = false;
                return;
            }

            object o = listEntries.Items[listEntries.SelectedIndex];

            if (o is BacnetDateRange)
            {
                BacnetDateRange bdr = (BacnetDateRange)o;

                if (bdr.startDate.year != 255)
                {
                    SetCalendarDisplayDate(bdr.startDate.toDateTime());
                }
                else if (bdr.endDate.year != 255)
                {
                    SetCalendarDisplayDate(bdr.endDate.toDateTime().AddDays(-10));
                }
            }
            else if (o is BacnetDate)
            {
                BacnetDate bd = (BacnetDate)o;
                if (!bd.IsPeriodic)
                {
                    SetCalendarDisplayDate(bd.toDateTime());
                }
            }
        }
Beispiel #2
0
        private void PlaceItemsInCalendarView()
        {
            foreach (object e in calendarEntries.Entries)
            {
                if (e is BacnetDate)
                {
                    BacnetDate bd = (BacnetDate)e;
                    if (bd.IsPeriodic)
                    {
                        foreach (CalendarDay dt in calendarView.Days)
                        {
                            if (bd.IsAFittingDate(dt.Date))
                            {
                                AddCalendarEntry(dt.Date, dt.Date, Color.Blue, "Periodic", bd);
                            }
                        }
                    }
                    else
                    {
                        AddCalendarEntry(bd.toDateTime(), bd.toDateTime(), Color.Green, "", bd);
                    }
                }
                else if (e is BacnetDateRange)
                {
                    BacnetDateRange bdr = (BacnetDateRange)e;
                    DateTime        start, end;

                    if (bdr.startDate.year != 255)
                    {
                        start = new DateTime(bdr.startDate.year + 1900, bdr.startDate.month, bdr.startDate.day, 0, 0, 0);
                    }
                    else
                    {
                        start = DateTime.MinValue;
                    }
                    if (bdr.endDate.year != 255)
                    {
                        end = new DateTime(bdr.endDate.year + 1900, bdr.endDate.month, bdr.endDate.day, 23, 59, 59);
                    }
                    else
                    {
                        end = DateTime.MaxValue;
                    }
                    CalendarItem ci = new CalendarItem(calendarView, start, end, "");
                    ci.ApplyColor(Color.Yellow);
                    ci.Tag = bdr;

                    if (start <= calendarView.Days[calendarView.Days.Length - 1].Date && calendarView.Days[0].Date <= end)
                    {
                        calendarView.Items.Add(ci);
                    }
                }
                else
                {
                    BacnetweekNDay bwnd = (BacnetweekNDay)e;
                    foreach (CalendarDay dt in calendarView.Days)
                    {
                        if (bwnd.IsAFittingDate(dt.Date))
                        {
                            AddCalendarEntry(dt.Date, dt.Date, Color.Red, "Periodic", bwnd);
                        }
                    }
                }
            }
        }