⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 z4.html

📁 GTK+_ Gnome Application Development
💻 HTML
📖 第 1 页 / 共 2 页
字号:
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><html>  <head>    <title>      The Gnome Development Framework    </title>    <meta name="GENERATOR" content=    "Modular DocBook HTML Stylesheet Version 1.45">    <link rel="HOME" title="GTK+ / Gnome Application Development"    href="ggad.html">    <link rel="UP" title="Introduction" href="z2.html">    <link rel="PREVIOUS" title="Introduction" href="z2.html">    <link rel="NEXT" title="Structure of the Book" href="z22.html">  </head>  <body bgcolor="#FFFFFF" text="#000000" link="#0000FF" vlink=   "#840084" alink="#0000FF">    <div class="NAVHEADER">      <table width="100%" border="0" bgcolor="#ffffff" cellpadding=       "1" cellspacing="0">        <tr>          <th colspan="4" align="center">            <font color="#000000" size="2">GTK+ / Gnome Application            Development</font>          </th>        </tr>        <tr>          <td width="25%" bgcolor="#ffffff" align="left">            <a href="z2.html"><font color="#0000ff" size="2"><b>            &lt;&lt;&lt; Previous</b></font></a>          </td>          <td width="25%" colspan="2" bgcolor="#ffffff" align=           "center">            <font color="#0000ff" size="2"><b><a href="ggad.html">            <font color="#0000ff" size="2"><b>            Home</b></font></a></b></font>          </td>          <td width="25%" bgcolor="#ffffff" align="right">            <a href="z22.html"><font color="#0000ff" size="2"><b>            Next &gt;&gt;&gt;</b></font></a>          </td>        </tr>      </table>    </div>    <div class="SECT1">      <h1 class="SECT1">        <a name="Z4">The Gnome Development Framework</a>      </h1>      <p>        Gnome's application development framework centers around a        suite of libraries, all written in portable ANSI C and        intended to be used on UNIX-like systems. Libraries which        involve graphics realy on the X Window System. Wrappers are        available which export the Gnome API to nearly any language        you can think of, including Ada, Scheme, Python, Perl, Tom,        Eiffel, Dylan, and Objective C. There are at least three        different C++ wrappers as well.      </p>      <p>        This book will cover the C interface to the libraries;        however, it should be useful for users of any language        binding, since the mapping from C to your preferred        language is typically straightforward. The book covers        version 1.0 of the Gnome libraries (including the        compatible bug fix releases, such as 1.0.9---all 1.0.x        versions are compatible).      </p>      <div class="SECT2">        <h2 class="SECT2">          <a name="Z5">Non-Gnome Libraries</a>        </h2>        <p>          Taking full advantage of the free software tradition,          Gnome didn't start from scratch. It uses several          libraries which are maintained separately from the Gnome          project. These are a part of the Gnome application          development framework, and you can count on their          presence in a Gnome environment.        </p>        <div class="SECT3">          <h3 class="SECT3">            <a name="Z6">glib</a>          </h3>          <p>            glib is the base of the Gnome infrastructure. It's a C            utility library, providing routines to create and            manipulate common data structures. It also addresses            portability issues; for example, many systems lack the            <tt class="FUNCTION">snprintf()</tt> function, but glib            contains an implementation called <tt class="FUNCTION">            g_snprintf()</tt> which is both guaranteed to exist on            all platforms and slightly safer than <tt class=             "FUNCTION">snprintf()</tt> (it always <span class=             "STRUCTNAME">NULL</span>-terminates the target buffer).          </p>          <p>            Gnome 1.0 uses glib version 1.2 and works with any glib            in the 1.2 series (1.2.1, 1.2.2, etc.). All glib            versions beginning with 1.2 are compatible bug-fix            releases.          </p>        </div>        <div class="SECT3">          <h3 class="SECT3">            <a name="Z7">GTK+</a>          </h3>          <p>            GTK+, or the Gimp Tool Kit, is the GUI toolkit used in            Gnome applications. GTK+ was originally written for the            Gimp (GNU Image Manipulation Program --- <a href=             "http://www.gimp.org" target="_top">            http://www.gimp.org</a>), but has become a            general-purpose library. GTK+ depends on glib.          </p>          <p>            The GTK+ package includes GDK, the Gimp Drawing Kit,            which is a simplification and abstraction of the            low-level X Window System libraries. Since GTK+ uses            GDK rather than calling X directly, a port of GDK            permits GTK+ to run on windowing systems other than X            with relatively few modifications. GTK+ and the Gimp            have already been ported to the Win32 platform in this            way.          </p>          <p>            GTK+ provides several features for Gnome applications:          </p>          <ul>            <li>              <p>                A dynamic type system.              </p>            </li>            <li>              <p>                An object system written in C, complete with                inheritance, type checking, and a signal/callback                infrastructure. The type and object systems are not                GUI-specific.              </p>            </li>            <li>              <p>                A <tt class="CLASSNAME">GtkWidget</tt> object                written using the object system, which defines the                interface GTK+'s graphical components implement.              </p>            </li>            <li>              <p>                A large collection of useful <tt class="CLASSNAME">                GtkWidget</tt> subclasses (<i class=                "FIRSTTERM">widgets</i>); this collection forms the                bulk of GTK+'s code.              </p>            </li>          </ul>          <p>            Gnome adds a number of additional widgets to the basic            GTK+ collection.          </p>          <p>            Gnome 1.0 is based on GTK+ version 1.2. All GTK+            versions beginning with 1.2 are compatible bug-fix            releases; 1.2.1, for example.          </p>        </div>        <div class="SECT3">          <h3 class="SECT3">            <a name="Z8">ORBit</a>          </h3>          <p>            ORBit is a CORBA 2.2 ORB written in C. It was designed            to be small and fast compared to other ORBs, and            supports the C language mapping. ORBit is implemented            as a suite of libraries.          </p>          <p>            <i class="FIRSTTERM">CORBA</i>, or Common Object            Request Broker Architecture, is a specification for            Object Request Brokers, or <i class="FIRSTTERM">            ORB</i>s. An ORB is much like a dynamic linker, but it            works with objects, rather than subroutines. At            runtime, a program can request the services of a            particular object; the ORB locates the object and            creates a connection between it and the program. For            example, an email program might request an            ``addressbook'' object, and use it to look up a            person's name. Unlike dynamic linking, CORBA works fine            across a network, and even allows different programming            languages and operating systems to interact with one            another. If you're familiar with DCOM on the Windows            operating system, CORBA is analagous.          </p>        </div>        <div class="SECT3">          <h3 class="SECT3">            <a name="Z9">Imlib</a>          </h3>          <p>            Imlib ("Image Library") provides routines for loading,            saving, displaying, and scaling images in a variety of            popular formats (including GIF, JPEG, PNG, and TIFF).            It comes in two versions; an Xlib-only version, and a            GDK-based version. Gnome uses the GDK version.          </p>        </div>      </div>      <div class="SECT2">        <h2 class="SECT2">          <a name="Z10">Gnome Libraries</a>        </h2>        <p>          The libraries in this section are a part of the <tt          class="APPLICATION">gnome-libs</tt> package and were          developed specifically for the Gnome Project.        </p>        <div class="SECT3">          <h3 class="SECT3">            <a name="Z11"><tt class="APPLICATION">libgnome</tt></a>          </h3>          <p>            <tt class="APPLICATION">libgnome</tt> is a collection            of non-GUI-related routines for use by Gnome            applications. It includes code to parse configuration            files, for example. It also includes interfaces to some            external facilities, such as internationalization (via            the GNU <tt class="APPLICATION">gettext</tt> package),            argument parsing (via the <tt class="APPLICATION">            popt</tt> package), and sound (via the Enlightenment            Sound Daemon, <tt class="APPLICATION">esound</tt>). The            <tt class="APPLICATION">gnome-libs</tt> package takes            care of interacting with these external libraries, so            the programmer does not need to concern herself with            their implementation or availability.          </p>        </div>        <div class="SECT3">          <h3 class="SECT3">            <a name="Z12"><tt class="APPLICATION">

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -