Developing Native Applications with GTK These Slides

Developing Native Applications with GTK These Slides

Developing Native Applications with GTK These slides https://tinyurl.com/developing-apps-with-gtk Felipe Borges - GNOME Developer / Red Hat Developer feborges at irc.gnome.org [email protected] / [email protected] Who is using Gtk? · Desktop - GNOME: Fedora, RHEL/Red Hat, Ubuntu/Canonical, Suse · Just drawing - Firefox / Chrome / WxWidgets on Linux · Embedded devices - Konami · Multiplatform .Net IDE - Microsoft with Mono / Xamarin · Valve / Steam - Dialogs on Linux Key concepts · Widgets / Containers / Constraints · Events / callbacks · C based with GObject · Multi platform · Multi language with GObject Introspection · Single threaded Language bindings · C / C++ · Python · JS · Vala · C# / Mono · Rust API Prefixed snake case $project_$object_$action: g_ | hash_table | _new gtk_ | button | _set_label Inheritance GObject GtkWidget GtkContainer GtkBin GtkButton Pros · Language agnostic · Low overhead · Stability · Flexibility by being able to extend it · FOSS Cons · Not good multiplatform story · Limited in some areas such as animations · Not the best documentation (yet) Target · Desktop applications · Embedded medium powerful devices · Cross platform not being an important factor Tooling · GNOME Builder as IDE · GtkInspector · DevHelp · HIG · Glade Gtk High level Pango Cairo ATK Application GObject Gio Glib Low level Gtk - GLib - seriously, why C... · C is very flexible · C is the de facto common programming language · Interaction with the kernel and low level libraries · Allows easy introspection · Low overhead Signals and event handling · Types of events · Connecting and disconnecting signal handlers · Signal emission and propagation Resources · Gtk and HIG: https://developer.gnome.org · Python Gtk: https://lazka.github.io/pgi-docs · Help: irc.gnome.org #newcomers and #gtk Demo time! Thank you!.

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    18 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us