Example #1
0
        public override ConsoleKey Ausführen()
        {
            if (navIndex == 0)
            {
                NavigiereKlassenAuswahl(-1);
            }


            if (navIndex == 1)
            {
                neueKlasse();
            }

            if (navIndex == 2)
            {
                menuModifier--;
            }

            if (navIndex == 3)
            {
                ConsoleKey key = Grafiken.zeichneDialog("wirklich beenden? [Y/n]", ConsoleColor.DarkRed, ConsoleColor.Red);
                if (key.Equals(ConsoleKey.Enter) || key.Equals(ConsoleKey.Y))
                {
                    menuModifier = -2;
                }
                else
                {
                    return(key);
                }
            }
            return(ConsoleKey.Enter);
        }
Example #2
0
        private void neueKlasse()
        {
            List <string> temp = new List <string>();

            int top  = 40;
            int left = 40;

            // Grafiken.zeichneTextBox(left+1, top, '+',DarkConsoleColor.Gray ,White , NeueKlasseDialog);
            temp = Grafiken.zeichneEingabeMenü(new List <string>()
            {
                "string", "Name :", "int", "Kalenderjahr: ", "int", "Semester: "
            });


            Program.klassenListe.Add(new SchulKlasse(temp.ElementAt(0), Int32.Parse(temp.ElementAt(1)), Int32.Parse(temp.ElementAt(2))));

            Grafiken.zeichneTextBox(left + 1, top + 1, '!', ConsoleColor.Gray, ConsoleColor.Black, Grafiken.KlasseSpeichernDialog);

            Console.CursorVisible = false;
            if (Console.ReadKey().Key.Equals(ConsoleKey.Enter) || Console.ReadKey().Key.Equals(ConsoleKey.Y))
            {
                FileWriter.saveFile(Program.klassenListe);
                FileReader.readFiles();
            }

            Grafiken.zeichneBox(left, top, 51, 5, ' ', ConsoleColor.Black, ConsoleColor.Black, false);
            generiereKlassenListe();

            NavigiereKlassenAuswahl(Program.klassenListe.Count());
        }
Example #3
0
File: UI.cs Project: ThomasKman/NP
        // Menünavigation

        public static void Start()

        {
            Console.SetBufferSize(120, 60);
            Console.SetWindowSize(120, 60);
            Console.CursorVisible        = false;
            Console.TreatControlCAsInput = true;
            Grafiken.ZeichneMenu();
            HauptMenu hauptMenu = new HauptMenu();

            menu = hauptMenu;
            AktuelleSchulklasse.AddSchüler("test", "123");
            AktuellerSchüler = AktuelleSchulklasse.findeSchüler("123");
            AktuellerSchüler.neuesZeugnis(1, 1);
            AktuellesZeugnis = AktuellerSchüler.getAktuellesZeugnis();
            AktuellesZeugnis.AddSchulfach(new Schulfach("test", 1));
            AktuellesSchulfach = AktuellesZeugnis.getSchulFächer().First();
            AktuellesSchulfach.addNote(new Note(1, 1, 1, 1, 1));
            KlassenManager klassenManager = new KlassenManager();
            Schülermanager schülermanager = new Schülermanager();

            do
            {
                Console.SetCursorPosition(0, 0);
                Console.Write(menuIndex + "  " + UI.AktuelleSchulklasse.getName());
                menu.UpDateMenu();
                menuIndex += menu.Navigieren(Console.ReadKey().Key);
                menu.UpDateMenu();

                switch (menuIndex)
                {
                case 0:
                    exit = true;
                    break;

                case 1:
                    menu = hauptMenu;
                    break;

                case 2:
                    menu = klassenManager;
                    break;

                case 3:
                    menu = schülermanager;
                    break;

                default:
                    exit = true;
                    break;
                }
            } while (!exit);
        }
Example #4
0
        public override void UpDateMenu()  // In Grafiken Packen, auto generieren mit auto abständen zwischen MenüPunkten. Überschrift über box!
        {
            Grafiken.ZeichneMenuPunkte(1, 14, Console.WindowWidth - 2, navIndex, Menupunkte);

            if (UI.menuIndex.Equals(2))
            {
                Grafiken.zeichneElementListe(KlassenListe, -1);
            }
            else
            {
                Grafiken.zeichneBox(1, 21, (Console.WindowWidth / 4) - 2, 25, ' ', ConsoleColor.Black, ConsoleColor.Black, false);
            }
        }
Example #5
0
        private void KlasseLöschen()
        {
            ConsoleKey key = Grafiken.zeichneDialog("wirklich Löschen? [Y/n]", ConsoleColor.DarkRed, ConsoleColor.Red);

            if (key.Equals(ConsoleKey.Enter) || key.Equals(ConsoleKey.Y))
            {
                Program.klassenListe.Remove(UI.AktuelleSchulklasse);
                UI.menuIndex--;
                navIndex = 0;


                key = Grafiken.zeichneDialog("Gelöscht. Speichern? [Y/n]", ConsoleColor.DarkGreen, ConsoleColor.Green);
                if (key.Equals(ConsoleKey.Enter) || key.Equals(ConsoleKey.Y))
                {
                    FileWriter.saveFile(Program.klassenListe);
                }
            }
        }
Example #6
0
        public static ConsoleKey saveFile(List <SchulKlasse> klassen)
        {
            pathList = new List <string>();
            foreach (SchulKlasse klasse in klassen)
            {
                pathList.Add(klasse.getName() + "{");
                pathList.Add(klasse.getSchuljahr().ToString());
                pathList.Add(klasse.getSemester().ToString());
                foreach (Schulfach fach in klasse.getSchulfaecher())
                {
                    pathList.Add(fach.getFachrichtung() + "]");
                }

                foreach (Schüler schüler in klasse.getSchülerListe())
                {
                    pathList.Add(schüler.getNachName() + "_" + schüler.getVorName());
                    foreach (Zeugnis zeugnis in schüler.getZeugnisse())
                    {
                        path = "../../out/" + klasse.getName() + "/" + schüler.getNachName() + "_" + schüler.getVorName() + "/" + zeugnis.getName() + ".txt";
                        prüfeOrdner(path);

                        using (StreamWriter sw = new StreamWriter(path))
                        {
                            foreach (String output in zeugnis.SerializeForSave())
                            {
                                sw.WriteLine(output);
                            }
                            sw.Close();
                        }
                    }
                }
            }
            using (StreamWriter sw = new StreamWriter("../../out/paths.txt"))
            {
                foreach (string path in pathList)
                {
                    sw.WriteLine(path);
                }
                sw.Close();
            }

            return(Grafiken.Bestätigen("Speichern Erfolgreich"));
        }
Example #7
0
        private void neuesSchulfach()
        {
            List <string> fachName = Grafiken.zeichneEingabeMenü(new List <string>()
            {
                "string", "Name  : "
            });

            UI.AktuelleSchulklasse.AddSchulfach(fachName.First());
            ConsoleKey Key = Grafiken.Bestätigen("Speichern? [Y/n]");

            if (Key.Equals(ConsoleKey.Enter) || Key.Equals(ConsoleKey.Y))
            {
                FileWriter.saveFile(Program.klassenListe);
                FileReader.readFiles();
            }



            generiereKlassenInfo();
            Grafiken.zeichneObjektInfo(KlassenInfo, 3, false);
        }
Example #8
0
        public override int Navigieren(ConsoleKey gedrückteTaste)
        {
            menuModifier = 0;

            if (gedrückteTaste.Equals(ConsoleKey.Enter))
            {
                gedrückteTaste = Ausführen();
            }

            if (gedrückteTaste.Equals(ConsoleKey.Enter))
            {
                Grafiken.ZeichneMenu();
            }

            if (gedrückteTaste.Equals(ConsoleKey.LeftArrow))
            {
                if (navIndex > 0)
                {
                    navIndex--;
                }
                else
                {
                    navIndex = Menupunkte.Count() - 1;
                }
            }
            if (gedrückteTaste.Equals(ConsoleKey.RightArrow))
            {
                if (navIndex < Menupunkte.Count() - 1)
                {
                    navIndex++;
                }
                else
                {
                    navIndex = 0;
                }
            }

            return(menuModifier);
        }
Example #9
0
        public static void zeichneTextBox(int left, int top, int breite, char symb, ConsoleColor hintergrundFarbe, ConsoleColor schriftFarbe, List <string> Inhalt)
        {
            int AktuelleZeile = top;

            if (Inhalt.Any())
            {
                foreach (string textzeile in Inhalt)
                {
                }
                Grafiken.zeichneBox(left, top, breite, Inhalt.Count(), symb, hintergrundFarbe, schriftFarbe);
                Console.BackgroundColor = hintergrundFarbe;
                Console.ForegroundColor = schriftFarbe;
                Console.SetCursorPosition(left + 1, AktuelleZeile++);
                foreach (String textzeile in Inhalt)
                {
                    Console.SetCursorPosition(left + 1, AktuelleZeile++);
                    Console.Write(textzeile);
                }


                Console.ResetColor();
            }
        }
Example #10
0
        public override ConsoleKey Ausführen()
        {
            menuModifier = 0;
            if (navIndex == 0)
            {
                menuModifier++;

                navIndex = 0;
            }


            if (navIndex == 1)
            {
                Program.klassenListe = FileReader.readFiles();
                return(Grafiken.Bestätigen("Laden Erfolgreich"));
            }

            if (navIndex == 2)
            {
                return(FileWriter.saveFile(Program.klassenListe));
            }

            if (navIndex == 3)
            {
                ConsoleKey key = Grafiken.zeichneDialog("wirklich beenden? [Y/n]", ConsoleColor.DarkRed, ConsoleColor.Red);
                if (key.Equals(ConsoleKey.Enter) || key.Equals(ConsoleKey.Y))
                {
                    menuModifier--;
                    navIndex = 0;
                }
                else
                {
                    return(key);
                }
            }
            return(ConsoleKey.Enter);
        }
Example #11
0
        static void neuerSchüler()
        {
            List <string> EingabeInfo = new List <string>()
            {
                "string", "Vorname  :", "string", "Nachname : "
            };
            List <string> Name;


            Name = Grafiken.zeichneEingabeMenü(EingabeInfo);

            UI.AktuelleSchulklasse.AddSchüler(Name.First(), Name.Last());


            Console.CursorVisible = false;
            ConsoleKey Key = Grafiken.Bestätigen("Speichern? [Y/n]");

            if (Key.Equals(ConsoleKey.Enter) || Key.Equals(ConsoleKey.Y))
            {
                FileWriter.saveFile(Program.klassenListe);
            }

            Grafiken.zeichneTextBox(38, 38, '#', ConsoleColor.Black, ConsoleColor.Black, Grafiken.NeuerSchülerDialog);
        }
Example #12
0
 public static void zeichneBox(int left, int top, int breite, int anzahlZeilen, char symb, ConsoleColor hintergrundFarbe, ConsoleColor schriftFarbe)
 {
     Grafiken.zeichneBox(left, top, breite, anzahlZeilen, symb, hintergrundFarbe, schriftFarbe, false);
 }
Example #13
0
 public override void UpDateMenu()
 {
     Grafiken.ZeichneMenuPunkte(1, 14, Console.WindowWidth - 2, navIndex, Menupunkte);
 }
Example #14
0
        private bool NavigiereKlassenUnterMenu(int index)
        {
            int  KlassenUntermenuIndex = index;
            bool unterExit             = false;

            do
            {
                Grafiken.ZeichneMenuPunkte(33, 20, 86, KlassenUntermenuIndex, new List <string>()
                {
                    "SchülerManager", "Neues Schulfach", "Versetzen", "klasse Löschen"
                });

                Grafiken.zeichneObjektInfo(KlassenInfo, 3, false);

                ConsoleKey gedrückteTaste = Console.ReadKey(true).Key;

                if (gedrückteTaste.Equals(ConsoleKey.LeftArrow))
                {
                    if (KlassenUntermenuIndex > 0)
                    {
                        KlassenUntermenuIndex--;
                    }
                    else
                    {
                        Grafiken.ZeichneMenuPunkte(33, 20, 86, -1, new List <string>()
                        {
                            "SchülerManager", "Neues Schulfach", "Versetzen", "klasse Löschen"
                        });
                        return(false);
                    }
                }

                if (gedrückteTaste.Equals(ConsoleKey.UpArrow))
                {
                    Grafiken.zeichneBox((Console.WindowWidth / 4) + 3, 20, ((Console.WindowWidth / 4) * 3) - 5, 1, ' ', ConsoleColor.Black, ConsoleColor.Black);
                    return(true);
                }
                if (gedrückteTaste.Equals(ConsoleKey.RightArrow))
                {
                    if (KlassenUntermenuIndex < 3)
                    {
                        KlassenUntermenuIndex++;
                    }
                }
                if (gedrückteTaste.Equals(ConsoleKey.Enter) || gedrückteTaste.Equals(ConsoleKey.DownArrow))
                {
                    if (KlassenUntermenuIndex == 3)
                    {
                        Grafiken.zeichneObjektInfo(KlassenInfo, 3, true);
                        KlasseLöschen();
                        Grafiken.ZeichneMenuPunkte(33, 20, 86, -1, new List <string>()
                        {
                            "SchülerManager", "Neues Schulfach", "Versetzen", "klasse Löschen"
                        });
                        return(false);
                    }



                    if (KlassenUntermenuIndex == 1)
                    {
                        neuesSchulfach();
                    }
                    if (KlassenUntermenuIndex == 2)
                    {
                        ConsoleKey key = Grafiken.Bestätigen("Klasse versetzen? [Y/n]");
                        if (key.Equals(ConsoleKey.Enter))
                        {
                            UI.AktuelleSchulklasse.versetzen();

                            Grafiken.ZeichneMenuPunkte(33, 20, 86, -1, new List <string>()
                            {
                                "SchülerManager", "Neues Schulfach", "Versetzen", "klasse Löschen"
                            });
                            return(false);
                        }
                    }
                    if (KlassenUntermenuIndex == 0)
                    {
                        menuModifier++;
                        navIndex  = 0;
                        unterExit = true;

                        Grafiken.ZeichneMenuPunkte(33, 20, 86, -1, new List <string>()
                        {
                            "SchülerManager", "Neues Schulfach", "Versetzen", "klasse Löschen"
                        });
                    }
                }
                if (gedrückteTaste.Equals(ConsoleKey.Escape))
                {
                    Grafiken.ZeichneMenuPunkte(33, 20, 86, -1, new List <string>()
                    {
                        "SchülerManager", "Neues Schulfach", "Versetzen", "klasse Löschen"
                    });
                    return(true);
                }
            } while (!unterExit);

            return(unterExit);
        }
Example #15
0
        public void NavigiereKlassenAuswahl(int index)
        {
            bool exit         = false;
            int  auswahlIndex = 0;

            Grafiken.ZeichneMenuPunkte(33, 20, 86, -1, new List <string>()
            {
                "SchülerManager", "Neues Schulfach", "Versetzen", "klasse Löschen"
            });

            ConsoleKey gedrückteTaste;

            do
            {
                if (!Program.klassenListe.Any())
                {
                    neueKlasse();
                }
                UI.AktuelleSchulklasse = Program.klassenListe.ElementAt(auswahlIndex);

                Console.SetCursorPosition(0, 0);

                Console.Write(UI.menuIndex + "  " + UI.AktuelleSchulklasse.getName());
                UpDateMenu();
                generiereKlassenInfo();
                Grafiken.zeichneObjektInfo(KlassenInfo, 3, false);
                Grafiken.zeichneElementListe(KlassenListe, auswahlIndex);
                gedrückteTaste = Console.ReadKey(true).Key;



                if (gedrückteTaste.Equals(ConsoleKey.UpArrow))
                {
                    if (auswahlIndex > 0)
                    {
                        auswahlIndex--;

                        Grafiken.zeichneObjektInfo(KlassenInfo, 3, true);
                    }
                    else
                    {
                        exit = true;
                    }
                }
                if (gedrückteTaste.Equals(ConsoleKey.DownArrow))
                {
                    if (auswahlIndex < KlassenListe.Count() - 1)
                    {
                        auswahlIndex++;

                        Grafiken.zeichneObjektInfo(KlassenInfo, 3, true);
                    }
                    else
                    {
                        auswahlIndex = 0;
                    }
                }
                Grafiken.zeichneElementListe(KlassenListe, auswahlIndex);

                if (gedrückteTaste.Equals(ConsoleKey.Escape))
                {
                    exit = true;
                }

                if (gedrückteTaste.Equals(ConsoleKey.Enter) || gedrückteTaste.Equals(ConsoleKey.RightArrow))
                {
                    exit         = NavigiereKlassenUnterMenu(0);
                    auswahlIndex = 0;
                    generiereKlassenListe();
                    Grafiken.zeichneElementListe(KlassenListe, auswahlIndex);
                    Grafiken.zeichneObjektInfo(KlassenInfo, 3, true);
                }
            } while (!exit);
        }
Example #16
0
        public void NavigiereKlassenAuswahl()
        {
            bool exit         = false;
            int  auswahlIndex = 0;


            ConsoleKey gedrückteTaste;

            do
            {
                if (!Program.klassenListe.Any())
                {
                    neuerSchüler();
                }
                UI.AktuelleSchulklasse = Program.klassenListe.ElementAt(auswahlIndex);
                // generiereKlassenInfo();
                // Grafiken.zeichneObjektInfo(KlassenInfo, 2, false);
                //  Grafiken.zeichneElementListe(KlassenListe, auswahlIndex);
                gedrückteTaste = Console.ReadKey(true).Key;



                if (gedrückteTaste.Equals(ConsoleKey.UpArrow))
                {
                    if (auswahlIndex > 0)
                    {
                        auswahlIndex--;

                        //           Grafiken.zeichneObjektInfo(KlassenInfo, 2, true);
                    }
                    else
                    {
                        exit = true;
                    }
                }
                if (gedrückteTaste.Equals(ConsoleKey.DownArrow))
                {
                    if (auswahlIndex < SchülerListe.Count() - 1)
                    {
                        auswahlIndex++;

                        //   Grafiken.zeichneObjektInfo(KlassenInfo, 2, true);
                    }
                    else
                    {
                        auswahlIndex = 0;
                    }
                }
                Grafiken.zeichneElementListe(SchülerListe, auswahlIndex);

                if (gedrückteTaste.Equals(ConsoleKey.Escape))
                {
                    exit = true;
                }

                if (gedrückteTaste.Equals(ConsoleKey.Enter))
                {
                    //   ZeichneKlassenUnterMenu();
                    exit = true;
                }


                Console.SetCursorPosition(0, 0);

                Console.Write(UI.menuIndex + "  " + UI.AktuelleSchulklasse.getName());
            } while (!exit);

            //     Grafiken.zeichneObjektInfo(UI.AktuelleSchulklasse.showInfo(), 2, true);
        }