Пример #1
0
        private void trackerToolStripMenuItem_Click_1(object sender, EventArgs e)
        {
            if (tracker == null)
            {
                tracker = new FormTracker(cfg);

                if (cfg["TrackerX", -1] != -1 && cfg["TrackerY", -2] != -2)
                {
                    tracker.Left  = cfg["TrackerX", 0];
                    tracker.Top   = cfg["TrackerY", 0];
                    tracker.Width = cfg["TrackerW", 0];
                }
                else
                {
                    Funktionen.SnapWindow(tracker, trackerpos, 5);
                }

                Funktionen.CheckFormLocation(tracker);

                tracker.Show();

                tracker.TopMost = cfg["TrackerOnTop", true];

                trackerToolStripMenuItem.Checked = true;
            }
            else
            {
                tracker.Close();
                tracker = null;

                trackerToolStripMenuItem.Checked = false;
            }
        }
        public FormStundenplan(ref Stundenplan sp)
        {
            InitializeComponent();

            this.sp = sp;

            Funktionen.SetDoubleBuffered(lvStundenplan, true);

            Funktionen.CenterPanel(this, panel1);

            if (sp.teacher.Count > 0)
            {
                for (int i = 0; i < sp.teacher.Count; i++)
                {
                    cbTeacher.Items.Add(sp.teacher[i].name);
                }
            }
            else
            {
                cbTeacher.Enabled = false;
            }

            cbFach.Enabled = false;

            bnAdd.Enabled    = false;
            bnRemove.Enabled = false;

            lvStundenplan.Columns[lvStundenplan.Columns.Count - 1].Width = -2;

            RefreshDay(Day.Monday);
        }
Пример #3
0
        private void zeitenToolStripMenuItem_Click(object sender, EventArgs e)
        {
            FormZeiten dialog = new FormZeiten(ref sp);

            Funktionen.CenterForm(this, dialog);
            dialog.ShowDialog();
        }
Пример #4
0
        private void SetTrackerPos(DesktopEdge pos)
        {
            if (tracker != null)
            {
                Funktionen.SnapWindow(tracker, pos, 5);
            }

            trackerpos = pos;
        }
Пример #5
0
 protected override void WndProc(ref Message m)
 {
     if (m.Msg == 0x0201)
     {
         Funktionen.SendMessage(Handle.ToInt32(), 0xA1, 0x02, 0);
     }
     else
     {
         base.WndProc(ref m);
     }
 }
Пример #6
0
        public FormMain()
        {
            InitializeComponent();

            Funktionen.CenterPanel(this, pnMain);

            this.Opacity        = 0;
            timerFadeIn.Enabled = true;

            sp.Init(10);

            LoadPreferences();
        }
Пример #7
0
 private void bearbeitenToolStripMenuItem_Click(object sender, EventArgs e)
 {
     if (sp.teacher.Count <= 0)
     {
         MessageBox.Show("Tragen Sie bitte erst Lehrer ein");
     }
     else
     {
         FormStundenplan dialog = new FormStundenplan(ref sp);
         Funktionen.CenterForm(this, dialog);
         dialog.ShowDialog();
     }
 }
Пример #8
0
        private void LoadPreferences()
        {
            cfg.Open(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) + "\\Stundenplan\\config.xml", MyConfigFormat.XML);

            this.Left = cfg["MainX", 0];
            this.Top  = cfg["MainY", 0];

            if (cfg["MainM", false] == true)
            {
                this.WindowState = FormWindowState.Minimized;
            }

            Funktionen.CheckFormLocation(this);

            if (cfg["TrackerV", false] == true)
            {
                tracker = new FormTracker(cfg);

                if (cfg["TrackerX", -1] != -1 && cfg["TrackerY", -2] != -2)
                {
                    tracker.Left  = cfg["TrackerX", 0];
                    tracker.Top   = cfg["TrackerY", 0];
                    tracker.Width = cfg["TrackerW", 0];
                }
                else
                {
                    Funktionen.SnapWindow(tracker, trackerpos, 5);
                }

                Funktionen.CheckFormLocation(tracker);

                tracker.TopMost = cfg["TrackerOnTop", true];
                immerImVordergrundToolStripMenuItem.Checked = cfg["TrackerOnTop", true];

                tracker.Show();

                trackerToolStripMenuItem.Checked = true;
            }

            //Stundenplan
            if (File.Exists(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) + "\\Stundenplan\\stundenplan.xml") == true)
            {
                XmlSerializer serialIn = new XmlSerializer(typeof(Stundenplan));
                StreamReader  streamIn = new StreamReader(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) + "\\Stundenplan\\stundenplan.xml");

                sp = (Stundenplan)serialIn.Deserialize(streamIn);
                streamIn.Close();
            }
        }
Пример #9
0
        public FormLehrer(ref Stundenplan sp)
        {
            InitializeComponent();

            this.sp = sp;

            Funktionen.CenterPanel(this, panel1);

            for (int i = 0; i < sp.teacher.Count; i++)
            {
                liLehrer.Items.Add(sp.teacher[i].name);
            }

            bnAdd.Enabled    = false;
            bnRemove.Enabled = false;

            bnSubjectAdd.Enabled = false;
            bnSubjectRem.Enabled = false;
        }
Пример #10
0
        public FormZeiten(ref Stundenplan sp)
        {
            InitializeComponent();

            this.sp = sp;

            dtpBegin.Value = new DateTime(2000, 1, 1, 8, 0, 0);
            dtpEnd.Value   = new DateTime(2000, 1, 1, 8, 45, 0);

            Funktionen.CenterPanel(this, pnMain);

            for (int i = 0; i < sp.zeit.Length; i++)
            {
                lvi      = new ListViewItem();
                lvi.Text = (i + 1).ToString();
                lvi.SubItems.Add(sp.zeit[i].start.ToString("t"));
                lvi.SubItems.Add(sp.zeit[i].end.ToString("t"));
                lvZeiten.Items.Add(lvi);
            }
        }
Пример #11
0
        private void timer1_Tick(object sender, EventArgs e)
        {
            DateTime now = DateTime.Now;

            //Außerhalb der Schulzeit
            if (now.DayOfWeek == DayOfWeek.Sunday || now.Hour < sp.zeit[0].start.Hour || now.Hour > sp.zeit[9].end.Hour)
            {
                if (lbAktuellerLehrer.Text != "")
                {
                    lbAktuellerLehrer.Text = "";
                }
                if (lbAktuelleStunde.Text != "")
                {
                    lbAktuelleStunde.Text = "";
                }
                if (lbAktuelleZeitVerbleibend.Text != "")
                {
                    lbAktuelleZeitVerbleibend.Text = "";
                }

                if (lbInfo.Text != "Außerhalb der Schulzeit")
                {
                    lbInfo.Text = "Außerhalb der Schulzeit";
                }
                if (lbInfo.Visible == false)
                {
                    lbInfo.Visible = true;
                }

                RefreshCurrDay(-1);
            }
            //Schulzeit
            else
            {
                int hour = -1;

                string lehrer = string.Empty;
                string fach   = string.Empty;
                string zeit   = string.Empty;

                switch (now.DayOfWeek)
                {
                //Montag
                case DayOfWeek.Monday:
                    for (int i = 0; i < sp.week.Monday.Length; i++)
                    {
                        if (Funktionen.InTimeRange(now, sp.zeit[i].start, sp.zeit[i].end))
                        {
                            if (sp.week.Monday[i].lehrer != null && sp.week.Monday[i].fach != null)
                            {
                                if (sp.week.Monday[i].lehrer != "")
                                {
                                    lehrer = sp.week.Monday[i].lehrer;
                                    fach   = sp.week.Monday[i].fach;
                                    zeit   = Funktionen.TimeSpanString(now, sp.zeit[i].end);
                                    hour   = i;
                                }

                                break;
                            }
                        }
                    }

                    RefreshCurrDay(hour);

                    break;

                //Dienstag
                case DayOfWeek.Tuesday:
                    for (int i = 0; i < sp.week.Tuesday.Length; i++)
                    {
                        if (Funktionen.InTimeRange(now, sp.zeit[i].start, sp.zeit[i].end))
                        {
                            if (sp.week.Tuesday[i].lehrer != null && sp.week.Tuesday[i].fach != null)
                            {
                                if (sp.week.Tuesday[i].lehrer != "")
                                {
                                    lehrer = sp.week.Tuesday[i].lehrer;
                                    fach   = sp.week.Tuesday[i].fach;
                                    zeit   = Funktionen.TimeSpanString(now, sp.zeit[i].end);
                                    hour   = i;
                                }

                                break;
                            }
                        }
                    }

                    RefreshCurrDay(hour);

                    break;


                //Mittwoch
                case DayOfWeek.Wednesday:
                    for (int i = 0; i < sp.week.Wednesday.Length; i++)
                    {
                        if (Funktionen.InTimeRange(now, sp.zeit[i].start, sp.zeit[i].end))
                        {
                            if (sp.week.Wednesday[i].lehrer != null && sp.week.Wednesday[i].fach != null)
                            {
                                if (sp.week.Wednesday[i].lehrer != "")
                                {
                                    lehrer = sp.week.Wednesday[i].lehrer;
                                    fach   = sp.week.Wednesday[i].fach;
                                    zeit   = Funktionen.TimeSpanString(now, sp.zeit[i].end);
                                    hour   = i;
                                }

                                break;
                            }
                        }
                    }

                    RefreshCurrDay(hour);

                    break;


                //Donnerstag
                case DayOfWeek.Thursday:
                    for (int i = 0; i < sp.week.Thursday.Length; i++)
                    {
                        if (Funktionen.InTimeRange(now, sp.zeit[i].start, sp.zeit[i].end))
                        {
                            if (sp.week.Thursday[i].lehrer != null && sp.week.Thursday[i].fach != null)
                            {
                                if (sp.week.Thursday[i].lehrer != "")
                                {
                                    lehrer = sp.week.Thursday[i].lehrer;
                                    fach   = sp.week.Thursday[i].fach;
                                    zeit   = Funktionen.TimeSpanString(now, sp.zeit[i].end);
                                    hour   = i;
                                }

                                break;
                            }
                        }
                    }

                    RefreshCurrDay(hour);

                    break;


                //Freitag
                case DayOfWeek.Friday:
                    for (int i = 0; i < sp.week.Friday.Length; i++)
                    {
                        if (Funktionen.InTimeRange(now, sp.zeit[i].start, sp.zeit[i].end))
                        {
                            if (sp.week.Friday[i].lehrer != null && sp.week.Friday[i].fach != null)
                            {
                                if (sp.week.Friday[i].lehrer != "")
                                {
                                    lehrer = sp.week.Friday[i].lehrer;
                                    fach   = sp.week.Friday[i].fach;
                                    zeit   = Funktionen.TimeSpanString(now, sp.zeit[i].end);
                                    hour   = i;
                                }

                                break;
                            }
                        }
                    }

                    RefreshCurrDay(hour);

                    break;


                //Samstag
                case DayOfWeek.Saturday:
                    for (int i = 0; i < sp.week.Saturday.Length; i++)
                    {
                        if (Funktionen.InTimeRange(now, sp.zeit[i].start, sp.zeit[i].end))
                        {
                            if (sp.week.Saturday[i].lehrer != null && sp.week.Saturday[i].fach != null)
                            {
                                if (sp.week.Saturday[i].lehrer != "")
                                {
                                    lehrer = sp.week.Saturday[i].lehrer;
                                    fach   = sp.week.Saturday[i].fach;
                                    zeit   = Funktionen.TimeSpanString(now, sp.zeit[i].end);
                                    hour   = i;
                                }

                                break;
                            }
                        }
                    }

                    RefreshCurrDay(hour);

                    break;
                }

                if (hour == -1)
                {
                    //Pause
                    if (lbAktuellerLehrer.Text != "")
                    {
                        lbAktuellerLehrer.Text = "";
                    }
                    if (lbAktuelleStunde.Text != "")
                    {
                        lbAktuelleStunde.Text = "";
                    }
                    if (lbAktuelleZeitVerbleibend.Text != "")
                    {
                        lbAktuelleZeitVerbleibend.Text = "";
                    }

                    if (lbInfo.Text != "Pause")
                    {
                        lbInfo.Text = "Pause";
                    }
                    if (lbInfo.Visible == false)
                    {
                        lbInfo.Visible = true;
                    }

                    //Tracker
                    if (tracker != null)
                    {
                        tracker.SetData("Pause", "", "");
                    }
                }
                else
                {
                    //Unterricht
                    if (lbAktuellerLehrer.Text != lehrer)
                    {
                        lbAktuellerLehrer.Text = lehrer;
                    }
                    if (lbAktuelleStunde.Text != fach)
                    {
                        lbAktuelleStunde.Text = fach;
                    }
                    if (lbAktuelleZeitVerbleibend.Text != zeit)
                    {
                        lbAktuelleZeitVerbleibend.Text = zeit;
                    }

                    if (lbInfo.Visible)
                    {
                        lbInfo.Visible = false;
                    }

                    //Tracker
                    if (tracker != null)
                    {
                        tracker.SetData(lehrer, fach, zeit);
                    }
                }
            }
        }
Пример #12
0
        private void RefreshCurrDay(int currhour)
        {
            DateTime D = DateTime.Today;

            if (D.DayOfWeek == DayOfWeek.Sunday)
            {
                Funktionen.RefreshLabel(lbLehrer1, null, Color.White);
                Funktionen.RefreshLabel(lbLehrer2, null, Color.White);
                Funktionen.RefreshLabel(lbLehrer3, null, Color.White);
                Funktionen.RefreshLabel(lbLehrer4, null, Color.White);
                Funktionen.RefreshLabel(lbLehrer5, null, Color.White);
                Funktionen.RefreshLabel(lbLehrer6, null, Color.White);
                Funktionen.RefreshLabel(lbLehrer7, null, Color.White);
                Funktionen.RefreshLabel(lbLehrer8, null, Color.White);
                Funktionen.RefreshLabel(lbLehrer9, null, Color.White);
                Funktionen.RefreshLabel(lbLehrer10, null, Color.White);
            }
            else
            {
                Stundenplan.struct_stunde[] stunden = null;

                switch (D.DayOfWeek)
                {
                case DayOfWeek.Monday:
                    stunden = sp.week.Monday;
                    break;

                case DayOfWeek.Tuesday:
                    stunden = sp.week.Tuesday;
                    break;

                case DayOfWeek.Wednesday:
                    stunden = sp.week.Wednesday;
                    break;

                case DayOfWeek.Thursday:
                    stunden = sp.week.Thursday;
                    break;

                case DayOfWeek.Friday:
                    stunden = sp.week.Friday;
                    break;

                case DayOfWeek.Saturday:
                    stunden = sp.week.Saturday;
                    break;
                }

                if (stunden != null)
                {
                    if (currhour == 0)
                    {
                        Funktionen.RefreshLabel(lbLehrer1, stunden[0].fach, Color.FromArgb(244, 244, 159));
                    }
                    else
                    {
                        Funktionen.RefreshLabel(lbLehrer1, stunden[0].fach, Color.White);
                    }

                    if (currhour == 1)
                    {
                        Funktionen.RefreshLabel(lbLehrer2, stunden[1].fach, Color.FromArgb(244, 244, 159));
                    }
                    else
                    {
                        Funktionen.RefreshLabel(lbLehrer2, stunden[1].fach, Color.White);
                    }

                    if (currhour == 2)
                    {
                        Funktionen.RefreshLabel(lbLehrer3, stunden[2].fach, Color.FromArgb(244, 244, 159));
                    }
                    else
                    {
                        Funktionen.RefreshLabel(lbLehrer3, stunden[2].fach, Color.White);
                    }

                    if (currhour == 3)
                    {
                        Funktionen.RefreshLabel(lbLehrer4, stunden[3].fach, Color.FromArgb(244, 244, 159));
                    }
                    else
                    {
                        Funktionen.RefreshLabel(lbLehrer4, stunden[3].fach, Color.White);
                    }

                    if (currhour == 4)
                    {
                        Funktionen.RefreshLabel(lbLehrer5, stunden[4].fach, Color.FromArgb(244, 244, 159));
                    }
                    else
                    {
                        Funktionen.RefreshLabel(lbLehrer5, stunden[4].fach, Color.White);
                    }

                    if (currhour == 5)
                    {
                        Funktionen.RefreshLabel(lbLehrer6, stunden[5].fach, Color.FromArgb(244, 244, 159));
                    }
                    else
                    {
                        Funktionen.RefreshLabel(lbLehrer6, stunden[5].fach, Color.White);
                    }

                    if (currhour == 6)
                    {
                        Funktionen.RefreshLabel(lbLehrer7, stunden[6].fach, Color.FromArgb(244, 244, 159));
                    }
                    else
                    {
                        Funktionen.RefreshLabel(lbLehrer7, stunden[6].fach, Color.White);
                    }

                    if (currhour == 7)
                    {
                        Funktionen.RefreshLabel(lbLehrer8, stunden[7].fach, Color.FromArgb(244, 244, 159));
                    }
                    else
                    {
                        Funktionen.RefreshLabel(lbLehrer8, stunden[7].fach, Color.White);
                    }

                    if (currhour == 8)
                    {
                        Funktionen.RefreshLabel(lbLehrer9, stunden[8].fach, Color.FromArgb(244, 244, 159));
                    }
                    else
                    {
                        Funktionen.RefreshLabel(lbLehrer9, stunden[8].fach, Color.White);
                    }

                    if (currhour == 9)
                    {
                        Funktionen.RefreshLabel(lbLehrer10, stunden[9].fach, Color.FromArgb(244, 244, 159));
                    }
                    else
                    {
                        Funktionen.RefreshLabel(lbLehrer10, stunden[9].fach, Color.White);
                    }
                }
            }
        }