GTK+ / Gnome Development
Newriders logo




GTK+/Gnome Application Development

ISBN 0-7357-0078-8 Price £28.99 UK
Havoc Pennington with a foreword by Miguel de Icazza
Foreword, 13 Chapters, 6 Appendices and Index in 496 pages
 

Chapter List

    1     Introduction
    2     glib: Portability and Utility
    3     GTK+ Basics
    4     Creating Your Source Tree
    5     Gnome Application Basics
    6     The Main Window: GnomeApp
    7     User Communication Dialogues
    8     Gnome Application Checklist
    9     The GTK+ Object and Type System
    10   Gdk Basics
    11   Writing a GtkWidget
    12   GnomeCanvas
    13  Writing a GnomeCanvasitem

            Appendix A
                GTK+/Gnome Object Hierarchy
            Appendix B
                Table of Header Files
            Appendix C
                Frequently Asked Questions
            Appendix D
                Online Resources
            Appendix E
                Code Listings
            Appendix F
                Open Publication Licence Version 1.0
            Index


Synopsis

    Gnome and the Gnome foundation have been around for a while now.  It has been accepted as a respectable desktop system to the extent that Hewlett-Packard are sending out some of their computers with Gnome as the default desktop software.  The founder of the Gnome foundation is Miguel de Icazza.  Miguel has set up Ximian Inc in more recent times which produces software which is similar to Gnome software.  The difference is that Ximian is aimed at a paying commercial market.  Applications such as Evolution have been produced.  This is essentially a look alike clone of Outlook for the GNU/Linux desktop.

Review


Over the years as free software has developed and evolved we have seen it become more sophisticated and user friendly.   Miguel de Icazza who has written the foreword to this book spends a lot of time explaining to people that free software and the GNU/Linux desktop should be easy to use.     He starts his foreword by telling people about the importance of free software.     The introduction takes this one stage further by asking the question "What is Gnome ?" and the following text is a good example of the sort of things that people should know about if they want to understand some basic ideas about Gtk+ and Gnome programming methods.  The author of the book is Havoc Pennington.  He started programing Gtk+ with version 1.0 and has been an active Gnome developer since then.  Five different technical reviewers helped to improve and reshape the book before it was published.   The author makes this clear in his acknowledgements and thanks them all of their hard work.

The rest of the book goes into uncovering the GTK+ object system, working with the event loop, managing the Gdk substrate, writing custom widgets, and mastering the GnomeCanvas.  There are three parts which make up the thirteen chapters.   Part I is the Overview followed by PartII which looks at building a Gnome Application.  Part III goes into Advanced Gtk+/Gnome techniques.  An assumption is made that the reader is conversant with the C programing language and GNU/Linux development.

It's probably at about chapter three that the useful stuff begins with Gtk+ basics.  Some helpful hints about the code are introduced.  Hello World is shown yet again in yet another programming language.  The reader is taken through how it works by stages of examples that show various bits and pieces.  Some basic visual elements are shown to get the reader used to what comes next.   It's also at this point that the main loop and main loop basics are explained before moving on to more advanced concepts.  Chapter four starts by creating your source tree.  An overview of this is presented and a source tree list is shown to help the wouldbe developer.  Some relevant GNU documentation is mentioned later in this chapter.   At chapter five Gnome application basics are shown.  This is a rudimentary introduction to aspects of a Gnome application.  The rest of the book up to chapter twelve explains the workings of an application and how to get the best out of development methods.  At chapter twelve the GnomeCanvas  is shown.   This is an important part of learning about  the Gnome development methods.   It shouldn't be missed.   Chapter thirteen follows up by giving examples of the GnomeCanvasItem.  The appendices finish off a useful volume with some some information which may not be available elsewhere.

If you are someone who has worked in GNU/Linux development and you would like to know more about the use of Gtk+ tools and Gnome development then you should find that this is a book for you.

Review by Richard Ibbotson


Richard is the organiser for Sheffield Linux User's Group
– you can view their web site at – http://www.sheflug.co.uk.