Scid (Chessdatabase)- GUI verbessern
-
Hi,
ich bin Schachspieler und finde es sehr schade, daß es für Linux im Grunde nur eine gute Schachdatenbank gibt, nämlich Scid.
Die Datenbank ist von der Funktionalität her schon sehr gut, zudem ist sie mit (Tcl/Tk) and C++ geschrieben worden.
Was mir nicht so gut gefällt, ist die grafische Benutzeroberfläche. Evtl. könnte ich mir vorstellen, im Rahmen eines langfristigeren Projekts eine neue GUI zu basteln, frei nach dem Motto: Der Weg ist das Ziel.
Als Programmieranfänger kann ich leider nicht wirklich einschätzen, wie gut TCL/TK ist, meine Vorstellung geht da eher in Richtung WxWidgets.
Frage wäre, macht das Sinn bzw. könnte man die GUI relativ einfach durch eine andere ersetzen? Der Sourcecode ist ja quelloffen.
-
Ich schätze, dass das ganze Projekt "Schachgui" nicht wirklich umfangreich oder anspruchsvoll ist und mit jeder Technologie recht schnell umgesetzt werden kann.
Ich selber kenne mich am besten mit Qt aus und würde dazu tendieren. Eine schöne TCL/TK GUI habe ich noch nie gesehen, würde das eher nicht nehmen. WxWidgets hat eine gewisse Verbreitung, kommt aber denke ich nicht an Qt heran.
-
Ich denke auch, dass du länger brauchen wirst, nette Bilder zu zeichnen, als daraus dann das GUI zu machen, egal ob QT oder wxWidgets.
Ich kenne mich mit QT nicht so gut aus, wie mit wxWidgets. Darum empfehle ich natürlich letzters.
Aber mal objektiver:
wxWidgets ist älter, also ziemlich bugfrei, was schon mal nicht schlecht ist.
Es ist sehr frei (OpenSource etc.) hat nen nettes (kostenloses!) Forum mit netten, hilfbereiten Leuten.
Es sieht nachher alles garantiert nach dem OS aus, auf dem man die Anwendung ausführt.
Es gibt viele RAD-Tools (zB. direkt bei CodeBlocks mit dabei)
Uuund es läuft überall, sprich man braucht keine spezielle Entwicklungsumgebung wie für diese QT Signals/Slots.
Ach und die Docs sind auch sehr gut: Wenns ums selbst zeichnen geht, in den Docs einfach mal nach wxDC suchen.
-
Electrics schrieb:
Uuund es läuft überall, sprich man braucht keine spezielle Entwicklungsumgebung wie für diese QT Signals/Slots.
Öhm welche "spezielle" Entwicklungsumgebung wird für Qt Signals/Slots benötigt?
Es wird nur der moc benötigt, welche code für die meta daten erzeugt. Und diesen kann man mit jeder Entwicklungsumgebung verwendet werden.Und seit Qt5 wird für das verbinden zu einem signal nicht mehr ein Objekt, welches von QObject abgeleitet ist, benötigt um den signal handler als slot zu implementieren.
Nur wenn man die speziellen features des bisherigen signal/slots konzepts benötigt (z.b. ausführen des slot codes in einem anderen thread) ist ein von QObject abgeleitete klasse notwendig