[gnome-devel-docs] overview: Each tech in its own page, some done
- From: Shaun McCance <shaunm src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-devel-docs] overview: Each tech in its own page, some done
- Date: Wed, 6 Apr 2011 02:17:36 +0000 (UTC)
commit 54c4820b1c955225964b3b32105fcfa7fb6556e7
Author: Shaun McCance <shaunm gnome org>
Date: Tue Apr 5 22:22:12 2011 -0400
overview: Each tech in its own page, some done
platform-overview/C/apx-modules.page | 302 ------------------
platform-overview/C/atk.page | 51 +++
platform-overview/C/audience.page | 218 -------------
platform-overview/C/cairo.page | 38 +++
platform-overview/C/canberra.page | 11 +
platform-overview/C/clutter.page | 11 +
platform-overview/C/core-tech.page | 554 ---------------------------------
platform-overview/C/d-bus.page | 46 +++
platform-overview/C/desktop-tech.page | 379 ----------------------
platform-overview/C/eds.page | 37 +++
platform-overview/C/gda.page | 11 +
platform-overview/C/gdk.page | 51 +++
platform-overview/C/gio-network.page | 11 +
platform-overview/C/gio.page | 12 +
platform-overview/C/glib.page | 10 +
platform-overview/C/gobject.page | 10 +
platform-overview/C/gsettings.page | 10 +
platform-overview/C/gstreamer.page | 53 ++++
platform-overview/C/gtk.page | 47 +++
platform-overview/C/help.page | 31 ++
platform-overview/C/index.page | 51 +++-
platform-overview/C/ipc-network.page | 142 ---------
platform-overview/C/keyring.page | 58 ++++
platform-overview/C/notify.page | 11 +
platform-overview/C/packagekit.page | 10 +
platform-overview/C/pango.page | 58 ++++
platform-overview/C/pulseaudio.page | 10 +
platform-overview/C/soup.page | 11 +
platform-overview/C/telepathy.page | 11 +
platform-overview/C/tracker.page | 11 +
platform-overview/C/webkit.page | 29 ++
31 files changed, 685 insertions(+), 1610 deletions(-)
---
diff --git a/platform-overview/C/atk.page b/platform-overview/C/atk.page
new file mode 100644
index 0000000..4f2a099
--- /dev/null
+++ b/platform-overview/C/atk.page
@@ -0,0 +1,51 @@
+<page xmlns="http://projectmallard.org/1.0/"
+ type="topic"
+ id="atk">
+<info>
+ <link type="guide" xref="index" group="atk"/>
+ <desc>Support for screen readers and other accessibility
+ tools</desc>
+</info>
+
+<title>ATK</title>
+
+<p>Accessibility is the process of ensuring your application can be
+used by people with various disabilities. Disabilities come in many forms:
+visual impairments, movement impairments, hearing impairments, cognitive
+and language impairments, and seizure disorders. Many people have some
+sort of disability, and making your application accessibility will allow
+more people to use your application effectively.</p>
+
+<p>GNOME provides support for accessibility devices using the ATK
+framework. This framework defines a set of interfaces to which graphical
+interface components adhere. This allows, for instance, screen readers
+to read the text of an interface and interact with its controls. ATK
+support is built into GTK+ and the rest of the GNOME platform using the
+GAIL library, so any application using GTK+ will have reasonable
+accessibility support for free.</p>
+
+<p>Nonetheless, you should be aware of accessibility issues when
+when developing your applications. Although GTK+ interfaces provide
+reasonable accessibility by default, you can often improve how well
+your program behaves with accessibility tools by providing additional
+information to ATK. If you develop custom widgets, you should ensure
+that they expose their properties to ATK. You should also avoid using
+sound, graphics, or color as the sole means of conveying information
+to the user.</p>
+
+<p>The GNOME desktop ships with a number of accessibility tools
+which enable users with disabilities to take full advantage of their
+desktop and applications. Applications that fully implement ATK will
+be able to work with the accessibility tools. GNOME's accessibility
+tools include a screen reader, a screen magnifier, an on-screen
+keyboard, and <app>Dasher</app>, an innovative
+predictive text entry tool.</p>
+
+<p>For extensive recommendations on accessibility, see <link
+href="http://developer.gnome.org/projects/gap/guide/gad/index.html">GNOME
+Accessibility for Developers</link>. See also <link
+href="http://library.gnome.org/devel/atk/stable/">ATK -
+Accessibility Toolkit</link> and the <link
+href="http://library.gnome.org/devel/gail-libgail-util/stable/">GAIL
+Reference Manual</link>.</p>
+</page>
diff --git a/platform-overview/C/cairo.page b/platform-overview/C/cairo.page
new file mode 100644
index 0000000..2798686
--- /dev/null
+++ b/platform-overview/C/cairo.page
@@ -0,0 +1,38 @@
+<page xmlns="http://projectmallard.org/1.0/"
+ type="topic"
+ id="cairo">
+<info>
+ <link type="guide" xref="index" group="cairo"/>
+ <desc>Modern 2D vector drawing canvas</desc>
+</info>
+
+<title>Cairo</title>
+
+<p>Cairo is a 2D graphics library featuring a sophisticated API for
+drawing vector graphics, compositing images, and rendering anti-aliased
+text. Cairo provides support for multiple output devices, including the
+X Window System, Microsoft Windows, and image buffers, allowing you to
+write platform-independent code to draw graphics on different media.</p>
+
+<p>The Cairo drawing model is similar to those provided by PostScript
+and PDF. The Cairo API provides such drawing operations as stroking and
+filling cubic Bézier splines, compositing images, and performing affine
+transformations. These vector operations allow for rich, anti-aliased
+graphics without using expensive pixel-based drawing in your application
+code.</p>
+
+<p>Cairo's rich drawing model allows for high-quality rendering to
+multiple media. The same API can be used to create stunning on-screen
+graphics and text, to render images, or create crisp output suitable
+for printing.</p>
+
+<p>You should use Cairo whenever you need to draw graphics in your
+application beyond the widgets provided by GTK+. Much of the drawing
+inside GTK+ is done using Cairo. Using Cairo for your custom drawing
+will allow your application to have high-quality, anti-aliased, and
+resolution-independent graphics.</p>
+
+<p>For more information on Cairo, see <link
+href="http://www.cairographics.org/manual/">Cairo: A Vector Graphics
+Library</link>.</p>
+</page>
diff --git a/platform-overview/C/canberra.page b/platform-overview/C/canberra.page
new file mode 100644
index 0000000..be65f8b
--- /dev/null
+++ b/platform-overview/C/canberra.page
@@ -0,0 +1,11 @@
+<page xmlns="http://projectmallard.org/1.0/"
+ type="topic"
+ id="canberra">
+<info>
+ <link type="guide" xref="index" group="apps"/>
+ <desc>Simple audio API for notifications and events</desc>
+</info>
+
+<title>Canberra</title>
+
+</page>
diff --git a/platform-overview/C/clutter.page b/platform-overview/C/clutter.page
new file mode 100644
index 0000000..38500bd
--- /dev/null
+++ b/platform-overview/C/clutter.page
@@ -0,0 +1,11 @@
+<page xmlns="http://projectmallard.org/1.0/"
+ type="topic"
+ id="clutter">
+<info>
+ <link type="guide" xref="index" group="clutter"/>
+ <desc>Stunning graphics and animations with a scene-graph API</desc>
+</info>
+
+<title>Clutter</title>
+
+</page>
diff --git a/platform-overview/C/d-bus.page b/platform-overview/C/d-bus.page
new file mode 100644
index 0000000..ea03cf2
--- /dev/null
+++ b/platform-overview/C/d-bus.page
@@ -0,0 +1,46 @@
+<page xmlns="http://projectmallard.org/1.0/"
+ type="topic"
+ id="d-bus">
+<info>
+ <link type="guide" xref="index" group="d-bus"/>
+ <desc>Standard interprocess communications bus</desc>
+</info>
+
+<title>D-Bus</title>
+
+<p>D-Bus is a cross-desktop message bus for sending events between
+various applications, the desktop, and low-level components of the system.
+D-Bus provides a simple API for sending messages to particular services
+and for broadcasting messages to all interested services. D-Bus enables
+different types of applications to communicate and integrate with each
+other and with the desktop, providing better interaction and a richer
+experience for the user.</p>
+
+<p>D-Bus provides a session and a system bus. The session bus is
+used by applications in a single user session, allowing them to share
+data and event notifications and to integrate into the user's desktop.
+For example, movie players can send a D-Bus message to prevent the
+screensaver from activating when the user is watching a movie.</p>
+
+<p>The system bus is a single message bus which runs independently of
+any user sessions. It can communicate with applications in any session,
+enabling those applications to interact with system components without
+dealing with low-level system details. The system bus is used to provide
+important functionality that users expect to work on their systems. For
+example, the system bus is used to monitor when network interfaces go up
+or down, when external drives get plugged in, and when laptop batteries
+are low.</p>
+
+<p>D-Bus is developed jointly on <link
+href="http://www.freedesktop.org/">freedesktop.org</link>, so you can
+use it with different desktop environments and applications. Because
+D-Bus is a cross-desktop project, you use it to create portable and
+versatile software that seamlessly integrates with the user's desktop,
+regardless of which desktop it is.</p>
+
+<p>For more information on D-Bus, see <link
+href="http://dbus.freedesktop.org/doc/dbus-tutorial.html">The D-Bus
+Tutorial</link> and <link
+href="http://dbus.freedesktop.org/doc/dbus-specification.html">The
+D-Bus Specification</link>.</p>
+</page>
diff --git a/platform-overview/C/eds.page b/platform-overview/C/eds.page
new file mode 100644
index 0000000..c3a5038
--- /dev/null
+++ b/platform-overview/C/eds.page
@@ -0,0 +1,37 @@
+<page xmlns="http://projectmallard.org/1.0/"
+ type="topic"
+ id="eds">
+<info>
+ <link type="guide" xref="index" group="apps"/>
+ <desc>Integration with the desktop-wide address book and calendar</desc>
+</info>
+
+<title>Evolution Data Server</title>
+
+<p>With Evolution Data Server, GNOME provides a single address book and
+calendar that all applications can use to store and retrieve information.
+Using Evolution Data Server means that users no longer have to maintain
+separate lists of contacts in each application, or manually copy events
+to their calendar.</p>
+
+<p>People use computers increasingly to interact with their friends
+and colleagues. Applications such as email programs, instant messengers,
+and telephony and video conferencing applications are used to communicate
+with others. These applications often provide contact lists to help users.
+Using Evolution Data Server, applications can store contact information in
+a single location, allowing all applications to see all the pertinent data
+about users' contacts.</p>
+
+<p>Applications can also use Evolution Data Server to store and retrieve
+appointments on the user's calendar. For example, the clock on the panel
+shows a simple calendar when clicked. If the user has any appointments
+scheduled, they are shown alongside the calendar. This makes it easy to
+see upcoming appointments without opening a full calendar application.</p>
+
+<p>For more information on the address book, see <link
+href="http://gnome.org/projects/evolution/developer-doc/libebook/ch01.html">
+Evolution API Reference: libebook</link>. For more information on the
+calendar, see <link
+href="http://gnome.org/projects/evolution/developer-doc/libecal/index.html">
+Evolution API Reference: libecal</link>.</p>
+</page>
diff --git a/platform-overview/C/gda.page b/platform-overview/C/gda.page
new file mode 100644
index 0000000..4fe427f
--- /dev/null
+++ b/platform-overview/C/gda.page
@@ -0,0 +1,11 @@
+<page xmlns="http://projectmallard.org/1.0/"
+ type="topic"
+ id="gda">
+<info>
+ <link type="guide" xref="index" group="apps"/>
+ <desc>Common relational database access</desc>
+</info>
+
+<title>GDA</title>
+
+</page>
diff --git a/platform-overview/C/gdk.page b/platform-overview/C/gdk.page
new file mode 100644
index 0000000..34cc5a5
--- /dev/null
+++ b/platform-overview/C/gdk.page
@@ -0,0 +1,51 @@
+<page xmlns="http://projectmallard.org/1.0/"
+ type="topic"
+ id="gdk">
+<info>
+ <link type="guide" xref="index" group="gdk"/>
+ <desc>Underlying windowing and event handling</desc>
+</info>
+
+<title>GDK</title>
+
+<p>GDK is the low-level library used by GTK+ to interact with the
+system for graphics and input devices. Although you will rarely use
+GDK directly in application code, it contains all the necessary
+functionality to draw objects and text to the screen and to interact
+with the user with various input devices.</p>
+<note><p>GDK runs on a number of different platforms, including the X Window
+System, Microsoft Windows, DirectFB, and Quartz. On any platform, GDK
+provides the same consistent API, allowing GTK+ and GTK+ applications to
+run unmodified.</p></note>
+
+<p>GDK features a graphics context and drawing primitives that are
+suitable for drawing simple objects and rendering images on the screen.
+Since a more extensive drawing system is provided by Cairo, GDK provides
+hooks to use Cairo contexts within GDK.</p>
+
+<p>GDK enables you to access events from keyboards, mice, and other
+input devices, rather than connect to the high-level signals used in
+GTK+. GDK also provides low-level routines to access drag and drop
+and clipboard data from the system. When implementing custom controls,
+you may need to access these features to implement proper user interaction
+behavior.</p>
+
+<p>GDK provides other functionality which is needed to implement
+a complete graphical toolkit like GTK+. Since GDK acts as a platform
+abstraction, allowing GTK+ to run under multiple environments, it
+provides an API for all of the system functionality needed by GTK+.
+This includes information about multi-head displays, resolution and
+color depth, colormaps, and cursors.</p>
+
+<p>You should use GDK whenever you need low-level access to the
+underlying windowing system, including low-level access to events,
+windows, and the clipboard. Using GDK for these tasks ensures that
+your code is portable and integrates with the rest of your GTK+ code.
+The simple drawing routines in GDK should generally not be used.
+Instead, you should use the extensive functionality provide by
+Cairo.</p>
+
+<p>For more information on GDK, see the
+<link href="http://library.gnome.org/devel/gdk/stable/">GDK Reference
+Manual</link>.</p>
+</page>
diff --git a/platform-overview/C/gio-network.page b/platform-overview/C/gio-network.page
new file mode 100644
index 0000000..30befae
--- /dev/null
+++ b/platform-overview/C/gio-network.page
@@ -0,0 +1,11 @@
+<page xmlns="http://projectmallard.org/1.0/"
+ type="topic"
+ id="gio-network">
+<info>
+ <link type="guide" xref="index" group="gio-network"/>
+ <desc>Powerful networking API built on the GIO stream classes</desc>
+</info>
+
+<title>GIO Networking</title>
+
+</page>
diff --git a/platform-overview/C/gio.page b/platform-overview/C/gio.page
new file mode 100644
index 0000000..2fded7e
--- /dev/null
+++ b/platform-overview/C/gio.page
@@ -0,0 +1,12 @@
+<page xmlns="http://projectmallard.org/1.0/"
+ type="topic"
+ id="gio">
+<info>
+ <link type="guide" xref="index" group="gio"/>
+ <desc>Asynchronous file and URI handling with access
+ to file and volume info</desc>
+</info>
+
+<title>GIO Files</title>
+
+</page>
diff --git a/platform-overview/C/glib.page b/platform-overview/C/glib.page
new file mode 100644
index 0000000..033e510
--- /dev/null
+++ b/platform-overview/C/glib.page
@@ -0,0 +1,10 @@
+<page xmlns="http://projectmallard.org/1.0/"
+ type="topic"
+ id="glib">
+<info>
+ <link type="guide" xref="index" group="glib"/>
+</info>
+
+<title>GLib</title>
+
+</page>
diff --git a/platform-overview/C/gobject.page b/platform-overview/C/gobject.page
new file mode 100644
index 0000000..73648cf
--- /dev/null
+++ b/platform-overview/C/gobject.page
@@ -0,0 +1,10 @@
+<page xmlns="http://projectmallard.org/1.0/"
+ type="topic"
+ id="gobject">
+<info>
+ <link type="guide" xref="index" group="gobject"/>
+</info>
+
+<title>GObject</title>
+
+</page>
diff --git a/platform-overview/C/gsettings.page b/platform-overview/C/gsettings.page
new file mode 100644
index 0000000..7a6c3d1
--- /dev/null
+++ b/platform-overview/C/gsettings.page
@@ -0,0 +1,10 @@
+<page xmlns="http://projectmallard.org/1.0/"
+ type="topic"
+ id="gsettings">
+<info>
+ <link type="guide" xref="index" group="gsettings"/>
+</info>
+
+<title>GSettings</title>
+
+</page>
diff --git a/platform-overview/C/gstreamer.page b/platform-overview/C/gstreamer.page
new file mode 100644
index 0000000..4644349
--- /dev/null
+++ b/platform-overview/C/gstreamer.page
@@ -0,0 +1,53 @@
+<page xmlns="http://projectmallard.org/1.0/"
+ type="topic"
+ id="gstreamer">
+<info>
+ <link type="guide" xref="index" group="gstreamer"/>
+ <desc>Plugin-based rich multimedia creation and delivery</desc>
+</info>
+
+<title>GStreamer</title>
+
+<p>GStreamer is a powerful multimedia library for playing, creating,
+and manipulating sound, video, and other media. You can use GStreamer
+to provide sound and video playback, record input from multiple sources,
+and edit multimedia content. GStreamer supports encoding and decoding
+numerous formats by default, and support for additional formats can be
+added with plug-ins.</p>
+
+<p>GStreamer provides a flexible architecture wherein media is
+processed through a pipeline of elements. Each element may apply
+filters to the content, such as encoding or decoding, combining
+multiple sources, or transforming the multimedia content. This
+architecture allows for an arbitrary arrangement of elements,
+so that you can accomplish virtually any effect using GStreamer.
+Furthermore, GStreamer is designed to have low overhead, so it
+can be used in applications with high demands on latency.</p>
+
+<p>While GStreamer provides a powerful API for manipulating
+multimedia, it also provides convenient routines for simple
+playback. GStreamer can automatically construct a pipeline to
+read and playback files in any supported format, allowing you
+to use sound and video in your application easily.</p>
+
+<p>The GStreamer architecture allows plugins to add encoders,
+decoders, and all sorts of content filters. Third-party developers
+can provide GStreamer plugins which will be automatically available
+to other applications using GStreamer. Plugins can provide support
+for other multimedia formats or provide additional functionality
+and effects.</p>
+
+<p>You should use GStreamer whenever you need to read or play
+multimedia content in your application, or if your application
+needs to manipulate sound or video. Using GStreamer makes your
+application development easy, and it provides you well-tested
+elements for many of your needs.</p>
+
+<p>For comprehensive information on GStreamer, see <link
+href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/manual/html/index.html">The
+GStreamer Application Development Manual</link>, <link
+href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/">The
+GStreamer 0.10 Core Reference Manual</link>, and <link
+href="http://gstreamer.freedesktop.org/documentation/">the
+GStreamer documentation page</link>.</p>
+</page>
diff --git a/platform-overview/C/gtk.page b/platform-overview/C/gtk.page
new file mode 100644
index 0000000..a798636
--- /dev/null
+++ b/platform-overview/C/gtk.page
@@ -0,0 +1,47 @@
+<page xmlns="http://projectmallard.org/1.0/"
+ type="topic"
+ id="gtk">
+<info>
+ <link type="guide" xref="index" group="gtk"/>
+ <desc>Graphical interfaces and core application support</desc>
+ <revision pkgversion="3.0" date="2011-04-05" status="candidate"/>
+</info>
+
+<title>GTK+</title>
+
+<p>GTK+ is the primary library used to construct user interfaces
+in GNOME. It provides all the user interface controls, or widgets,
+used in a common graphical application. Its modern, object-oriented
+API allows you to construct attractive and sophisticated user
+interfaces without dealing with the low-level details of drawing and
+device interaction.</p>
+
+<p>In addition to basic widgets, such as buttons, check boxes,
+and text entries, GTK+ also provides powerful Model-View-Controller
+(MVC) APIs for tree views, multi-line text fields, and menu and
+toolbar actions.</p>
+
+<p>Widgets in GTK+ are placed on windows using a box-packing model.
+Programmers specify only how to pack widgets together in container
+boxes, rather than position them directly with absolute coordinates.
+GTK+ ensures that windows are sized correctly to fit their contents,
+and it automatically handles window resizing.</p>
+
+<p>Because GTK+ offers a flexible API, developing additional widgets
+for use in GTK+ applications is easy. A number of third-party libraries
+exist which provide additional widgets, and many developers have created
+custom, special-purpose widgets for their applications.</p>
+
+<p>GTK+ handles the difficult details of user interfaces and user
+interaction, and provides a simple yet powerful API which allows you
+to focus on the details of your application. Applications developed
+with GTK+ will automatically follow the user's theme and font settings,
+will interact properly with accessibility technologies, and will behave
+as users expect.</p>
+
+<list style="compact">
+ <item><p><link href="http://developer.gnome.org/gnome-devel-demos/stable/image-viewer.c.html">GTK+ demo tutorial</link></p></item>
+ <item><p><link href="http://developer.gnome.org/gtk3/stable/">GTK+ Reference Manual</link></p></item>
+ <item><p><link href="http://gtk.org/">The GTK+ web site</link></p></item>
+</list>
+</page>
diff --git a/platform-overview/C/help.page b/platform-overview/C/help.page
new file mode 100644
index 0000000..b6008fd
--- /dev/null
+++ b/platform-overview/C/help.page
@@ -0,0 +1,31 @@
+<page xmlns="http://projectmallard.org/1.0/"
+ type="topic"
+ id="help">
+<info>
+ <link type="guide" xref="index" group="apps"/>
+ <desc>Topic-oriented help system</desc>
+ <revision pkgversion="3.0" date="2011-04-05" status="final"/>
+</info>
+
+<title>Help</title>
+
+<p>Users sometimes need a little help, even with the best-designed
+applications. GNOME provides a built-in topic-oriented help system
+using the <link href="http://projectmallard.org/">Mallard</link>
+markup language. Pioneered by GNOME developers, Mallard is an agile
+and dynamic language that helps you write and revise quickly. Its
+topic-oriented design means your users can find the answers they
+need without sifting through a manual. With its unique linking and
+organization system, Mallard is the only language designed to handle
+plugin and vendor help in one coherent document.</p>
+
+<p>When you do need linear manuals, GNOME also supports the
+industry-standard <link href="http://docbook.org/">DocBook</link>
+format.</p>
+
+<list style="compact">
+ <item><p><link href="http://projectmallard.org/about/learn/tenminutes.html">Ten Minute Mallard Tour</link></p></item>
+ <item><p><link href="http://projectmallard.org/">The Mallard web site</link></p></item>
+ <item><p><link href="http://docbook.org/">The DocBook web site</link></p></item>
+</list>
+</page>
diff --git a/platform-overview/C/index.page b/platform-overview/C/index.page
index 7620c82..f41e3aa 100644
--- a/platform-overview/C/index.page
+++ b/platform-overview/C/index.page
@@ -20,25 +20,46 @@
<name>GNOME Foundation</name>
<page xmlns="http://xmlns.com/foaf/0.1/">http://foundation.gnome.org/</page>
</credit>
- <license>
- <include href="cc-by-sa-3-0.xml" xmlns="http://www.w3.org/2001/XInclude"/>
- </license>
+ <title type="link" role="trail">GNOME</title>
+ <include href="cc-by-sa-3-0.xml" xmlns="http://www.w3.org/2001/XInclude"/>
</info>
<title>Overview of the GNOME Platform</title>
- <p>GNOME is a powerful but simple desktop environment with a strong focus
- on usability, accessibility, and internationalization. GNOME is designed to
- be usable by everybody, regardless of technical expertise, disabilitites, or
- native language. GNOME makes it easy for people to use their computers.</p>
+<p>GNOME is a powerful but simple desktop environment with a strong focus
+on usability, accessibility, and internationalization. GNOME is designed to
+be usable by everybody, regardless of technical expertise, disabilitites, or
+native language. GNOME makes it easy for people to use their computers.</p>
- <p>The GNOME platform provides a comprehensive development environment
- for graphical applications and other software. GNOME provides a
- comprehensive developer platform that allow developers to create professional
- software that is easy to use and aesthetically pleasing. Using the
- technologies in GNOME, you can create high-quality software to meet and
- exceed your users' expectations. This document provides a high-level
- overview of the GNOME platform along with links to detailed documentation
- on each part of the platform.</p>
+<p>The GNOME platform provides a comprehensive development environment
+for graphical applications and other software. GNOME provides a
+comprehensive developer platform that allow developers to create professional
+software that is easy to use and aesthetically pleasing. Using the
+technologies in GNOME, you can create high-quality software to meet and
+exceed your users' expectations. This document provides a high-level
+overview of the GNOME platform along with links to detailed documentation
+on each part of the platform.</p>
+
+<links type="topic" style="toronto"
+ groups="gtk clutter webkit gstreamer">
+ <title>Graphics and Multimedia</title>
+</links>
+
+<links type="topic" style="toronto"
+ groups="gio gio-network gsettings d-bus soup">
+ <title>Core Application Support</title>
+</links>
+
+
+<links type="topic" style="toronto" groups="apps">
+ <title>Application Technologies</title>
+</links>
+
+<links type="topic" style="toronto"
+ groups="atk pango pulseaudio cairo gdk gobject glib">
+ <title>Under the Hood</title>
+</links>
+
+<links type="topic" style="toronto"/>
<section id="introduction" style="2column">
<info>
diff --git a/platform-overview/C/keyring.page b/platform-overview/C/keyring.page
new file mode 100644
index 0000000..6c19016
--- /dev/null
+++ b/platform-overview/C/keyring.page
@@ -0,0 +1,58 @@
+<page xmlns="http://projectmallard.org/1.0/"
+ type="topic"
+ id="keyring">
+<info>
+ <link type="guide" xref="index" group="apps"/>
+ <desc>Secure storage for passwords and other data</desc>
+</info>
+
+<title>Keyring</title>
+
+<p>GNOME provides a modern and secure keyring manager to store users'
+passwords and other sensitive data. Applications can use the keyring
+manager library to store and access passwords, and users can manage
+their passwords using GNOME's <app>Seahorse</app>
+application.</p>
+
+<p>The keyring manager provides any number of keyrings, where each
+keyring can contain any number of keyring items. Items in a keyring
+store some piece of data, often a password. Each keyring is locked
+individually, and users must provide a password to unlock the keyring.
+Once a keyring has been unlocked, the user has access to all of the
+items in that keyring.</p>
+
+<p>The keyring manager provides access control lists for each keyring
+item, controlling which applications are allowed access to that item.
+If an unknown application attempts to access a keyring item, the keyring
+manager will prompt the user to allow or deny that application access.
+This helps prevent malicious or poorly-written programs from accessing
+the user's sensitive data.</p>
+
+<p>Keyring data stored on the file system is encrypted with the AES
+block cipher, and SHA1 is used for hashes of the item's attributes.
+Using the attributes hash, the keyring manager is able to look up items
+requested by applications without ever unlocking the keyring. The
+keyring has to be unlocked when a matching item is found and
+accessed.</p>
+
+<p>The keyring manager also provides a session keyring. Items in
+the session keyring are never stored on disk, and are lost as soon as
+the user's session ends. The session keyring can be used to store
+passwords to be used in the current session only.</p>
+
+<p>If you use GIO to access remote servers, you automatically
+get the benefits of the keyring manager. Whenever GVFS needs to
+authenticate the user, it provides the option to store the password,
+either in the default keyring or in the session keyring.</p>
+
+<p>You should use the keyring manager whenever your application needs
+to store passwords or other sensitive data for users. Using the keyring
+manager provides a better user experience while still keeping user data
+safe and secure.</p>
+
+<p>For API references please see the
+<link href="http://library.gnome.org/devel/gnome-keyring/stable/">gnome-keyring
+Reference Manual</link> and the
+<link href="http://library.gnome.org/devel/libseahorse/stable/">libseahorse
+Reference Manual</link>.</p>
+</page>
diff --git a/platform-overview/C/notify.page b/platform-overview/C/notify.page
new file mode 100644
index 0000000..d73ca08
--- /dev/null
+++ b/platform-overview/C/notify.page
@@ -0,0 +1,11 @@
+<page xmlns="http://projectmallard.org/1.0/"
+ type="topic"
+ id="notify">
+<info>
+ <link type="guide" xref="index" group="apps"/>
+ <desc>Interactive notifications in the messaging tray</desc>
+</info>
+
+<title>Notify</title>
+
+</page>
diff --git a/platform-overview/C/packagekit.page b/platform-overview/C/packagekit.page
new file mode 100644
index 0000000..b668dc1
--- /dev/null
+++ b/platform-overview/C/packagekit.page
@@ -0,0 +1,10 @@
+<page xmlns="http://projectmallard.org/1.0/"
+ type="topic"
+ id="packagekit">
+<info>
+ <link type="guide" xref="index" group="apps"/>
+</info>
+
+<title>PackageKit</title>
+
+</page>
diff --git a/platform-overview/C/pango.page b/platform-overview/C/pango.page
new file mode 100644
index 0000000..0399992
--- /dev/null
+++ b/platform-overview/C/pango.page
@@ -0,0 +1,58 @@
+<page xmlns="http://projectmallard.org/1.0/"
+ type="topic"
+ id="pango">
+<info>
+ <link type="guide" xref="index" group="pango"/>
+ <desc>Fully internationalized text layout and rendering</desc>
+</info>
+
+<title>Pango</title>
+
+<p>Pango is the core text and font handling library in the GNOME
+platform. It is responsible for laying out and rendering text, and
+is used throughout GTK+.</p>
+<note><p>The Pango layout engine can be used with different font
+backends and drawing backends. On most GNOME systems, Pango
+will use FreeType, fontconfig, and Cairo to access fonts and
+render text. On other systems, Pango will use the native font
+systems, such as Uniscribe on Microsoft Windows and ATSUI on
+MacOS</p></note>
+
+<p>Pango has extensive support for the various writing systems
+used throughout the world. Many of the writing systems used for
+languages have complex rules for laying out glyphs and composing
+characters. With Pango, nearly all languages can be written and
+displayed correctly, allowing users everywhere to view text in their
+native languages. Pango support for multiple writing systems is
+automatic; application developers do not have to write any special
+code to support other languages.</p>
+
+<figure>
+ <title>Displaying Multiple Languages With Pango</title>
+ <desc>Screenshot of the <app>gedit</app>
+ text editor displaying phrases from multiple languages and writing
+ systems.</desc>
+ <media type="image" mime="image/png" src="figures/pango.png" ></media>
+</figure>
+
+<p>Pango supports the text styling used in typical documents
+and interfaces, including italics, font weights, and underlines.
+Pango uses a simple XML-like vocabulary called PangoMarkup which
+enables you to set font size, color, styles, and other text
+attributes. Using PangoMarkup, you can specify inline styles
+without manually iterating over text blocks. PangoMarkup can
+be used directly from GTK+, enabling you to style text in your
+graphical interfaces easily.</p>
+
+<p>You should use Pango directly whenever you need to lay
+text out on the screen or on a different medium. Using Pango
+will allow your text layout to work seamlessly with GTK+ and
+the rest of the GNOME platform. It will help you create
+portable code, and most importantly, it will ensure that your
+application can render text correctly in hundreds of different
+languages.</p>
+
+<p>For more information on Pango, see the
+<link href="http://library.gnome.org/devel/pango/stable/">Pango
+Reference Manual</link>.</p>
+</page>
diff --git a/platform-overview/C/pulseaudio.page b/platform-overview/C/pulseaudio.page
new file mode 100644
index 0000000..65765dc
--- /dev/null
+++ b/platform-overview/C/pulseaudio.page
@@ -0,0 +1,10 @@
+<page xmlns="http://projectmallard.org/1.0/"
+ type="topic"
+ id="pulseaudio">
+<info>
+ <link type="guide" xref="index" group="pulseaudio"/>
+</info>
+
+<title>PulseAudio</title>
+
+</page>
diff --git a/platform-overview/C/soup.page b/platform-overview/C/soup.page
new file mode 100644
index 0000000..3392e6f
--- /dev/null
+++ b/platform-overview/C/soup.page
@@ -0,0 +1,11 @@
+<page xmlns="http://projectmallard.org/1.0/"
+ type="topic"
+ id="soup">
+<info>
+ <link type="guide" xref="index" group="soup"/>
+ <desc>Asynchronous HTTP library with cookies, SSL, and XML-RPC</desc>
+</info>
+
+<title>Soup</title>
+
+</page>
diff --git a/platform-overview/C/telepathy.page b/platform-overview/C/telepathy.page
new file mode 100644
index 0000000..728b01d
--- /dev/null
+++ b/platform-overview/C/telepathy.page
@@ -0,0 +1,11 @@
+<page xmlns="http://projectmallard.org/1.0/"
+ type="topic"
+ id="telepathy">
+<info>
+ <link type="guide" xref="index" group="apps"/>
+ <desc>Unified and integrated contacts and instant messaging</desc>
+</info>
+
+<title>Telepathy</title>
+
+</page>
diff --git a/platform-overview/C/tracker.page b/platform-overview/C/tracker.page
new file mode 100644
index 0000000..870683b
--- /dev/null
+++ b/platform-overview/C/tracker.page
@@ -0,0 +1,11 @@
+<page xmlns="http://projectmallard.org/1.0/"
+ type="topic"
+ id="tracker">
+<info>
+ <link type="guide" xref="index" group="apps"/>
+ <desc>Semantic data storage with RDF and SPARQL</desc>
+</info>
+
+<title>Tracker</title>
+
+</page>
diff --git a/platform-overview/C/webkit.page b/platform-overview/C/webkit.page
new file mode 100644
index 0000000..1de4a0a
--- /dev/null
+++ b/platform-overview/C/webkit.page
@@ -0,0 +1,29 @@
+<page xmlns="http://projectmallard.org/1.0/"
+ type="topic"
+ id="webkit">
+<info>
+ <link type="guide" xref="index" group="webkit"/>
+ <desc>The power of HTML5 and the web in your application</desc>
+ <revision pkgversion="3.0" date="2011-04-05" status="incomplete"/>
+</info>
+
+<title>WebKit</title>
+
+<p>WebKit is a powerful, multi-platform HTML engine used in open
+source and commercial products. WebKitGTK+ is the port of WebKit
+built on <link xref="gtk">GTK+</link> and integrated into the
+GNOME developer platform. WebKitGTK+ is developed upstream as
+part of the main WebKit project, so it's always up to date with
+the latest HTML5 features.</p>
+
+<p>WebKitGTK+ makes it easy to add web functionality to your
+application, or to use HTML5 and associated technologies to
+create dynamic user interfaces quickly.</p>
+
+<list style="compact">
+ <item><p><link href="http://developer.gnome.org/gnome-devel-demos/stable/message-board.c.html">WebKitGTK+ demo tuturoail</link></p></item>
+ <item><p><link href="http://webkitgtk.org/reference/index.html">WebKitGTK+ Reference Manual</link></p></item>
+ <item><p><link href="http://webkitgtk.org/">The WebKitGTK+ web site</link></p></item>
+</list>
+
+</page>
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]