xlib toolkit selber bauen in c
-
Nachdem mein erstes Projekt mit Xlib abgeschlossen ist, wollte ich mich mal an eine Art Toolkit (für ganz ganz Arme) in Linux machen. Arbeiten will ich dabei mit Cairo und natürlich soll alles auf xlib aufbauen.
Ich will eigentlich nur sowas wie nen Button und ein Scrolldings (wie bei der Lautstärke). Nun suche ich schon ne weile nach ner Anleitung, weil die Sources der meisten Toolkits einfach zu groß sind und meist auch schlecht dokumentiert, wenn es um die kleineren geht. (Vielleicht hat ja jemand einen Link? )Außerdem kamen 3 Fragen auf die ich nicht beantwortet kriege:
1. Wie erstellt man ein Button Click Event ?
Werden da einfach nur die Koordinaten der Maus übermittelt und dann mit einer Liste von Buttons abgeglichen...?
2. Muss ich (wenn ich mit Cairo arbeite) die ganze Grafik immer wieder neu zeichen oder mach ich das mit "Feldern", also nur das neu zeichen was wirklich neu gezeichnet werden muss?
3. Wird eine extra GUI Loop gebraucht (sowie bei GTK: gtk_main (), etc) oder kann ich das alles auch in meiner eigentlichen XLib Loop machen?
-
Ernste Frage: Wieso willst du überhaupt ein eigenes X-toolkit bauen? Direkt mit xlib zu arbeiten, ist pain in the ass... Es gibt einen Grund, warum es so gut wie niemand heutzutage direkt mit xlib arbeitet sondern auf gtk/qt/wxwidgets/usw setzt.
Ist es nur einfach Spaß du willst lernen, wie man mit xlib arbeitet? Oder willst du sie produktiv einsetzen?
-
Eigentlich möchte ich beides ein bisschen ^^
Ich mag es nicht auf Toolkits zurückzugreifen, da diese alle überladen sind und ich eine !eigene! Oberfläche haben will die immer gleich aussieht.
Es soll ja gar keine Toolkit mit 100 - 200 Codefiles sein, sondern einfach nur ein kleines Toolkit. Nur ein Button und son Scrolldings würden mir schon fast reichen.Und dazu kommt, dass ich halt kein Plan hab wie son Ding aufgebaut ist und ich sowas gerne wissen will. Es gibt keine Anleitung wie man ein kleinen Toolkit oder zumindest nen Button programmiert. (außer "feste" Buttons, die kann ich mir aber sparen, da ich diese ja häufiger verwenden will)
-
Schau dir mal graphapp an - ist so ein Uni-Projekt. Sehr einfach anzuwenden und extrem schlank. Habe einige Gui-Anwendungen damit erstellt und das läuft prima.
Sogar nen Oberflächendesigner konnte ich mir damit basteln und das bei meinen geringen C-Kenntnissen (aus the GNU C-Tutorial).
-
Danke für den Tipp!
Das Ding sieht auf jedenfall kleiner und übersichtlicher aus als andere, .... aber gibts sowas auch in noch kleiner ^^ (wie gesagt: button und so primitive sachen reichen). Ich will nur wissen wie sowas im inneren Aufgebaut ist. Also ob die ganzen Buttons in ner Liste gespeichert und dann auf die Koordinaten abgefragt werden, etc. Oder wie funktoniert das mit der Xlib NextEvent-Loop. Sowas halt. Bei der appgraph Sache ist mir das noch alles viel zu komplex, weil die halt 10 Objekte haben + Bilder-Verarbeitung + ...