NASM
Ho trovato come disegnare un rettangolo blu sullo schermo bypassando tutto, anche X11 (NON il sistema operativo) con NASM.
https://stackoverflow.com/questions/21551935/assembly-code-to-draw-a-squareMa ciò è sconsigliato (ovvio) eppoi l'esempio è per NASM a 32 bits (non 64).
Nana
Cercando su internet a tappeto mi sono imbattuto in Nana, un progetto di un autore cinese.
Nana è un framework molto bello, somiglia a Gnome. Ha i pulsanti con gli angoli
smussati. La scelta di un font leggibile e marcato.
L'installazione non è facilissima, ma l'assistenza in linea è soddisfacente. Gli esempi comprendono listboxes, combo boxes, radio boxes, progress bars.
Per contro non ho visto un esempio di GridView/TableView. Nana è scritta in C++ e quindi il programma che se ne serve deve essere in C++. Non sono ancora riuscito a capire appieno la sua sintassi.
Nana pone le sue fondamenta (come Gtk e Qt) su Xlib.
Xlib
.
Quindi sto facendo dei tentativi di partire anch'io da Xlib. Che è scritto in C. Xlib produce facilissimamente dei form metal-gray con bottoni. Però squadrati. Il font è appena leggibile. I controlli di edit nelle textboxes sono tutti da costruire. E non è affatto facile. Tutti i controlli superiori: GridView, combo, listbox, progress bars sono da costruire.
Xlib prevede una barra di menu che però devo ancora verificare. Manca la StatusBar.
Anche Xlib nel passato, di tanto in tanto ha fatto delle migliorie. Ad esempio il passaggio dalle stringhe ASCII alle stringhe UTF-8 lo ha risolto con delle struct e un insieme di funzioni che ho scelto di ignorare.
Xlib invia degli eventi quando il mouse passa sopra i pulsanti e quando si premono i tasti della tastiera.