Release von Muckturnier 3.1 (01.07.2019)
Verbesserung: Beim Öffnen und Starten einer Turnierdatenbank wird jetzt das zugeörige Verzeichnis gespeichert und beim nächsten Start als Startpunkt des Dateiauswahldialogs gesetzt.
Verbesserung: Wenn mit Ninja gebaut wird, dann werden jetzt sowohl für GCC als auch für Clang standardmäßig Farben in der (Fehler-)Ausgabe aktiviert. Das kann jetzt auch mit der CMake-Option NINJA_NO_COLORS ausgeschaltet werden.
Neu: Der Standarddateiname für neue Turnierdatenbanken ist jetzt einstellbar. Es können Teile des aktuellen Datums bzw. der Zeit automatisch eingefügt werden. Die Voreinstellung ist „Muckturnier [Jahreszahl].mtdb“.
Neu: Die bisher hart codierten Zeichenketten für den Trenner zwischen den Namen der Spieler in den Paarnamen bei Einzelspielerturnieren und für das Bobbl-Symbol können jetzt angepasst werden.
Änderung: Sofern „Eingabe ohne Tischnummern“ nicht aktiviert ist, muss man jetzt immer einen Tisch auswählen (es ist als Voreinstellung nicht mehr der erste freie Tisch gesetzt). So kann es nicht mehr passieren, dass man während der ersten Runde aus Versehen nur die Namen heraussucht, aber nicht die zugehörige Tischnummer auswählt.
Änderung: Markierungen können jetzt unabhängig davon, ob es so markierte Anmeldungen gibt, ein- und ausgeblendet werden. So kann ein Netzwerkteilnehmer z. B. nur eine bestimmte Markierung anzeigen und darauf warten, dass diese von einem anderen gesetzt wird.
Neu: Um auf kleinen Displays vertikalen Platz zu sparen, kann jetzt die Fenstertitelleiste und der Fensterrahmen sowie die Menüleiste ausgeblendet werden.
Neu: Beim Aufrufen der Client-Seite wird jetzt automatisch per UDP-Broadcast nach einem Muckturnier-Server gesucht. Wenn einer antwortet, dann wird dessen Socket-Adresse voreingestellt, so dass man die IP und den Port nicht manuell eingeben muss.
Bugfix: Es wird jetzt das Gebietsschema des Servers übernommen, sofern ein Client ein anderes benutzt (z. B. wenn die Oberfläche des Server-Rechners auf Deutsch und die des Clients auf Englisch eingestellt ist). So ist sichergestellt, dass Sortierung der Namen überall gleich ist, und keine Prüfsummenfehler trotz identischen Datenbestands auftreten.
Neu: Es kann jetzt, abhängig vom eingegebenen Namen einer neuen Anmeldung, automatisch eine Markierung gesetzt werden (z. B. „Allein da“, wenn kein „/“ im Namen vorkommt).
Bugfix: Es können jetzt auch Backups wiederhergestellt werden, wenn die Original-Datenbank nicht mehr existiert.
Verbesserung: Wenn ein Paar/Spieler editiert und währenddessen eine Netzwerkänderung verarbeitet wird, dann bleiben jetzt eine etwaige Textauswahl, die Cursorposition und die Scrollbarposition (soweit möglich) erhalten.
Bugfix: Wenn auf dem Server ein Paar/Spieler editiert wurde und währenddessen mehr als ein Paar/Spieler von einem anderen Netzwerkteilnehmer angemeldet wurde, dann stürzte das Programm ab. Das ist jetzt korrigiert.
Bugfix: Wenn auf dem Server ein Paar/Spieler editiert wurde und der Name bereits geändert war, und eine Änderung an der Anmeldungsliste von einem Client verarbeitet wurde, dann wurde eine falsche Fehlermeldung angezeigt. Wurde die nicht schnell genug weggeklickt, dann bekam der Client einen Timeout und der Server stürzte ab. Das ist jetzt behoben.
Neu/Verbesserung: Es können jetzt lokale Einstellungen gespeichert werden. Namentlich: - Die letzte Größe und Position des Programmfensters - Die aktuellen Turniereinstellungen als Vorlage für neue Turnierdatenbanken - Die aktuellen Markierungen als Vorlage für neue Turnierdatenbanken
Bugfix: Wenn auf dem Server ein Name editiert wurde und ein Client fragte währenddessen die Änderung dieses Namens an, und auf dem Server wurde die „Kollidierende Netzwerkänderung“- Fehlermeldung nicht schnell genug weggeklickt, dann bekam der Client einen Timout und der Server stürzte ab. Das ist jetzt behoben.
Änderung: Die Ranglistenplätze werden jetzt von der Datenbank, und nicht mehr von der Ranglistenseite berechnet. Der „Turnierdaten exportieren“-Dialog greift jetzt nicht mehr auf die Ranglistenseite zu.
Neu: Bei Aktionen auf der Anmeldungsseite, bei denen potenziell mehrere Paare/Spieler gelöscht werden (z. B. „Alle unmarkierten Paare/Spieler löschen“) wird jetzt angeboten, vorher ein Backup anzulegen (per Voreinstellung aktiviert).
Neu: Wenn jetzt eine Turnierdatenbank geöffnet wird, die potenziell ein Backup ist, wird angeboten, das Backup wiederherzustellen, anstatt es direkt zu öffnen.
Bugfix: Wird eine ungültige oder beschädigte Datenbank geöffnet, dann werden beim anschließenden Schließen keine Schreibversuche mehr unternommen und entsprechend keine zusätzliche Fehlermeldung mehr angezeigt.
Bugfix: Beim Update einer Datenbank auf eine neue Revision werden jetzt keine Schreibversuche mehr in nicht beschreibbare Datenbanken unternommen. Beim Abbrechen wird die zuletzt geöffnete Datenbank korrekt wieder geöffnet. Somit sollte es in keinem Fall mehr SQL-Fehler und/oder Speicherzugriffsfehler geben.
Bugfix: Beim Zurücksetzen der Datenbank wird jetzt das Ergebnis des Anlegens eines Backups vorher korrekt interpretiert.
Neu: Das Netzwerk unterstützt jetzt auch die Aktionen, die die ganze Anmeldungsliste betreffen: Alle Paare/Spieler markieren, alle Markierungen entfernen, markierte Paare/Spieler löschen und die ganze Liste löschen.
Neu: Es können jetzt auch Markierungen bearbeitet werden, wenn das Netzwerk läuft. Alle Aktionen werden unterstützt: Neu anlegen, Bearbeiten, Verschieben und Löschen.
Verbesserung: Beim Vergleich der Ranglisten per Netzwerk wird jetzt berücksichtigt, ob auf dem Server und dem Client für alle Paare/Spieler gleich viele Ergebnisse eingegeben wurden.
Bugfix: Der Vergleich von Ranglisten per Netzwerk gibt jetzt auch dann sinnvolle Ergebnisse aus, wenn durch unterschiedliche Ergebnisse verschiedene Platzierungen entstehen. Bisher wurde der 1. mit dem 1., der 2. mit dem 2. Platz verglichen etc., so dass eine unterschiedliche Platzierung zu einer Rasterverschiebung führte. Deswegen wurden ab dem ersten unterschiedlichen Platz alle nachfolgenden als verschieden angezeigt, auch dann, wenn die Punkte eigentlich identisch waren.
Verbesserung: Wenn jetzt ein Paar- bzw. Spielername editiert wird (egal ob lokal oder per Netzwerk), dann werden beim neu Laden der Ergebnisse-Seite vorher evtl. eingegebene Daten wiederhergestellt, anstatt die Ausgangssituation anzuzeigen.
Bugfix: Wenn die „Abgebrochen“-Markierung von einem Bobbl entfernt wird, dann werden jetzt nur noch die Bobbl davor zurückgesetzt, die als abgebrochen markiert waren. Bei allen anderen bleiben die eingegebenen Daten erhalten.
Bugfix: Beim Verbinden mit einem Server wird jetzt nicht mehr nur die IP-Adresse, sondern auch der Port zwischengespeichert und beim nächsten Verbinden voreingestellt.
Bugfix: Es sollten jetzt, unabhängig davon, ob Server oder Client offen sind, keine Speicherzugriffsfehler mehr beim Beenden auftreten.
Änderung: Das Netzwerkprotokoll wurde überarbeitet. Es gibt jetzt nicht mehr einen Anmeldungs- und einen Ranglistenserver, sondern nur noch einen Server, der sich um alles kümmert. Die Anmeldung am Netzwerk ist jetzt auch mit bereits eingegebenen Ergebnissen möglich (potenziell abweichende Namen werden dann abgeglichen). Änderungen an Namen werden jetzt also auch nach der Anmeldung verteilt und die Anmeldungslisten bleiben immer synchron.
Änderung: Die Server- und Clientdialoge werden jetzt nicht mehr als extra Fenster, sondern wie die anderen Seiten (standardmäßig) als Tabs angezeigt.
Bugfix: Nach einem Reset der Datenbank werden die Netzwerk-Menüeinträge jetzt korrekt aktiviert bzw. deaktiviert.
Bugfix: Der Install-Prefix ("/usr") wird jetzt unter Linux auch dann korrekt gesetzt, wenn mit Ninja anstatt mit GNU make kompiliert wird.