Merge remote-tracking branch 'andy128k/master'
[cl-gtk2.git] / doc / gtk.objects.texi
blobc9a8fa3c12083a96551dcc2a57a3667a44b594f6
1 @menu
2 * accel-group::
3 * accel-map::
4 * action::
5 * action-group::
6 * adjustment::
7 * array-list-store::
8 * builder::
9 * cell-renderer::
10 * cell-renderer-accel::
11 * cell-renderer-combo::
12 * cell-renderer-pixbuf::
13 * cell-renderer-progress::
14 * cell-renderer-spin::
15 * cell-renderer-text::
16 * cell-renderer-toggle::
17 * clipboard::
18 * entry-completion::
19 * file-filter::
20 * gtk-object::
21 * i-m-context::
22 * icon-factory::
23 * icon-theme::
24 * list-store::
25 * page-setup::
26 * print-context::
27 * print-operation::
28 * print-settings::
29 * radio-action::
30 * rc-style::
31 * recent-action::
32 * recent-filter::
33 * recent-manager::
34 * settings::
35 * size-group::
36 * status-icon::
37 * style::
38 * text-buffer::
39 * text-child-anchor::
40 * text-iter::
41 * text-mark::
42 * text-tag::
43 * text-tag-table::
44 * toggle-action::
45 * tooltip::
46 * tree-lisp-store::
47 * tree-model-filter::
48 * tree-model-sort::
49 * tree-path::
50 * tree-selection::
51 * tree-store::
52 * tree-view-column::
53 * ui-manager::
54 * window-group::
55 @end menu
57 @node accel-group
58 @section accel-group
59 @Class accel-group
60 Superclass: @ref{g-object}
62 An @ref{accel-group} represents a group of keyboard accelerators, typically attached to a toplevel @ref{gtk-window} (with gtk_window_add_accel_group()). Usually you won't need to create an @ref{accel-group} directly.
64 Note that accelerators are different from mnemonics. Accelerators are shortcuts for activating a menu item; they appear alongside the menu item they're a shortcut for. For example "Ctrl+Q" might appear alongside the "Quit" menu item. Mnemonics are shortcuts for GUI elements such as text entries or buttons; they appear as underlined characters. See @ref{slot.label.mnemonic-widget,label-mnemonic-widget}. Menu items can have both accelerators and mnemonics, of course.
66 Slots:
67 @itemize
68 @item @anchor{slot.accel-group.is-locked}is-locked. Type: @code{boolean}. Accessor: @anchor{fn.accel-group-is-locked}@code{accel-group-is-locked}. Read-only.
70 Is the accel group locked.
72 @item @anchor{slot.accel-group.modifier-mask}modifier-mask. Type: @ref{gdk-modifier-type}. Accessor: @anchor{fn.accel-group-modifier-mask}@code{accel-group-modifier-mask}. Read-only.
74 Modifier Mask.
76 Default value: @code{'(:shift-mask control-mask :mod1-mask :super-mask :hyper-mask :meta-mask)}
78 @end itemize
81 Signals:
82 @itemize
83 @item @anchor{signal.accel-group.accel-activate}"accel-activate". Signature: (instance @ref{accel-group}), (acceleratable @ref{g-object}), (keyval @code{integer}), (modifier @ref{gdk-modifier-type}) @result{} @code{boolean}. Options: detailed.
85 The @code{accel-activate} signal is an implementation detail of @ref{accel-group} and not meant to be used by applications.
87 @table @var
88 @item @var{acceleratable}
90 the object on which the accelerator was activated
91 @item @var{keyval}
93 the accelerator keyval
94 @item @var{modifier}
96 the modifier combination of the accelerator
97 @item Return value
99 True if the accelerator was activated
100 @end table
102 @item @anchor{signal.accel-group.accel-changed}"accel-changed". Signature: (instance @ref{accel-group}), (keyval @code{integer}), (modifier @ref{gdk-modifier-type}), (closure @code{GClosure}) @result{} void. Options: run-first, detailed.
104 The @code{accel-changed} signal is emitted when a @code{GtkAccelGroupEntry} is added to or removed from the accel group.
106 Widgets like @ref{accel-label} which display an associated accelerator should connect to this signal, and rebuild their visual representation if the @var{accel_closure} is theirs.
108 @table @var
109 @item @var{keyval}
110 the accelerator keyval
111 @item @var{modifier}
112 the modifier combination of the accelerator
113 @item @var{accel_closure}
114 the GClosure of the accelerator
115 @end table
116 @end itemize
121 @node accel-map
122 @section accel-map
123 @Class accel-map
124 Superclass: @ref{g-object}
128 Slots:
129 @itemize
130 @end itemize
133 Signals:
134 @itemize
135 @item @anchor{signal.accel-map.changed}"changed". Signature: (instance @ref{accel-map}), (arg-1 @code{string}), (arg-2 @code{integer}), (arg-3 @ref{gdk-modifier-type}) @result{} void. Options: run-last, detailed.
136 @end itemize
141 @node action
142 @section action
143 @Class action
144 Superclass: @ref{g-object}
146 Subclasses: @ref{recent-action} @ref{toggle-action}
148 Actions represent operations that the user can be perform, along with some information how it should be presented in the interface. Each action provides methods to create icons, menu items and toolbar items representing itself.
150 As well as the callback that is called when the action gets activated, the following also gets associated with the action:
151 @itemize
152 @item a name (not translated, for path lookup)
153 @item a label (translated, for display)
154 @item an accelerator
155 @item whether label indicates a stock id
156 @item a tooltip (optional, translated)
157 @item a toolbar label (optional, shorter than label)
158 @end itemize
159 The action will also have some state information:
160 @itemize
161 @item visible (shown/hidden)
162 @item sensitive (enabled/disabled)
163 @end itemize
164 Apart from regular actions, there are @ref{toggle-action}s, which can be toggled between two states and @ref{radio-action}s, of which only one in a group can be in the "active" state. Other actions can be implemented as @ref{action} subclasses.
166 Each action can have one or more proxy menu item, toolbar button or other proxy widgets. Proxies mirror the state of the action (text label, tooltip, icon, visible, sensitive, etc), and should change when the action's state changes. When the proxy is activated, it should activate its action.
168 Slots:
169 @itemize
170 @item @anchor{slot.action.accel-group}accel-group. Type: @ref{g-object}. Accessor: @anchor{fn.action-accel-group}@code{action-accel-group}. Write-only.
171 @item @anchor{slot.action.accel-path}accel-path. Type: @code{string}. Accessor: @anchor{fn.action-accel-path}@code{action-accel-path}.
172 @item @anchor{slot.action.action-group}action-group. Type: @ref{action-group}. Accessor: @anchor{fn.action-action-group}@code{action-action-group}.
174 The @ref{action-group} this @ref{action} is associated with, or @code{NIL} (for internal use).
175 @item @anchor{slot.action.gicon}gicon. Type: @code{GIcon}. Accessor: @anchor{fn.action-gicon}@code{action-gicon}.
177 The @code{GIcon} displayed in the @ref{action}.
179 Note that the stock icon is preferred, if the @ref{slot.action.stock-id,action-stock-id} property holds the id of an existing stock icon.
181 This is an appearance property and thus only applies if @ref{slot.activatable.use-action-appearance,activatable-use-action-appearance} is true.
182 @item @anchor{slot.action.hide-if-empty}hide-if-empty. Type: @code{boolean}. Accessor: @anchor{fn.action-hide-if-empty}@code{action-hide-if-empty}.
184 When TRUE, empty menu proxies for this action are hidden.
186 Default value: TRUE
187 @item @anchor{slot.action.icon-name}icon-name. Type: @code{string}. Accessor: @anchor{fn.action-icon-name}@code{action-icon-name}.
189 The name of the icon from the icon theme.
191 Note that the stock icon is preferred, if the @ref{slot.action.stock-id,action-stock-id} property holds the id of an existing stock icon, and the @code{GIcon} is preferred if the @ref{slot.action.gicon,action-gicon} property is set.
193 This is an appearance property and thus only applies if @ref{slot.activatable.use-action-appearance,activatable-use-action-appearance} is TRUE.
195 Default value: @code{NIL}
196 @item @anchor{slot.action.is-important}is-important. Type: @code{boolean}. Accessor: @anchor{fn.action-is-important}@code{action-is-important}.
198 Whether the action is considered important. When TRUE, toolitem proxies for this action show text in @ref{enum.toolbar-style.both-horiz,@code{:both-horiz}} mode.
200 Default value: FALSE
201 @item @anchor{slot.action.label}label. Type: @code{string}. Accessor: @anchor{fn.action-label}@code{action-label}.
203 The label used for menu items and buttons that activate this action. If the label is NULL, GTK+ uses the stock label specified via the stock-id property.
205 This is an appearance property and thus only applies if @ref{slot.activatable.use-action-appearance,activatable-use-action-appearance} is TRUE.
207 Default value: NIL
208 @item @anchor{slot.action.name}name. Type: @code{string}. Accessor: @anchor{fn.action-name}@code{action-name}.
210 A unique name for the action.
212 Default value: NIL
213 @item @anchor{slot.action.sensitive}sensitive. Type: @code{boolean}. Accessor: @anchor{fn.action-sensitive}@code{action-sensitive}.
215 Whether the action is enabled.
217 Default value: TRUE
218 @item @anchor{slot.action.short-label}short-label. Type: @code{string}. Accessor: @anchor{fn.action-short-label}@code{action-short-label}.
220 A shorter label that may be used on toolbar buttons.
222 This is an appearance property and thus only applies if @SlotRef{activatable,use-action-appearance} is TRUE.
224 Default value: NIL
225 @item @anchor{slot.action.stock-id}stock-id. Type: @code{string}. Accessor: @anchor{fn.action-stock-id}@code{action-stock-id}.
227 The stock icon displayed in widgets representing this action.
229 This is an appearance property and thus only applies if @SlotRef{activatable,use-action-appearance} is TRUE.
231 Default value: NIL
232 @item @anchor{slot.action.tooltip}tooltip. Type: @code{string}. Accessor: @anchor{fn.action-tooltip}@code{action-tooltip}.
234 A tooltip for this action.
236 Default value: NIL
237 @item @anchor{slot.action.visible}visible. Type: @code{boolean}. Accessor: @anchor{fn.action-visible}@code{action-visible}.
239 Whether the action is visible.
241 Default value: TRUE
242 @item @anchor{slot.action.visible-horizontal}visible-horizontal. Type: @code{boolean}. Accessor: @anchor{fn.action-visible-horizontal}@code{action-visible-horizontal}.
244 Whether the toolbar item is visible when the toolbar is in a horizontal orientation.
246 Default value: TRUE
247 @item @anchor{slot.action.visible-overflown}visible-overflown. Type: @code{boolean}. Accessor: @anchor{fn.action-visible-overflown}@code{action-visible-overflown}.
249 When TRUE, toolitem proxies for this action are represented in the toolbar overflow menu.
251 Default value: TRUE
252 @item @anchor{slot.action.visible-vertical}visible-vertical. Type: @code{boolean}. Accessor: @anchor{fn.action-visible-vertical}@code{action-visible-vertical}.
254 Whether the toolbar item is visible when the toolbar is in a vertical orientation.
256 Default value: TRUE
257 @end itemize
260 Signals:
261 @itemize
262 @item @anchor{signal.action.activate}"activate". Signature: (instance @ref{action}) @result{} void. Options: run-first, no-recurse.
264 The @code{activate} signal is emitted when the action is activated.
265 @end itemize
270 @node action-group
271 @section action-group
272 @Class action-group
273 Superclass: @ref{g-object}
275 Actions are organised into groups. An action group is essentially a map from names to @ref{action} objects.
277 All actions that would make sense to use in a particular context should be in a single group. Multiple action groups may be used for a particular user interface. In fact, it is expected that most nontrivial applications will make use of multiple groups. For example, in an application that can edit multiple documents, one group holding global actions (e.g. quit, about, new), and one group per document holding actions that act on that document (eg. save, cut/copy/paste, etc). Each window's menus would be constructed from a combination of two action groups.
279 Accelerators are handled by the GTK+ accelerator map. All actions are assigned an accelerator path (which normally has the form @code{<Actions>/group-name/action-name}) and a shortcut is associated with this accelerator path. All menuitems and toolitems take on this accelerator path. The GTK+ accelerator map code makes sure that the correct shortcut is displayed next to the menu item.
281 Slots:
282 @itemize
283 @item @anchor{slot.action-group.name}name. Type: @code{string}. Accessor: @anchor{fn.action-group-name}@code{action-group-name}.
285 A name for the action group.
287 Default value: NIL
288 @item @anchor{slot.action-group.sensitive}sensitive. Type: @code{boolean}. Accessor: @anchor{fn.action-group-sensitive}@code{action-group-sensitive}.
290 Whether the action group is enabled.
292 Default value: TRUE
293 @item @anchor{slot.action-group.translate-function}translate-function. Type: @code{(function (string) string)}. Accessor: @anchor{fn.action-group-translate-function}@code{action-group-translate-function}. Write-only.
295 Sets a function to be used for translating the @emph{label} and @emph{tooltip} of GtkActionGroupEntrys added by gtk_action_group_add_actions().
297 If you're using gettext, it is enough to set the @SlotRef{action-group,translation-domain}.
298 @item @anchor{slot.action-group.translation-domain}translation-domain. Type: @code{string}. Accessor: @anchor{fn.action-group-translation-domain}@code{action-group-translation-domain}. Write-only.
300 Sets the translation domain and uses g_dgettext() for translating the @emph{label} and @emph{tooltip} of GtkActionEntrys added by gtk_action_group_add_actions().
301 @item @anchor{slot.action-group.visible}visible. Type: @code{boolean}. Accessor: @anchor{fn.action-group-visible}@code{action-group-visible}.
303 Whether the action group is visible.
305 Default value: TRUE
306 @end itemize
309 Signals:
310 @itemize
311 @item @anchor{signal.action-group.connect-proxy}"connect-proxy". Signature: (instance @ref{action-group}), (action @ref{action}), (proxy @ref{widget}) @result{} void. Options: None.
313 The @code{connect-proxy} signal is emitted after connecting a proxy to an action in the group. Note that the proxy may have been connected to a different action before.
315 This is intended for simple customizations for which a custom action class would be too clumsy, e.g. showing tooltips for menuitems in the statusbar.
317 @ref{ui-manager} proxies the signal and provides global notification just before any action is connected to a proxy, which is probably more convenient to use.
319 @item @anchor{signal.action-group.disconnect-proxy}"disconnect-proxy". Signature: (instance @ref{action-group}), (action @ref{action}), (proxy @ref{widget}) @result{} void. Options: None.
321 The @code{disconnect-proxy} signal is emitted after disconnecting a proxy from an action in the group.
323 @ref{ui-manager} proxies the signal and provides global notification just before any action is connected to a proxy, which is probably more convenient to use.
324 @item @anchor{signal.action-group.post-activate}"post-activate". Signature: (instance @ref{action-group}), (action @ref{action}) @result{} void. Options: None.
326 The @code{post-activate} signal is emitted just after the action in the action_group is activated
328 This is intended for @ref{ui-manager} to proxy the signal and provide global notification just after any action is activated.
329 @item @anchor{signal.action-group.pre-activate}"pre-activate". Signature: (instance @ref{action-group}), (action @ref{action}) @result{} void. Options: None.
331 The @code{pre-activate} signal is emitted just before the action in the action_group is activated
333 This is intended for @ref{ui-manager} to proxy the signal and provide global notification just before any action is activated.
334 @end itemize
339 @node adjustment
340 @section adjustment
341 @Class adjustment
342 Superclass: @ref{gtk-object}
344 The @ref{adjustment} object represents a value which has an associated lower and upper bound, together with step and page increments, and a page size. It is used within several GTK+ widgets, including @ref{spin-button}, @ref{viewport}, and @ref{range} (which is a base class for @ref{h-scrollbar}, @ref{v-scrollbar}, @ref{h-scale}, @ref{v-scale}).
346 The @ref{adjustment} object does not update the value itself. Instead it is left up to the owner of the GtkAdjustment to control the value.
348 Slots:
349 @itemize
350 @item @anchor{slot.adjustment.lower}lower. Type: @code{double-float}. Accessor: @anchor{fn.adjustment-lower}@code{adjustment-lower}.
352 The minimum value of the adjustment.
354 Default value: 0
355 @item @anchor{slot.adjustment.page-increment}page-increment. Type: @code{double-float}. Accessor: @anchor{fn.adjustment-page-increment}@code{adjustment-page-increment}.
357 The page increment of the adjustment.
359 Default value: 0
360 @item @anchor{slot.adjustment.page-size}page-size. Type: @code{double-float}. Accessor: @anchor{fn.adjustment-page-size}@code{adjustment-page-size}.
362 The page size of the adjustment. Note that the page-size is irrelevant and should be set to zero if the adjustment is used for a simple scalar value, e.g. in a @ref{spin-button}.
364 Default value: 0
365 @item @anchor{slot.adjustment.step-increment}step-increment. Type: @code{double-float}. Accessor: @anchor{fn.adjustment-step-increment}@code{adjustment-step-increment}.
367 The step increment of the adjustment.
369 Default value: 0
370 @item @anchor{slot.adjustment.upper}upper. Type: @code{double-float}. Accessor: @anchor{fn.adjustment-upper}@code{adjustment-upper}.
372 The maximum value of the adjustment. Note that values will be restricted by @code{(- upper page-size)} if the page-size property is nonzero.
374 Default value: 0
375 @item @anchor{slot.adjustment.value}value. Type: @code{double-float}. Accessor: @anchor{fn.adjustment-value}@code{adjustment-value}.
377 The value of the adjustment.
379 Default value: 0
380 @end itemize
383 Signals:
384 @itemize
385 @item @anchor{signal.adjustment.changed}"changed". Signature: (instance @ref{adjustment}) @result{} void. Options: run-first, no-recurse.
387 Emitted when one or more of the @ref{adjustment} fields have been changed, other than the @SlotRef{adjustment,value} field.
388 @item @anchor{signal.adjustment.value-changed}"value-changed". Signature: (instance @ref{adjustment}) @result{} void. Options: run-first, no-recurse.
390 Emitted when the @SlotRef{adjustment,value} field has been changed.
391 @end itemize
396 @node array-list-store
397 @section array-list-store
398 @Class array-list-store
399 Superclass: @ref{g-object} @ref{tree-model}
401 A Lisp implementation of @ref{tree-model} interface suitable for using in @ref{tree-view} widgets. @ref{array-list-store} contains a list of objects and a list of columns. Each column has a number (starting from zero) and is specified by its GType and reader function.
403 @RFunction store-add-column
404 @lisp
405 (store-add-column list-store name reader)
406 @end lisp
407 Adds the column named @var{name} (a string) into @var{list-store} and associate @var{reader} as a reader function for this column.
409 @RFunction store-add-item
410 @lisp
411 (store-add-item list-store item)
412 @end lisp
413 Adds the @var{item} to @var{list-store}.
415 @RFunction store-items-count
416 @lisp
417 (store-items-count list-store) @result{} count
418 @end lisp
419 Returns the count of items in a @var{list-store}
421 @RFunction store-remove-item
422 @lisp
423 (store-remove-item list-store item &key (test 'eq))
424 @end lisp
425 Removes the first @var{item} from @var{list-store} (using @var{test} as a comparison function).
427 @node builder
428 @section builder
429 @Class builder
430 Superclass: @ref{g-object}
432 A @ref{builder} is an auxiliary object that reads textual descriptions of a user interface and instantiates the described objects. To pass a description to a @ref{builder}, call @ref{builder-add-from-file} or @ref{builder-add-from-string} or use @code{:from-file} or @code{:from-string} initialization arguments. These functions can be called multiple times; both initargs may be specified; the builder merges the content of all descriptions.
434 A @ref{builder} holds a reference to all objects that it has constructed and drops these references when it is finalized. This finalization can cause the destruction of non-widget objects or widgets which are not contained in a toplevel window. For toplevel windows constructed by a builder, it is the responsibility of the user to call @code{gtk_widget_destroy} to get rid of them and all the widgets they contain.
436 The function @ref{builder-get-object} can be used to access the widgets in the interface by the names assigned to them inside the UI description. Toplevel windows returned by these functions will stay around until the user explicitly destroys them with @code{gtk_widget_destroy}. Other widgets will either be part of a larger hierarchy constructed by the builder, or without a parent, in which case they have to be added to some container to make use of them.
438 The functions @ref{builder-connect-signals-simple} and @ref{builder-connect-signals-full} can be used to connect handlers to the named signals in the description.
440 Slots:
441 @itemize
442 @item @anchor{slot.builder.translation-domain}translation-domain. Type: @code{string}. Accessor: @anchor{fn.builder-translation-domain}@code{builder-translation-domain}.
444 The translation domain used when translating property values that have been marked as translatable in interface descriptions. If the translation domain is NIL, GtkBuilder uses gettext(), otherwise g_dgettext().
446 Default value: NIL
447 @end itemize
450 Signals:
451 @itemize
452 @end itemize
453 @RFunction builder-add-from-file
454 @lisp
455 (builder-add-from-file builder file-name)
456 @end lisp
457 Parses a file containing a GtkBuilder UI definition and merges it with the current contents of builder
458 @RFunction builder-add-from-string
459 @lisp
460 (builder-add-from-string builder string)
461 @end lisp
462 Parses a string containing a GtkBuilder UI definition and merges it with the current contents of builder.
463 @RFunction builder-get-object
464 @lisp
465 (builder-get-object builder name)
466 @end lisp
467 Gets the object named @var{name}.
468 @RFunction builder-connect-signals-simple
469 @lisp
470 (builder-connect-signals-simple builder handlers-list)
471 @end lisp
472 Connects the signal handlers to objects. @var{handler-list} is a plist mapping from signal handler names to signal handler functions.
474 Example:
475 @lisp
476 (builder-connect-signals-simple builder `(("new" ,#'new) ("open" ,#'cb-open)))
477 @end lisp
478 @RFunction builder-connect-signals-full
479 @lisp
480 (builder-connect-signals-full builder func)
481 @end lisp
482 Connects the signals handlers to objects. @var{func} is a function that maps signal handler name to signal handler function. Its signature is @code{(function (builder object signal-name handler-name connect-object flags))}. The @var{func} function should connect the signal handler named @var{handler-name} for @var{signal-name} of @var{object}. @var{connect-object} should be ignored. @var{flags} specifies the behavior of signal connection (@code{:after} if the handler should be called before or after the default handler of the signal; @code{:swapped} if the instance and data should be swapped when calling the handler).
484 @node cell-renderer
485 @section cell-renderer
486 @Class cell-renderer
487 Superclass: @ref{gtk-object}
489 Subclasses: @ref{cell-renderer-toggle} @ref{cell-renderer-progress} @ref{cell-renderer-pixbuf} @ref{cell-renderer-text}
491 The @ref{cell-renderer} is a base class of a set of objects used for rendering a cell to a @ref{drawable}. These objects are used primarily by the @ref{tree-view} widget, though they aren't tied to them in any specific way. It is worth noting that @ref{cell-renderer} is not a @ref{widget} and cannot be treated as such.
493 The primary use of a @ref{cell-renderer} is for drawing a certain graphical elements on a @ref{drawable}. Typically, one cell renderer is used to draw many cells on the screen. To this extent, it isn't expected that a @ref{cell-renderer} keep any permanent state around. Instead, any state is set just prior to use. Then, the cell is measured using gtk_cell_renderer_get_size(). Finally, the cell is rendered in the correct location using gtk_cell_renderer_render().
495 There are a number of rules that must be followed when writing a new @ref{cell-renderer}. First and formost, it's important that a certain set of properties will always yield a cell renderer of the same size, barring a @ref{style} change. The @ref{cell-renderer} also has a number of generic properties that are expected to be honored by all children.
497 Beyond merely rendering a cell, cell renderers can optionally provide active user interface elements. A cell renderer can be activatable like @ref{cell-renderer-toggle}, which toggles when it gets activated by a mouse click, or it can be editable like @ref{cell-renderer-text}, which allows the user to edit the text using a @ref{entry}. To make a cell renderer activatable or editable, you have to implement the @code{activate} or @code{start_editing} virtual functions, respectively.
499 Slots:
500 @itemize
501 @item @anchor{slot.cell-renderer.cell-background}cell-background. Type: @code{string}. Accessor: @anchor{fn.cell-renderer-cell-background}@code{cell-renderer-cell-background}. Write-only.
503 Cell background color as a string.
505 Default value: NIL
506 @item @anchor{slot.cell-renderer.cell-background-gdk}cell-background-gdk. Type: @ref{color}. Accessor: @anchor{fn.cell-renderer-cell-background-gdk}@code{cell-renderer-cell-background-gdk}.
508 Cell background color as a @ref{color} structure.
509 @item @anchor{slot.cell-renderer.cell-background-set}cell-background-set. Type: @code{boolean}. Accessor: @anchor{fn.cell-renderer-cell-background-set}@code{cell-renderer-cell-background-set}.
511 Whether this tag affects the cell background color.
513 Default value: FALSE
514 @item @anchor{slot.cell-renderer.editing}editing. Type: @code{boolean}. Accessor: @anchor{fn.cell-renderer-editing}@code{cell-renderer-editing}. Read-only.
516 Whether the cell renderer is currently in editing mode.
518 Default value: FALSE
519 @item @anchor{slot.cell-renderer.height}height. Type: @code{integer}. Accessor: @anchor{fn.cell-renderer-height}@code{cell-renderer-height}.
521 The fixed height.
523 Default value: -1
524 @item @anchor{slot.cell-renderer.is-expanded}is-expanded. Type: @code{boolean}. Accessor: @anchor{fn.cell-renderer-is-expanded}@code{cell-renderer-is-expanded}.
526 Row is an expander row, and is expanded.
528 Default value: FALSE
529 @item @anchor{slot.cell-renderer.is-expander}is-expander. Type: @code{boolean}. Accessor: @anchor{fn.cell-renderer-is-expander}@code{cell-renderer-is-expander}.
531 Row has children.
533 Default value: FALSE
534 @item @anchor{slot.cell-renderer.mode}mode. Type: @ref{cell-renderer-mode}. Accessor: @anchor{fn.cell-renderer-mode}@code{cell-renderer-mode}.
536 Editable mode of the @ref{cell-renderer}.
538 Default value: @code{:inert}
539 @item @anchor{slot.cell-renderer.sensitive}sensitive. Type: @code{boolean}. Accessor: @anchor{fn.cell-renderer-sensitive}@code{cell-renderer-sensitive}.
541 Display the cell sensitive.
543 Default value: TRUE
544 @item @anchor{slot.cell-renderer.visible}visible. Type: @code{boolean}. Accessor: @anchor{fn.cell-renderer-visible}@code{cell-renderer-visible}.
546 Display the cell.
548 Default value: TRUE
549 @item @anchor{slot.cell-renderer.width}width. Type: @code{integer}. Accessor: @anchor{fn.cell-renderer-width}@code{cell-renderer-width}.
551 The fixed width.
553 Default value: -1
554 @item @anchor{slot.cell-renderer.xalign}xalign. Type: @code{single-float}. Accessor: @anchor{fn.cell-renderer-xalign}@code{cell-renderer-xalign}.
556 The x-align.
558 Allowed values: [0,1]
560 Default value: 0.5
561 @item @anchor{slot.cell-renderer.xpad}xpad. Type: @code{integer}. Accessor: @anchor{fn.cell-renderer-xpad}@code{cell-renderer-xpad}.
563 The xpad.
565 Default value: 0
566 @item @anchor{slot.cell-renderer.yalign}yalign. Type: @code{single-float}. Accessor: @anchor{fn.cell-renderer-yalign}@code{cell-renderer-yalign}.
568 The y-align.
570 Allowed values: [0,1]
572 Default value: 0.5
573 @item @anchor{slot.cell-renderer.ypad}ypad. Type: @code{integer}. Accessor: @anchor{fn.cell-renderer-ypad}@code{cell-renderer-ypad}.
575 The ypad.
577 Default value: 0
578 @end itemize
581 Signals:
582 @itemize
583 @item @anchor{signal.cell-renderer.editing-canceled}"editing-canceled". Signature: (instance @ref{cell-renderer}) @result{} void. Options: run-first.
585 This signal gets emitted when the user cancels the process of editing a cell. For example, an editable cell renderer could be written to cancel editing when the user presses Escape.
587 See also: gtk_cell_renderer_stop_editing().
588 @item @anchor{signal.cell-renderer.editing-started}"editing-started". Signature: (instance @ref{cell-renderer}), (editable @ref{cell-editable}), (path @code{string}) @result{} void. Options: run-first.
590 This signal gets emitted when a cell starts to be edited. The indended use of this signal is to do special setup on editable, e.g. adding a @ref{entry-completion} or setting up additional columns in a @ref{combo-box}.
592 Note that GTK+ doesn't guarantee that cell renderers will continue to use the same kind of widget for editing in future releases, therefore you should check the type of editable before doing any specific setup.
594 @table @var
595 @item @var{path}
596 the path identifying the edited cell
597 @end table
598 @end itemize
603 @node cell-renderer-accel
604 @section cell-renderer-accel
605 @Class cell-renderer-accel
606 Superclass: @ref{cell-renderer-text}
608 @ref{cell-renderer-accel} displays a keyboard accelerator (i.e. a key combination like @code{<Control>-a}). If the cell renderer is editable, the accelerator can be changed by simply typing the new combination.
610 Slots:
611 @itemize
612 @item @anchor{slot.cell-renderer-accel.accel-key}accel-key. Type: @code{integer}. Accessor: @anchor{fn.cell-renderer-accel-accel-key}@code{cell-renderer-accel-accel-key}.
614 The keyval of the accelerator.
616 Default value: 0
617 @item @anchor{slot.cell-renderer-accel.accel-mode}accel-mode. Type: @ref{cell-renderer-accel-mode}. Accessor: @anchor{fn.cell-renderer-accel-accel-mode}@code{cell-renderer-accel-accel-mode}.
619 Determines if the edited accelerators are GTK+ accelerators. If they are, consumed modifiers are suppressed, only accelerators accepted by GTK+ are allowed, and the accelerators are rendered in the same way as they are in menus.
621 Default value: @code{:gtk}
622 @item @anchor{slot.cell-renderer-accel.accel-mods}accel-mods. Type: @ref{gdk-modifier-type}. Accessor: @anchor{fn.cell-renderer-accel-accel-mods}@code{cell-renderer-accel-accel-mods}.
624 The modifier mask of the accelerator.
625 @item @anchor{slot.cell-renderer-accel.keycode}keycode. Type: @code{integer}. Accessor: @anchor{fn.cell-renderer-accel-keycode}@code{cell-renderer-accel-keycode}.
627 The hardware keycode of the accelerator. Note that the hardware keycode is only relevant if the key does not have a keyval. Normally, the keyboard configuration should assign keyvals to all keys.
629 Default value: 0
630 @end itemize
633 Signals:
634 @itemize
635 @item @anchor{signal.cell-renderer-accel.accel-cleared}"accel-cleared". Signature: (instance @ref{cell-renderer-accel}), (path @code{string}) @result{} void. Options: run-last.
637 Gets emitted when the user has removed the accelerator.
639 @var{path} is the path identifying the row of the edited cell
640 @item @anchor{signal.cell-renderer-accel.accel-edited}"accel-edited". Signature: (instance @ref{cell-renderer-accel}), (path @code{string}), (accel-key @code{integer}), (accel-mods @ref{gdk-modifier-type}), (hardware-keycode @code{integer}) @result{} void. Options: run-last.
642 Gets emitted when the user has selected a new accelerator.
643 @table @var
644 @item @var{path}
645 the path identifying the row of the edited cell
646 @item @var{accel-key}
647 the new accelerator keyval
648 @item @var{accel-mods}
649 the new acclerator modifier mask
650 @item @var{hardware-keycode}
651 the keycode of the new accelerator
652 @end table
653 @end itemize
658 @node cell-renderer-combo
659 @section cell-renderer-combo
660 @Class cell-renderer-combo
661 Superclass: @ref{cell-renderer-text}
663 @ref{cell-renderer-combo} renders text in a cell like @ref{cell-renderer-text} from which it is derived. But while @ref{cell-renderer-text} offers a simple entry to edit the text, @ref{cell-renderer-combo} offers a @ref{combo-box} or @ref{combo-box-entry} widget to edit the text. The values to display in the combo box are taken from the tree model specified in the model property.
665 The combo cell renderer takes care of adding a text cell renderer to the combo box and sets it to display the column specified by its text-column property. Further properties of the comnbo box can be set in a handler for the editing-started signal.
667 Slots:
668 @itemize
669 @item @anchor{slot.cell-renderer-combo.has-entry}has-entry. Type: @code{boolean}. Accessor: @anchor{fn.cell-renderer-combo-has-entry}@code{cell-renderer-combo-has-entry}.
671 If TRUE, the cell renderer will include an entry and allow to enter values other than the ones in the popup list.
673 Default value: TRUE
674 @item @anchor{slot.cell-renderer-combo.model}model. Type: @ref{tree-model}. Accessor: @anchor{fn.cell-renderer-combo-model}@code{cell-renderer-combo-model}.
676 Holds a tree model containing the possible values for the combo box. Use the @SlotRef{cell-renderer-combo,text-column} to specify the column holding the values.
677 @item @anchor{slot.cell-renderer-combo.text-column}text-column. Type: @code{integer}. Accessor: @anchor{fn.cell-renderer-combo-text-column}@code{cell-renderer-combo-text-column}.
679 Specifies the model column which holds the possible values for the combo box.
681 Note that this refers to the model specified in the model property, not the model backing the tree view to which this cell renderer is attached.
683 @ref{cell-renderer-combo} automatically adds a text cell renderer for this column to its combo box.
685 Default value: -1
686 @end itemize
689 Signals:
690 @itemize
691 @item @anchor{signal.cell-renderer-combo.changed}"changed". Signature: (instance @ref{cell-renderer-combo}), (path @code{string}), (iter @ref{tree-iter}) @result{} void. Options: run-last.
693 This signal is emitted each time after the user selected an item in the combo box, either by using the mouse or the arrow keys. Contrary to @ref{combo-box}, @code{changed} is not emitted for changes made to a selected item in the entry. The argument @var{iter} corresponds to the newly selected item in the combo box and it is relative to the @ref{tree-model} set via the model property on @ref{cell-renderer-combo}.
695 Note that as soon as you change the model displayed in the tree view, the tree view will immediately cease the editing operating. This means that you most probably want to refrain from changing the model until the combo cell renderer emits the @SignalRef{cell-renderer-text,edited} or @SignalRef{cell-renderer,editing-canceled} signal.
696 @end itemize
701 @node cell-renderer-pixbuf
702 @section cell-renderer-pixbuf
703 @Class cell-renderer-pixbuf
704 Superclass: @ref{cell-renderer}
706 A @ref{cell-renderer-pixbuf} can be used to render an image in a cell. It allows to render either a given @ref{pixbuf} (set via the @SlotRef{cell-renderer-pixbuf,pixbuf} property) or a stock icon (set via the @SlotRef{cell-renderer-pixbuf,stock-id} property).
708 To support the tree view, @ref{cell-renderer-pixbuf} also supports rendering two alternative pixbufs, when the @SlotRef{cell-renderer,is-expander} property is TRUE. If the @SlotRef{cell-renderer,is-expanded} property is TRUE and the @SlotRef{cell-renderer-pixbuf,pixbuf-expander-open} property is set to a @ref{pixbuf}, it renders that @ref{pixbuf}, if the @SlotRef{cell-renderer,is-expanded} property is FALSE and the @SlotRef{cell-renderer-pixbuf,pixbuf-expander-closed} property is set to a @ref{pixbuf}, it renders that one.
710 Slots:
711 @itemize
712 @item @anchor{slot.cell-renderer-pixbuf.follow-state}follow-state. Type: @code{boolean}. Accessor: @anchor{fn.cell-renderer-pixbuf-follow-state}@code{cell-renderer-pixbuf-follow-state}.
714 Specifies whether the rendered pixbuf should be colorized according to the @ref{cell-renderer-state}.
716 Default value: FALSE
717 @item @anchor{slot.cell-renderer-pixbuf.gicon}gicon. Type: @code{GIcon}. Accessor: @anchor{fn.cell-renderer-pixbuf-gicon}@code{cell-renderer-pixbuf-gicon}.
719 The GIcon representing the icon to display. If the icon theme is changed, the image will be updated automatically.
720 @item @anchor{slot.cell-renderer-pixbuf.icon-name}icon-name. Type: @code{string}. Accessor: @anchor{fn.cell-renderer-pixbuf-icon-name}@code{cell-renderer-pixbuf-icon-name}.
722 The name of the themed icon to display. This property only has an effect if not overridden by @SlotRef{cell-renderer-pixbuf,stock-id} or @SlotRef{cell-renderer-pixbuf,pixbuf} properties.
724 Default value: NIL
725 @item @anchor{slot.cell-renderer-pixbuf.pixbuf}pixbuf. Type: @ref{pixbuf}. Accessor: @anchor{fn.cell-renderer-pixbuf-pixbuf}@code{cell-renderer-pixbuf-pixbuf}.
727 The pixbuf to render.
728 @item @anchor{slot.cell-renderer-pixbuf.pixbuf-expander-closed}pixbuf-expander-closed. Type: @ref{pixbuf}. Accessor: @anchor{fn.cell-renderer-pixbuf-pixbuf-expander-closed}@code{cell-renderer-pixbuf-pixbuf-expander-closed}.
730 Pixbuf for closed expander.
731 @item @anchor{slot.cell-renderer-pixbuf.pixbuf-expander-open}pixbuf-expander-open. Type: @ref{pixbuf}. Accessor: @anchor{fn.cell-renderer-pixbuf-pixbuf-expander-open}@code{cell-renderer-pixbuf-pixbuf-expander-open}.
733 Pixbuf for open expander.
734 @item @anchor{slot.cell-renderer-pixbuf.stock-detail}stock-detail. Type: @code{string}. Accessor: @anchor{fn.cell-renderer-pixbuf-stock-detail}@code{cell-renderer-pixbuf-stock-detail}.
736 Render detail to pass to the theme engine.
738 Default value: NIL
739 @item @anchor{slot.cell-renderer-pixbuf.stock-id}stock-id. Type: @code{string}. Accessor: @anchor{fn.cell-renderer-pixbuf-stock-id}@code{cell-renderer-pixbuf-stock-id}.
741 The stock ID of the stock icon to render.
743 Default value: NIL
744 @item @anchor{slot.cell-renderer-pixbuf.stock-size}stock-size. Type: @code{integer}. Accessor: @anchor{fn.cell-renderer-pixbuf-stock-size}@code{cell-renderer-pixbuf-stock-size}.
746 The @ref{icon-size} value that specifies the size of the rendered icon.
748 Default value: 1
749 @end itemize
752 Signals:
753 @itemize
754 @end itemize
759 @node cell-renderer-progress
760 @section cell-renderer-progress
761 @Class cell-renderer-progress
762 Superclass: @ref{cell-renderer}
764 @ref{cell-renderer-progress} renders a numeric value as a progress par in a cell. Additionally, it can display a text on top of the progress bar.
766 Slots:
767 @itemize
768 @item @anchor{slot.cell-renderer-progress.orientation}orientation. Type: @ref{progress-bar-orientation}. Accessor: @anchor{fn.cell-renderer-progress-orientation}@code{cell-renderer-progress-orientation}.
770 The "orientation" property controls the direction and growth direction of the progress bar
772 Default value: @code{:left-to-right}
773 @item @anchor{slot.cell-renderer-progress.pulse}pulse. Type: @code{integer}. Accessor: @anchor{fn.cell-renderer-progress-pulse}@code{cell-renderer-progress-pulse}.
775 Setting this to a non-negative value causes the cell renderer to enter "activity mode", where a block bounces back and forth to indicate that some progress is made, without specifying exactly how much.
777 Each increment of the property causes the block to move by a little bit.
779 To indicate that the activity has not started yet, set the property to zero. To indicate completion, set the property to @code{(expt 2 (1- (* 8 (cffi:foreign-type-size :int))))}.
781 Default value: -1
782 @item @anchor{slot.cell-renderer-progress.text}text. Type: @code{string}. Accessor: @anchor{fn.cell-renderer-progress-text}@code{cell-renderer-progress-text}.
784 Determines the label which will be drawn over the progress bar. Setting this property to NIL causes the default label to be displayed. Setting this property to an empty string causes no label to be displayed.
786 Default value: NIL
787 @item @anchor{slot.cell-renderer-progress.text-xalign}text-xalign. Type: @code{single-float}. Accessor: @anchor{fn.cell-renderer-progress-text-xalign}@code{cell-renderer-progress-text-xalign}.
789 Controls the horizontal alignment of the text in the progress bar. Valid values range from 0 (left) to 1 (right). Reserved for RTL layouts.
791 Allowed values: [0,1]
793 Default value: 0.5
794 @item @anchor{slot.cell-renderer-progress.text-yalign}text-yalign. Type: @code{single-float}. Accessor: @anchor{fn.cell-renderer-progress-text-yalign}@code{cell-renderer-progress-text-yalign}.
796 Controls the vertical alignment of the text in the progress bar. Valid values range from 0 (top) to 1 (bottom).
798 Allowed values: [0,1]
800 Default value: 0.5
801 @item @anchor{slot.cell-renderer-progress.value}value. Type: @code{integer}. Accessor: @anchor{fn.cell-renderer-progress-value}@code{cell-renderer-progress-value}.
803 The "value" property determines the percentage to which the progress bar will be "filled in".
805 Allowed values: [0,100]
807 Default value: 0
808 @end itemize
811 Signals:
812 @itemize
813 @end itemize
818 @node cell-renderer-spin
819 @section cell-renderer-spin
820 @Class cell-renderer-spin
821 Superclass: @ref{cell-renderer-text}
823 @ref{cell-renderer-spin} renders text in a cell like @ref{cell-renderer-text} from which it is derived. But while @ref{cell-renderer-text} offers a simple entry to edit the text, @ref{cell-renderer-spin} offers a @ref{spin-button} widget. Of course, that means that the text has to be parseable as a floating point number.
825 The range of the @ref{spin-button} is taken from the @SlotRef{cell-renderer-spin,adjustment} property of the cell renderer, which can be set explicitly or mapped to a column in the tree model, like all properties of cell renders. @ref{cell-renderer-spin} also has properties for the climb rate and the number of digits to display. Other @ref{spin-button} properties can be set in a handler for the @SignalRef{cell-renderer,editing-started} signal.
827 Slots:
828 @itemize
829 @item @anchor{slot.cell-renderer-spin.adjustment}adjustment. Type: @ref{adjustment}. Accessor: @anchor{fn.cell-renderer-spin-adjustment}@code{cell-renderer-spin-adjustment}.
831 The adjustment that holds the value of the spinbutton. This must be non-NIL for the cell renderer to be editable.
832 @item @anchor{slot.cell-renderer-spin.climb-rate}climb-rate. Type: @code{double-float}. Accessor: @anchor{fn.cell-renderer-spin-climb-rate}@code{cell-renderer-spin-climb-rate}.
834 The acceleration rate when you hold down a button.
836 Allowed values: >= 0
838 Default value: 0
839 @item @anchor{slot.cell-renderer-spin.digits}digits. Type: @code{integer}. Accessor: @anchor{fn.cell-renderer-spin-digits}@code{cell-renderer-spin-digits}.
841 The number of decimal places to display.
843 Allowed values: <= 20
845 Default value: 0
846 @end itemize
849 Signals:
850 @itemize
851 @end itemize
856 @node cell-renderer-text
857 @section cell-renderer-text
858 @Class cell-renderer-text
859 Superclass: @ref{cell-renderer}
861 Subclasses: @ref{cell-renderer-spin} @ref{cell-renderer-combo} @ref{cell-renderer-accel}
863 A @ref{cell-renderer-text} renders a given text in its cell, using the font, color and style information provided by its properties. The text will be ellipsized if it is too long and the @SlotRef{cell-renderer-text,ellipsize} property allows it.
865 Slots:
866 @itemize
867 @item @anchor{slot.cell-renderer-text.align-set}align-set. Type: @code{boolean}. Accessor: @anchor{fn.cell-renderer-text-align-set}@code{cell-renderer-text-align-set}.
869 Whether this tag affects the alignment mode.
871 Default value: FALSE
872 @item @anchor{slot.cell-renderer-text.alignment}alignment. Type: @code{PangoAlignment}. Accessor: @anchor{fn.cell-renderer-text-alignment}@code{cell-renderer-text-alignment}.
874 Specifies how to align the lines of text with respect to each other.
876 Note that this property describes how to align the lines of text in case there are several of them. The "xalign" property of @ref{cell-renderer}, on the other hand, sets the horizontal alignment of the whole text.
878 Default value: PANGO_ALIGN_LEFT
879 @item @anchor{slot.cell-renderer-text.attributes}attributes. Type: @code{PangoAttrList}. Accessor: @anchor{fn.cell-renderer-text-attributes}@code{cell-renderer-text-attributes}.
881 A list of style attributes to apply to the text of the renderer.
882 @item @anchor{slot.cell-renderer-text.background}background. Type: @code{string}. Accessor: @anchor{fn.cell-renderer-text-background}@code{cell-renderer-text-background}. Write-only.
884 Background color as a string.
886 Default value: NIL
887 @item @anchor{slot.cell-renderer-text.background-gdk}background-gdk. Type: @ref{color}. Accessor: @anchor{fn.cell-renderer-text-background-gdk}@code{cell-renderer-text-background-gdk}.
889 Background color as a @ref{color}
890 @item @anchor{slot.cell-renderer-text.background-set}background-set. Type: @code{boolean}. Accessor: @anchor{fn.cell-renderer-text-background-set}@code{cell-renderer-text-background-set}.
892 Whether this tag affects the background color.
894 Default value: FALSE
895 @item @anchor{slot.cell-renderer-text.editable}editable. Type: @code{boolean}. Accessor: @anchor{fn.cell-renderer-text-editable}@code{cell-renderer-text-editable}.
897 Whether the text can be modified by the user.
899 Default value: FALSE
900 @item @anchor{slot.cell-renderer-text.editable-set}editable-set. Type: @code{boolean}. Accessor: @anchor{fn.cell-renderer-text-editable-set}@code{cell-renderer-text-editable-set}.
902 Whether this tag affects text editability.
904 Default value: FALSE
905 @item @anchor{slot.cell-renderer-text.ellipsize}ellipsize. Type: @code{PangoEllipsizeMode}. Accessor: @anchor{fn.cell-renderer-text-ellipsize}@code{cell-renderer-text-ellipsize}.
907 Specifies the preferred place to ellipsize the string, if the cell renderer does not have enough room to display the entire string. Setting it to PANGO_ELLIPSIZE_NONE turns off ellipsizing. See the wrap-width property for another way of making the text fit into a given width.
909 Default value: PANGO_ELLIPSIZE_NONE
910 @item @anchor{slot.cell-renderer-text.ellipsize-set}ellipsize-set. Type: @code{boolean}. Accessor: @anchor{fn.cell-renderer-text-ellipsize-set}@code{cell-renderer-text-ellipsize-set}.
912 Whether this tag affects the ellipsize mode.
914 Default value: FALSE
915 @item @anchor{slot.cell-renderer-text.family}family. Type: @code{string}. Accessor: @anchor{fn.cell-renderer-text-family}@code{cell-renderer-text-family}.
917 Name of the font family, e.g. Sans, Helvetica, Times, Monospace.
919 Default value: NIL
920 @item @anchor{slot.cell-renderer-text.family-set}family-set. Type: @code{boolean}. Accessor: @anchor{fn.cell-renderer-text-family-set}@code{cell-renderer-text-family-set}.
922 Whether this tag affects the font family.
924 Default value: FALSE
925 @item @anchor{slot.cell-renderer-text.font}font. Type: @code{string}. Accessor: @anchor{fn.cell-renderer-text-font}@code{cell-renderer-text-font}.
927 Font description as a string, e.g. "Sans Italic 12".
929 Default value: NULL
930 @item @anchor{slot.cell-renderer-text.font-desc}font-desc. Type: @code{PangoFontDescription}. Accessor: @anchor{fn.cell-renderer-text-font-desc}@code{cell-renderer-text-font-desc}.
932 Font description as a PangoFontDescription struct.
933 @item @anchor{slot.cell-renderer-text.foreground}foreground. Type: @code{string}. Accessor: @anchor{fn.cell-renderer-text-foreground}@code{cell-renderer-text-foreground}. Write-only.
935 Foreground color as a string.
937 Default value: NULL
938 @item @anchor{slot.cell-renderer-text.foreground-gdk}foreground-gdk. Type: @ref{color}. Accessor: @anchor{fn.cell-renderer-text-foreground-gdk}@code{cell-renderer-text-foreground-gdk}.
940 Foreground color as a @ref{color}.
941 @item @anchor{slot.cell-renderer-text.foreground-set}foreground-set. Type: @code{boolean}. Accessor: @anchor{fn.cell-renderer-text-foreground-set}@code{cell-renderer-text-foreground-set}.
943 Whether this tag affects the foreground color.
945 Default value: FALSE
946 @item @anchor{slot.cell-renderer-text.language}language. Type: @code{string}. Accessor: @anchor{fn.cell-renderer-text-language}@code{cell-renderer-text-language}.
948 The language this text is in, as an ISO code. Pango can use this as a hint when rendering the text. If you don't understand this parameter, you probably don't need it.
950 Default value: NULL
951 @item @anchor{slot.cell-renderer-text.language-set}language-set. Type: @code{boolean}. Accessor: @anchor{fn.cell-renderer-text-language-set}@code{cell-renderer-text-language-set}.
953 Whether this tag affects the language the text is rendered as.
955 Default value: FALSE
956 @item @anchor{slot.cell-renderer-text.markup}markup. Type: @code{string}. Accessor: @anchor{fn.cell-renderer-text-markup}@code{cell-renderer-text-markup}. Write-only.
958 Marked up text to render.
960 Default value: NULL
961 @item @anchor{slot.cell-renderer-text.rise}rise. Type: @code{integer}. Accessor: @anchor{fn.cell-renderer-text-rise}@code{cell-renderer-text-rise}.
963 Offset of text above the baseline (below the baseline if rise is negative).
965 Allowed values: >= -2147483647
967 Default value: 0
968 @item @anchor{slot.cell-renderer-text.rise-set}rise-set. Type: @code{boolean}. Accessor: @anchor{fn.cell-renderer-text-rise-set}@code{cell-renderer-text-rise-set}.
970 Whether this tag affects the rise.
972 Default value: FALSE
973 @item @anchor{slot.cell-renderer-text.scale}scale. Type: @code{double-float}. Accessor: @anchor{fn.cell-renderer-text-scale}@code{cell-renderer-text-scale}.
975 Font scaling factor.
977 Allowed values: >= 0
979 Default value: 1
980 @item @anchor{slot.cell-renderer-text.scale-set}scale-set. Type: @code{boolean}. Accessor: @anchor{fn.cell-renderer-text-scale-set}@code{cell-renderer-text-scale-set}.
982 Whether this tag scales the font size by a factor.
984 Default value: FALSE
985 @item @anchor{slot.cell-renderer-text.single-paragraph-mode}single-paragraph-mode. Type: @code{boolean}. Accessor: @anchor{fn.cell-renderer-text-single-paragraph-mode}@code{cell-renderer-text-single-paragraph-mode}.
987 Whether or not to keep all text in a single paragraph.
989 Default value: FALSE
990 @item @anchor{slot.cell-renderer-text.size}size. Type: @code{integer}. Accessor: @anchor{fn.cell-renderer-text-size}@code{cell-renderer-text-size}.
992 Font size.
994 Allowed values: >= 0
996 Default value: 0
997 @item @anchor{slot.cell-renderer-text.size-points}size-points. Type: @code{double-float}. Accessor: @anchor{fn.cell-renderer-text-size-points}@code{cell-renderer-text-size-points}.
999 Font size in points.
1001 Allowed values: >= 0
1003 Default value: 0
1004 @item @anchor{slot.cell-renderer-text.size-set}size-set. Type: @code{boolean}. Accessor: @anchor{fn.cell-renderer-text-size-set}@code{cell-renderer-text-size-set}.
1006 Whether this tag affects the font size.
1008 Default value: FALSE
1009 @item @anchor{slot.cell-renderer-text.stretch}stretch. Type: @code{PangoStretch}. Accessor: @anchor{fn.cell-renderer-text-stretch}@code{cell-renderer-text-stretch}.
1011 Font stretch.
1013 Default value: PANGO_STRETCH_NORMAL
1014 @item @anchor{slot.cell-renderer-text.stretch-set}stretch-set. Type: @code{boolean}. Accessor: @anchor{fn.cell-renderer-text-stretch-set}@code{cell-renderer-text-stretch-set}.
1016 Whether this tag affects the font stretch.
1018 Default value: FALSE
1019 @item @anchor{slot.cell-renderer-text.strikethrough}strikethrough. Type: @code{boolean}. Accessor: @anchor{fn.cell-renderer-text-strikethrough}@code{cell-renderer-text-strikethrough}.
1021 Whether to strike through the text.
1023 Default value: FALSE
1024 @item @anchor{slot.cell-renderer-text.strikethrough-set}strikethrough-set. Type: @code{boolean}. Accessor: @anchor{fn.cell-renderer-text-strikethrough-set}@code{cell-renderer-text-strikethrough-set}.
1026 Whether this tag affects strikethrough.
1028 Default value: FALSE
1029 @item @anchor{slot.cell-renderer-text.style}style. Type: @code{PangoStyle}. Accessor: @anchor{fn.cell-renderer-text-style}@code{cell-renderer-text-style}.
1031 Font style.
1033 Default value: PANGO_STYLE_NORMAL
1034 @item @anchor{slot.cell-renderer-text.style-set}style-set. Type: @code{boolean}. Accessor: @anchor{fn.cell-renderer-text-style-set}@code{cell-renderer-text-style-set}.
1036 Whether this tag affects the font style.
1038 Default value: FALSE
1041 @item @anchor{slot.cell-renderer-text.text}text. Type: @code{string}. Accessor: @anchor{fn.cell-renderer-text-text}@code{cell-renderer-text-text}.
1043 Text to render.
1045 Default value: NIL
1046 @item @anchor{slot.cell-renderer-text.underline}underline. Type: @code{PangoUnderline}. Accessor: @anchor{fn.cell-renderer-text-underline}@code{cell-renderer-text-underline}.
1048 Style of underline for this text.
1050 Default value: PANGO_UNDERLINE_NONE
1051 @item @anchor{slot.cell-renderer-text.underline-set}underline-set. Type: @code{boolean}. Accessor: @anchor{fn.cell-renderer-text-underline-set}@code{cell-renderer-text-underline-set}.
1053 Whether this tag affects underlining.
1055 Default value: FALSE
1056 @item @anchor{slot.cell-renderer-text.variant}variant. Type: @code{PangoVariant}. Accessor: @anchor{fn.cell-renderer-text-variant}@code{cell-renderer-text-variant}.
1058 Font variant.
1060 Default value: PANGO_VARIANT_NORMAL
1061 @item @anchor{slot.cell-renderer-text.variant-set}variant-set. Type: @code{boolean}. Accessor: @anchor{fn.cell-renderer-text-variant-set}@code{cell-renderer-text-variant-set}.
1063 Whether this tag affects the font variant.
1065 Default value: FALSE
1066 @item @anchor{slot.cell-renderer-text.weight}weight. Type: @code{integer}. Accessor: @anchor{fn.cell-renderer-text-weight}@code{cell-renderer-text-weight}.
1068 Font weight.
1070 Allowed values: >= 0
1072 Default value: 400
1073 @item @anchor{slot.cell-renderer-text.weight-set}weight-set. Type: @code{boolean}. Accessor: @anchor{fn.cell-renderer-text-weight-set}@code{cell-renderer-text-weight-set}.
1075 Whether this tag affects the font weight.
1077 Default value: FALSE
1078 @item @anchor{slot.cell-renderer-text.width-chars}width-chars. Type: @code{integer}. Accessor: @anchor{fn.cell-renderer-text-width-chars}@code{cell-renderer-text-width-chars}.
1080 The desired width of the cell, in characters. If this property is set to -1, the width will be calculated automatically, otherwise the cell will request either 3 characters or the property value, whichever is greater.
1082 Default value: -1
1083 @item @anchor{slot.cell-renderer-text.wrap-mode}wrap-mode. Type: @code{PangoWrapMode}. Accessor: @anchor{fn.cell-renderer-text-wrap-mode}@code{cell-renderer-text-wrap-mode}.
1085 Specifies how to break the string into multiple lines, if the cell renderer does not have enough room to display the entire string. This property has no effect unless the wrap-width property is set.
1087 Default value: PANGO_WRAP_CHAR
1088 @item @anchor{slot.cell-renderer-text.wrap-width}wrap-width. Type: @code{integer}. Accessor: @anchor{fn.cell-renderer-text-wrap-width}@code{cell-renderer-text-wrap-width}.
1090 Specifies the width at which the text is wrapped. The wrap-mode property can be used to influence at what character positions the line breaks can be placed. Setting wrap-width to -1 turns wrapping off.
1092 Default value: -1
1093 @end itemize
1096 Signals:
1097 @itemize
1098 @item @anchor{signal.cell-renderer-text.edited}"edited". Signature: (instance @ref{cell-renderer-text}), (path @code{string}), (new-text @code{string}) @result{} void. Options: run-last.
1100 This signal is emitted after renderer has been edited.
1102 It is the responsibility of the application to update the model and store @var{new-text} at the position indicated by @var{path}.
1103 @end itemize
1108 @node cell-renderer-toggle
1109 @section cell-renderer-toggle
1110 @Class cell-renderer-toggle
1111 Superclass: @ref{cell-renderer}
1113 @ref{cell-renderer-toggle} renders a toggle button in a cell. The button is drawn as a radio- or checkbutton, depending on the @SlotRef{cell-renderer-toggle,radio} property. When activated, it emits the @SignalRef{cell-renderer-toggle,toggled} signal.
1115 Slots:
1116 @itemize
1117 @item @anchor{slot.cell-renderer-toggle.activatable}activatable. Type: @code{boolean}. Accessor: @anchor{fn.cell-renderer-toggle-activatable}@code{cell-renderer-toggle-activatable}.
1119 The toggle button can be activated.
1121 Default value: TRUE
1122 @item @anchor{slot.cell-renderer-toggle.active}active. Type: @code{boolean}. Accessor: @anchor{fn.cell-renderer-toggle-active}@code{cell-renderer-toggle-active}.
1124 The toggle state of the button.
1126 Default value: FALSE
1127 @item @anchor{slot.cell-renderer-toggle.inconsistent}inconsistent. Type: @code{boolean}. Accessor: @anchor{fn.cell-renderer-toggle-inconsistent}@code{cell-renderer-toggle-inconsistent}.
1129 The inconsistent state of the button.
1131 Default value: FALSE
1132 @item @anchor{slot.cell-renderer-toggle.indicator-size}indicator-size. Type: @code{integer}. Accessor: @anchor{fn.cell-renderer-toggle-indicator-size}@code{cell-renderer-toggle-indicator-size}.
1134 Size of check or radio indicator.
1136 Allowed values: >= 0
1138 Default value: 13
1139 @item @anchor{slot.cell-renderer-toggle.radio}radio. Type: @code{boolean}. Accessor: @anchor{fn.cell-renderer-toggle-radio}@code{cell-renderer-toggle-radio}.
1141 Draw the toggle button as a radio button.
1143 Default value: FALSE
1144 @end itemize
1147 Signals:
1148 @itemize
1149 @item @anchor{signal.cell-renderer-toggle.toggled}"toggled". Signature: (instance @ref{cell-renderer-toggle}), (path @code{string}) @result{} void. Options: run-last.
1151 The signal is emitted when the cell of the row identified by @var{path} is toggled.
1152 @end itemize
1157 @node clipboard
1158 @section clipboard
1159 @Class clipboard
1160 Superclass: @ref{g-object}
1162 The @ref{clipboard} object represents a clipboard of data shared between different processes or between different widgets in the same process. Each clipboard is identified by a name encoded as a GdkAtom. (Conversion to and from strings can be done with gdk_atom_intern() and gdk_atom_name().) The default clipboard corresponds to the "CLIPBOARD" atom; another commonly used clipboard is the "PRIMARY" clipboard, which, in X, traditionally contains the currently selected text.
1164 To support having a number of different formats on the clipboard at the same time, the clipboard mechanism allows providing callbacks instead of the actual data. When you set the contents of the clipboard, you can either supply the data directly (via functions like gtk_clipboard_set_text()), or you can supply a callback to be called at a later time when the data is needed (via gtk_clipboard_set_with_data() or gtk_clipboard_set_with_owner().) Providing a callback also avoids having to make copies of the data when it is not needed.
1166 gtk_clipboard_set_with_data() and gtk_clipboard_set_with_owner() are quite similar; the choice between the two depends mostly on which is more convenient in a particular situation. The former is most useful when you want to have a blob of data with callbacks to convert it into the various data types that you advertise. When the clear_func you provided is called, you simply free the data blob. The latter is more useful when the contents of clipboard reflect the internal state of a GObject (As an example, for the PRIMARY clipboard, when an entry widget provides the clipboard's contents the contents are simply the text within the selected region.) If the contents change, the entry widget can call gtk_clipboard_set_with_owner() to update the timestamp for clipboard ownership, without having to worry about clear_func being called.
1168 Requesting the data from the clipboard is essentially asynchronous. If the contents of the clipboard are provided within the same process, then a direct function call will be made to retrieve the data, but if they are provided by another process, then the data needs to be retrieved from the other process, which may take some time. To avoid blocking the user interface, the call to request the selection, gtk_clipboard_request_contents() takes a callback that will be called when the contents are received (or when the request fails.) If you don't want to deal with providing a separate callback, you can also use gtk_clipboard_wait_for_contents(). What this does is run the GLib main loop recursively waiting for the contents. This can simplify the code flow, but you still have to be aware that other callbacks in your program can be called while this recursive mainloop is running.
1170 Along with the functions to get the clipboard contents as an arbitrary data chunk, there are also functions to retrieve it as text, gtk_clipboard_request_text() and gtk_clipboard_wait_for_text(). These functions take care of determining which formats are advertised by the clipboard provider, asking for the clipboard in the best available format and converting the results into the UTF-8 encoding. (The standard form for representing strings in GTK+.)
1172 Slots:
1173 @itemize
1174 @end itemize
1177 Signals:
1178 @itemize
1179 @item @anchor{signal.clipboard.owner-change}"owner-change". Signature: (instance @ref{clipboard}), (event @ref{event-owner-change}) @result{} void. Options: run-first.
1181 This signal is emitted when GTK+ receives an event that indicates that the ownership of the selection associated with clipboard has changed.
1182 @end itemize
1187 @node entry-completion
1188 @section entry-completion
1189 @Class entry-completion
1190 Superclass: @ref{g-object} @ref{buildable} @ref{cell-layout}
1192 @ref{entry-completion} is an auxiliary object to be used in conjunction with @ref{entry} to provide the completion functionality. It implements the @ref{cell-layout} interface, to allow the user to add extra cells to the @ref{tree-view} with completion matches.
1194 "Completion functionality" means that when the user modifies the text in the entry, @ref{entry-completion} checks which rows in the model match the current content of the entry, and displays a list of matches. By default, the matching is done by comparing the entry text case-insensitively against the text column of the model (see @SlotRef{entry-completion,text-column}), but this can be overridden with a custom match function (see @SlotRef{entry-completion,match-function}).
1196 When the user selects a completion, the content of the entry is updated. By default, the content of the entry is replaced by the text column of the model, but this can be overridden by connecting to the @SignalRef{entry-completion,match-selected} signal and updating the entry in the signal handler. Note that you should return TRUE from the signal handler to suppress the default behaviour.
1198 To add completion functionality to an entry, use gtk_entry_set_completion().
1200 In addition to regular completion matches, which will be inserted into the entry when they are selected, GtkEntryCompletion also allows to display "actions" in the popup window. Their appearance is similar to menuitems, to differentiate them clearly from completion strings. When an action is selected, the @SignalRef{entry-completion,action-activated} signal is emitted.
1202 Slots:
1203 @itemize
1204 @item @anchor{slot.entry-completion.entry}entry. Type: @ref{entry}. Accessor: @anchor{fn.entry-completion-entry}@code{entry-completion-entry}. Read-only.
1206 The entry completion has been attached to.
1207 @item @anchor{slot.entry-completion.inline-completion}inline-completion. Type: @code{boolean}. Accessor: @anchor{fn.entry-completion-inline-completion}@code{entry-completion-inline-completion}.
1209 Determines whether the common prefix of the possible completions should be inserted automatically in the entry. Note that this requires text-column to be set, even if you are using a custom match function.
1211 Default value: FALSE
1212 @item @anchor{slot.entry-completion.inline-selection}inline-selection. Type: @code{boolean}. Accessor: @anchor{fn.entry-completion-inline-selection}@code{entry-completion-inline-selection}.
1214 Determines whether the possible completions on the popup will appear in the entry as you navigate through them.
1216 Default value: FALSE
1217 @item @anchor{slot.entry-completion.match-function}match-function. Type: function. Accessor: @anchor{fn.entry-completion-match-function}@code{entry-completion-match-function}. Write-only.
1219 Sets the match function for completion. The match function is used to determine if a row should or should not be in the completion list.
1221 The match function has the following signature: (completion @ref{entry-completion}), (key @code{string}), (tree-iter @ref{tree-iter}) @result should-be-displayed-p. This function which decides whether the row indicated by @var{tree-iter} matches a given @var{key}, and should be displayed as a possible completion for @var{key}. Note that key is normalized and case-folded (see g_utf8_normalize() and g_utf8_casefold()). If this is not appropriate, match functions have access to the unmodified key via @SlotRef{entry,text} of @SlotRef{entry-completion,entry}.
1222 @item @anchor{slot.entry-completion.minimum-key-length}minimum-key-length. Type: @code{integer}. Accessor: @anchor{fn.entry-completion-minimum-key-length}@code{entry-completion-minimum-key-length}.
1224 Minimum length of the search key in order to look up matches.
1226 Allowed values: >= 0
1228 Default value: 1
1229 @item @anchor{slot.entry-completion.model}model. Type: @ref{tree-model}. Accessor: @anchor{fn.entry-completion-model}@code{entry-completion-model}.
1231 The model to find matches in.
1232 @item @anchor{slot.entry-completion.popup-completion}popup-completion. Type: @code{boolean}. Accessor: @anchor{fn.entry-completion-popup-completion}@code{entry-completion-popup-completion}.
1234 Determines whether the possible completions should be shown in a popup window.
1236 Default value: TRUE
1237 @item @anchor{slot.entry-completion.popup-set-width}popup-set-width. Type: @code{boolean}. Accessor: @anchor{fn.entry-completion-popup-set-width}@code{entry-completion-popup-set-width}.
1239 Determines whether the completions popup window will be resized to the width of the entry.
1241 Default value: TRUE
1242 @item @anchor{slot.entry-completion.popup-single-match}popup-single-match. Type: @code{boolean}. Accessor: @anchor{fn.entry-completion-popup-single-match}@code{entry-completion-popup-single-match}.
1244 Determines whether the completions popup window will shown for a single possible completion. You probably want to set this to FALSE if you are using inline completion.
1246 Default value: TRUE
1247 @item @anchor{slot.entry-completion.text-column}text-column. Type: @code{integer}. Accessor: @anchor{fn.entry-completion-text-column}@code{entry-completion-text-column}.
1249 The column of the model containing the strings.
1251 Default value: -1
1252 @end itemize
1255 Signals:
1256 @itemize
1257 @item @anchor{signal.entry-completion.action-activated}"action-activated". Signature: (instance @ref{entry-completion}), (index @code{integer}) @result{} void. Options: run-last.
1259 Gets emitted when an action is activated. @var{index} is the index of activated action.
1260 @item @anchor{signal.entry-completion.cursor-on-match}"cursor-on-match". Signature: (instance @ref{entry-completion}), (model @ref{tree-model}), (iter @ref{tree-iter}) @result{} @code{boolean}. Options: run-last.
1262 Gets emitted when a match from the cursor is on a match of the list.The default behaviour is to replace the contents of the entry with the contents of the text column in the row pointed to by iter.
1263 @item @anchor{signal.entry-completion.insert-prefix}"insert-prefix". Signature: (instance @ref{entry-completion}), (prefix @code{string}) @result{} @code{boolean}. Options: run-last.
1265 Gets emitted when the inline autocompletion is triggered. The default behaviour is to make the entry display the whole prefix and select the newly inserted part.
1267 Applications may connect to this signal in order to insert only a smaller part of the prefix into the entry - e.g. the entry used in the @ref{file-chooser} inserts only the part of the prefix up to the next '/'.
1268 @item @anchor{signal.entry-completion.match-selected}"match-selected". Signature: (instance @ref{entry-completion}), (model @ref{tree-model}), (iter @ref{tree-iter}) @result{} @code{boolean}. Options: run-last.
1270 Gets emitted when a match from the list is selected. The default behaviour is to replace the contents of the entry with the contents of the text column in the row pointed to by iter.
1271 @end itemize
1273 @RMethod entry-completion-complete
1274 @lisp
1275 (entry-completion-complete completion)
1276 @end lisp
1278 Requests a completion operation, or in other words a refiltering of the current list with completions, using the current key. The completion list view will be updated accordingly.
1280 @RMethod entry-completion-completion-prefix
1281 @lisp
1282 (entry-completion-completion-prefix completion) @result{} string
1283 @end lisp
1285 Get the original text entered by the user that triggered the completion or NULL if there's no completion ongoing.
1287 @RMethod entry-completion-insert-prefix
1288 @lisp
1289 (entry-completion-insert-prefix completion)
1290 @end lisp
1292 Requests a prefix insertion.
1294 @RMethod entry-completion-insert-action-text
1295 @lisp
1296 (entry-completion-insert-action-text completion index text)
1297 @end lisp
1299 Inserts an action in completion's action item list at position @var{index} with text @var{text}. If you want the action item to have markup, use @ref{entry-completion-insert-action-markup}.
1301 @RMethod entry-completion-insert-action-markup
1302 @lisp
1303 (entry-completion-insert-action-markup completion index markup)
1304 @end lisp
1306 Inserts an action in completion's action item list at position @var{index} with markup @var{markup}.
1308 @RMethod entry-completion-delete-action
1309 @lisp
1310 (entry-completion-delete-action completion index)
1311 @end lisp
1313 Deletes the action at @var{index} from completion's action list.
1316 @node file-filter
1317 @section file-filter
1318 @Class file-filter
1319 Superclass: @ref{gtk-object}
1321 A @ref{file-filter} can be used to restrict the files being shown in a @ref{file-chooser}. Files can be filtered based on their name (with gtk_file_filter_add_pattern()), on their mime type (with gtk_file_filter_add_mime_type()), or by a custom filter function (with gtk_file_filter_add_custom()).
1323 Filtering by mime types handles aliasing and subclassing of mime types; e.g. a filter for text/plain also matches a file with mime type application/rtf, since application/rtf is a subclass of text/plain. Note that GtkFileFilter allows wildcards for the subtype of a mime type, so you can e.g. filter for image/*.
1325 Normally, filters are used by adding them to a GtkFileChooser, see gtk_file_chooser_add_filter(), but it is also possible to manually use a filter on a file with gtk_file_filter_filter().
1326 Slots:
1327 @itemize
1328 @item @anchor{slot.file-filter.name}name. Type: @code{string}. Accessor: @anchor{fn.file-filter-name}@code{file-filter-name}.
1329 @end itemize
1332 Signals:
1333 @itemize
1334 @end itemize
1339 @node gtk-object
1340 @section gtk-object
1341 @Class gtk-object
1342 Superclass: @ref{g-initially-unowned}
1344 Subclasses: @ref{recent-filter} @ref{file-filter} @ref{cell-renderer} @ref{tree-view-column} @ref{adjustment} @ref{widget}
1346 @ref{gtk-object} is the base class for all widgets, and for a few non-widget objects such as @ref{adjustment}. @ref{gtk-object} predates @ref{g-object}; non-widgets that derive from @ref{gtk-object} rather than @ref{g-object} do so for backward compatibility reasons.
1348 The @SignalRef{gtk-object,destroy} signal asks all code owning a reference to an object to release said reference. So, for example, if you call gtk_object_destroy() on a @ref{gtk-window}, GTK+ will release the reference count that it owns; if you call gtk_object_destroy() on a @ref{button}, then the button will be removed from its parent container and the parent container will release its reference to the button. Because these references are released, calling gtk_object_destroy() should result in freeing all memory associated with an object, unless some buggy code fails to release its references in response to the "destroy" signal.
1350 Slots:
1351 @itemize
1352 @item @anchor{slot.gtk-object.user-data}user-data. Type: gpointer. Accessor: @anchor{fn.gtk-object-user-data}@code{gtk-object-user-data}.
1354 Anonymous User Data Pointer.
1355 @end itemize
1358 Signals:
1359 @itemize
1360 @item @anchor{signal.gtk-object.destroy}"destroy". Signature: (instance @ref{gtk-object}) @result{} void. Options: run-cleanup, no-recurse, no-hooks.
1362 Signals that all holders of a reference to the @ref{gtk-object} should release the reference that they hold. May result in finalization of the object if all references are released.
1363 @end itemize
1368 @node i-m-context
1369 @section i-m-context
1370 @Class i-m-context
1371 Superclass: @ref{g-object}
1374 @ref{i-m-context} defines the interface for GTK+ input methods. An input method is used by GTK+ text input widgets like @ref{entry} to map from key events to Unicode character strings.
1376 The user may change the current input method via a context menu, unless the @SlotRef{settings,gtk-show-input-method-menu} property is set to FALSE. The default input method can be set programmatically via the @SlotRef{settings,gtk-im-module} property. Alternatively, you may set the GTK_IM_MODULE environment variable as documented in gtk-running.
1378 The @SlotRef{entry,im-module} and @SlotRef{text-view,im-module} properties may also be used to set input methods for specific widget instances. For instance, a certain entry widget might be expected to contain certain characters which would be easier to input with a certain input method.
1380 An input method may consume multiple key events in sequence and finally output the composed result. This is called preediting, and an input method may provide feedback about this process by displaying the intermediate composition states as preedit text. For instance, the default GTK+ input method implements the input of arbitrary Unicode code points by holding down the Control and Shift keys and then typing "U" followed by the hexadecimal digits of the code point. When releasing the Control and Shift keys, preediting ends and the character is inserted as text. Ctrl+Shift+u20AC for example results in the â‚¬ sign.
1382 Slots:
1383 @itemize
1384 @end itemize
1387 Signals:
1388 @itemize
1389 @item @anchor{signal.i-m-context.commit}"commit". Signature: (instance @ref{i-m-context}), (str @code{string}) @result{} void. Options: run-last.
1391 The signal is emitted when a complete input sequence has been entered by the user. This can be a single character immediately after a key press or the final result of preediting.
1392 @item @anchor{signal.i-m-context.delete-surrounding}"delete-surrounding". Signature: (instance @ref{i-m-context}), (offset @code{integer}), (n-chars @code{integer}) @result{} @code{boolean}. Options: run-last.
1394 The signal is emitted when the input method needs to delete all or part of the context surrounding the cursor.
1395 @table @var
1396 @item @var{offset}
1397 the character offset from the cursor position of the text to be deleted. A negative value indicates a position before the cursor.
1398 @item @var{n-chars}
1399 the number of characters to be deleted
1400 @end table
1401 @item @anchor{signal.i-m-context.preedit-changed}"preedit-changed". Signature: (instance @ref{i-m-context}) @result{} void. Options: run-last.
1403 The signal is emitted whenever the preedit sequence currently being entered has changed. It is also emitted at the end of a preedit sequence, in which case gtk_im_context_get_preedit_string() returns the empty string.
1404 @item @anchor{signal.i-m-context.preedit-end}"preedit-end". Signature: (instance @ref{i-m-context}) @result{} void. Options: run-last.
1406 The signal is emitted when a preediting sequence has been completed or canceled.
1407 @item @anchor{signal.i-m-context.preedit-start}"preedit-start". Signature: (instance @ref{i-m-context}) @result{} void. Options: run-last.
1409 The signal is emitted when a new preediting sequence starts.
1410 @item @anchor{signal.i-m-context.retrieve-surrounding}"retrieve-surrounding". Signature: (instance @ref{i-m-context}) @result{} @code{boolean}. Options: run-last.
1412 The signal is emitted when the input method requires the context surrounding the cursor. The callback should set the input method surrounding context by calling the gtk_im_context_set_surrounding() method.
1413 @end itemize
1418 @node icon-factory
1419 @section icon-factory
1420 @Class icon-factory
1421 Superclass: @ref{g-object}
1423 An icon factory manages a collection of GtkIconSet; a GtkIconSet manages a set of variants of a particular icon (i.e. a GtkIconSet contains variants for different sizes and widget states). Icons in an icon factory are named by a stock ID, which is a simple string identifying the icon. Each @ref{style} has a list of @ref{icon-factory} derived from the current theme; those icon factories are consulted first when searching for an icon. If the theme doesn't set a particular icon, GTK+ looks for the icon in a list of default icon factories, maintained by gtk_icon_factory_add_default() and gtk_icon_factory_remove_default(). Applications with icons should add a default icon factory with their icons, which will allow themes to override the icons for the application.
1425 To display an icon, always use gtk_style_lookup_icon_set() on the widget that will display the icon, or the convenience function gtk_widget_render_icon(). These functions take the theme into account when looking up the icon to use for a given stock ID.
1427 Slots:
1428 @itemize
1429 @end itemize
1432 Signals:
1433 @itemize
1434 @end itemize
1439 @node icon-theme
1440 @section icon-theme
1441 @Class icon-theme
1442 Superclass: @ref{g-object}
1446 @ref{icon-theme} provides a facility for looking up icons by name and size. The main reason for using a name rather than simply providing a filename is to allow different icons to be used depending on what icon theme is selecetd by the user. The operation of icon themes on Linux and Unix follows the Icon Theme Specification. There is a default icon theme, named hicolor where applications should install their icons, but more additional application themes can be installed as operating system vendors and users choose.
1448 Named icons are similar to the Themeable Stock Images(3) facility, and the distinction between the two may be a bit confusing. A few things to keep in mind:
1450 Stock images usually are used in conjunction with Stock Items(3)., such as GTK_STOCK_OK or GTK_STOCK_OPEN. Named icons are easier to set up and therefore are more useful for new icons that an application wants to add, such as application icons or window icons.
1452 Stock images can only be loaded at the symbolic sizes defined by the GtkIconSize enumeration, or by custom sizes defined by gtk_icon_size_register(), while named icons are more flexible and any pixel size can be specified.
1454 Because stock images are closely tied to stock items, and thus to actions in the user interface, stock images may come in multiple variants for different widget states or writing directions.
1456 A good rule of thumb is that if there is a stock image for what you want to use, use it, otherwise use a named icon. It turns out that internally stock images are generally defined in terms of one or more named icons. (An example of the more than one case is icons that depend on writing direction; GTK_STOCK_GO_FORWARD uses the two themed icons "gtk-stock-go-forward-ltr" and "gtk-stock-go-forward-rtl".)
1458 In many cases, named themes are used indirectly, via GtkImage or stock items, rather than directly, but looking up icons directly is also simple. The GtkIconTheme object acts as a database of all the icons in the current theme. You can create new GtkIconTheme objects, but its much more efficient to use the standard icon theme for the GdkScreen so that the icon information is shared with other people looking up icons.
1460 Slots:
1461 @itemize
1462 @end itemize
1465 Signals:
1466 @itemize
1467 @item @anchor{signal.icon-theme.changed}"changed". Signature: (instance @ref{icon-theme}) @result{} void. Options: run-last.
1468 @end itemize
1473 @node list-store
1474 @section list-store
1475 @Class list-store
1476 Superclass: @ref{g-object}
1478 Note: see also @ref{array-list-store}
1480 The @ref{list-store} object is a list model for use with a @ref{tree-view} widget. It implements the @ref{tree-model} interface, and consequentialy, can use all of the methods available there. It also implements the @ref{tree-sortable} interface so it can be sorted by the view. Finally, it also implements the tree drag and drop interfaces.
1482 The @ref{list-store} can accept most GObject types as a column type, though it can't accept all custom types. Internally, it will keep a copy of data passed in (such as a string or a boxed pointer). Columns that accept GObjects are handled a little differently. The @ref{list-store} will keep a reference to the object instead of copying the value. As a result, if the object is modified, it is up to the application writer to call gtk_tree_model_row_changed to emit the "row_changed" signal. This most commonly affects lists with @ref{pixbuf}s stored.
1484 Slots:
1485 @itemize
1486 @end itemize
1489 Signals:
1490 @itemize
1491 @end itemize
1496 @node page-setup
1497 @section page-setup
1498 @Class page-setup
1499 Superclass: @ref{g-object}
1503 Slots:
1504 @itemize
1505 @end itemize
1508 Signals:
1509 @itemize
1510 @end itemize
1513 @node print-context
1514 @section print-context
1515 @Class print-context
1516 Superclass: @ref{g-object}
1518 Slots:
1519 @itemize
1520 @end itemize
1523 Signals:
1524 @itemize
1525 @end itemize
1530 @node print-operation
1531 @section print-operation
1532 @Class print-operation
1533 Superclass: @ref{g-object}
1535 Slots:
1536 @itemize
1537 @item @anchor{slot.print-operation.allow-async}allow-async. Type: @code{boolean}. Accessor: @anchor{fn.print-operation-allow-async}@code{print-operation-allow-async}.
1538 @item @anchor{slot.print-operation.current-page}current-page. Type: @code{integer}. Accessor: @anchor{fn.print-operation-current-page}@code{print-operation-current-page}.
1539 @item @anchor{slot.print-operation.custom-tab-label}custom-tab-label. Type: @code{string}. Accessor: @anchor{fn.print-operation-custom-tab-label}@code{print-operation-custom-tab-label}.
1540 @item @anchor{slot.print-operation.default-page-setup}default-page-setup. Type: @ref{page-setup}. Accessor: @anchor{fn.print-operation-default-page-setup}@code{print-operation-default-page-setup}.
1541 @item @anchor{slot.print-operation.export-filename}export-filename. Type: @code{string}. Accessor: @anchor{fn.print-operation-export-filename}@code{print-operation-export-filename}.
1542 @item @anchor{slot.print-operation.job-name}job-name. Type: @code{string}. Accessor: @anchor{fn.print-operation-job-name}@code{print-operation-job-name}.
1543 @item @anchor{slot.print-operation.n-pages}n-pages. Type: @code{integer}. Accessor: @anchor{fn.print-operation-n-pages}@code{print-operation-n-pages}.
1544 @item @anchor{slot.print-operation.print-settings}print-settings. Type: @ref{print-settings}. Accessor: @anchor{fn.print-operation-print-settings}@code{print-operation-print-settings}.
1545 @item @anchor{slot.print-operation.show-progress}show-progress. Type: @code{boolean}. Accessor: @anchor{fn.print-operation-show-progress}@code{print-operation-show-progress}.
1546 @item @anchor{slot.print-operation.status}status. Type: @ref{print-status}. Accessor: @anchor{fn.print-operation-status}@code{print-operation-status}. Read-only.
1547 @item @anchor{slot.print-operation.status-string}status-string. Type: @code{string}. Accessor: @anchor{fn.print-operation-status-string}@code{print-operation-status-string}. Read-only.
1548 @item @anchor{slot.print-operation.track-print-status}track-print-status. Type: @code{boolean}. Accessor: @anchor{fn.print-operation-track-print-status}@code{print-operation-track-print-status}.
1549 @item @anchor{slot.print-operation.unit}unit. Type: @ref{unit}. Accessor: @anchor{fn.print-operation-unit}@code{print-operation-unit}.
1550 @item @anchor{slot.print-operation.use-full-page}use-full-page. Type: @code{boolean}. Accessor: @anchor{fn.print-operation-use-full-page}@code{print-operation-use-full-page}.
1551 @end itemize
1554 Signals:
1555 @itemize
1556 @item @anchor{signal.print-operation.begin-print}"begin-print". Signature: (instance @ref{print-operation}), (arg-1 @ref{print-context}) @result{} void. Options: run-last.
1557 @item @anchor{signal.print-operation.create-custom-widget}"create-custom-widget". Signature: (instance @ref{print-operation}) @result{} @ref{g-object}. Options: run-last.
1558 @item @anchor{signal.print-operation.custom-widget-apply}"custom-widget-apply". Signature: (instance @ref{print-operation}), (arg-1 @ref{widget}) @result{} void. Options: run-last.
1559 @item @anchor{signal.print-operation.done}"done". Signature: (instance @ref{print-operation}), (arg-1 @ref{print-operation-result}) @result{} void. Options: run-last.
1560 @item @anchor{signal.print-operation.draw-page}"draw-page". Signature: (instance @ref{print-operation}), (arg-1 @ref{print-context}), (arg-2 @code{integer}) @result{} void. Options: run-last.
1561 @item @anchor{signal.print-operation.end-print}"end-print". Signature: (instance @ref{print-operation}), (arg-1 @ref{print-context}) @result{} void. Options: run-last.
1562 @item @anchor{signal.print-operation.paginate}"paginate". Signature: (instance @ref{print-operation}), (arg-1 @ref{print-context}) @result{} @code{boolean}. Options: run-last.
1563 @item @anchor{signal.print-operation.preview}"preview". Signature: (instance @ref{print-operation}), (arg-1 @ref{print-operation-preview}), (arg-2 @ref{print-context}), (arg-3 @ref{gtk-window}) @result{} @code{boolean}. Options: run-last.
1564 @item @anchor{signal.print-operation.request-page-setup}"request-page-setup". Signature: (instance @ref{print-operation}), (arg-1 @ref{print-context}), (arg-2 @code{integer}), (arg-3 @ref{page-setup}) @result{} void. Options: run-last.
1565 @item @anchor{signal.print-operation.status-changed}"status-changed". Signature: (instance @ref{print-operation}) @result{} void. Options: run-last.
1566 @end itemize
1571 @node print-settings
1572 @section print-settings
1573 @Class print-settings
1574 Superclass: @ref{g-object}
1576 Slots:
1577 @itemize
1578 @end itemize
1581 Signals:
1582 @itemize
1583 @end itemize
1588 @node radio-action
1589 @section radio-action
1590 @Class radio-action
1591 Superclass: @ref{toggle-action}
1593 Slots:
1594 @itemize
1595 @item @anchor{slot.radio-action.current-value}current-value. Type: @code{integer}. Accessor: @anchor{fn.radio-action-current-value}@code{radio-action-current-value}.
1596 @item @anchor{slot.radio-action.group}group. Type: @ref{radio-action}. Accessor: @anchor{fn.radio-action-group}@code{radio-action-group}. Write-only.
1597 @item @anchor{slot.radio-action.value}value. Type: @code{integer}. Accessor: @anchor{fn.radio-action-value}@code{radio-action-value}.
1598 @end itemize
1601 Signals:
1602 @itemize
1603 @item @anchor{signal.radio-action.changed}"changed". Signature: (instance @ref{radio-action}), (arg-1 @ref{radio-action}) @result{} void. Options: run-first, no-recurse.
1604 @end itemize
1609 @node rc-style
1610 @section rc-style
1611 @Class rc-style
1612 Superclass: @ref{g-object}
1614 Slots:
1615 @itemize
1616 @end itemize
1619 Signals:
1620 @itemize
1621 @end itemize
1626 @node recent-action
1627 @section recent-action
1628 @Class recent-action
1629 Superclass: @ref{action}
1631 Slots:
1632 @itemize
1633 @item @anchor{slot.recent-action.show-numbers}show-numbers. Type: @code{boolean}. Accessor: @anchor{fn.recent-action-show-numbers}@code{recent-action-show-numbers}.
1634 @end itemize
1637 Signals:
1638 @itemize
1639 @end itemize
1644 @node recent-filter
1645 @section recent-filter
1646 @Class recent-filter
1647 Superclass: @ref{gtk-object}
1649 Slots:
1650 @itemize
1651 @end itemize
1654 Signals:
1655 @itemize
1656 @end itemize
1661 @node recent-manager
1662 @section recent-manager
1663 @Class recent-manager
1664 Superclass: @ref{g-object}
1666 Slots:
1667 @itemize
1668 @item @anchor{slot.recent-manager.filename}filename. Type: @code{string}. Accessor: @anchor{fn.recent-manager-filename}@code{recent-manager-filename}.
1669 @item @anchor{slot.recent-manager.limit}limit. Type: @code{integer}. Accessor: @anchor{fn.recent-manager-limit}@code{recent-manager-limit}.
1670 @item @anchor{slot.recent-manager.size}size. Type: @code{integer}. Accessor: @anchor{fn.recent-manager-size}@code{recent-manager-size}. Read-only.
1671 @end itemize
1674 Signals:
1675 @itemize
1676 @item @anchor{signal.recent-manager.changed}"changed". Signature: (instance @ref{recent-manager}) @result{} void. Options: run-first.
1677 @end itemize
1682 @node settings
1683 @section settings
1684 @Class settings
1685 Superclass: @ref{g-object}
1687 Slots:
1688 @itemize
1689 @item @anchor{slot.settings.color-hash}color-hash. Type: @code{GHashTable}. Accessor: @anchor{fn.settings-color-hash}@code{settings-color-hash}. Read-only.
1690 @item @anchor{slot.settings.gtk-alternative-button-order}gtk-alternative-button-order. Type: @code{boolean}. Accessor: @anchor{fn.settings-gtk-alternative-button-order}@code{settings-gtk-alternative-button-order}.
1691 @item @anchor{slot.settings.gtk-alternative-sort-arrows}gtk-alternative-sort-arrows. Type: @code{boolean}. Accessor: @anchor{fn.settings-gtk-alternative-sort-arrows}@code{settings-gtk-alternative-sort-arrows}.
1692 @item @anchor{slot.settings.gtk-button-images}gtk-button-images. Type: @code{boolean}. Accessor: @anchor{fn.settings-gtk-button-images}@code{settings-gtk-button-images}.
1693 @item @anchor{slot.settings.gtk-can-change-accels}gtk-can-change-accels. Type: @code{boolean}. Accessor: @anchor{fn.settings-gtk-can-change-accels}@code{settings-gtk-can-change-accels}.
1694 @item @anchor{slot.settings.gtk-color-palette}gtk-color-palette. Type: @code{string}. Accessor: @anchor{fn.settings-gtk-color-palette}@code{settings-gtk-color-palette}.
1695 @item @anchor{slot.settings.gtk-color-scheme}gtk-color-scheme. Type: @code{string}. Accessor: @anchor{fn.settings-gtk-color-scheme}@code{settings-gtk-color-scheme}.
1696 @item @anchor{slot.settings.gtk-cursor-blink}gtk-cursor-blink. Type: @code{boolean}. Accessor: @anchor{fn.settings-gtk-cursor-blink}@code{settings-gtk-cursor-blink}.
1697 @item @anchor{slot.settings.gtk-cursor-blink-time}gtk-cursor-blink-time. Type: @code{integer}. Accessor: @anchor{fn.settings-gtk-cursor-blink-time}@code{settings-gtk-cursor-blink-time}.
1698 @item @anchor{slot.settings.gtk-cursor-blink-timeout}gtk-cursor-blink-timeout. Type: @code{integer}. Accessor: @anchor{fn.settings-gtk-cursor-blink-timeout}@code{settings-gtk-cursor-blink-timeout}.
1699 @item @anchor{slot.settings.gtk-cursor-theme-name}gtk-cursor-theme-name. Type: @code{string}. Accessor: @anchor{fn.settings-gtk-cursor-theme-name}@code{settings-gtk-cursor-theme-name}.
1700 @item @anchor{slot.settings.gtk-cursor-theme-size}gtk-cursor-theme-size. Type: @code{integer}. Accessor: @anchor{fn.settings-gtk-cursor-theme-size}@code{settings-gtk-cursor-theme-size}.
1701 @item @anchor{slot.settings.gtk-dnd-drag-threshold}gtk-dnd-drag-threshold. Type: @code{integer}. Accessor: @anchor{fn.settings-gtk-dnd-drag-threshold}@code{settings-gtk-dnd-drag-threshold}.
1702 @item @anchor{slot.settings.gtk-double-click-distance}gtk-double-click-distance. Type: @code{integer}. Accessor: @anchor{fn.settings-gtk-double-click-distance}@code{settings-gtk-double-click-distance}.
1703 @item @anchor{slot.settings.gtk-double-click-time}gtk-double-click-time. Type: @code{integer}. Accessor: @anchor{fn.settings-gtk-double-click-time}@code{settings-gtk-double-click-time}.
1704 @item @anchor{slot.settings.gtk-enable-accels}gtk-enable-accels. Type: @code{boolean}. Accessor: @anchor{fn.settings-gtk-enable-accels}@code{settings-gtk-enable-accels}.
1705 @item @anchor{slot.settings.gtk-enable-animations}gtk-enable-animations. Type: @code{boolean}. Accessor: @anchor{fn.settings-gtk-enable-animations}@code{settings-gtk-enable-animations}.
1706 @item @anchor{slot.settings.gtk-enable-event-sounds}gtk-enable-event-sounds. Type: @code{boolean}. Accessor: @anchor{fn.settings-gtk-enable-event-sounds}@code{settings-gtk-enable-event-sounds}.
1707 @item @anchor{slot.settings.gtk-enable-input-feedback-sounds}gtk-enable-input-feedback-sounds. Type: @code{boolean}. Accessor: @anchor{fn.settings-gtk-enable-input-feedback-sounds}@code{settings-gtk-enable-input-feedback-sounds}.
1708 @item @anchor{slot.settings.gtk-enable-mnemonics}gtk-enable-mnemonics. Type: @code{boolean}. Accessor: @anchor{fn.settings-gtk-enable-mnemonics}@code{settings-gtk-enable-mnemonics}.
1709 @item @anchor{slot.settings.gtk-enable-tooltips}gtk-enable-tooltips. Type: @code{boolean}. Accessor: @anchor{fn.settings-gtk-enable-tooltips}@code{settings-gtk-enable-tooltips}.
1710 @item @anchor{slot.settings.gtk-entry-password-hint-timeout}gtk-entry-password-hint-timeout. Type: @code{integer}. Accessor: @anchor{fn.settings-gtk-entry-password-hint-timeout}@code{settings-gtk-entry-password-hint-timeout}.
1711 @item @anchor{slot.settings.gtk-entry-select-on-focus}gtk-entry-select-on-focus. Type: @code{boolean}. Accessor: @anchor{fn.settings-gtk-entry-select-on-focus}@code{settings-gtk-entry-select-on-focus}.
1712 @item @anchor{slot.settings.gtk-error-bell}gtk-error-bell. Type: @code{boolean}. Accessor: @anchor{fn.settings-gtk-error-bell}@code{settings-gtk-error-bell}.
1713 @item @anchor{slot.settings.gtk-fallback-icon-theme}gtk-fallback-icon-theme. Type: @code{string}. Accessor: @anchor{fn.settings-gtk-fallback-icon-theme}@code{settings-gtk-fallback-icon-theme}.
1714 @item @anchor{slot.settings.gtk-file-chooser-backend}gtk-file-chooser-backend. Type: @code{string}. Accessor: @anchor{fn.settings-gtk-file-chooser-backend}@code{settings-gtk-file-chooser-backend}.
1715 @item @anchor{slot.settings.gtk-font-name}gtk-font-name. Type: @code{string}. Accessor: @anchor{fn.settings-gtk-font-name}@code{settings-gtk-font-name}.
1716 @item @anchor{slot.settings.gtk-fontconfig-timestamp}gtk-fontconfig-timestamp. Type: @code{integer}. Accessor: @anchor{fn.settings-gtk-fontconfig-timestamp}@code{settings-gtk-fontconfig-timestamp}.
1717 @item @anchor{slot.settings.gtk-icon-sizes}gtk-icon-sizes. Type: @code{string}. Accessor: @anchor{fn.settings-gtk-icon-sizes}@code{settings-gtk-icon-sizes}.
1718 @item @anchor{slot.settings.gtk-icon-theme-name}gtk-icon-theme-name. Type: @code{string}. Accessor: @anchor{fn.settings-gtk-icon-theme-name}@code{settings-gtk-icon-theme-name}.
1719 @item @anchor{slot.settings.gtk-im-module}gtk-im-module. Type: @code{string}. Accessor: @anchor{fn.settings-gtk-im-module}@code{settings-gtk-im-module}.
1720 @item @anchor{slot.settings.gtk-key-theme-name}gtk-key-theme-name. Type: @code{string}. Accessor: @anchor{fn.settings-gtk-key-theme-name}@code{settings-gtk-key-theme-name}.
1721 @item @anchor{slot.settings.gtk-keynav-cursor-only}gtk-keynav-cursor-only. Type: @code{boolean}. Accessor: @anchor{fn.settings-gtk-keynav-cursor-only}@code{settings-gtk-keynav-cursor-only}.
1722 @item @anchor{slot.settings.gtk-keynav-wrap-around}gtk-keynav-wrap-around. Type: @code{boolean}. Accessor: @anchor{fn.settings-gtk-keynav-wrap-around}@code{settings-gtk-keynav-wrap-around}.
1723 @item @anchor{slot.settings.gtk-label-select-on-focus}gtk-label-select-on-focus. Type: @code{boolean}. Accessor: @anchor{fn.settings-gtk-label-select-on-focus}@code{settings-gtk-label-select-on-focus}.
1724 @item @anchor{slot.settings.gtk-menu-bar-accel}gtk-menu-bar-accel. Type: @code{string}. Accessor: @anchor{fn.settings-gtk-menu-bar-accel}@code{settings-gtk-menu-bar-accel}.
1725 @item @anchor{slot.settings.gtk-menu-bar-popup-delay}gtk-menu-bar-popup-delay. Type: @code{integer}. Accessor: @anchor{fn.settings-gtk-menu-bar-popup-delay}@code{settings-gtk-menu-bar-popup-delay}.
1726 @item @anchor{slot.settings.gtk-menu-images}gtk-menu-images. Type: @code{boolean}. Accessor: @anchor{fn.settings-gtk-menu-images}@code{settings-gtk-menu-images}.
1727 @item @anchor{slot.settings.gtk-menu-popdown-delay}gtk-menu-popdown-delay. Type: @code{integer}. Accessor: @anchor{fn.settings-gtk-menu-popdown-delay}@code{settings-gtk-menu-popdown-delay}.
1728 @item @anchor{slot.settings.gtk-menu-popup-delay}gtk-menu-popup-delay. Type: @code{integer}. Accessor: @anchor{fn.settings-gtk-menu-popup-delay}@code{settings-gtk-menu-popup-delay}.
1729 @item @anchor{slot.settings.gtk-modules}gtk-modules. Type: @code{string}. Accessor: @anchor{fn.settings-gtk-modules}@code{settings-gtk-modules}.
1730 @item @anchor{slot.settings.gtk-print-backends}gtk-print-backends. Type: @code{string}. Accessor: @anchor{fn.settings-gtk-print-backends}@code{settings-gtk-print-backends}.
1731 @item @anchor{slot.settings.gtk-print-preview-command}gtk-print-preview-command. Type: @code{string}. Accessor: @anchor{fn.settings-gtk-print-preview-command}@code{settings-gtk-print-preview-command}.
1732 @item @anchor{slot.settings.gtk-recent-files-limit}gtk-recent-files-limit. Type: @code{integer}. Accessor: @anchor{fn.settings-gtk-recent-files-limit}@code{settings-gtk-recent-files-limit}.
1733 @item @anchor{slot.settings.gtk-recent-files-max-age}gtk-recent-files-max-age. Type: @code{integer}. Accessor: @anchor{fn.settings-gtk-recent-files-max-age}@code{settings-gtk-recent-files-max-age}.
1734 @item @anchor{slot.settings.gtk-scrolled-window-placement}gtk-scrolled-window-placement. Type: @ref{corner-type}. Accessor: @anchor{fn.settings-gtk-scrolled-window-placement}@code{settings-gtk-scrolled-window-placement}.
1735 @item @anchor{slot.settings.gtk-show-input-method-menu}gtk-show-input-method-menu. Type: @code{boolean}. Accessor: @anchor{fn.settings-gtk-show-input-method-menu}@code{settings-gtk-show-input-method-menu}.
1736 @item @anchor{slot.settings.gtk-show-unicode-menu}gtk-show-unicode-menu. Type: @code{boolean}. Accessor: @anchor{fn.settings-gtk-show-unicode-menu}@code{settings-gtk-show-unicode-menu}.
1737 @item @anchor{slot.settings.gtk-sound-theme-name}gtk-sound-theme-name. Type: @code{string}. Accessor: @anchor{fn.settings-gtk-sound-theme-name}@code{settings-gtk-sound-theme-name}.
1738 @item @anchor{slot.settings.gtk-split-cursor}gtk-split-cursor. Type: @code{boolean}. Accessor: @anchor{fn.settings-gtk-split-cursor}@code{settings-gtk-split-cursor}.
1739 @item @anchor{slot.settings.gtk-theme-name}gtk-theme-name. Type: @code{string}. Accessor: @anchor{fn.settings-gtk-theme-name}@code{settings-gtk-theme-name}.
1740 @item @anchor{slot.settings.gtk-timeout-expand}gtk-timeout-expand. Type: @code{integer}. Accessor: @anchor{fn.settings-gtk-timeout-expand}@code{settings-gtk-timeout-expand}.
1741 @item @anchor{slot.settings.gtk-timeout-initial}gtk-timeout-initial. Type: @code{integer}. Accessor: @anchor{fn.settings-gtk-timeout-initial}@code{settings-gtk-timeout-initial}.
1742 @item @anchor{slot.settings.gtk-timeout-repeat}gtk-timeout-repeat. Type: @code{integer}. Accessor: @anchor{fn.settings-gtk-timeout-repeat}@code{settings-gtk-timeout-repeat}.
1743 @item @anchor{slot.settings.gtk-toolbar-icon-size}gtk-toolbar-icon-size. Type: @ref{icon-size}. Accessor: @anchor{fn.settings-gtk-toolbar-icon-size}@code{settings-gtk-toolbar-icon-size}.
1744 @item @anchor{slot.settings.gtk-toolbar-style}gtk-toolbar-style. Type: @ref{toolbar-style}. Accessor: @anchor{fn.settings-gtk-toolbar-style}@code{settings-gtk-toolbar-style}.
1745 @item @anchor{slot.settings.gtk-tooltip-browse-mode-timeout}gtk-tooltip-browse-mode-timeout. Type: @code{integer}. Accessor: @anchor{fn.settings-gtk-tooltip-browse-mode-timeout}@code{settings-gtk-tooltip-browse-mode-timeout}.
1746 @item @anchor{slot.settings.gtk-tooltip-browse-timeout}gtk-tooltip-browse-timeout. Type: @code{integer}. Accessor: @anchor{fn.settings-gtk-tooltip-browse-timeout}@code{settings-gtk-tooltip-browse-timeout}.
1747 @item @anchor{slot.settings.gtk-tooltip-timeout}gtk-tooltip-timeout. Type: @code{integer}. Accessor: @anchor{fn.settings-gtk-tooltip-timeout}@code{settings-gtk-tooltip-timeout}.
1748 @item @anchor{slot.settings.gtk-touchscreen-mode}gtk-touchscreen-mode. Type: @code{boolean}. Accessor: @anchor{fn.settings-gtk-touchscreen-mode}@code{settings-gtk-touchscreen-mode}.
1749 @item @anchor{slot.settings.gtk-xft-antialias}gtk-xft-antialias. Type: @code{integer}. Accessor: @anchor{fn.settings-gtk-xft-antialias}@code{settings-gtk-xft-antialias}.
1750 @item @anchor{slot.settings.gtk-xft-dpi}gtk-xft-dpi. Type: @code{integer}. Accessor: @anchor{fn.settings-gtk-xft-dpi}@code{settings-gtk-xft-dpi}.
1751 @item @anchor{slot.settings.gtk-xft-hinting}gtk-xft-hinting. Type: @code{integer}. Accessor: @anchor{fn.settings-gtk-xft-hinting}@code{settings-gtk-xft-hinting}.
1752 @item @anchor{slot.settings.gtk-xft-hintstyle}gtk-xft-hintstyle. Type: @code{string}. Accessor: @anchor{fn.settings-gtk-xft-hintstyle}@code{settings-gtk-xft-hintstyle}.
1753 @item @anchor{slot.settings.gtk-xft-rgba}gtk-xft-rgba. Type: @code{string}. Accessor: @anchor{fn.settings-gtk-xft-rgba}@code{settings-gtk-xft-rgba}.
1754 @end itemize
1757 Signals:
1758 @itemize
1759 @end itemize
1764 @node size-group
1765 @section size-group
1766 @Class size-group
1767 Superclass: @ref{g-object}
1769 Slots:
1770 @itemize
1771 @item @anchor{slot.size-group.ignore-hidden}ignore-hidden. Type: @code{boolean}. Accessor: @anchor{fn.size-group-ignore-hidden}@code{size-group-ignore-hidden}.
1772 @item @anchor{slot.size-group.mode}mode. Type: @ref{size-group-mode}. Accessor: @anchor{fn.size-group-mode}@code{size-group-mode}.
1773 @end itemize
1776 Signals:
1777 @itemize
1778 @end itemize
1783 @node status-icon
1784 @section status-icon
1785 @Class status-icon
1786 Superclass: @ref{g-object}
1788 The "system tray" or notification area is normally used for transient icons that indicate some special state. For example, a system tray icon might appear to tell the user that they have new mail, or have an incoming instant message, or something along those lines. The basic idea is that creating an icon in the notification area is less annoying than popping up a dialog.
1790 A @ref{status-icon} object can be used to display an icon in a "system tray". The icon can have a tooltip, and the user can interact with it by activating it or popping up a context menu. Critical information should not solely be displayed in a @ref{status-icon}, since it may not be visible (e.g. when the user doesn't have a notification area on his panel). This can be checked with @SlotRef{status-icon,embedded}.
1792 On X11, the implementation follows the freedesktop.org "System Tray" specification. Implementations of the "tray" side of this specification can be found e.g. in the GNOME and KDE panel applications.
1794 Note that a @ref{status-icon} is not a @ref{widget}, but just a @ref{g-object}. Making it a widget would be impractical, since the system tray on Win32 doesn't allow to embed arbitrary widgets.
1796 Slots:
1797 @itemize
1798 @item @anchor{slot.status-icon.blinking}blinking. Type: @code{boolean}. Accessor: @anchor{fn.status-icon-blinking}@code{status-icon-blinking}.
1800 Whether or not the status icon is blinking.
1802 Default value: FALSE
1803 @item @anchor{slot.status-icon.embedded}embedded. Type: @code{boolean}. Accessor: @anchor{fn.status-icon-embedded}@code{status-icon-embedded}. Read-only.
1805 TRUE if the statusicon is embedded in a notification area.
1807 Default value: FALSE
1808 @item @anchor{slot.status-icon.file}file. Type: @code{string}. Accessor: @anchor{fn.status-icon-file}@code{status-icon-file}. Write-only.
1810 Filename to load and display.
1811 @item @anchor{slot.status-icon.gicon}gicon. Type: @code{GIcon}. Accessor: @anchor{fn.status-icon-gicon}@code{status-icon-gicon}.
1813 The GIcon displayed in the GtkStatusIcon. For themed icons, the image will be updated automatically if the theme changes.
1814 @item @anchor{slot.status-icon.has-tooltip}has-tooltip. Type: @code{boolean}. Accessor: @anchor{fn.status-icon-has-tooltip}@code{status-icon-has-tooltip}.
1816 Enables or disables the emission of @SignalRef{status-icon,query-tooltip}. A value of TRUE indicates that status icon can have a tooltip, in this case the status icon will be queried using @SignalRef{status-icon,query-tooltip} to determine whether it will provide a tooltip or not.
1818 Note that setting this property to TRUE for the first time will change the event masks of the windows of this status icon to include leave-notify and motion-notify events. This will not be undone when the property is set to FALSE again.
1820 Whether this property is respected is platform dependent. For plain text tooltips, use @SlotRef{status-icon,tooltip-text} in preference.
1822 Default value: FALSE
1823 @item @anchor{slot.status-icon.icon-name}icon-name. Type: @code{string}. Accessor: @anchor{fn.status-icon-icon-name}@code{status-icon-icon-name}.
1825 The name of the icon from the icon theme.
1826 @item @anchor{slot.status-icon.orientation}orientation. Type: @ref{orientation}. Accessor: @anchor{fn.status-icon-orientation}@code{status-icon-orientation}. Read-only.
1828 The orientation of the tray in which the statusicon is embedded.
1829 @item @anchor{slot.status-icon.pixbuf}pixbuf. Type: @ref{pixbuf}. Accessor: @anchor{fn.status-icon-pixbuf}@code{status-icon-pixbuf}.
1832 A @ref{pixbuf} to display.
1833 @item @anchor{slot.status-icon.screen}screen. Type: @ref{screen}. Accessor: @anchor{fn.status-icon-screen}@code{status-icon-screen}.
1835 The screen where this status icon will be displayed.
1836 @item @anchor{slot.status-icon.size}size. Type: @code{integer}. Accessor: @anchor{fn.status-icon-size}@code{status-icon-size}. Read-only.
1838 The size of the icon.
1840 Allowed values: >= 0
1842 Default value: 0
1843 @item @anchor{slot.status-icon.stock}stock. Type: @code{string}. Accessor: @anchor{fn.status-icon-stock}@code{status-icon-stock}.
1845 Stock ID for a stock image to display.
1847 Default value: NULL
1848 @item @anchor{slot.status-icon.storage-type}storage-type. Type: @ref{image-type}. Accessor: @anchor{fn.status-icon-storage-type}@code{status-icon-storage-type}. Read-only.
1850 The representation being used for image data.
1851 @item @anchor{slot.status-icon.tooltip-markup}tooltip-markup. Type: @code{string}. Accessor: @anchor{fn.status-icon-tooltip-markup}@code{status-icon-tooltip-markup}.
1853 Sets the text of tooltip to be the given string, which is marked up with the Pango text markup language.
1855 This is a convenience property which will take care of getting the tooltip shown if the given string is not NULL. @SlotRef{status-icon,has-tooltip} will automatically be set to TRUE and the default handler for the @SignalRef{status-icon,query-tooltip} signal will take care of displaying the tooltip.
1857 On some platforms, embedded markup will be ignored.
1859 Default value: NULL
1860 @item @anchor{slot.status-icon.tooltip-text}tooltip-text. Type: @code{string}. Accessor: @anchor{fn.status-icon-tooltip-text}@code{status-icon-tooltip-text}.
1862 Sets the text of tooltip to be the given string.
1864 This is a convenience property which will take care of getting the tooltip shown if the given string is not NULL. @SlotRef{status-icon,has-tooltip} will automatically be set to TRUE and the default handler for the @SignalRef{status-icon,query-tooltip} signal will take care of displaying the tooltip.
1866 Default value: NULL
1867 @item @anchor{slot.status-icon.visible}visible. Type: @code{boolean}. Accessor: @anchor{fn.status-icon-visible}@code{status-icon-visible}.
1869 Whether or not the status icon is visible.
1871 Default value: TRUE
1872 @end itemize
1875 Signals:
1876 @itemize
1877 @item @anchor{signal.status-icon.activate}"activate". Signature: (instance @ref{status-icon}) @result{} void. Options: run-first, action.
1879 Gets emitted when the user activates the status icon. If and how status icons can activated is platform-dependent.
1881 Unlike most G_SIGNAL_ACTION signals, this signal is meant to be used by applications and should be wrapped by language bindings.
1882 @item @anchor{signal.status-icon.button-press-event}"button-press-event". Signature: (instance @ref{status-icon}), (event @ref{event-button}) @result{} @code{boolean}. Options: run-last.
1884 This signal will be emitted when a button (typically from a mouse) is pressed.
1886 Whether this event is emitted is platform-dependent. Use the @SignalRef{status-icon,activate} and @SignalRef{status-icon,popup-menu} signals in preference.
1887 @item @anchor{signal.status-icon.button-release-event}"button-release-event". Signature: (instance @ref{status-icon}), (event @ref{event-button}) @result{} @code{boolean}. Options: run-last.
1889 This signal will be emitted when a button (typically from a mouse) is released.
1891 Whether this event is emitted is platform-dependent. Use the @SignalRef{status-icon,activate} and @SignalRef{status-icon,popup-menu} signals in preference.
1892 @item @anchor{signal.status-icon.popup-menu}"popup-menu". Signature: (instance @ref{status-icon}), (button @code{integer}), (activate-time @code{integer}) @result{} void. Options: run-first, action.
1894 Gets emitted when the user brings up the context menu of the status icon. Whether status icons can have context menus and how these are activated is platform-dependent.
1896 The button and activate-time parameters should be passed as the last to arguments to gtk_menu_popup().
1898 Unlike most G_SIGNAL_ACTION signals, this signal is meant to be used by applications and should be wrapped by language bindings.
1899 @item @anchor{signal.status-icon.query-tooltip}"query-tooltip". Signature: (instance @ref{status-icon}), (x @code{integer}), (y @code{integer}), (keyboard-mode @code{boolean}), (tooltip @ref{tooltip}) @result{} @code{boolean}. Options: run-last.
1901 Emitted when the "gtk-tooltip-timeout" has expired with the cursor hovering above status_icon; or emitted when status_icon got focus in keyboard mode.
1903 Using the given coordinates, the signal handler should determine whether a tooltip should be shown for status-icon. If this is the case TRUE should be returned, FALSE otherwise. Note that if keyboard-mode is TRUE, the values of x and y are undefined and should not be used.
1905 The signal handler is free to manipulate @var{tooltip} with the therefore destined function calls.
1907 Whether this signal is emitted is platform-dependent. For plain text tooltips, use @SlotRef{status-icon,tooltip-text} in preference.
1909 @var{x}, @var{y}: the x and y coordinates of the cursor position where the request has been emitted, relative to status-icon
1911 @var{keyboard-mode}: TRUE if the tooltip was trigged using the keyboard
1912 @item @anchor{signal.status-icon.scroll-event}"scroll-event". Signature: (instance @ref{status-icon}), (event @ref{event-scroll}) @result{} @code{boolean}. Options: run-last.
1914 This signal is emitted when a button in the 4 to 7 range is pressed. Wheel mice are usually configured to generate button press events for buttons 4 and 5 when the wheel is turned.
1916 Whether this event is emitted is platform-dependent.
1917 @item @anchor{signal.status-icon.size-changed}"size-changed". Signature: (instance @ref{status-icon}), (size @code{integer}) @result{} @code{boolean}. Options: run-last.
1919 Gets emitted when the size available for the image changes, e.g. because the notification area got resized.
1921 Returns TRUE if the icon was updated for the new size. Otherwise, GTK+ will scale the icon as necessary.
1922 @end itemize
1924 TODO: gtk_status_icon_position_menu, gtk_status_icon_get_x11_window_id 
1927 @node style
1928 @section style
1929 @Class style
1930 Superclass: @ref{g-object}
1932 Slots:
1933 @itemize
1934 @end itemize
1937 Signals:
1938 @itemize
1939 @item @anchor{signal.style.realize}"realize". Signature: (instance @ref{style}) @result{} void. Options: run-first.
1940 @item @anchor{signal.style.unrealize}"unrealize". Signature: (instance @ref{style}) @result{} void. Options: run-first.
1941 @end itemize
1946 @node text-buffer
1947 @section text-buffer
1948 @Class text-buffer
1949 Superclass: @ref{g-object}
1951 Slots:
1952 @itemize
1953 @item @anchor{slot.text-buffer.copy-target-list}copy-target-list. Type: @code{GtkTargetList}. Accessor: @anchor{fn.text-buffer-copy-target-list}@code{text-buffer-copy-target-list}. Read-only.
1954 @item @anchor{slot.text-buffer.cursor-position}cursor-position. Type: @code{integer}. Accessor: @anchor{fn.text-buffer-cursor-position}@code{text-buffer-cursor-position}. Read-only.
1955 @item @anchor{slot.text-buffer.has-selection}has-selection. Type: @code{boolean}. Accessor: @anchor{fn.text-buffer-has-selection}@code{text-buffer-has-selection}. Read-only.
1956 @item @anchor{slot.text-buffer.paste-target-list}paste-target-list. Type: @code{GtkTargetList}. Accessor: @anchor{fn.text-buffer-paste-target-list}@code{text-buffer-paste-target-list}. Read-only.
1957 @item @anchor{slot.text-buffer.tag-table}tag-table. Type: @ref{text-tag-table}. Accessor: @anchor{fn.text-buffer-tag-table}@code{text-buffer-tag-table}.
1958 @item @anchor{slot.text-buffer.text}text. Type: @code{string}. Accessor: @anchor{fn.text-buffer-text}@code{text-buffer-text}.
1959 @end itemize
1962 Signals:
1963 @itemize
1964 @item @anchor{signal.text-buffer.apply-tag}"apply-tag". Signature: (instance @ref{text-buffer}), (arg-1 @ref{text-tag}), (arg-2 @ref{text-iter}), (arg-3 @ref{text-iter}) @result{} void. Options: run-last.
1965 @item @anchor{signal.text-buffer.begin-user-action}"begin-user-action". Signature: (instance @ref{text-buffer}) @result{} void. Options: run-last.
1966 @item @anchor{signal.text-buffer.changed}"changed". Signature: (instance @ref{text-buffer}) @result{} void. Options: run-last.
1967 @item @anchor{signal.text-buffer.delete-range}"delete-range". Signature: (instance @ref{text-buffer}), (arg-1 @ref{text-iter}), (arg-2 @ref{text-iter}) @result{} void. Options: run-last.
1968 @item @anchor{signal.text-buffer.end-user-action}"end-user-action". Signature: (instance @ref{text-buffer}) @result{} void. Options: run-last.
1969 @item @anchor{signal.text-buffer.insert-child-anchor}"insert-child-anchor". Signature: (instance @ref{text-buffer}), (arg-1 @ref{text-iter}), (arg-2 @ref{text-child-anchor}) @result{} void. Options: run-last.
1970 @item @anchor{signal.text-buffer.insert-pixbuf}"insert-pixbuf". Signature: (instance @ref{text-buffer}), (arg-1 @ref{text-iter}), (arg-2 @ref{pixbuf}) @result{} void. Options: run-last.
1971 @item @anchor{signal.text-buffer.insert-text}"insert-text". Signature: (instance @ref{text-buffer}), (arg-1 @ref{text-iter}), (arg-2 @code{string}), (arg-3 @code{integer}) @result{} void. Options: run-last.
1972 @item @anchor{signal.text-buffer.mark-deleted}"mark-deleted". Signature: (instance @ref{text-buffer}), (arg-1 @ref{text-mark}) @result{} void. Options: run-last.
1973 @item @anchor{signal.text-buffer.mark-set}"mark-set". Signature: (instance @ref{text-buffer}), (arg-1 @ref{text-iter}), (arg-2 @ref{text-mark}) @result{} void. Options: run-last.
1974 @item @anchor{signal.text-buffer.modified-changed}"modified-changed". Signature: (instance @ref{text-buffer}) @result{} void. Options: run-last.
1975 @item @anchor{signal.text-buffer.paste-done}"paste-done". Signature: (instance @ref{text-buffer}), (arg-1 @ref{clipboard}) @result{} void. Options: run-last.
1976 @item @anchor{signal.text-buffer.remove-tag}"remove-tag". Signature: (instance @ref{text-buffer}), (arg-1 @ref{text-tag}), (arg-2 @ref{text-iter}), (arg-3 @ref{text-iter}) @result{} void. Options: run-last.
1977 @end itemize
1982 @node text-child-anchor
1983 @section text-child-anchor
1984 @Class text-child-anchor
1985 Superclass: @ref{g-object}
1987 Slots:
1988 @itemize
1989 @end itemize
1992 Signals:
1993 @itemize
1994 @end itemize
1999 @node text-iter
2000 @section text-iter
2001 @Class text-iter
2002 Superclass: @ref{g-boxed-opaque}
2004 Slots:
2005 @itemize
2006 @end itemize
2013 @node text-mark
2014 @section text-mark
2015 @Class text-mark
2016 Superclass: @ref{g-object}
2018 Slots:
2019 @itemize
2020 @item @anchor{slot.text-mark.left-gravity}left-gravity. Type: @code{boolean}. Accessor: @anchor{fn.text-mark-left-gravity}@code{text-mark-left-gravity}.
2021 @item @anchor{slot.text-mark.name}name. Type: @code{string}. Accessor: @anchor{fn.text-mark-name}@code{text-mark-name}.
2022 @end itemize
2025 Signals:
2026 @itemize
2027 @end itemize
2032 @node text-tag
2033 @section text-tag
2034 @Class text-tag
2035 Superclass: @ref{g-object}
2037 Slots:
2038 @itemize
2039 @item @anchor{slot.text-tag.accumulative-margin}accumulative-margin. Type: @code{boolean}. Accessor: @anchor{fn.text-tag-accumulative-margin}@code{text-tag-accumulative-margin}.
2040 @item @anchor{slot.text-tag.background}background. Type: @code{string}. Accessor: @anchor{fn.text-tag-background}@code{text-tag-background}. Write-only.
2041 @item @anchor{slot.text-tag.background-full-height}background-full-height. Type: @code{boolean}. Accessor: @anchor{fn.text-tag-background-full-height}@code{text-tag-background-full-height}.
2042 @item @anchor{slot.text-tag.background-full-height-set}background-full-height-set. Type: @code{boolean}. Accessor: @anchor{fn.text-tag-background-full-height-set}@code{text-tag-background-full-height-set}.
2043 @item @anchor{slot.text-tag.background-gdk}background-gdk. Type: @ref{color}. Accessor: @anchor{fn.text-tag-background-gdk}@code{text-tag-background-gdk}.
2044 @item @anchor{slot.text-tag.background-set}background-set. Type: @code{boolean}. Accessor: @anchor{fn.text-tag-background-set}@code{text-tag-background-set}.
2045 @item @anchor{slot.text-tag.background-stipple}background-stipple. Type: @ref{pixmap}. Accessor: @anchor{fn.text-tag-background-stipple}@code{text-tag-background-stipple}.
2046 @item @anchor{slot.text-tag.background-stipple-set}background-stipple-set. Type: @code{boolean}. Accessor: @anchor{fn.text-tag-background-stipple-set}@code{text-tag-background-stipple-set}.
2047 @item @anchor{slot.text-tag.direction}direction. Type: @ref{text-direction}. Accessor: @anchor{fn.text-tag-direction}@code{text-tag-direction}.
2048 @item @anchor{slot.text-tag.editable}editable. Type: @code{boolean}. Accessor: @anchor{fn.text-tag-editable}@code{text-tag-editable}.
2049 @item @anchor{slot.text-tag.editable-set}editable-set. Type: @code{boolean}. Accessor: @anchor{fn.text-tag-editable-set}@code{text-tag-editable-set}.
2050 @item @anchor{slot.text-tag.family}family. Type: @code{string}. Accessor: @anchor{fn.text-tag-family}@code{text-tag-family}.
2051 @item @anchor{slot.text-tag.family-set}family-set. Type: @code{boolean}. Accessor: @anchor{fn.text-tag-family-set}@code{text-tag-family-set}.
2052 @item @anchor{slot.text-tag.font}font. Type: @code{string}. Accessor: @anchor{fn.text-tag-font}@code{text-tag-font}.
2053 @item @anchor{slot.text-tag.font-desc}font-desc. Type: @code{PangoFontDescription}. Accessor: @anchor{fn.text-tag-font-desc}@code{text-tag-font-desc}.
2054 @item @anchor{slot.text-tag.foreground}foreground. Type: @code{string}. Accessor: @anchor{fn.text-tag-foreground}@code{text-tag-foreground}. Write-only.
2055 @item @anchor{slot.text-tag.foreground-gdk}foreground-gdk. Type: @ref{color}. Accessor: @anchor{fn.text-tag-foreground-gdk}@code{text-tag-foreground-gdk}.
2056 @item @anchor{slot.text-tag.foreground-set}foreground-set. Type: @code{boolean}. Accessor: @anchor{fn.text-tag-foreground-set}@code{text-tag-foreground-set}.
2057 @item @anchor{slot.text-tag.foreground-stipple}foreground-stipple. Type: @ref{pixmap}. Accessor: @anchor{fn.text-tag-foreground-stipple}@code{text-tag-foreground-stipple}.
2058 @item @anchor{slot.text-tag.foreground-stipple-set}foreground-stipple-set. Type: @code{boolean}. Accessor: @anchor{fn.text-tag-foreground-stipple-set}@code{text-tag-foreground-stipple-set}.
2059 @item @anchor{slot.text-tag.indent}indent. Type: @code{integer}. Accessor: @anchor{fn.text-tag-indent}@code{text-tag-indent}.
2060 @item @anchor{slot.text-tag.indent-set}indent-set. Type: @code{boolean}. Accessor: @anchor{fn.text-tag-indent-set}@code{text-tag-indent-set}.
2061 @item @anchor{slot.text-tag.invisible}invisible. Type: @code{boolean}. Accessor: @anchor{fn.text-tag-invisible}@code{text-tag-invisible}.
2062 @item @anchor{slot.text-tag.invisible-set}invisible-set. Type: @code{boolean}. Accessor: @anchor{fn.text-tag-invisible-set}@code{text-tag-invisible-set}.
2063 @item @anchor{slot.text-tag.justification}justification. Type: @ref{justification}. Accessor: @anchor{fn.text-tag-justification}@code{text-tag-justification}.
2064 @item @anchor{slot.text-tag.justification-set}justification-set. Type: @code{boolean}. Accessor: @anchor{fn.text-tag-justification-set}@code{text-tag-justification-set}.
2065 @item @anchor{slot.text-tag.language}language. Type: @code{string}. Accessor: @anchor{fn.text-tag-language}@code{text-tag-language}.
2066 @item @anchor{slot.text-tag.language-set}language-set. Type: @code{boolean}. Accessor: @anchor{fn.text-tag-language-set}@code{text-tag-language-set}.
2067 @item @anchor{slot.text-tag.left-margin}left-margin. Type: @code{integer}. Accessor: @anchor{fn.text-tag-left-margin}@code{text-tag-left-margin}.
2068 @item @anchor{slot.text-tag.left-margin-set}left-margin-set. Type: @code{boolean}. Accessor: @anchor{fn.text-tag-left-margin-set}@code{text-tag-left-margin-set}.
2069 @item @anchor{slot.text-tag.name}name. Type: @code{string}. Accessor: @anchor{fn.text-tag-name}@code{text-tag-name}.
2070 @item @anchor{slot.text-tag.paragraph-background}paragraph-background. Type: @code{string}. Accessor: @anchor{fn.text-tag-paragraph-background}@code{text-tag-paragraph-background}. Write-only.
2071 @item @anchor{slot.text-tag.paragraph-background-gdk}paragraph-background-gdk. Type: @ref{color}. Accessor: @anchor{fn.text-tag-paragraph-background-gdk}@code{text-tag-paragraph-background-gdk}.
2072 @item @anchor{slot.text-tag.paragraph-background-set}paragraph-background-set. Type: @code{boolean}. Accessor: @anchor{fn.text-tag-paragraph-background-set}@code{text-tag-paragraph-background-set}.
2073 @item @anchor{slot.text-tag.pixels-above-lines}pixels-above-lines. Type: @code{integer}. Accessor: @anchor{fn.text-tag-pixels-above-lines}@code{text-tag-pixels-above-lines}.
2074 @item @anchor{slot.text-tag.pixels-above-lines-set}pixels-above-lines-set. Type: @code{boolean}. Accessor: @anchor{fn.text-tag-pixels-above-lines-set}@code{text-tag-pixels-above-lines-set}.
2075 @item @anchor{slot.text-tag.pixels-below-lines}pixels-below-lines. Type: @code{integer}. Accessor: @anchor{fn.text-tag-pixels-below-lines}@code{text-tag-pixels-below-lines}.
2076 @item @anchor{slot.text-tag.pixels-below-lines-set}pixels-below-lines-set. Type: @code{boolean}. Accessor: @anchor{fn.text-tag-pixels-below-lines-set}@code{text-tag-pixels-below-lines-set}.
2077 @item @anchor{slot.text-tag.pixels-inside-wrap}pixels-inside-wrap. Type: @code{integer}. Accessor: @anchor{fn.text-tag-pixels-inside-wrap}@code{text-tag-pixels-inside-wrap}.
2078 @item @anchor{slot.text-tag.pixels-inside-wrap-set}pixels-inside-wrap-set. Type: @code{boolean}. Accessor: @anchor{fn.text-tag-pixels-inside-wrap-set}@code{text-tag-pixels-inside-wrap-set}.
2079 @item @anchor{slot.text-tag.priority}priority. Type: @code{integer}. Accessor: @anchor{fn.text-tag-priority}@code{text-tag-priority}.
2080 @item @anchor{slot.text-tag.right-margin}right-margin. Type: @code{integer}. Accessor: @anchor{fn.text-tag-right-margin}@code{text-tag-right-margin}.
2081 @item @anchor{slot.text-tag.right-margin-set}right-margin-set. Type: @code{boolean}. Accessor: @anchor{fn.text-tag-right-margin-set}@code{text-tag-right-margin-set}.
2082 @item @anchor{slot.text-tag.rise}rise. Type: @code{integer}. Accessor: @anchor{fn.text-tag-rise}@code{text-tag-rise}.
2083 @item @anchor{slot.text-tag.rise-set}rise-set. Type: @code{boolean}. Accessor: @anchor{fn.text-tag-rise-set}@code{text-tag-rise-set}.
2084 @item @anchor{slot.text-tag.scale}scale. Type: @code{double-float}. Accessor: @anchor{fn.text-tag-scale}@code{text-tag-scale}.
2085 @item @anchor{slot.text-tag.scale-set}scale-set. Type: @code{boolean}. Accessor: @anchor{fn.text-tag-scale-set}@code{text-tag-scale-set}.
2086 @item @anchor{slot.text-tag.size}size. Type: @code{integer}. Accessor: @anchor{fn.text-tag-size}@code{text-tag-size}.
2087 @item @anchor{slot.text-tag.size-points}size-points. Type: @code{double-float}. Accessor: @anchor{fn.text-tag-size-points}@code{text-tag-size-points}.
2088 @item @anchor{slot.text-tag.size-set}size-set. Type: @code{boolean}. Accessor: @anchor{fn.text-tag-size-set}@code{text-tag-size-set}.
2089 @item @anchor{slot.text-tag.stretch}stretch. Type: @code{PangoStretch}. Accessor: @anchor{fn.text-tag-stretch}@code{text-tag-stretch}.
2090 @item @anchor{slot.text-tag.stretch-set}stretch-set. Type: @code{boolean}. Accessor: @anchor{fn.text-tag-stretch-set}@code{text-tag-stretch-set}.
2091 @item @anchor{slot.text-tag.strikethrough}strikethrough. Type: @code{boolean}. Accessor: @anchor{fn.text-tag-strikethrough}@code{text-tag-strikethrough}.
2092 @item @anchor{slot.text-tag.strikethrough-set}strikethrough-set. Type: @code{boolean}. Accessor: @anchor{fn.text-tag-strikethrough-set}@code{text-tag-strikethrough-set}.
2093 @item @anchor{slot.text-tag.style}style. Type: @code{PangoStyle}. Accessor: @anchor{fn.text-tag-style}@code{text-tag-style}.
2094 @item @anchor{slot.text-tag.style-set}style-set. Type: @code{boolean}. Accessor: @anchor{fn.text-tag-style-set}@code{text-tag-style-set}.
2095 @item @anchor{slot.text-tag.tabs}tabs. Type: @code{PangoTabArray}. Accessor: @anchor{fn.text-tag-tabs}@code{text-tag-tabs}.
2096 @item @anchor{slot.text-tag.tabs-set}tabs-set. Type: @code{boolean}. Accessor: @anchor{fn.text-tag-tabs-set}@code{text-tag-tabs-set}.
2097 @item @anchor{slot.text-tag.underline}underline. Type: @code{PangoUnderline}. Accessor: @anchor{fn.text-tag-underline}@code{text-tag-underline}.
2098 @item @anchor{slot.text-tag.underline-set}underline-set. Type: @code{boolean}. Accessor: @anchor{fn.text-tag-underline-set}@code{text-tag-underline-set}.
2099 @item @anchor{slot.text-tag.variant}variant. Type: @code{PangoVariant}. Accessor: @anchor{fn.text-tag-variant}@code{text-tag-variant}.
2100 @item @anchor{slot.text-tag.variant-set}variant-set. Type: @code{boolean}. Accessor: @anchor{fn.text-tag-variant-set}@code{text-tag-variant-set}.
2101 @item @anchor{slot.text-tag.weight}weight. Type: @code{integer}. Accessor: @anchor{fn.text-tag-weight}@code{text-tag-weight}.
2102 @item @anchor{slot.text-tag.weight-set}weight-set. Type: @code{boolean}. Accessor: @anchor{fn.text-tag-weight-set}@code{text-tag-weight-set}.
2103 @item @anchor{slot.text-tag.wrap-mode}wrap-mode. Type: @ref{wrap-mode}. Accessor: @anchor{fn.text-tag-wrap-mode}@code{text-tag-wrap-mode}.
2104 @item @anchor{slot.text-tag.wrap-mode-set}wrap-mode-set. Type: @code{boolean}. Accessor: @anchor{fn.text-tag-wrap-mode-set}@code{text-tag-wrap-mode-set}.
2105 @end itemize
2108 Signals:
2109 @itemize
2110 @item @anchor{signal.text-tag.event}"event". Signature: (instance @ref{text-tag}), (arg-1 @ref{g-object}), (arg-2 @ref{event}), (arg-3 @ref{text-iter}) @result{} @code{boolean}. Options: run-last.
2111 @end itemize
2116 @node text-tag-table
2117 @section text-tag-table
2118 @Class text-tag-table
2119 Superclass: @ref{g-object}
2121 Slots:
2122 @itemize
2123 @end itemize
2126 Signals:
2127 @itemize
2128 @item @anchor{signal.text-tag-table.tag-added}"tag-added". Signature: (instance @ref{text-tag-table}), (arg-1 @ref{text-tag}) @result{} void. Options: run-last.
2129 @item @anchor{signal.text-tag-table.tag-changed}"tag-changed". Signature: (instance @ref{text-tag-table}), (arg-1 @ref{text-tag}), (arg-2 @code{boolean}) @result{} void. Options: run-last.
2130 @item @anchor{signal.text-tag-table.tag-removed}"tag-removed". Signature: (instance @ref{text-tag-table}), (arg-1 @ref{text-tag}) @result{} void. Options: run-last.
2131 @end itemize
2136 @node toggle-action
2137 @section toggle-action
2138 @Class toggle-action
2139 Superclass: @ref{action}
2141 Subclasses: @ref{radio-action}
2143 Slots:
2144 @itemize
2145 @item @anchor{slot.toggle-action.active}active. Type: @code{boolean}. Accessor: @anchor{fn.toggle-action-active}@code{toggle-action-active}.
2146 @item @anchor{slot.toggle-action.draw-as-radio}draw-as-radio. Type: @code{boolean}. Accessor: @anchor{fn.toggle-action-draw-as-radio}@code{toggle-action-draw-as-radio}.
2147 @end itemize
2150 Signals:
2151 @itemize
2152 @item @anchor{signal.toggle-action.toggled}"toggled". Signature: (instance @ref{toggle-action}) @result{} void. Options: run-first.
2153 @end itemize
2158 @node tooltip
2159 @section tooltip
2160 @Class tooltip
2161 Superclass: @ref{g-object}
2163 Slots:
2164 @itemize
2165 @end itemize
2168 Signals:
2169 @itemize
2170 @end itemize
2175 @node tree-lisp-store
2176 @section tree-lisp-store
2177 @Class tree-lisp-store
2178 Superclass: @ref{g-object}
2180 Slots:
2181 @itemize
2182 @end itemize
2185 Signals:
2186 @itemize
2187 @end itemize
2192 @node tree-model-filter
2193 @section tree-model-filter
2194 @Class tree-model-filter
2195 Superclass: @ref{g-object}
2197 Slots:
2198 @itemize
2199 @item @anchor{slot.tree-model-filter.child-model}child-model. Type: @ref{tree-model}. Accessor: @anchor{fn.tree-model-filter-child-model}@code{tree-model-filter-child-model}.
2200 @item @anchor{slot.tree-model-filter.virtual-root}virtual-root. Type: @ref{tree-path}. Accessor: @anchor{fn.tree-model-filter-virtual-root}@code{tree-model-filter-virtual-root}.
2201 @end itemize
2204 Signals:
2205 @itemize
2206 @end itemize
2211 @node tree-model-sort
2212 @section tree-model-sort
2213 @Class tree-model-sort
2214 Superclass: @ref{g-object}
2216 Slots:
2217 @itemize
2218 @item @anchor{slot.tree-model-sort.model}model. Type: @ref{tree-model}. Accessor: @anchor{fn.tree-model-sort-model}@code{tree-model-sort-model}.
2219 @end itemize
2222 Signals:
2223 @itemize
2224 @end itemize
2229 @node tree-path
2230 @section tree-path
2231 @Class tree-path
2232 Superclass: @ref{g-boxed-opaque}
2234 Slots:
2235 @itemize
2236 @end itemize
2243 @node tree-selection
2244 @section tree-selection
2245 @Class tree-selection
2246 Superclass: @ref{g-object}
2248 Slots:
2249 @itemize
2250 @item @anchor{slot.tree-selection.mode}mode. Type: @ref{selection-mode}. Accessor: @anchor{fn.tree-selection-mode}@code{tree-selection-mode}.
2251 @item @anchor{slot.tree-selection.select-function}select-function. Type: ????. Accessor: @anchor{fn.tree-selection-select-function}@code{tree-selection-select-function}.
2252 @end itemize
2255 Signals:
2256 @itemize
2257 @item @anchor{signal.tree-selection.changed}"changed". Signature: (instance @ref{tree-selection}) @result{} void. Options: run-first.
2258 @end itemize
2263 @node tree-store
2264 @section tree-store
2265 @Class tree-store
2266 Superclass: @ref{g-object}
2268 Slots:
2269 @itemize
2270 @end itemize
2273 Signals:
2274 @itemize
2275 @end itemize
2280 @node tree-view-column
2281 @section tree-view-column
2282 @Class tree-view-column
2283 Superclass: @ref{gtk-object}
2285 Slots:
2286 @itemize
2287 @item @anchor{slot.tree-view-column.alignment}alignment. Type: @code{single-float}. Accessor: @anchor{fn.tree-view-column-alignment}@code{tree-view-column-alignment}.
2288 @item @anchor{slot.tree-view-column.cell-renderers}cell-renderers. Type: list of @ref{g-object}. Accessor: @anchor{fn.tree-view-column-cell-renderers}@code{tree-view-column-cell-renderers}. Read-only.
2289 @item @anchor{slot.tree-view-column.clickable}clickable. Type: @code{boolean}. Accessor: @anchor{fn.tree-view-column-clickable}@code{tree-view-column-clickable}.
2290 @item @anchor{slot.tree-view-column.expand}expand. Type: @code{boolean}. Accessor: @anchor{fn.tree-view-column-expand}@code{tree-view-column-expand}.
2291 @item @anchor{slot.tree-view-column.fixed-width}fixed-width. Type: @code{integer}. Accessor: @anchor{fn.tree-view-column-fixed-width}@code{tree-view-column-fixed-width}.
2292 @item @anchor{slot.tree-view-column.max-width}max-width. Type: @code{integer}. Accessor: @anchor{fn.tree-view-column-max-width}@code{tree-view-column-max-width}.
2293 @item @anchor{slot.tree-view-column.min-width}min-width. Type: @code{integer}. Accessor: @anchor{fn.tree-view-column-min-width}@code{tree-view-column-min-width}.
2294 @item @anchor{slot.tree-view-column.reorderable}reorderable. Type: @code{boolean}. Accessor: @anchor{fn.tree-view-column-reorderable}@code{tree-view-column-reorderable}.
2295 @item @anchor{slot.tree-view-column.resizable}resizable. Type: @code{boolean}. Accessor: @anchor{fn.tree-view-column-resizable}@code{tree-view-column-resizable}.
2296 @item @anchor{slot.tree-view-column.sizing}sizing. Type: @ref{tree-view-column-sizing}. Accessor: @anchor{fn.tree-view-column-sizing}@code{tree-view-column-sizing}.
2297 @item @anchor{slot.tree-view-column.sort-column-id}sort-column-id. Type: @code{integer}. Accessor: @anchor{fn.tree-view-column-sort-column-id}@code{tree-view-column-sort-column-id}.
2298 @item @anchor{slot.tree-view-column.sort-indicator}sort-indicator. Type: @code{boolean}. Accessor: @anchor{fn.tree-view-column-sort-indicator}@code{tree-view-column-sort-indicator}.
2299 @item @anchor{slot.tree-view-column.sort-order}sort-order. Type: @ref{sort-type}. Accessor: @anchor{fn.tree-view-column-sort-order}@code{tree-view-column-sort-order}.
2300 @item @anchor{slot.tree-view-column.spacing}spacing. Type: @code{integer}. Accessor: @anchor{fn.tree-view-column-spacing}@code{tree-view-column-spacing}.
2301 @item @anchor{slot.tree-view-column.title}title. Type: @code{string}. Accessor: @anchor{fn.tree-view-column-title}@code{tree-view-column-title}.
2302 @item @anchor{slot.tree-view-column.tree-view}tree-view. Type: @ref{g-object}. Accessor: @anchor{fn.tree-view-column-tree-view}@code{tree-view-column-tree-view}. Read-only.
2303 @item @anchor{slot.tree-view-column.visible}visible. Type: @code{boolean}. Accessor: @anchor{fn.tree-view-column-visible}@code{tree-view-column-visible}.
2304 @item @anchor{slot.tree-view-column.widget}widget. Type: @ref{widget}. Accessor: @anchor{fn.tree-view-column-widget}@code{tree-view-column-widget}.
2305 @item @anchor{slot.tree-view-column.width}width. Type: @code{integer}. Accessor: @anchor{fn.tree-view-column-width}@code{tree-view-column-width}. Read-only.
2306 @end itemize
2309 Signals:
2310 @itemize
2311 @item @anchor{signal.tree-view-column.clicked}"clicked". Signature: (instance @ref{tree-view-column}) @result{} void. Options: run-last.
2312 @end itemize
2317 @node ui-manager
2318 @section ui-manager
2319 @Class ui-manager
2320 Superclass: @ref{g-object}
2322 Slots:
2323 @itemize
2324 @item @anchor{slot.ui-manager.accel-group}accel-group. Type: @ref{g-object}. Accessor: @anchor{fn.ui-manager-accel-group}@code{ui-manager-accel-group}. Read-only.
2325 @item @anchor{slot.ui-manager.add-tearoffs}add-tearoffs. Type: @code{boolean}. Accessor: @anchor{fn.ui-manager-add-tearoffs}@code{ui-manager-add-tearoffs}.
2326 @item @anchor{slot.ui-manager.ui}ui. Type: @code{string}. Accessor: @anchor{fn.ui-manager-ui}@code{ui-manager-ui}. Read-only.
2327 @end itemize
2330 Signals:
2331 @itemize
2332 @item @anchor{signal.ui-manager.actions-changed}"actions-changed". Signature: (instance @ref{ui-manager}) @result{} void. Options: run-first, no-recurse.
2333 @item @anchor{signal.ui-manager.add-widget}"add-widget". Signature: (instance @ref{ui-manager}), (arg-1 @ref{widget}) @result{} void. Options: run-first, no-recurse.
2334 @item @anchor{signal.ui-manager.connect-proxy}"connect-proxy". Signature: (instance @ref{ui-manager}), (arg-1 @ref{action}), (arg-2 @ref{widget}) @result{} void. Options: run-first, no-recurse.
2335 @item @anchor{signal.ui-manager.disconnect-proxy}"disconnect-proxy". Signature: (instance @ref{ui-manager}), (arg-1 @ref{action}), (arg-2 @ref{widget}) @result{} void. Options: run-first, no-recurse.
2336 @item @anchor{signal.ui-manager.post-activate}"post-activate". Signature: (instance @ref{ui-manager}), (arg-1 @ref{action}) @result{} void. Options: run-first, no-recurse.
2337 @item @anchor{signal.ui-manager.pre-activate}"pre-activate". Signature: (instance @ref{ui-manager}), (arg-1 @ref{action}) @result{} void. Options: run-first, no-recurse.
2338 @end itemize
2343 @node window-group
2344 @section window-group
2345 @Class window-group
2346 Superclass: @ref{g-object}
2348 Window-group limits the effect of grabs. Grabs added with @ref{grab-add} only affect windows within the same @ref{window-group}.
2350 Slots:
2351 @itemize
2352 @item @anchor{slot.window-group.windows}windows. Type: list of @ref{gtk-window}. Accessor: @anchor{fn.window-group-windows}@code{window-group-windows}. Read-only.
2354 A list of the @ref{gtk-window}s that belong to @ref{window-group}.
2355 @end itemize
2358 Signals:
2359 @itemize
2360 @end itemize
2362 @RMethod window-group-add-window
2363 @lisp
2364 (window-group-add-window window-group window)
2365 @end lisp
2367 Adds a @var{window} (a @ref{gtk-window}) to a @var{window-group} (a @ref{window-group})
2369 @RMethod window-group-remove-window
2370 @lisp
2371 (window-group-remove-window window-group window
2372 @end lisp
2374 Removes a @var{window} (a @ref{gtk-window}) from a @var{window-group} (a @ref{window-group})