GNOME 3 Application Development Beginner's Guide
This course has been retired. Check out the alternatives below
-
What do you get with a Packt Subscription?
- Instant access to this title and 7,500+ eBooks & Videos
- Constantly updated with 100+ new titles each month
- Breadth and depth in over 1,000+ technologies
-
Installing GNOME 3 and SDK
- Installing GNOME 3 and SDK
- System requirements
- GNOME 3 desktop architecture
- GNOME and the SDK
- Time for action – installing GNOME and SDK in Fedora 17
- Time for action – installing GNOME and SDK in openSUSE 12
- Time for action – installing GNOME and SDK in Debian Testing
- Time for action – installing GNOME and SDK in Ubuntu 12.04
- Summary
-
Preparing Our Weapons
- Preparing Our Weapons
- Firing up Anjuta
- Time for action – creating a new Vala project
- Navigation between tabs
- Time for action – navigating between tabs
- Comment block
- Time for action – commenting/uncommenting a block
- Time for action – running the program for the first time
- Editing UI
- Time for action – editing UI
- Time for action – adding a label and a button
- Time for action – changing widget properties
- A responsive button
- Time for action – making the button responsive
- Tracking symbols
- Time for action – finding a symbol
- Getting help
- Summary
-
Programming Languages
- Programming Languages
- Programming GNOME with JavaScript
- Time for action – saying hello to Seed
- Time for action – running our program with Seed
- Time for action – playing with data types
- Time for action – controlling Iteration
- Time for action – manipulating an array
- Time for action – using the JavaScript object
- Time for action – playing with constructors
- Time for action – adding prototypes
- Time for action – modifying the prototype of an object
- Time for action – modularizing our program
- Getting to know Vala
- Time for action – entry point to our program
- Time for action – defining member access
- Time for action – experiment with data types
- Time for action – adding the Gee library
- Time for action – Gee in action
- Time for action – watching for signals
- Summary
-
Using GNOME Core Libraries
- Using GNOME Core Libraries
- Before we start
- The GLib main loop
- Time for action – playing with the GLib main loop
- GObject signals
- Time for action – handling GObject signals
- GLib properties
- Time for action – accessing properties
- Configuration files
- Time for action – reading configuration files
- GIO, the input/output library
- Time for action – accessing files
- Network access with GIO
- Time for action – accessing a network
- Understanding GSettings
- Time for action – learning GSettings
- GSettings API
- Time for action – accessing GSettings programmatically
- Summary
-
Building Graphical User Interface Applications
- Building Graphical User Interface Applications
- Before we start
- Creating a basic GTK+ application
- Time for action – implementing the mockup
- Time for action – adding icons to the buttons
- Porting the code without GtkBuilder
- Time for action – programming with raw GTK+
- GUI programming with Clutter
- Time for action – implementing the mockup with Clutter
- Summary
-
Creating Widgets
- Creating Widgets
- Before we take off
- Overriding the widget's standard functions
- Time for action – overriding the set_title function
- Adding new functionalities
- Time for action – making a composite widget
- Maintaining compatibility
- Implementing a GTK+ custom widget
- Time for action – implementing the custom widget
- Maintaining widgets in a library
- Time for action – creating a library
- Summary
-
Having Fun with Multimedia
- Having Fun with Multimedia
- Packages required
- Understanding the basic concept of GStreamer
- Accessing the GStreamer pipeline with the command line
- Time for action – testing the pipeline
- Time for action – programmatically playing the audio
- Time for action – handling the events
- Playing a video media
- Time for action – playing video
- Time for action – programmatically playing the video
- Summary
-
Playing with Data
- Playing with Data
- Presenting data with TreeView
- Time for action – using TreeView
- The Evolution Data Server (EDS) architecture
- Time for action – setting up the address book and the calendar data source
- Time for action – accessing the address book
- Have a go hero – saving data to the address book
- Summary
-
Deploying HTML5 Applications with GNOME
- Deploying HTML5 Applications with GNOME
- Before we start
- Embedding WebKit
- Time for action – embedding WebKit
- Runtime with JavaScriptCore
- Time for action – calling the Vala object from the frontend
- Time for action – connecting GNOME with client-side JavaScript
- Summary
-
Desktop Integration
- Desktop Integration
- Talking to each other with D-Bus
- Time for action – listening to D-Bus
- The GNOME session manager
- Time for action – talking to the session manager
- Launcher
- Time for action – putting our application in the launcher
- GNOME keyring
- Time for action – storing passwords securely
- Notification system
- Time for action – sending notifications
- Summary
-
Making Our Applications Go International
- Making Our Applications Go International
- Understanding locale
- Time for action – getting the available locales
- Time for action – adding a locale
- Time for action – getting different outputs with different locales
- i18n in a Vala project
- Time for action – bootstrapping the infrastructure
- Time for action – creating a UI
- Time for action – translating UI texts
- The localization process
- Summary
-
Quality Made Easy
- Quality Made Easy
- Reasons for performing unit testing
- Time for action – creating our first unit test
- Time for action – creating stubs
- Testing GUI modules
- Time for action – testing a GTK+ module
- Summary
-
Exciting Projects
- Exciting Projects
- Part I – web browser
- Time for action – designing our UI
- Time for action – preparing the build infrastructure
- Time for action – finishing up
- Part II – A Twitter client
- Time for action – implementing the Twitter client
- Summary