Menu Features:
- Aktualisieren: Die aktuell anwählbaren Chatrooms werden aktualisiert
- Beenden: Programm wird beendet, Änderungen (Chatrooms, Accounts, Configs) werden abgespeichert
- Neuer Account erstellen: GUI zum Erstellen eines neuen Accounts wird geöffnet. (nur möglich wenn User nicht angemeldet ist, sonst disabled)
- Anmelden: Anmelde-GUI wird geöffnet. (nur möglich wenn User nicht angemeldet ist, sonst disabled)
- Mein Profil: MyProfile-GUI wird geöffnet. In diesem werden Benuztername und Status (Online/Offline) angezeigt.
- Passwort ändern: Passwort-GUI wird geöffnet. In diesem kann der User sein Passwort ändern.
- Abmelden: User meldet sich mit Klick ab. Wenn die Abmeldung erfolgreich war, wird das Chatroom-GUI geschlossen und das Login-GUI geöffnet (nur möglich wenn angemeldet, sonst disabled).
- Benutzer Online?: BenutzerOnline-GUI wird geöffnet. Darin kann ein beliebiger Benutzername eingegeben werden. Der Status (Online/Offline) wird nach Bestätigung der Suche im Fenster ausgegeben.
- Sprache: Hier kann zwischen den Sprachen Deutsch und Englisch gewechselt werden. Wenn das Programm beendet wird, wird die beim Beenden aktuelle Sprache beim nächsten Start als Standard-Sprache genommen.
- Account löschen: Aktueller Account wird mit einem Klick gelöscht. (nur möglich wenn User angemeldet ist)
App Features:
- Der Chatroom-GUI ist in Raumliste (links), Nachrichten-Fenster (mitte), Userliste (die sich im akutellen Raum befinden) (rechts), Benutzerbereich mit verschiedenen Buttons und einem Schreib-Feld aufgeteilt.
Funktionalitäten der Buttons
- Raum hinzufügen: RaumHinzufüg-GUI wird geöffnet. Der Benutzer kann einen beliebigen Raum erstellen (sofern der eingegebene Raumname nicht schon vergriffen ist)
- Raum betreten: Der Raum, welcher in der Raumliste (links) angewählt ist, wird betreten. Ein Label (unten-links) zeigt an in welchem Raum man sich momentan befindet.
- Raum löschen: Der Raum, welcher in der Raumliste (links) angewählt ist, wird gelöscht sofern derselbe User in erstellt hat.
- Raum verlassen: Der aktuelle Raum wird verlassen.
- Senden: eingegebene Nachricht wird versendet. Alternativ kann auch mit der ENTER-Taste benutzt werden. Wenn eine Nachricht gesendet werden will der User sich jedoch in keinem Raum befindet wird ein NoRoom-GUI geöffnet das dem User mitteilt, dass er zuerste einen Raum betreten soll.
- Bei falschen Eingaben im Login-GUI oder sonstigen unkorrekten Eingaben erhält der Benutzer Rückmeldungen durch ein Label im GUI.
- Das ganze Programm ist mit einem Logger ausgestattet, um so von der Konsole eventuelle Probleme ablesen zu können.
Probleme:
- Um die Server-Messages "listchatrooms" und "listchatroomusers" abzufangen, kamen wir auf keine andere Lösung als eine For-Schleife einzubauen. Dies hat zur Folge, dass Aktualisierungen von den Chatroom sowie Chatroomuser mehrmals ausgeführt werden, was natürlich kein Sinn macht.