]> Pileus Git - ~andy/gtk/blob - docs/reference/gtk/gtk-docs.sgml
251332cd3730767aabf78b14ff866e06869c6b61
[~andy/gtk] / docs / reference / gtk / gtk-docs.sgml
1 <?xml version="1.0"?>
2 <!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN"
3                "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
4 <!ENTITY % local.common.attrib "xmlns:xi  CDATA  #FIXED 'http://www.w3.org/2003/XInclude'">
5 <!ENTITY version SYSTEM "version.xml">
6 ]>
7 <!--ENTITY index-Objects-Grouped SYSTEM "objects_grouped.sgml"-->
8 <book id="index" xmlns:xi="http://www.w3.org/2003/XInclude">
9   <bookinfo>
10     <title>GTK+ Reference Manual</title>
11     <releaseinfo>
12       for GTK+ &version;
13       The latest version of this documentation can be found on-line at
14       <ulink role="online-location" url="http://library.gnome.org/devel/gtk/unstable/">http://library.gnome.org/devel/gtk/unstable/</ulink>.
15     </releaseinfo>
16   </bookinfo>
17
18   <part id="gtk">
19     <title>GTK+ Overview</title>
20     <partintro>
21     <para>
22 GTK+ is a library for creating graphical user interfaces. It
23 works on many UNIX-like platforms, Windows, and on framebuffer
24 devices. GTK+ is released under the GNU Library General Public License
25 (GNU LGPL), which allows for flexible licensing of client
26 applications. GTK+ has a C-based object-oriented architecture that
27 allows for maximum flexibility.  Bindings for other languages have
28 been written, including C++, Objective-C, Guile/Scheme, Perl, Python,
29 TOM, Ada95, Free Pascal, and Eiffel.
30     </para>
31     <para>
32 GTK+ depends on the following libraries:
33 <variablelist>
34
35 <varlistentry>
36 <term>GLib</term>
37 <listitem><para>
38 A general-purpose utility library, not specific to graphical user interfaces.
39 GLib provides many useful data types, macros, type conversions,
40 string utilities, file utilities, a main loop abstraction, and so on.
41 </para></listitem>
42 </varlistentry>
43
44 <varlistentry>
45 <term>Pango</term>
46 <listitem><para>
47 Pango is a library for internationalized text handling. It centers
48 around the #PangoLayout object, representing a paragraph of text. 
49 Pango provides the engine for #GtkTextView, #GtkLabel, #GtkEntry, and
50 other widgets that display text.
51 </para></listitem>
52 </varlistentry>
53
54 <varlistentry>
55 <term>ATK</term>
56 <listitem><para>
57 ATK is the Accessibility Toolkit. It provides a set of generic
58 interfaces allowing accessibility technologies to interact with a
59 graphical user interface. For example, a screen reader uses ATK to
60 discover the text in an interface and read it to blind users.  GTK+
61 widgets have built-in support for accessibility using the ATK
62 framework.
63 </para></listitem>
64 </varlistentry>
65
66 <varlistentry>
67 <term>GdkPixbuf</term>
68 <listitem><para>
69 This is a small library which allows you to create #GdkPixbuf
70 ("pixel buffer") objects from image data or image files. 
71 Use a #GdkPixbuf in combination with #GtkImage to display images.
72 </para></listitem>
73 </varlistentry>
74
75 <varlistentry>
76 <term>GDK</term>
77 <listitem><para>
78 GDK is the abstraction layer that allows GTK+ to support multiple
79 windowing systems. GDK provides drawing and window system facilities
80 on X11, Windows, and the Linux framebuffer device.
81 </para></listitem>
82 </varlistentry>
83
84 <varlistentry>
85 <term>GTK+</term>
86 <listitem><para>
87 The GTK+ library itself contains <firstterm>widgets</firstterm>, 
88 that is, GUI components such as #GtkButton or #GtkTextView.
89 </para></listitem>
90 </varlistentry>
91 </variablelist>
92     </para>
93 </partintro>
94     <xi:include href="building.sgml" />
95     <xi:include href="compiling.sgml" />
96     <xi:include href="running.sgml" />
97     <xi:include href="x11.sgml" />
98     <xi:include href="windows.sgml" />
99     <xi:include href="osx.sgml" />
100     <xi:include href="directfb.sgml" />
101     <xi:include href="resources.sgml" />
102     <xi:include href="xml/question_index.sgml" />
103     <xi:include href="drawing-model.xml" />
104   </part>
105
106
107   <part  id="gtkbase">
108     <title>GTK+ Core Reference</title>
109     <xi:include href="xml/gtkmain.xml" />
110     <xi:include href="xml/gtkaccelgroup.xml" />
111     <xi:include href="xml/gtkaccelmap.xml" />
112     <xi:include href="xml/gtkclipboard.xml" />
113     <xi:include href="xml/gtkdnd.xml" />
114     <xi:include href="xml/gtkicontheme.xml" />
115     <xi:include href="xml/gtkstock.xml" />
116     <xi:include href="xml/gtkiconfactory.xml" />
117     <xi:include href="xml/gtkrc.xml" />
118     <xi:include href="xml/gtksettings.xml" />
119     <xi:include href="xml/gtkbindings.xml" />
120     <xi:include href="xml/gtkenums.xml" />
121     <xi:include href="xml/gtkgc.xml" />
122     <xi:include href="xml/gtkstyle.xml" />
123     <xi:include href="xml/gtkselection.xml" />
124     <xi:include href="xml/gtkfeatures.xml" />
125     <xi:include href="xml/gtksignal.xml" />
126     <xi:include href="xml/gtktypeutils.xml" />
127     <xi:include href="xml/gtktesting.xml" />
128     <xi:include href="xml/filesystem.xml" />
129   </part>
130
131   <part id="gtkobjects">
132     <title>GTK+ Widgets and Objects</title>
133
134     <chapter>
135       <title>Object Hierarchy</title>
136       <xi:include href="xml/tree_index.sgml" />
137     </chapter>
138
139     <chapter>
140       <title>Widget Gallery</title>
141       <xi:include href="visual_index.xml" />
142     </chapter>
143
144     <chapter id="WindowWidgets">
145       <title>Windows</title>
146       <xi:include href="xml/gtkdialog.xml" />
147       <xi:include href="xml/gtkinvisible.xml" />
148       <xi:include href="xml/gtkmessagedialog.xml" />
149       <xi:include href="xml/gtkwindow.xml" />
150       <xi:include href="xml/gtkwindowgroup.xml" />
151       <xi:include href="xml/gtkaboutdialog.xml" />
152       <xi:include href="xml/gtkassistant.xml" />
153       <xi:include href="xml/gtkoffscreenwindow.xml" />
154     </chapter>
155
156     <chapter id="DisplayWidgets">
157       <title>Display Widgets</title>
158       <xi:include href="xml/gtkaccellabel.xml" />
159       <xi:include href="xml/gtkimage.xml" />
160       <xi:include href="xml/gtklabel.xml" />
161       <xi:include href="xml/gtkprogressbar.xml" />
162       <xi:include href="xml/gtkstatusbar.xml" />
163       <xi:include href="xml/gtkinfobar.xml" />
164       <xi:include href="xml/gtkstatusicon.xml" />
165       <xi:include href="xml/gtkspinner.xml" />
166     </chapter>
167
168     <chapter id="ButtonWidgets">
169       <title>Buttons and Toggles</title>
170       <xi:include href="xml/gtkbutton.xml" />
171       <xi:include href="xml/gtkcheckbutton.xml" />
172       <xi:include href="xml/gtkradiobutton.xml" />
173       <xi:include href="xml/gtktogglebutton.xml" />
174       <xi:include href="xml/gtklinkbutton.xml" />
175       <xi:include href="xml/gtkscalebutton.xml" />
176       <xi:include href="xml/gtkvolumebutton.xml" />
177     </chapter>
178
179     <chapter id="NumericEntry">
180       <title>Numeric/Text Data Entry</title>
181       <xi:include href="xml/gtkentry.xml" />
182       <xi:include href="xml/gtkentrybuffer.xml" />
183       <xi:include href="xml/gtkentrycompletion.xml" />
184       <xi:include href="xml/gtkhscale.xml" />
185       <xi:include href="xml/gtkvscale.xml" />
186       <xi:include href="xml/gtkspinbutton.xml" />
187       <xi:include href="xml/gtkeditable.xml" />
188     </chapter>
189
190     <chapter id="TextWidgetObjects">
191       <title>Multiline Text Editor</title>
192       <xi:include href="xml/text_widget.sgml" />
193       <xi:include href="xml/gtktextiter.xml" />
194       <xi:include href="xml/gtktextmark.xml" />
195       <xi:include href="xml/gtktextbuffer.xml" />
196       <xi:include href="xml/gtktexttag.xml" />
197       <xi:include href="xml/gtktexttagtable.xml" />
198       <xi:include href="xml/gtktextview.xml" />
199     </chapter>
200
201     <chapter id="TreeWidgetObjects">
202       <title>Tree, List and Icon Grid Widgets</title>
203       <xi:include href="xml/tree_widget.sgml" />
204       <xi:include href="xml/gtktreemodel.xml" />
205       <xi:include href="xml/gtktreeselection.xml" />
206       <xi:include href="xml/gtktreeviewcolumn.xml" />
207       <xi:include href="xml/gtktreeview.xml" />
208       <xi:include href="xml/gtktreednd.xml" />
209       <xi:include href="xml/gtkcellview.xml" />
210       <xi:include href="xml/gtkiconview.xml" />
211       <xi:include href="xml/gtktreesortable.xml" />
212       <xi:include href="xml/gtktreemodelsort.xml" />
213       <xi:include href="xml/gtktreemodelfilter.xml" />
214       <xi:include href="xml/gtkcelllayout.xml" />
215       <xi:include href="xml/gtkcellrenderer.xml" />
216       <xi:include href="xml/gtkcelleditable.xml" />
217       <xi:include href="xml/gtkcellrendereraccel.xml" />
218       <xi:include href="xml/gtkcellrenderercombo.xml" />
219       <xi:include href="xml/gtkcellrendererpixbuf.xml" />
220       <xi:include href="xml/gtkcellrendererprogress.xml" />
221       <xi:include href="xml/gtkcellrendererspin.xml" />
222       <xi:include href="xml/gtkcellrenderertext.xml" />
223       <xi:include href="xml/gtkcellrenderertoggle.xml" />
224       <xi:include href="xml/gtkcellrendererspinner.xml" />
225       <xi:include href="xml/gtkliststore.xml" />
226       <xi:include href="xml/gtktreestore.xml" />
227     </chapter>
228
229     <chapter id="MenusAndCombos">
230       <title>Menus, Combo Box, Toolbar</title>
231       <xi:include href="xml/gtkcombobox.xml" />
232       <xi:include href="xml/gtkcomboboxentry.xml" />
233       <xi:include href="xml/gtkmenu.xml" />
234       <xi:include href="xml/gtkmenubar.xml" />
235       <xi:include href="xml/gtkmenuitem.xml" />
236       <xi:include href="xml/gtkimagemenuitem.xml" />
237       <xi:include href="xml/gtkradiomenuitem.xml" />
238       <xi:include href="xml/gtkcheckmenuitem.xml" />
239       <xi:include href="xml/gtkseparatormenuitem.xml" />
240       <xi:include href="xml/gtktearoffmenuitem.xml" />
241       <xi:include href="xml/gtktoolshell.xml" />
242       <xi:include href="xml/gtktoolbar.xml" />
243       <xi:include href="xml/gtktoolitem.xml" />
244       <xi:include href="xml/gtktoolpalette.xml" />
245       <xi:include href="xml/gtktoolitemgroup.xml" />
246       <xi:include href="xml/gtkseparatortoolitem.xml" />
247       <xi:include href="xml/gtktoolbutton.xml" />
248       <xi:include href="xml/gtkmenutoolbutton.xml" />
249       <xi:include href="xml/gtktoggletoolbutton.xml" />
250       <xi:include href="xml/gtkradiotoolbutton.xml" />
251     </chapter>
252
253     <chapter id="Actions">
254       <title>Action-based menus and toolbars</title>
255       <xi:include href="xml/gtkuimanager.xml" />
256       <xi:include href="xml/gtkactiongroup.xml" />
257       <xi:include href="xml/gtkaction.xml" />
258       <xi:include href="xml/gtktoggleaction.xml" />
259       <xi:include href="xml/gtkradioaction.xml" />
260       <xi:include href="xml/gtkrecentaction.xml" />
261       <xi:include href="xml/gtkactivatable.xml" />
262     </chapter>
263
264     <chapter id="SelectorWidgets">
265       <title>Selectors (File/Font/Color/Input Devices)</title>
266       <xi:include href="xml/gtkcolorbutton.xml" />
267       <xi:include href="xml/gtkcolorseldlg.xml" />
268       <xi:include href="xml/gtkcolorsel.xml" />
269       <xi:include href="xml/gtkhsv.xml" />
270       <xi:include href="xml/gtkfilechooser.xml" />
271       <xi:include href="xml/gtkfilechooserbutton.xml" />
272       <xi:include href="xml/gtkfilechooserdialog.xml" />
273       <xi:include href="xml/gtkfilechooserwidget.xml" />
274       <xi:include href="xml/gtkfilefilter.xml" />
275       <xi:include href="xml/gtkfontbutton.xml" />
276       <xi:include href="xml/gtkfontsel.xml" />
277       <xi:include href="xml/gtkfontseldlg.xml" />
278       <xi:include href="xml/gtkinputdialog.xml" />
279     </chapter>
280     
281     <chapter id="LayoutContainers">
282       <title>Layout Containers</title>
283       <xi:include href="xml/gtkalignment.xml" />
284       <xi:include href="xml/gtkaspectframe.xml" />
285       <xi:include href="xml/gtkhbox.xml" />
286       <xi:include href="xml/gtkvbox.xml" />
287       <xi:include href="xml/gtkhbbox.xml" />
288       <xi:include href="xml/gtkvbbox.xml" />
289       <xi:include href="xml/gtkfixed.xml" />
290       <xi:include href="xml/gtkhpaned.xml" />
291       <xi:include href="xml/gtkvpaned.xml" />
292       <xi:include href="xml/gtklayout.xml" />
293       <xi:include href="xml/gtknotebook.xml" />
294       <xi:include href="xml/gtktable.xml" />
295       <xi:include href="xml/gtkexpander.xml" />
296       <xi:include href="xml/gtkorientable.xml" />
297       <xi:include href="xml/gtkextendedlayout.xml" />
298     </chapter>
299
300     <chapter id="Ornaments">
301       <title>Ornaments</title>
302       <xi:include href="xml/gtkframe.xml" />
303       <xi:include href="xml/gtkhseparator.xml" />
304       <xi:include href="xml/gtkvseparator.xml" />
305     </chapter>
306
307     <chapter id="ScrollingWidgets">
308       <title>Scrolling</title>
309       <xi:include href="xml/gtkhscrollbar.xml" />
310       <xi:include href="xml/gtkvscrollbar.xml" />
311       <xi:include href="xml/gtkscrolledwindow.xml" />
312     </chapter>
313
314     <chapter id="Printing">
315       <title>Printing</title>
316       <xi:include href="xml/gtkprintoperation.xml" />
317       <xi:include href="xml/gtkprintcontext.xml" />
318       <xi:include href="xml/gtkprintsettings.xml" />
319       <xi:include href="xml/gtkpagesetup.xml" />
320       <xi:include href="xml/gtkpapersize.xml" />
321       <xi:include href="xml/gtkprinter.xml" />
322       <xi:include href="xml/gtkprintjob.xml" />
323       <xi:include href="xml/gtkprintunixdialog.xml" />
324       <xi:include href="xml/gtkpagesetupunixdialog.xml" />
325     </chapter>
326
327     <chapter id="MiscObjects">
328       <title>Miscellaneous</title>
329       <xi:include href="xml/gtkadjustment.xml" />
330       <xi:include href="xml/gtkarrow.xml" />
331       <xi:include href="xml/gtkcalendar.xml" />
332       <xi:include href="xml/gtkdrawingarea.xml" />
333       <xi:include href="xml/gtkeventbox.xml" />
334       <xi:include href="xml/gtkhandlebox.xml" />
335       <xi:include href="xml/gtkimcontextsimple.xml" />
336       <xi:include href="xml/gtkimmulticontext.xml" />
337       <xi:include href="xml/gtksizegroup.xml" />
338       <xi:include href="xml/gtktooltip.xml" />
339       <xi:include href="xml/gtkviewport.xml" />
340       <xi:include href="xml/gtkaccessible.xml" />
341     </chapter>
342
343     <chapter id="AbstractObjects">
344       <title>Abstract Base Classes</title>
345       <xi:include href="xml/gtkbin.xml" />
346       <xi:include href="xml/gtkbox.xml" />
347       <xi:include href="xml/gtkbbox.xml" />
348       <xi:include href="xml/gtkcontainer.xml" />
349       <xi:include href="xml/gtkitem.xml" />
350       <xi:include href="xml/gtkmenushell.xml" />
351       <xi:include href="xml/gtkmisc.xml" />
352       <xi:include href="xml/gtkobject.xml" />
353       <xi:include href="xml/gtkpaned.xml" />
354       <xi:include href="xml/gtkrange.xml" />
355       <xi:include href="xml/gtkscale.xml" />
356       <xi:include href="xml/gtkscrollbar.xml" />
357       <xi:include href="xml/gtkseparator.xml" />
358       <xi:include href="xml/gtkwidget.xml" />
359       <xi:include href="xml/gtkimcontext.xml" />
360     </chapter>
361
362     <chapter id="PlugSocket">
363       <title>Cross-process Embedding</title>
364       <xi:include href="xml/gtkplug.xml" />
365       <xi:include href="xml/gtksocket.xml" />
366     </chapter>
367
368     <chapter id="SpecialObjects">
369       <title>Special-purpose features</title>
370       <xi:include href="xml/gtkcurve.xml" />
371       <xi:include href="xml/gtkgamma.xml" />
372       <xi:include href="xml/gtkruler.xml" />
373       <xi:include href="xml/gtkhruler.xml" />
374       <xi:include href="xml/gtkvruler.xml" />
375     </chapter>
376
377     <chapter id="RecentDocuments">
378       <title>Recently Used Documents</title>
379       <xi:include href="xml/gtkrecentmanager.xml" />
380       <xi:include href="xml/gtkrecentchooser.xml" />
381       <xi:include href="xml/gtkrecentchooserdialog.xml" />
382       <xi:include href="xml/gtkrecentchoosermenu.xml" />
383       <xi:include href="xml/gtkrecentchooserwidget.xml" />
384       <xi:include href="xml/gtkrecentfilter.xml" />
385     </chapter>
386
387     <chapter id="Builder">
388       <title>Interface builder</title>
389       <xi:include href="xml/gtkbuildable.xml" />
390       <xi:include href="xml/gtkbuilder.xml" />
391     </chapter>
392   </part>
393
394   <part id="migrating">
395     <title>Migrating from Previous Versions of GTK+</title>
396
397     <partintro>
398       <para>
399         This part describes what you need to change in programs use
400         older versions of GTK+ so that they can use the new features.
401         It also mentions how to convert applications using widgets
402         found in the libgnomeui library to use their counterparts
403         in GTK+.
404       </para>
405     </partintro>
406
407     <xi:include href="xml/migrating-checklist.sgml" />
408     <xi:include href="changes-1.2.sgml" />
409     <xi:include href="changes-2.0.sgml" />
410     <xi:include href="xml/migrating-GtkFileChooser.sgml" />
411     <xi:include href="xml/migrating-GtkAction.sgml" />
412     <xi:include href="xml/migrating-GtkComboBox.sgml" />
413     <xi:include href="xml/migrating-GtkIconView.sgml" />
414     <xi:include href="xml/migrating-GtkAboutDialog.sgml" />
415     <xi:include href="xml/migrating-GtkColorButton.sgml" />
416     <xi:include href="xml/migrating-GtkAssistant.sgml" />
417     <xi:include href="xml/migrating-GtkRecentChooser.sgml" />
418     <xi:include href="xml/migrating-GtkLinkButton.sgml" />
419     <xi:include href="xml/migrating-GtkBuilder.sgml" />
420     <xi:include href="xml/migrating-GtkTooltip.sgml" />
421     <xi:include href="xml/migrating-GtkEntry-icons.sgml" />
422     <xi:include href="xml/migrating-GtkLabel-links.sgml" />
423     <xi:include href="xml/migrating-ClientSideWindows.sgml" />
424   </part>
425
426   <part>
427     <title>GTK+ Tools</title>
428     <xi:include href="gtk-query-immodules-2.0.xml" />
429     <xi:include href="gtk-update-icon-cache.xml" />
430     <xi:include href="gtk-builder-convert.xml" />
431   </part>
432
433   <xi:include href="glossary.xml" />
434
435   <index id="api-index-full">
436     <title>Index of all symbols</title>
437     <xi:include href="xml/api-index-full.xml"><xi:fallback /></xi:include>
438   </index>
439   <index id="api-index-deprecated" role="deprecated">
440     <title>Index of deprecated symbols</title>
441     <xi:include href="xml/api-index-deprecated.xml"><xi:fallback /></xi:include>
442   </index>
443   <index id="api-index-2-2" role="2.2">
444     <title>Index of new symbols in 2.2</title>
445     <xi:include href="xml/api-index-2.2.xml"><xi:fallback /></xi:include>
446   </index>
447   <index id="api-index-2-4" role="2.4">
448     <title>Index of new symbols in 2.4</title>
449     <xi:include href="xml/api-index-2.4.xml"><xi:fallback /></xi:include>
450   </index>
451   <index id="api-index-2-6" role="2.6">
452     <title>Index of new symbols in 2.6</title>
453     <xi:include href="xml/api-index-2.6.xml"><xi:fallback /></xi:include>
454   </index>
455   <index id="api-index-2-8" role="2.8">
456     <title>Index of new symbols in 2.8</title>
457     <xi:include href="xml/api-index-2.8.xml"><xi:fallback /></xi:include>
458   </index>
459   <index id="api-index-2-10" role="2.10">
460     <title>Index of new symbols in 2.10</title>
461     <xi:include href="xml/api-index-2.10.xml"><xi:fallback /></xi:include>
462   </index>
463   <index id="api-index-2-12" role="2.12">
464     <title>Index of new symbols in 2.12</title>
465     <xi:include href="xml/api-index-2.12.xml"><xi:fallback /></xi:include>
466   </index>
467   <index id="api-index-2-14" role="2.14">
468     <title>Index of new symbols in 2.14</title>
469     <xi:include href="xml/api-index-2.14.xml"><xi:fallback /></xi:include>
470   </index>
471   <index id="api-index-2-16" role="2.16">
472     <title>Index of new symbols in 2.16</title>
473     <xi:include href="xml/api-index-2.16.xml"><xi:fallback /></xi:include>
474   </index>
475   <index id="api-index-2-18" role="2.18">
476     <title>Index of new symbols in 2.18</title>
477     <xi:include href="xml/api-index-2.18.xml"><xi:fallback /></xi:include>
478   </index>
479   <index id="api-index-2-20" role="2.20">
480     <title>Index of new symbols in 2.20</title>
481     <xi:include href="xml/api-index-2.20.xml"><xi:fallback /></xi:include>
482   </index>
483   <index id="api-index-2-22" role="2.22">
484     <title>Index of new symbols in 2.20</title>
485     <xi:include href="xml/api-index-2.22.xml"><xi:fallback /></xi:include>
486   </index>
487   <index id="api-index-3-0" role="3.0">
488     <title>Index of new symbols in 3.0</title>
489     <xi:include href="xml/api-index-3.0.xml"><xi:fallback /></xi:include>
490   </index>
491
492   <xi:include href="xml/annotation-glossary.xml"><xi:fallback /></xi:include>
493
494 </book>