gtk.h mit Xlib.h kombinieren

Gast #4298374
Lesenswert?
• ▲
▼
Wie ist es möglich ein Fenster mit einem Button mit Hilfe der gtk.h zu 
erstellen, in dem dann mit der xlib.h auch noch eine Linie gezeichnet 
werden soll. Mir ist nicht klar wie die Fenster-ID von gtk.h an xlib.h 
übergeben werden kann? Mir ist auch bewusst, dass gtk eine DrawingArea
anbietet in die mit cairo gezeichnet werden kann, allerdings wünsche ich 
mir explizit die Zeichenarbeit mit Xlib.h zu erledigen...
Danke für alle konstruktiven Antworten
Gast #4298441
Lesenswert?
• ▲
▼
gdk_x11_drawable_get_xid()
http://developer.gimp.org/api/2.0/gdk/gdk-X-Window-System-Interaction.html


Beachte: GTK+ will eigentlich X11-Unabhängig sein/werden, also auch 
unter Wayland/MIR/Windows/... laufen.
Solche X11-Spezifischen Sachen unterlaufen das.

Ohne triftigen Grund sollte man sowas nicht machen.

Ach ja: "ich habe die Linien-Zeichen-Funktion in der GTK-Doku nicht 
gefunden" ist kein triftiger Grund.
Gast #4298444
Lesenswert?
• ▲
▼
Franz schrieb:
> Mir ist auch bewusst, dass gtk eine DrawingArea
> anbietet in die mit cairo gezeichnet werden kann, allerdings wünsche ich
> mir explizit die Zeichenarbeit mit Xlib.h zu erledigen...

Dazu brauchts doch kein Cairo. 
http://www.gtk.org/api/2.6/gdk/gdk-Drawing-Primitives.html
Ich habe hier noch das X-Lib Programming Manual stehen. Angeschafft vor 
ca. 20 Jahren. Nicht mehr angerührt seit ca. 15 Jahren...
#4299039
Lesenswert?
• ▲
▼
Mal davon abgesehen, dass eine Linie sicher kein Effizienzproblem beim 
Durchreichen durch GTK ausmacht, gibt es natürlich Funktionen, an die 
darunterliegenden X11-IDs zu kommen.

gtk2: GDK_WINDOW_XWINDOW und GDK_WINDOW_XDISPLAY  aus gdkx.h
gtk3: GDK_WINDOW_XID und GDK_WINDOW_XDISPLAY aus x11/gdkx11window.h und 
x11/gdkx11display.h

Aber wie schon von anderen gesagt, eigentlich braucht man sowas nicht 
(mehr).

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.