O'Reilly logo

Beginning Linux Programming, 4th Edition by Richard Stones, Neil Matthew

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Chapter 16

Programming GNOME Using GTK+

So far in this book, we’ve covered the major topics in Linux programming that deal with complex, under-the-hood stuff. Now it’s time to breathe some life into your applications and look at how to add a Graphical User Interface (GUI) to them. In this chapter and Chapter 17, we’re going to look at the two most popular GUI libraries for Linux: GTK+ and KDE/Qt. These libraries correspond to the two most popular Linux desktop environments: GNOME (GTK+) and KDE.

All GUI libraries in Linux sit on top of the underlying windowing system called the X Window System (or more commonly X11 or just X), so before we delve into GNOME/GTK+ details we provide an overview of how X operates and help you understand how the various layers of the windowing system fit together to create what we call the desktop.

In this chapter, we cover

  • The X Window System
  • An introduction to GNOME/GTK+
  • GTK+ widgets
  • GNOME widgets and menus
  • Dialogs
  • CD Database GUI using GNOME/GTK+

Introducing X

If you’ve ever used a desktop windowing system on Linux, then you’ve most likely used X, an open source graphics system. One of the most innovative, and ultimately frustrating, features of X is the rigid adherence to the mantra of mechanism, not policy. That means X defines no user interface, but provides the means to make one. This means you’re free to create your own entire desktop environment, experimenting and innovating at will. But, it also hindered user interfaces on Linux and UNIX ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required