Add GtkHScale and GtkVScale documentation
[cl-gtk2.git] / doc / gtk.widgets.texi
1 @menu
2 * about-dialog::
3 * accel-label::
4 * alignment::
5 * arrow::
6 * aspect-frame::
7 * assistant::
8 * bin::
9 * box::
10 * button::
11 * button-box::
12 * calendar::
13 * cell-view::
14 * check-button::
15 * check-menu-item::
16 * color-button::
17 * color-selection::
18 * color-selection-dialog::
19 * combo-box::
20 * combo-box-entry::
21 * container::
22 * curve::
23 * dialog::
24 * drawing-area::
25 * entry::
26 * event-box::
27 * expander::
28 * file-chooser-button::
29 * file-chooser-dialog::
30 * file-chooser-widget::
31 * fixed::
32 * font-button::
33 * font-selection::
34 * font-selection-dialog::
35 * frame::
36 * gamma-curve::
37 * gtk-window::
38 * h-box::
39 * h-button-box::
40 * h-paned::
41 * h-ruler::
42 * h-s-v::
43 * h-scale::
44 * h-scrollbar::
45 * h-separator::
46 * handle-box::
47 * icon-view::
48 * image::
49 * image-menu-item::
50 * input-dialog::
51 * invisible::
52 * item::
53 * label::
54 * layout::
55 * link-button::
56 * menu::
57 * menu-bar::
58 * menu-item::
59 * menu-shell::
60 * menu-tool-button::
61 * message-dialog::
62 * misc::
63 * notebook::
64 * old-editable::
65 * paned::
66 * plug::
67 * progress::
68 * progress-bar::
69 * radio-button::
70 * radio-menu-item::
71 * radio-tool-button::
72 * range::
73 * recent-chooser-dialog::
74 * recent-chooser-menu::
75 * recent-chooser-widget::
76 * ruler::
77 * scale::
78 * scale-button::
79 * scrollbar::
80 * scrolled-window::
81 * separator::
82 * separator-menu-item::
83 * separator-tool-item::
84 * socket::
85 * spin-button::
86 * statusbar::
87 * table::
88 * tearoff-menu-item::
89 * text::
90 * text-view::
91 * toggle-button::
92 * toggle-tool-button::
93 * tool-button::
94 * tool-item::
95 * toolbar::
96 * tree::
97 * tree-item::
98 * tree-view::
99 * v-box::
100 * v-button-box::
101 * v-paned::
102 * v-ruler::
103 * v-scale::
104 * v-scrollbar::
105 * v-separator::
106 * viewport::
107 * volume-button::
108 * widget::
109 @end menu
110
111 @node about-dialog
112 @section about-dialog
113 @Class about-dialog
114 Superclass: @ref{dialog} @ref{atk-implementor-iface} @ref{buildable}
115
116 The @ref{about-dialog} offers a simple way to display information about a program like its logo, name, copyright, website and license. It is also possible to give credits to the authors, documenters, translators and artists who have worked on the program. An about dialog is typically opened when the user selects the About option from the Help menu. All parts of the dialog are optional.
117
118 About dialog often contain links and email addresses. @ref{about-dialog} supports this by offering global hooks (TODO: not implemented in cl-gtk2), which are called when the user clicks on a link or email address, see gtk_about_dialog_set_email_hook() and gtk_about_dialog_set_url_hook(). Email addresses in the authors, documenters and artists properties are recognized by looking for @code{<user@@host>}, URLs are recognized by looking for @code{http://url}, with url extending to the next space, tab or line break.
119
120 When setting the website and email hooks for the @ref{about-dialog} widget, you should remember that the order is important: you should set the hook functions before setting the website and email URL properties. Otherwise the @ref{about-dialog} widget will not display the website and the email addresses as clickable.
121
122 Note that GTK+ sets a default title of @code{_("About %s")} on the dialog window (where @code{%s} is replaced by the name of the application, but in order to ensure proper translation of the title, applications should set the title property explicitly when constructing a @ref{about-dialog}, as shown in the following example:
123
124 @lisp
125 (make-instance 'gtk:about-dialog :program-name "ExampleCode" :title "About ExampleCode")
126 @end lisp
127
128
129 Slots:
130 @itemize
131 @item @anchor{slot.about-dialog.artists}artists. Type: list of @code{string}. Accessor: @anchor{fn.about-dialog-artists}@code{about-dialog-artists}.
132
133 The people who contributed artwork to the program, as a list of strings. Each string may contain email addresses and URLs, which will be displayed as links, see the description for more details.
134 @item @anchor{slot.about-dialog.authors}authors. Type: list of @code{string}. Accessor: @anchor{fn.about-dialog-authors}@code{about-dialog-authors}.
135
136 The authors of the program, as a list of strings. Each string may contain email addresses and URLs, which will be displayed as links, see the introduction for more details.
137 @item @anchor{slot.about-dialog.comments}comments. Type: @code{string}. Accessor: @anchor{fn.about-dialog-comments}@code{about-dialog-comments}.
138
139 Comments about the program. This string is displayed in a label in the main dialog, thus it should be a short explanation of the main purpose of the program, not a detailed list of features.
140
141 Default value: NIL
142 @item @anchor{slot.about-dialog.copyright}copyright. Type: @code{string}. Accessor: @anchor{fn.about-dialog-copyright}@code{about-dialog-copyright}.
143
144 Copyright information for the program.
145
146 Default value: NIL
147 @item @anchor{slot.about-dialog.documenters}documenters. Type: list of @code{string}. Accessor: @anchor{fn.about-dialog-documenters}@code{about-dialog-documenters}.
148
149 The people documenting the program, as a list of strings. Each string may contain email addresses and URLs, which will be displayed as links, see the introduction for more details.
150 @item @anchor{slot.about-dialog.license}license. Type: @code{string}. Accessor: @anchor{fn.about-dialog-license}@code{about-dialog-license}.
151
152 The license of the program. This string is displayed in a text view in a secondary dialog, therefore it is fine to use a long multi-paragraph text. Note that the text is only wrapped in the text view if the @SlotRef{about-dialog,wrap-license} property is set to True; otherwise the text itself must contain the intended linebreaks.
153
154 Default value: NIL
155 @item @anchor{slot.about-dialog.logo}logo. Type: @ref{pixbuf}. Accessor: @anchor{fn.about-dialog-logo}@code{about-dialog-logo}.
156
157 A logo for the about box. If this is not set, it defaults to gtk_window_get_default_icon_list().
158 @item @anchor{slot.about-dialog.logo-icon-name}logo-icon-name. Type: @code{string}. Accessor: @anchor{fn.about-dialog-logo-icon-name}@code{about-dialog-logo-icon-name}.
159
160 A named icon to use as the logo for the about box. This property overrides the @SlotRef{about-dialog,logo} property.
161
162 Default value: NIL
163 @item @anchor{slot.about-dialog.program-name}program-name. Type: @code{string}. Accessor: @anchor{fn.about-dialog-program-name}@code{about-dialog-program-name}.
164
165 The name of the program. If this is not set, it defaults to g_get_application_name().
166
167 Default value: NIL
168 @item @anchor{slot.about-dialog.translator-credits}translator-credits. Type: @code{string}. Accessor: @anchor{fn.about-dialog-translator-credits}@code{about-dialog-translator-credits}.
169
170 Credits to the translators. This string should be marked as translatable. The string may contain email addresses and URLs, which will be displayed as links, see the introduction for more details.
171
172 Default value: NIL
173 @item @anchor{slot.about-dialog.version}version. Type: @code{string}. Accessor: @anchor{fn.about-dialog-version}@code{about-dialog-version}.
174
175 The version of the program.
176
177 Default value: NIL
178 @item @anchor{slot.about-dialog.website}website. Type: @code{string}. Accessor: @anchor{fn.about-dialog-website}@code{about-dialog-website}.
179
180 The URL for the link to the website of the program. This should be a string starting with "http://.
181
182 Default value: NIL
183 @item @anchor{slot.about-dialog.website-label}website-label. Type: @code{string}. Accessor: @anchor{fn.about-dialog-website-label}@code{about-dialog-website-label}.
184
185 The label for the link to the website of the program. If this is not set, it defaults to the URL specified in the website property.
186
187 Default value: NIL
188 @item @anchor{slot.about-dialog.wrap-license}wrap-license. Type: @code{boolean}. Accessor: @anchor{fn.about-dialog-wrap-license}@code{about-dialog-wrap-license}.
189
190 Whether to wrap the text in the license dialog.
191
192 Default value: False
193 @end itemize
194
195 Signals:
196 @itemize
197 @end itemize
198
199
200
201
202 @node accel-label
203 @section accel-label
204 @Class accel-label
205 Superclass: @ref{label} @ref{atk-implementor-iface} @ref{buildable}
206
207 The @ref{accel-label} widget is a subclass of @ref{label} that also displays an accelerator key on the right of the label text, e.g. 'Ctl+S'. It is commonly used in menus to show the keyboard short-cuts for commands.
208
209 The accelerator key to display is not set explicitly. Instead, the @ref{accel-label} displays the accelerators which have been added to a particular widget. This widget is set by @SlotRef{accel-label,accel-widget}.
210
211 For example, a @ref{menu-item} widget may have an accelerator added to emit the @SignalRef{menu-item,activate} signal when the 'Ctl+S' key combination is pressed. A @ref{accel-label} is created and added to the @ref{accel-label}, and @SlotRef{accel-label,accel-widget} is set to the @ref{menu-item} as the second argument. The @ref{accel-label} will now display 'Ctl+S' after its label.
212
213 @c Note that creating a @ref{menu-item} with gtk_menu_item_new_with_label() (or one of the similar functions for GtkCheckMenuItem and GtkRadioMenuItem) automatically adds a GtkAccelLabel to the GtkMenuItem and calls gtk_accel_label_set_accel_widget() to set it up for you.
214
215 A @ref{accel-label} will only display accelerators which have @FlagsVRef{accel-flags,visible} set. A@ref{accel-label} can display multiple accelerators and even signal names, though it is almost always used to display just one accelerator key.
216
217 Slots:
218 @itemize
219 @item @anchor{slot.accel-label.accel-closure}accel-closure. Type: @code{GClosure}. Accessor: @anchor{fn.accel-label-accel-closure}@code{accel-label-accel-closure}.
220
221 The closure to be monitored for accelerator changes.
222
223 TODO: GClosure type mapping is not supported
224 @item @anchor{slot.accel-label.accel-widget}accel-widget. Type: @ref{widget}. Accessor: @anchor{fn.accel-label-accel-widget}@code{accel-label-accel-widget}.
225
226 The widget to be monitored for accelerator changes.
227 @end itemize
228
229
230 Signals:
231 @itemize
232 @end itemize
233
234
235
236
237 @node alignment
238 @section alignment
239 @Class alignment
240 Superclass: @ref{bin} @ref{atk-implementor-iface} @ref{buildable}
241
242 Slots:
243 @itemize
244 @item @anchor{slot.alignment.bottom-padding}bottom-padding. Type: @code{integer}. Accessor: @anchor{fn.alignment-bottom-padding}@code{alignment-bottom-padding}.
245 @item @anchor{slot.alignment.left-padding}left-padding. Type: @code{integer}. Accessor: @anchor{fn.alignment-left-padding}@code{alignment-left-padding}.
246 @item @anchor{slot.alignment.right-padding}right-padding. Type: @code{integer}. Accessor: @anchor{fn.alignment-right-padding}@code{alignment-right-padding}.
247 @item @anchor{slot.alignment.top-padding}top-padding. Type: @code{integer}. Accessor: @anchor{fn.alignment-top-padding}@code{alignment-top-padding}.
248 @item @anchor{slot.alignment.xalign}xalign. Type: @code{single-float}. Accessor: @anchor{fn.alignment-xalign}@code{alignment-xalign}.
249 @item @anchor{slot.alignment.xscale}xscale. Type: @code{single-float}. Accessor: @anchor{fn.alignment-xscale}@code{alignment-xscale}.
250 @item @anchor{slot.alignment.yalign}yalign. Type: @code{single-float}. Accessor: @anchor{fn.alignment-yalign}@code{alignment-yalign}.
251 @item @anchor{slot.alignment.yscale}yscale. Type: @code{single-float}. Accessor: @anchor{fn.alignment-yscale}@code{alignment-yscale}.
252 @end itemize
253
254
255 Signals:
256 @itemize
257 @end itemize
258
259
260
261
262 @node arrow
263 @section arrow
264 @Class arrow
265 Superclass: @ref{misc} @ref{atk-implementor-iface} @ref{buildable}
266
267 Slots:
268 @itemize
269 @item @anchor{slot.arrow.arrow-type}arrow-type. Type: @ref{arrow-type}. Accessor: @anchor{fn.arrow-arrow-type}@code{arrow-arrow-type}.
270 @item @anchor{slot.arrow.shadow-type}shadow-type. Type: @ref{shadow-type}. Accessor: @anchor{fn.arrow-shadow-type}@code{arrow-shadow-type}.
271 @end itemize
272
273
274 Signals:
275 @itemize
276 @end itemize
277
278
279
280
281 @node aspect-frame
282 @section aspect-frame
283 @Class aspect-frame
284 Superclass: @ref{frame} @ref{atk-implementor-iface} @ref{buildable}
285
286 Slots:
287 @itemize
288 @item @anchor{slot.aspect-frame.obey-child}obey-child. Type: @code{boolean}. Accessor: @anchor{fn.aspect-frame-obey-child}@code{aspect-frame-obey-child}.
289 @item @anchor{slot.aspect-frame.ratio}ratio. Type: @code{single-float}. Accessor: @anchor{fn.aspect-frame-ratio}@code{aspect-frame-ratio}.
290 @item @anchor{slot.aspect-frame.xalign}xalign. Type: @code{single-float}. Accessor: @anchor{fn.aspect-frame-xalign}@code{aspect-frame-xalign}.
291 @item @anchor{slot.aspect-frame.yalign}yalign. Type: @code{single-float}. Accessor: @anchor{fn.aspect-frame-yalign}@code{aspect-frame-yalign}.
292 @end itemize
293
294
295 Signals:
296 @itemize
297 @end itemize
298
299
300
301
302 @node assistant
303 @section assistant
304 @Class assistant
305 Superclass: @ref{gtk-window} @ref{atk-implementor-iface} @ref{buildable}
306
307 A @ref{assistant} is a widget used to represent a generally complex operation splitted in several steps, guiding the user through its pages and controlling the page flow to collect the necessary data.
308
309 Slots:
310 @itemize
311 @item @anchor{slot.assistant.current-page}current-page. Type: @code{integer}. Accessor: @anchor{fn.assistant-current-page}@code{assistant-current-page}.
312
313 The index (starting from 0) of the current page in the assistant, or -1 if the assistant has no pages.
314 @item @anchor{slot.assistant.forward-page-function}forward-page-function. function. Accessor: @anchor{fn.assistant-forward-page-function}@code{assistant-forward-page-function}. Write-only.
315
316 Page forwarding function is used to determine what will be the next page when the user presses the forward button. Setting this to NIL will make the assistant to use the default forward function, which just goes to the next visible page.
317 The function called both for computing the next page when the user presses the "forward" button and for handling the behavior of the "last" button. The function accepts a single integer - the current page number and returns the page number for the next page.
318 @item @anchor{slot.assistant.n-pages}n-pages. Type: @code{integer}. Accessor: @anchor{fn.assistant-n-pages}@code{assistant-n-pages}. Read-only.
319
320 The number of pages in the assistant
321 @end itemize
322
323
324 Signals:
325 @itemize
326 @item @anchor{signal.assistant.apply}"apply". Signature: (instance @ref{assistant}) @result{} void. Options: run-last.
327
328 This signal is emitted when the apply button is clicked. The default behavior of the @ref{assistant} is to switch to the page after the current page, unless the current page is the last one.
329
330 A handler for the @SignalRef{assistant,apply} signal should carry out the actions for which the wizard has collected data. If the action takes a long time to complete, you might consider to put a page of type @EnumVRef{assistant-page-type,progress} after the confirmation page and handle this operation within the @SignalRef{assistant,prepare} signal of the progress page.
331 @item @anchor{signal.assistant.cancel}"cancel". Signature: (instance @ref{assistant}) @result{} void. Options: run-last.
332
333 This signal is emitted when then the cancel button is clicked.
334 @item @anchor{signal.assistant.close}"close". Signature: (instance @ref{assistant}) @result{} void. Options: run-last.
335
336 This signal is emitted either when the close button of a summary page is clicked, or when the apply button in the last page in the flow (of type @EnumVRef{assistant-page-type,confirm}) is clicked.
337 @item @anchor{signal.assistant.prepare}"prepare". Signature: (instance @ref{assistant}), (page @ref{widget}) @result{} void. Options: run-last.
338
339 This signal is emitted when a new page is set as the assistant's current page, before making the new page visible. A handler for this signal can do any preparation which are necessary before showing page.
340 @end itemize
341
342 @RMethod assistant-nth-page
343 @lisp
344 (assistant-nth-page assistant page-number) @result{} page-widget
345 @end lisp
346
347 Returns the child widget (a @ref{widget}) contained in page number @var{page-number} (an integer).
348
349 @RMethod assistant-append-page
350 @lisp
351 (assistant-append-page assistant page)
352 @end lisp
353
354 Appends a @var{page} (a @ref{widget}) to the @var{assistant} (a @ref{assistant}).
355
356 @RMethod assistant-prepend-page
357 @lisp
358 (assistant-prepend-page assistant page)
359 @end lisp
360
361 Prepends a @var{page} (a @ref{widget}) to the @var{assistant} (a @ref{assistant}).
362
363 @RMethod assistant-insert-page
364 @lisp
365 (assistant-insert-page assistant page position) @result{} page-number
366 @end lisp
367
368 Inserts a @var{page} (a @ref{widget}) in the @var{assistant} (a @ref{assistant}) at a given @var{position}. @var{position} is the index (starting at 0) at which to insert the page, or -1 to append the page. Returns the index of inserted @var{page}.
369
370 @RMethod assistant-add-action-widget
371 @lisp
372 (assistant-add-action-widget assistant widget)
373 @end lisp
374
375 Adds the @var{widget} (a @ref{widget}) to the action area of a @var{assistant} (a @ref{assistant}).
376
377 @RMethod assistant-remove-action-widget
378 @lisp
379 (assistant-remove-action-widget assistant widget)
380 @end lisp
381
382 Removes the @var{widget} (a @ref{widget}) from the action area of a @var{assistant} (a @ref{assistant}).
383
384 @RMethod assistant-update-buttons-state
385 @lisp
386 (assistant-update-buttons-state assistant)
387 @end lisp
388
389 Forces @var{assistant} (a @ref{assistant}) to recompute the buttons state.
390
391 GTK+ automatically takes care of this in most situations, e.g. when the user goes to a different page, or when the visibility or completeness of a page changes.
392
393 One situation where it can be necessary to call this function is when changing a value on the current page affects the future page flow of the assistant.
394
395 @node bin
396 @section bin
397 @Class bin
398 Superclass: @ref{container} @ref{atk-implementor-iface} @ref{buildable}
399
400 Subclasses: @ref{viewport} @ref{scrolled-window} @ref{tool-item} @ref{handle-box} @ref{expander} @ref{event-box} @ref{combo-box} @ref{frame} @ref{alignment} @ref{button} @ref{item} @ref{gtk-window}
401
402 Slots:
403 @itemize
404 @end itemize
405
406
407 Signals:
408 @itemize
409 @end itemize
410
411
412
413
414 @node box
415 @section box
416 @Class box
417 Superclass: @ref{container} @ref{atk-implementor-iface} @ref{buildable} @ref{orientable}
418
419 Subclasses: @ref{h-box} @ref{v-box} @ref{button-box}
420
421 Slots:
422 @itemize
423 @item @anchor{slot.box.homogeneous}homogeneous. Type: @code{boolean}. Accessor: @anchor{fn.box-homogeneous}@code{box-homogeneous}.
424 @item @anchor{slot.box.spacing}spacing. Type: @code{integer}. Accessor: @anchor{fn.box-spacing}@code{box-spacing}.
425 @end itemize
426
427
428 Signals:
429 @itemize
430 @end itemize
431
432
433
434
435 @node button
436 @section button
437 @Class button
438 Superclass: @ref{bin} @ref{atk-implementor-iface} @ref{activatable} @ref{buildable}
439
440 Subclasses: @ref{scale-button} @ref{link-button} @ref{font-button} @ref{color-button} @ref{toggle-button}
441
442 The @ref{button} widget is generally used to attach a function to that is called when the button is pressed. The various signals and how to use them are outlined below.
443
444 The @ref{button} widget can hold any valid child widget. That is it can hold most any other standard @ref{widget}. The most commonly used child is the @ref{label}.
445
446 Slots:
447 @itemize
448 @item @anchor{slot.button.focus-on-click}focus-on-click. Type: @code{boolean}. Accessor: @anchor{fn.button-focus-on-click}@code{button-focus-on-click}.
449
450 Whether the button grabs focus when it is clicked with the mouse.
451
452 Default value: True
453 @item @anchor{slot.button.image}image. Type: @ref{widget}. Accessor: @anchor{fn.button-image}@code{button-image}.
454
455 Child widget to appear next to the button text.
456 @item @anchor{slot.button.image-position}image-position. Type: @ref{position-type}. Accessor: @anchor{fn.button-image-position}@code{button-image-position}.
457
458 The position of the image relative to the text inside the button.
459
460 Default value: @EnumVRef{position-type,left}
461 @item @anchor{slot.button.label}label. Type: @code{string}. Accessor: @anchor{fn.button-label}@code{button-label}.
462
463 Text of the label widget inside the button, if the button contains a label widget.
464
465 Default value: NIL
466 @item @anchor{slot.button.relief}relief. Type: @ref{relief-style}. Accessor: @anchor{fn.button-relief}@code{button-relief}.
467
468 The border relief style.
469
470 Default value: @EnumVRef{relief-style,normal}
471 @item @anchor{slot.button.use-stock}use-stock. Type: @code{boolean}. Accessor: @anchor{fn.button-use-stock}@code{button-use-stock}.
472
473 If set, the label is used to pick a stock item instead of being displayed.
474
475 Default value: False
476 @item @anchor{slot.button.use-underline}use-underline. Type: @code{boolean}. Accessor: @anchor{fn.button-use-underline}@code{button-use-underline}.
477
478 If set, an underline in the text indicates the next character should be used for the mnemonic accelerator key.
479
480 Default value: False
481 @item @anchor{slot.button.xalign}xalign. Type: @code{single-float}. Accessor: @anchor{fn.button-xalign}@code{button-xalign}.
482
483 If the child of the button is a @ref{misc} or @ref{alignment}, this property can be used to control it's horizontal alignment. 0.0 is left aligned, 1.0 is right aligned.
484
485 Allowed values: [0,1]
486
487 Default value: 0.5
488 @item @anchor{slot.button.yalign}yalign. Type: @code{single-float}. Accessor: @anchor{fn.button-yalign}@code{button-yalign}.
489
490 If the child of the button is a @ref{misc} or @ref{alignment}, this property can be used to control it's vertical alignment. 0.0 is left aligned, 1.0 is right aligned.
491
492 Allowed values: [0,1]
493
494 Default value: 0.5
495 @end itemize
496
497
498 Signals:
499 @itemize
500 @item @anchor{signal.button.activate}"activate". Signature: (instance @ref{button}) @result{} void. Options: run-first, action.
501
502 This signal is an action signal and emitting it causes the button to animate press then release. Applications should never connect to this signal, but use the @SignalRef{button,clicked} signal.
503 @item @anchor{signal.button.clicked}"clicked". Signature: (instance @ref{button}) @result{} void. Options: run-first, action.
504
505 Emitted when the button has been activated (pressed and released).
506 @item @anchor{signal.button.enter}"enter". Signature: (instance @ref{button}) @result{} void. Options: run-first.
507
508 Emitted when the pointer enters the button.
509 @item @anchor{signal.button.leave}"leave". Signature: (instance @ref{button}) @result{} void. Options: run-first.
510
511 Emitted when the pointer leaves the button.
512 @item @anchor{signal.button.pressed}"pressed". Signature: (instance @ref{button}) @result{} void. Options: run-first.
513
514 Emitted when the button is pressed.
515 @item @anchor{signal.button.released}"released". Signature: (instance @ref{button}) @result{} void. Options: run-first.
516
517 Emitted when the button is released.
518 @end itemize
519
520
521
522
523 @node button-box
524 @section button-box
525 @Class button-box
526 Superclass: @ref{box} @ref{atk-implementor-iface} @ref{buildable} @ref{orientable}
527
528 Subclasses: @ref{v-button-box} @ref{h-button-box}
529
530 Slots:
531 @itemize
532 @item @anchor{slot.button-box.layout-style}layout-style. Type: @ref{button-box-style}. Accessor: @anchor{fn.button-box-layout-style}@code{button-box-layout-style}.
533 @end itemize
534
535
536 Signals:
537 @itemize
538 @end itemize
539
540
541
542
543 @node calendar
544 @section calendar
545 @Class calendar
546 Superclass: @ref{widget} @ref{atk-implementor-iface} @ref{buildable}
547
548 Slots:
549 @itemize
550 @item @anchor{slot.calendar.day}day. Type: @code{integer}. Accessor: @anchor{fn.calendar-day}@code{calendar-day}.
551 @item @anchor{slot.calendar.detail-function}detail-function. Type: ????. Accessor: @anchor{fn.calendar-detail-function}@code{calendar-detail-function}. Write-only.
552 @item @anchor{slot.calendar.detail-height-rows}detail-height-rows. Type: @code{integer}. Accessor: @anchor{fn.calendar-detail-height-rows}@code{calendar-detail-height-rows}.
553 @item @anchor{slot.calendar.detail-width-chars}detail-width-chars. Type: @code{integer}. Accessor: @anchor{fn.calendar-detail-width-chars}@code{calendar-detail-width-chars}.
554 @item @anchor{slot.calendar.month}month. Type: @code{integer}. Accessor: @anchor{fn.calendar-month}@code{calendar-month}.
555 @item @anchor{slot.calendar.no-month-change}no-month-change. Type: @code{boolean}. Accessor: @anchor{fn.calendar-no-month-change}@code{calendar-no-month-change}.
556 @item @anchor{slot.calendar.show-day-names}show-day-names. Type: @code{boolean}. Accessor: @anchor{fn.calendar-show-day-names}@code{calendar-show-day-names}.
557 @item @anchor{slot.calendar.show-details}show-details. Type: @code{boolean}. Accessor: @anchor{fn.calendar-show-details}@code{calendar-show-details}.
558 @item @anchor{slot.calendar.show-heading}show-heading. Type: @code{boolean}. Accessor: @anchor{fn.calendar-show-heading}@code{calendar-show-heading}.
559 @item @anchor{slot.calendar.show-week-numbers}show-week-numbers. Type: @code{boolean}. Accessor: @anchor{fn.calendar-show-week-numbers}@code{calendar-show-week-numbers}.
560 @item @anchor{slot.calendar.year}year. Type: @code{integer}. Accessor: @anchor{fn.calendar-year}@code{calendar-year}.
561 @end itemize
562
563
564 Signals:
565 @itemize
566 @item @anchor{signal.calendar.day-selected}"day-selected". Signature: (instance @ref{calendar}) @result{} void. Options: run-first.
567 @item @anchor{signal.calendar.day-selected-double-click}"day-selected-double-click". Signature: (instance @ref{calendar}) @result{} void. Options: run-first.
568 @item @anchor{signal.calendar.month-changed}"month-changed". Signature: (instance @ref{calendar}) @result{} void. Options: run-first.
569 @item @anchor{signal.calendar.next-month}"next-month". Signature: (instance @ref{calendar}) @result{} void. Options: run-first.
570 @item @anchor{signal.calendar.next-year}"next-year". Signature: (instance @ref{calendar}) @result{} void. Options: run-first.
571 @item @anchor{signal.calendar.prev-month}"prev-month". Signature: (instance @ref{calendar}) @result{} void. Options: run-first.
572 @item @anchor{signal.calendar.prev-year}"prev-year". Signature: (instance @ref{calendar}) @result{} void. Options: run-first.
573 @end itemize
574
575
576
577
578 @node cell-view
579 @section cell-view
580 @Class cell-view
581 Superclass: @ref{widget} @ref{atk-implementor-iface} @ref{buildable} @ref{cell-layout}
582
583 Slots:
584 @itemize
585 @item @anchor{slot.cell-view.background}background. Type: @code{string}. Accessor: @anchor{fn.cell-view-background}@code{cell-view-background}. Write-only.
586 @item @anchor{slot.cell-view.background-gdk}background-gdk. Type: @ref{color}. Accessor: @anchor{fn.cell-view-background-gdk}@code{cell-view-background-gdk}.
587 @item @anchor{slot.cell-view.background-set}background-set. Type: @code{boolean}. Accessor: @anchor{fn.cell-view-background-set}@code{cell-view-background-set}.
588 @item @anchor{slot.cell-view.displayed-row}displayed-row. Type: @ref{tree-path}. Accessor: @anchor{fn.cell-view-displayed-row}@code{cell-view-displayed-row}.
589 @item @anchor{slot.cell-view.model}model. Type: @ref{tree-model}. Accessor: @anchor{fn.cell-view-model}@code{cell-view-model}.
590 @end itemize
591
592
593 Signals:
594 @itemize
595 @end itemize
596
597
598
599
600 @node check-button
601 @section check-button
602 @Class check-button
603 Superclass: @ref{toggle-button} @ref{atk-implementor-iface} @ref{activatable} @ref{buildable}
604
605 Subclasses: @ref{radio-button}
606
607
608 A @ref{check-button} places a discrete @ref{toggle-button} next to a widget, (usually a @ref{label}). See the @ref{toggle-button} for more information about toggle/check buttons.
609
610 The important signal @SignalRef{toggle-button,toggled} is also inherited from @ref{toggle-button}.
611
612 Slots:
613 @itemize
614 @end itemize
615
616
617 Signals:
618 @itemize
619 @end itemize
620
621
622
623
624 @node check-menu-item
625 @section check-menu-item
626 @Class check-menu-item
627 Superclass: @ref{menu-item} @ref{atk-implementor-iface} @ref{activatable} @ref{buildable}
628
629 Subclasses: @ref{radio-menu-item}
630
631 Slots:
632 @itemize
633 @item @anchor{slot.check-menu-item.active}active. Type: @code{boolean}. Accessor: @anchor{fn.check-menu-item-active}@code{check-menu-item-active}.
634 @item @anchor{slot.check-menu-item.draw-as-radio}draw-as-radio. Type: @code{boolean}. Accessor: @anchor{fn.check-menu-item-draw-as-radio}@code{check-menu-item-draw-as-radio}.
635 @item @anchor{slot.check-menu-item.inconsistent}inconsistent. Type: @code{boolean}. Accessor: @anchor{fn.check-menu-item-inconsistent}@code{check-menu-item-inconsistent}.
636 @end itemize
637
638
639 Signals:
640 @itemize
641 @item @anchor{signal.check-menu-item.toggled}"toggled". Signature: (instance @ref{check-menu-item}) @result{} void. Options: run-first.
642 @end itemize
643
644
645
646
647 @node color-button
648 @section color-button
649 @Class color-button
650 Superclass: @ref{button} @ref{atk-implementor-iface} @ref{activatable} @ref{buildable}
651
652 Slots:
653 @itemize
654 @item @anchor{slot.color-button.alpha}alpha. Type: @code{integer}. Accessor: @anchor{fn.color-button-alpha}@code{color-button-alpha}.
655 @item @anchor{slot.color-button.color}color. Type: @ref{color}. Accessor: @anchor{fn.color-button-color}@code{color-button-color}.
656 @item @anchor{slot.color-button.title}title. Type: @code{string}. Accessor: @anchor{fn.color-button-title}@code{color-button-title}.
657 @item @anchor{slot.color-button.use-alpha}use-alpha. Type: @code{boolean}. Accessor: @anchor{fn.color-button-use-alpha}@code{color-button-use-alpha}.
658 @end itemize
659
660
661 Signals:
662 @itemize
663 @item @anchor{signal.color-button.color-set}"color-set". Signature: (instance @ref{color-button}) @result{} void. Options: run-first.
664 @end itemize
665
666
667
668
669 @node color-selection
670 @section color-selection
671 @Class color-selection
672 Superclass: @ref{v-box} @ref{atk-implementor-iface} @ref{buildable} @ref{orientable}
673
674 Slots:
675 @itemize
676 @item @anchor{slot.color-selection.current-alpha}current-alpha. Type: @code{integer}. Accessor: @anchor{fn.color-selection-current-alpha}@code{color-selection-current-alpha}.
677 @item @anchor{slot.color-selection.current-color}current-color. Type: @ref{color}. Accessor: @anchor{fn.color-selection-current-color}@code{color-selection-current-color}.
678 @item @anchor{slot.color-selection.has-opacity-control}has-opacity-control. Type: @code{boolean}. Accessor: @anchor{fn.color-selection-has-opacity-control}@code{color-selection-has-opacity-control}.
679 @item @anchor{slot.color-selection.has-palette}has-palette. Type: @code{boolean}. Accessor: @anchor{fn.color-selection-has-palette}@code{color-selection-has-palette}.
680 @end itemize
681
682
683 Signals:
684 @itemize
685 @item @anchor{signal.color-selection.color-changed}"color-changed". Signature: (instance @ref{color-selection}) @result{} void. Options: run-first.
686 @end itemize
687
688
689
690
691 @node color-selection-dialog
692 @section color-selection-dialog
693 @Class color-selection-dialog
694 Superclass: @ref{dialog} @ref{atk-implementor-iface} @ref{buildable}
695
696 Slots:
697 @itemize
698 @item @anchor{slot.color-selection-dialog.cancel-button}cancel-button. Type: @ref{widget}. Accessor: @anchor{fn.color-selection-dialog-cancel-button}@code{color-selection-dialog-cancel-button}. Read-only.
699 @item @anchor{slot.color-selection-dialog.color-selection}color-selection. Type: @ref{widget}. Accessor: @anchor{fn.color-selection-dialog-color-selection}@code{color-selection-dialog-color-selection}. Read-only.
700 @item @anchor{slot.color-selection-dialog.help-button}help-button. Type: @ref{widget}. Accessor: @anchor{fn.color-selection-dialog-help-button}@code{color-selection-dialog-help-button}. Read-only.
701 @item @anchor{slot.color-selection-dialog.ok-button}ok-button. Type: @ref{widget}. Accessor: @anchor{fn.color-selection-dialog-ok-button}@code{color-selection-dialog-ok-button}. Read-only.
702 @end itemize
703
704
705 Signals:
706 @itemize
707 @end itemize
708
709
710
711
712 @node combo-box
713 @section combo-box
714 @Class combo-box
715 Superclass: @ref{bin} @ref{atk-implementor-iface} @ref{buildable} @ref{cell-editable} @ref{cell-layout}
716
717 Subclasses: @ref{combo-box-entry}
718
719 Slots:
720 @itemize
721 @item @anchor{slot.combo-box.active}active. Type: @code{integer}. Accessor: @anchor{fn.combo-box-active}@code{combo-box-active}.
722 @item @anchor{slot.combo-box.active-iter}active-iter. Type: @ref{tree-iter}. Accessor: @anchor{fn.combo-box-active-iter}@code{combo-box-active-iter}.
723 @item @anchor{slot.combo-box.add-tearoffs}add-tearoffs. Type: @code{boolean}. Accessor: @anchor{fn.combo-box-add-tearoffs}@code{combo-box-add-tearoffs}.
724 @item @anchor{slot.combo-box.button-sensitivity}button-sensitivity. Type: @ref{sensitivity-type}. Accessor: @anchor{fn.combo-box-button-sensitivity}@code{combo-box-button-sensitivity}.
725 @item @anchor{slot.combo-box.column-span-column}column-span-column. Type: @code{integer}. Accessor: @anchor{fn.combo-box-column-span-column}@code{combo-box-column-span-column}.
726 @item @anchor{slot.combo-box.focus-on-click}focus-on-click. Type: @code{boolean}. Accessor: @anchor{fn.combo-box-focus-on-click}@code{combo-box-focus-on-click}.
727 @item @anchor{slot.combo-box.has-frame}has-frame. Type: @code{boolean}. Accessor: @anchor{fn.combo-box-has-frame}@code{combo-box-has-frame}.
728 @item @anchor{slot.combo-box.model}model. Type: @ref{tree-model}. Accessor: @anchor{fn.combo-box-model}@code{combo-box-model}.
729 @item @anchor{slot.combo-box.popup-shown}popup-shown. Type: @code{boolean}. Accessor: @anchor{fn.combo-box-popup-shown}@code{combo-box-popup-shown}. Read-only.
730 @item @anchor{slot.combo-box.row-separator-func}row-separator-func. Type: ????. Accessor: @anchor{fn.combo-box-row-separator-func}@code{combo-box-row-separator-func}. Write-only.
731 @item @anchor{slot.combo-box.row-span-column}row-span-column. Type: @code{integer}. Accessor: @anchor{fn.combo-box-row-span-column}@code{combo-box-row-span-column}.
732 @item @anchor{slot.combo-box.tearoff-title}tearoff-title. Type: @code{string}. Accessor: @anchor{fn.combo-box-tearoff-title}@code{combo-box-tearoff-title}.
733 @item @anchor{slot.combo-box.wrap-width}wrap-width. Type: @code{integer}. Accessor: @anchor{fn.combo-box-wrap-width}@code{combo-box-wrap-width}.
734 @end itemize
735
736
737 Signals:
738 @itemize
739 @item @anchor{signal.combo-box.changed}"changed". Signature: (instance @ref{combo-box}) @result{} void. Options: run-last.
740 @item @anchor{signal.combo-box.move-active}"move-active". Signature: (instance @ref{combo-box}), (arg-1 @ref{scroll-type}) @result{} void. Options: run-last, action.
741 @item @anchor{signal.combo-box.popdown}"popdown". Signature: (instance @ref{combo-box}) @result{} @code{boolean}. Options: run-last, action.
742 @item @anchor{signal.combo-box.popup}"popup". Signature: (instance @ref{combo-box}) @result{} void. Options: run-last, action.
743 @end itemize
744
745
746
747
748 @node combo-box-entry
749 @section combo-box-entry
750 @Class combo-box-entry
751 Superclass: @ref{combo-box} @ref{atk-implementor-iface} @ref{buildable} @ref{cell-editable} @ref{cell-layout}
752
753 Slots:
754 @itemize
755 @item @anchor{slot.combo-box-entry.text-column}text-column. Type: @code{integer}. Accessor: @anchor{fn.combo-box-entry-text-column}@code{combo-box-entry-text-column}.
756 @end itemize
757
758
759 Signals:
760 @itemize
761 @end itemize
762
763
764
765
766 @node container
767 @section container
768 @Class container
769 Superclass: @ref{widget} @ref{atk-implementor-iface} @ref{buildable}
770
771 Subclasses: @ref{tree} @ref{toolbar} @ref{text-view} @ref{table} @ref{socket} @ref{layout} @ref{paned} @ref{fixed} @ref{box} @ref{icon-view} @ref{tree-view} @ref{notebook} @ref{menu-shell} @ref{bin}
772
773 Slots:
774 @itemize
775 @item @anchor{slot.container.border-width}border-width. Type: @code{integer}. Accessor: @anchor{fn.container-border-width}@code{container-border-width}.
776 @item @anchor{slot.container.child}child. Type: @ref{widget}. Accessor: @anchor{fn.container-child}@code{container-child}. Write-only.
777 @item @anchor{slot.container.focus-child}focus-child. Type: @ref{g-object}. Accessor: @anchor{fn.container-focus-child}@code{container-focus-child}.
778 @item @anchor{slot.container.focus-hadjustment}focus-hadjustment. Type: @ref{g-object}. Accessor: @anchor{fn.container-focus-hadjustment}@code{container-focus-hadjustment}.
779 @item @anchor{slot.container.focus-vadjustment}focus-vadjustment. Type: @ref{g-object}. Accessor: @anchor{fn.container-focus-vadjustment}@code{container-focus-vadjustment}.
780 @item @anchor{slot.container.resize-mode}resize-mode. Type: @ref{resize-mode}. Accessor: @anchor{fn.container-resize-mode}@code{container-resize-mode}.
781 @end itemize
782
783
784 Signals:
785 @itemize
786 @item @anchor{signal.container.add}"add". Signature: (instance @ref{container}), (arg-1 @ref{widget}) @result{} void. Options: run-first.
787 @item @anchor{signal.container.check-resize}"check-resize". Signature: (instance @ref{container}) @result{} void. Options: run-last.
788 @item @anchor{signal.container.remove}"remove". Signature: (instance @ref{container}), (arg-1 @ref{widget}) @result{} void. Options: run-first.
789 @item @anchor{signal.container.set-focus-child}"set-focus-child". Signature: (instance @ref{container}), (arg-1 @ref{widget}) @result{} void. Options: run-first.
790 @end itemize
791
792
793
794
795 @node curve
796 @section curve
797 @Class curve
798 Superclass: @ref{drawing-area} @ref{atk-implementor-iface} @ref{buildable}
799
800 Slots:
801 @itemize
802 @item @anchor{slot.curve.curve-type}curve-type. Type: @ref{curve-type}. Accessor: @anchor{fn.curve-curve-type}@code{curve-curve-type}.
803 @item @anchor{slot.curve.max-x}max-x. Type: @code{single-float}. Accessor: @anchor{fn.curve-max-x}@code{curve-max-x}.
804 @item @anchor{slot.curve.max-y}max-y. Type: @code{single-float}. Accessor: @anchor{fn.curve-max-y}@code{curve-max-y}.
805 @item @anchor{slot.curve.min-x}min-x. Type: @code{single-float}. Accessor: @anchor{fn.curve-min-x}@code{curve-min-x}.
806 @item @anchor{slot.curve.min-y}min-y. Type: @code{single-float}. Accessor: @anchor{fn.curve-min-y}@code{curve-min-y}.
807 @end itemize
808
809
810 Signals:
811 @itemize
812 @item @anchor{signal.curve.curve-type-changed}"curve-type-changed". Signature: (instance @ref{curve}) @result{} void. Options: run-first.
813 @end itemize
814
815
816
817
818 @node dialog
819 @section dialog
820 @Class dialog
821 Superclass: @ref{gtk-window} @ref{atk-implementor-iface} @ref{buildable}
822
823 Subclasses: @ref{recent-chooser-dialog} @ref{message-dialog} @ref{input-dialog} @ref{font-selection-dialog} @ref{file-chooser-dialog} @ref{color-selection-dialog} @ref{about-dialog}
824
825 Dialog boxes are a convenient way to prompt the user for a small amount of input, e.g. to display a message, ask a question, or anything else that does not require extensive effort on the user's part.
826
827 GTK+ treats a dialog as a window split vertically. The top section is a @ref{v-box}, and is where widgets such as a @ref{label} or a @ref{entry} should be packed. The bottom area is known as the @SlotRef{dialog,action-area}. This is generally used for packing buttons into the dialog which may perform functions such as cancel, ok, or apply. The two areas are separated by a @ref{h-separator}.
828
829 If 'dialog' is a newly created dialog, the two primary areas of the window can be accessed through @SlotRef{dialog,content-area} and @SlotRef{dialog,action-area}.
830
831 A 'modal' dialog (that is, one which freezes the rest of the application from user input), can be created by setting @SlotRef{gtk-window,modal} (e.g., by specifying @code{:modal t} initarg).
832
833 If you add buttons to @ref{dialog} using @ref{dialog-add-button}, or @ref{dialog-add-action-widget}, clicking the button will emit a @SignalRef{dialog,response} signal with a response ID that was specified. GTK+ will never assign a meaning to positive response IDs; these are entirely user-defined. But for convenience, you can use the response IDs in the @ref{response-type} enumeration (these all have values less than zero). If a dialog receives a delete event, the @SignalRef{dialog,response} signal will be emitted with a response ID of @EnumVRef{response-type,delete-event}.
834
835 TODO: cl-gtk2 does not yet support specifying custom response IDs.
836
837 If you want to block waiting for a dialog to return before returning control flow to your code, you can call @ref{dialog-run}. This function enters a recursive main loop and waits for the user to respond to the dialog, returning the response ID corresponding to the button the user clicked.
838
839 For the simple dialog in the following example, in reality you'd probably use @ref{message-dialog} to save yourself some effort. But you'd need to create the dialog contents manually if you had more than a simple message in the dialog.
840
841 @lisp
842 (defun quick-message (message)
843   "Function to open a dialog box display the MESSAGE"
844   (let ((dialog (make-instance 'gtk:dialog :title "Message")))
845     (gtk:dialog-add-button dialog "gtk-ok" :none)
846     (gtk:container-add (gtk:dialog-content-area dialog)
847                        (make-instance 'gtk:label :label message))
848     (gobject:connect-signal dialog "response"
849                             (lambda (dialog1 response-id)
850                               (declare (ignore dialog1 response-id))
851                               (gtk:object-destroy dialog)))
852     (gtk:widget-show dialog)))
853 @end lisp
854
855 Slots:
856 @itemize
857 @item @anchor{slot.dialog.action-area}action-area. Type: @ref{v-box}. Accessor: @anchor{fn.dialog-action-area}@code{dialog-action-area}. Read-only.
858
859 The action area of dialog.
860 @item @anchor{slot.dialog.alternative-button-order}alternative-button-order. Type: @code{list of @ref{response-type}}. Accessor: @anchor{fn.dialog-alternative-button-order}@code{dialog-alternative-button-order}. Write-only.
861
862 Sets an alternative button order. If the "gtk-alternative-button-order" setting is set to True, the dialog buttons are reordered according to the order of the response ids passed to this function.
863
864 By default, GTK+ dialogs use the button order advocated by the Gnome Human Interface Guidelines with the affirmative button at the far right, and the cancel button left of it. But the builtin GTK+ dialogs and @ref{message-dialog}s do provide an alternative button order, which is more suitable on some platforms, e.g. Windows.
865
866 Set this after adding all the buttons to your dialog, as the following example shows:
867
868 @lisp
869 (setf (dialog-alternative-button-order dialog) '(:ok :cancel :help))
870 @end lisp
871
872 @item @anchor{slot.dialog.content-area}content-area. Type: @ref{widget}. Accessor: @anchor{fn.dialog-content-area}@code{dialog-content-area}. Read-only.
873
874 The content area of dialog.
875
876 @item @anchor{slot.dialog.default-response}default-response. Type: @ref{response-type}. Accessor: @anchor{fn.dialog-default-response}@code{dialog-default-response}. Write-only.
877
878 The widget in the dialog's action area with the given this response is the default widget for the dialog. Pressing "Enter" normally activates the default widget.
879 @item @anchor{slot.dialog.has-separator}has-separator. Type: @code{boolean}. Accessor: @anchor{fn.dialog-has-separator}@code{dialog-has-separator}.
880
881
882 When True, the dialog has a separator bar above its buttons.
883
884 Default value: True
885 @end itemize
886
887
888 Signals:
889 @itemize
890 @item @anchor{signal.dialog.close}"close". Signature: (instance @ref{dialog}) @result{} void. Options: run-last, action.
891
892 The close signal is a keybinding signal which gets emitted when the user uses a keybinding to close the dialog.
893
894 The default binding for this signal is the Escape key.
895 @item @anchor{signal.dialog.response}"response". Signature: (instance @ref{dialog}), (response-id @code{integer}) @result{} void. Options: run-last.
896
897 Emitted when an action widget is clicked, the dialog receives a delete event, or the application programmer calls @ref{dialog-response}. On a delete event, the response ID is @EnumVRef{response-type,delete-event}. Otherwise, it depends on which action widget was clicked.
898
899 Note: because of some limitations, @var{response-id} is an integer. Use @code{(cffi:foreign-enum-keyword 'gtk:response-type response-id)} to get the value of type @ref{response-type}.
900 @end itemize
901
902 @RMethod dialog-run
903 @lisp
904 (dialog-run dialog) @result{} response
905 @end lisp
906
907 Blocks in a recursive main loop until the dialog either emits the @SignalRef{dialog,response} signal, or is destroyed. If the dialog is destroyed during the call to @ref{dialog-run}, it returns @EnumVRef{response-type,none}. Otherwise, it returns the response ID from the @SignalRef{dialog,response} signal emission.
908
909 Before entering the recursive main loop, @ref{dialog-run} calls @code{widget-show} on the dialog for you. Note that you still need to show any children of the dialog yourself.
910
911 During @ref{dialog-run}, the default behavior of @SignalRef{widget,delete-event} is disabled; if the dialog receives @SignalRef{widget,delete-event}, it will not be destroyed as windows usually are, and @ref{dialog-run} will return @EnumVRef{response-type,delete-event}. Also, during @ref{dialog-run} the dialog will be modal. You can force @ref{dialog-run} to return at any time by calling @ref{dialog-response} to emit the @SignalRef{dialog,response} signal. Destroying the dialog during @ref{dialog-run} is a very bad idea, because your post-run code won't know whether the dialog was destroyed or not.
912
913 After @ref{dialog-run} returns, you are responsible for hiding or destroying the dialog if you wish to do so.
914
915 Note that even though the recursive main loop gives the effect of a modal dialog (it prevents the user from interacting with other windows in the same window group while the dialog is run), callbacks such as timeouts, IO channel watches, DND drops, etc, will be triggered during a @ref{dialog-run} call.
916
917 @RMethod dialog-response
918 @lisp
919 (dialog-response dialog response)
920 @end lisp
921
922 Emits the @SignalRef{dialog,response} signal with the given @var{response} (of type @ref{response-type}). Used to indicate that the user has responded to the @var{dialog} in some way; typically either you or @ref{dialog-run} will be monitoring the @SignalRef{dialog,response} signal and take appropriate action.
923
924 @RMethod dialog-add-button
925 @lisp
926 (dialog-add-button dialog text response) @result{} button
927 @end lisp
928
929 Adds a button with the given @var{text} (or a stock button, if @var{text} is a stock ID) and sets things up so that clicking the button will emit the @SignalRef{dialog,response} signal with the given @var{response}. The button is appended to the end of the dialog's action area. The @ref{button} widget is returned, but usually you don't need it.
930
931 @RMethod dialog-add-action-widget
932 @lisp
933 (dialog-add-action-widget dialog widget response)
934 @end lisp
935
936 Adds an activatable @var{widget} to the action area of a @var{dialog}, connecting a signal handler that will emit the @SignalRef{dialog,response} signal on the dialog when the @var{widget} is activated. The @var{widget} is appended to the end of the dialog's action area. If you want to add a non-activatable widget, simply pack it into the @SlotRef{dialog,action-area} field of the @ref{dialog}.
937
938 @RMethod dialog-set-response-sensitive
939 @lisp
940 (dialog-set-response-sensitive dialog response setting)
941 @end lisp
942
943 Sets the @SlotRef{widget,sensitive} for each widget in the dialog's action area with the given @var{response}. A convenient way to sensitize/desensitize dialog buttons.
944
945 @RMethod dialog-response-for-widget
946 @lisp
947 (dialog-response-for-widget dialog widget) @result{} response
948 @end lisp
949
950 Gets the @var{response} (of type @ref{response-type}) of a @var{widget} in the action area of a @var{dialog}.
951
952 @RMethod dialog-alternative-button-order-on-screen
953 @lisp
954 (dialog-alternative-button-order-on-screen screen) @result{} boolean
955 @end lisp
956
957 Returns True if dialogs are expected to use an alternative button order on the @ref{screen} @var{screen}. See @SlotRef{dialog,alternative-button-order} for more details about alternative button order.
958
959 If you need to use this method, you should probably connect to the ::notify:gtk-alternative-button-order signal on the GtkSettings object associated to screen, in order to be notified if the button order setting changes.
960
961 @var{screen}: a @ref{screen} or a NIL if to use a default screen.
962
963 @node drawing-area
964 @section drawing-area
965 @Class drawing-area
966 Superclass: @ref{widget} @ref{atk-implementor-iface} @ref{buildable}
967
968 Subclasses: @ref{curve}
969
970 Slots:
971 @itemize
972 @end itemize
973
974
975 Signals:
976 @itemize
977 @end itemize
978
979
980
981
982 @node entry
983 @section entry
984 @Class entry
985 Superclass: @ref{widget} @ref{atk-implementor-iface} @ref{buildable} @ref{cell-editable} @ref{editable}
986
987 Subclasses: @ref{spin-button}
988
989 The @ref{entry} widget is a single line text entry widget. A fairly large set of key bindings are supported by default. If the entered text is longer than the allocation of the widget, the widget will scroll so that the cursor position is visible.
990
991 When using an entry for passwords and other sensitive information, it can be put into "password mode" using @SlotRef{entry,visibility}. In this mode, entered text is displayed using a 'invisible' character. By default, GTK+ picks the best invisible character that is available in the current font, but it can be changed with @SlotRef{entry,invisible-char}. Since 2.16, GTK+ displays a warning when Caps Lock or input methods might interfere with entering text in a password entry. The warning can be turned off with the @SlotRef{entry,caps-lock-warning} property.
992
993 Since 2.16, @ref{entry} has the ability to display progress or activity information behind the text. To make an entry display such information, use @SlotRef{entry,progress-fraction} or @SlotRef{entry,progress-pulse-step},
994
995 Additionally, @ref{entry} can show icons at either side of the entry. These icons can be activatable by clicking, can be set up as drag source and can have tooltips. To add an icon, use @SlotRef{entry,primary-icon-gicon} or one of the various other properties that set an icon from a stock id, an icon name or a pixbuf. To trigger an action when the user clicks an icon, connect to the @SignalRef{entry,icon-press} signal. To allow DND operations from an icon, use gtk_entry_set_icon_drag_source(). To set a tooltip on an icon, use @SlotRef{entry,primary-icon-tooltip-text} or @SlotRef{entry,primary-icon-tooltip-markup}. Secondary icon works the same way.
996
997 Note that functionality or information that is only available by clicking on an icon in an entry may not be accessible at all to users which are not able to use a mouse or other pointing device. It is therefore recommended that any such functionality should also be available by other means, e.g. via the context menu of the entry.
998
999
1000 Slots:
1001 @itemize
1002 @item @anchor{slot.entry.activates-default}activates-default. Type: @code{boolean}. Accessor: @anchor{fn.entry-activates-default}@code{entry-activates-default}.
1003
1004 Whether to activate the default widget (such as the default button in a dialog) when Enter is pressed.
1005
1006 Default value: False
1007 @item @anchor{slot.entry.caps-lock-warning}caps-lock-warning. Type: @code{boolean}. Accessor: @anchor{fn.entry-caps-lock-warning}@code{entry-caps-lock-warning}.
1008
1009 Whether password entries will show a warning when Caps Lock is on.
1010
1011 Note that the warning is shown using a secondary icon, and thus does not work if you are using the secondary icon position for some other purpose.
1012
1013 Default value: True
1014 @item @anchor{slot.entry.completion}completion. Type: @ref{entry-completion}. Accessor: @anchor{fn.entry-completion}@code{entry-completion}.
1015
1016 The current position of the insertion cursor in chars.
1017
1018 Allowed values: [0,65535]
1019
1020 Default value: 0
1021 @item @anchor{slot.entry.cursor-hadjustment}cursor-hadjustment. Type: @ref{adjustment}. Accessor: @anchor{fn.entry-cursor-hadjustment}@code{entry-cursor-hadjustment}.
1022
1023 The adjustment that is bound to the cursor position.
1024
1025 The adjustment has to be in pixel units and in the same coordinate system as the entry.
1026 @item @anchor{slot.entry.cursor-position}cursor-position. Type: @code{integer}. Accessor: @anchor{fn.entry-cursor-position}@code{entry-cursor-position}. Read-only.
1027
1028 Whether the entry contents can be edited.
1029
1030 Default value: True
1031 @item @anchor{slot.entry.editable}editable. Type: @code{boolean}. Accessor: @anchor{fn.entry-editable}@code{entry-editable}.
1032
1033 False removes outside bevel from entry.
1034
1035 Default value: True
1036 @item @anchor{slot.entry.has-frame}has-frame. Type: @code{boolean}. Accessor: @anchor{fn.entry-has-frame}@code{entry-has-frame}.
1037
1038 False removes outside bevel from entry.
1039
1040 Default value: True
1041 @item @anchor{slot.entry.im-module}im-module. Type: @code{string}. Accessor: @anchor{fn.entry-im-module}@code{entry-im-module}.
1042
1043 Which IM (input method) module should be used for this entry. See @ref{i-m-context}.
1044
1045 Setting this to a non-NIL value overrides the system-wide IM module setting. See the @SlotRef{settings,gtk-im-module} property.
1046
1047 Default value: NIL
1048 @item @anchor{slot.entry.inner-border}inner-border. Type: @ref{border}. Accessor: @anchor{fn.entry-inner-border}@code{entry-inner-border}.
1049
1050 Sets the text area's border between the text and the frame.
1051
1052 Since 2.10
1053 @item @anchor{slot.entry.invisible-char}invisible-char. Type: @code{integer}. Accessor: @anchor{fn.entry-invisible-char}@code{entry-invisible-char}.
1054
1055 The character to use when masking entry contents (in "password mode").
1056
1057 Default value: '*'
1058 @item @anchor{slot.entry.invisible-char-set}invisible-char-set. Type: @code{boolean}. Accessor: @anchor{fn.entry-invisible-char-set}@code{entry-invisible-char-set}.
1059
1060 Whether the invisible char has been set for the GtkEntry.
1061
1062 Default value: False
1063 @item @anchor{slot.entry.layout}layout. Type: @code{PangoLayout}. Accessor: @anchor{fn.entry-layout}@code{entry-layout}. Read-only.
1064
1065 The PangoLayout used to display the entry. The layout is useful to e.g. convert text positions to pixel positions, in combination with @SlotRef{entry,layout-offset}.
1066
1067 Keep in mind that the layout text may contain a preedit string, so @ref{entry-layout-index-to-text-index} and @ref{entry-text-index-to-layout-index} are needed to convert byte indices in the layout to byte indices in the entry contents.
1068 @item @anchor{slot.entry.layout-offset}layout-offset. Type: list of @code{integer}. Accessor: @anchor{fn.entry-layout-offset}@code{entry-layout-offset}. Read-only.
1069
1070 Obtains the position of the PangoLayout used to render text in the entry, in widget coordinates as the list of two integers - the x and y offsets. Useful if you want to line up the text in an entry with some other text, e.g. when using the entry to implement editable cells in a sheet widget.
1071
1072 Also useful to convert mouse events into coordinates inside the PangoLayout, e.g. to take some action if some part of the entry text is clicked.
1073
1074 Note that as the user scrolls around in the entry the offsets will change; you'll need to connect to the "notify::scroll-offset" signal to track this. Remember when using the PangoLayout functions you need to convert to and from pixels using PANGO_PIXELS() or PANGO_SCALE.
1075
1076 Keep in mind that the layout text may contain a preedit string, so @ref{entry-layout-index-to-text-index} and @ref{entry-text-index-to-layout-index} are needed to convert byte indices in the layout to byte indices in the entry contents.
1077 @item @anchor{slot.entry.max-length}max-length. Type: @code{integer}. Accessor: @anchor{fn.entry-max-length}@code{entry-max-length}.
1078
1079 Maximum number of characters for this entry. Zero if no maximum.
1080
1081 Allowed values: [0,65535]
1082
1083 Default value: 0
1084 @item @anchor{slot.entry.overwrite-mode}overwrite-mode. Type: @code{boolean}. Accessor: @anchor{fn.entry-overwrite-mode}@code{entry-overwrite-mode}.
1085
1086 If text is overwritten when typing in the GtkEntry.
1087
1088 Default value: False
1089 @item @anchor{slot.entry.primary-icon-activatable}primary-icon-activatable. Type: @code{boolean}. Accessor: @anchor{fn.entry-primary-icon-activatable}@code{entry-primary-icon-activatable}.
1090
1091 Whether the primary icon is activatable.
1092
1093 GTK+ emits the @SignalRef{entry,icon-press} and @SignalRef{entry,icon-release} signals only on sensitive, activatable icons.
1094
1095 Sensitive, but non-activatable icons can be used for purely informational purposes.
1096
1097 Default value: False
1098 @item @anchor{slot.entry.primary-icon-gicon}primary-icon-gicon. Type: @code{GIcon}. Accessor: @anchor{fn.entry-primary-icon-gicon}@code{entry-primary-icon-gicon}.
1099
1100 The GIcon to use for the primary icon for the entry. TODO: GIcon is not yet supported
1101 @item @anchor{slot.entry.primary-icon-name}primary-icon-name. Type: @code{string}. Accessor: @anchor{fn.entry-primary-icon-name}@code{entry-primary-icon-name}.
1102
1103 The icon name to use for the primary icon for the entry.
1104
1105 Default value: NIL
1106 @item @anchor{slot.entry.primary-icon-pixbuf}primary-icon-pixbuf. Type: @ref{pixbuf}. Accessor: @anchor{fn.entry-primary-icon-pixbuf}@code{entry-primary-icon-pixbuf}.
1107
1108 A pixbuf to use as the primary icon for the entry.
1109 @item @anchor{slot.entry.primary-icon-sensitive}primary-icon-sensitive. Type: @code{boolean}. Accessor: @anchor{fn.entry-primary-icon-sensitive}@code{entry-primary-icon-sensitive}.
1110
1111 Whether the primary icon is sensitive.
1112
1113 An insensitive icon appears grayed out. GTK+ does not emit the @SignalRef{entry,icon-press} and @SignalRef{entry,icon-release} signals and does not allow DND from insensitive icons.
1114
1115 An icon should be set insensitive if the action that would trigger when clicked is currently not available.
1116
1117 Default value: True
1118 @item @anchor{slot.entry.primary-icon-stock}primary-icon-stock. Type: @code{string}. Accessor: @anchor{fn.entry-primary-icon-stock}@code{entry-primary-icon-stock}.
1119
1120 The stock id to use for the primary icon for the entry.
1121
1122 Default value: NIL
1123 @item @anchor{slot.entry.primary-icon-storage-type}primary-icon-storage-type. Type: @ref{image-type}. Accessor: @anchor{fn.entry-primary-icon-storage-type}@code{entry-primary-icon-storage-type}. Read-only.
1124
1125 The representation which is used for the primary icon of the entry.
1126
1127 Default value: @EnumVRef{image-type,empty}
1128 @item @anchor{slot.entry.primary-icon-tooltip-markup}primary-icon-tooltip-markup. Type: @code{string}. Accessor: @anchor{fn.entry-primary-icon-tooltip-markup}@code{entry-primary-icon-tooltip-markup}.
1129
1130 The contents of the tooltip on the primary icon, which is marked up with the Pango text markup language.
1131
1132 Default value: NIL
1133 @item @anchor{slot.entry.primary-icon-tooltip-text}primary-icon-tooltip-text. Type: @code{string}. Accessor: @anchor{fn.entry-primary-icon-tooltip-text}@code{entry-primary-icon-tooltip-text}.
1134
1135 The contents of the tooltip on the primary icon.
1136
1137 Default value: NIL
1138 @item @anchor{slot.entry.progress-fraction}progress-fraction. Type: @code{double-float}. Accessor: @anchor{fn.entry-progress-fraction}@code{entry-progress-fraction}.
1139
1140 The current fraction of the task that's been completed.
1141
1142 Allowed values: [0,1]
1143
1144 Default value: 0
1145 @item @anchor{slot.entry.progress-pulse-step}progress-pulse-step. Type: @code{double-float}. Accessor: @anchor{fn.entry-progress-pulse-step}@code{entry-progress-pulse-step}.
1146
1147 The fraction of total entry width to move the progress bouncing block for each call to gtk_entry_progress_pulse().
1148
1149 Allowed values: [0,1]
1150
1151 Default value: 0.1
1152 @item @anchor{slot.entry.scroll-offset}scroll-offset. Type: @code{integer}. Accessor: @anchor{fn.entry-scroll-offset}@code{entry-scroll-offset}. Read-only.
1153
1154 Number of pixels of the entry scrolled off the screen to the left.
1155
1156 Allowed values: >= 0
1157
1158 Default value: 0
1159 @item @anchor{slot.entry.secondary-icon-activatable}secondary-icon-activatable. Type: @code{boolean}. Accessor: @anchor{fn.entry-secondary-icon-activatable}@code{entry-secondary-icon-activatable}.
1160
1161 Whether the secondary icon is activatable.
1162
1163 GTK+ emits the @SignalRef{entry,icon-press} and @SignalRef{entry,icon-release} signals only on sensitive, activatable icons.
1164
1165 Sensitive, but non-activatable icons can be used for purely informational purposes.
1166
1167 Default value: False
1168 @item @anchor{slot.entry.secondary-icon-gicon}secondary-icon-gicon. Type: @code{GIcon}. Accessor: @anchor{fn.entry-secondary-icon-gicon}@code{entry-secondary-icon-gicon}.
1169
1170 The GIcon to use for the secondary icon for the entry. TODO: GIcon is not yet supported
1171 @item @anchor{slot.entry.secondary-icon-name}secondary-icon-name. Type: @code{string}. Accessor: @anchor{fn.entry-secondary-icon-name}@code{entry-secondary-icon-name}.
1172
1173 The icon name to use for the secondary icon for the entry.
1174
1175 Default value: NIL
1176 @item @anchor{slot.entry.secondary-icon-pixbuf}secondary-icon-pixbuf. Type: @ref{pixbuf}. Accessor: @anchor{fn.entry-secondary-icon-pixbuf}@code{entry-secondary-icon-pixbuf}.
1177
1178 An pixbuf to use as the secondary icon for the entry.
1179 @item @anchor{slot.entry.secondary-icon-sensitive}secondary-icon-sensitive. Type: @code{boolean}. Accessor: @anchor{fn.entry-secondary-icon-sensitive}@code{entry-secondary-icon-sensitive}.
1180
1181 Whether the secondary icon is sensitive.
1182
1183 An insensitive icon appears grayed out. GTK+ does not emit the @SignalRef{entry,icon-press} and @SignalRef{entry,icon-release} signals and does not allow DND from insensitive icons.
1184
1185 An icon should be set insensitive if the action that would trigger when clicked is currently not available.
1186
1187 Default value: True
1188 @item @anchor{slot.entry.secondary-icon-stock}secondary-icon-stock. Type: @code{string}. Accessor: @anchor{fn.entry-secondary-icon-stock}@code{entry-secondary-icon-stock}.
1189
1190 The stock id to use for the secondary icon for the entry.
1191
1192 Default value: NIL
1193 @item @anchor{slot.entry.secondary-icon-storage-type}secondary-icon-storage-type. Type: @ref{image-type}. Accessor: @anchor{fn.entry-secondary-icon-storage-type}@code{entry-secondary-icon-storage-type}. Read-only.
1194
1195 The representation which is used for the secondary icon of the entry.
1196
1197 Default value: @EnumVRef{image-type,empty}
1198 @item @anchor{slot.entry.secondary-icon-tooltip-markup}secondary-icon-tooltip-markup. Type: @code{string}. Accessor: @anchor{fn.entry-secondary-icon-tooltip-markup}@code{entry-secondary-icon-tooltip-markup}.
1199
1200 The contents of the tooltip on the secondary icon, which is marked up with the Pango text markup language.
1201
1202 Default value: NIL
1203 @item @anchor{slot.entry.secondary-icon-tooltip-text}secondary-icon-tooltip-text. Type: @code{string}. Accessor: @anchor{fn.entry-secondary-icon-tooltip-text}@code{entry-secondary-icon-tooltip-text}.
1204
1205 The contents of the tooltip on the secondary icon.
1206
1207 Default value: NIL
1208 @item @anchor{slot.entry.selection-bound}selection-bound. Type: @code{integer}. Accessor: @anchor{fn.entry-selection-bound}@code{entry-selection-bound}. Read-only.
1209
1210 The position of the opposite end of the selection from the cursor in chars.
1211
1212 Allowed values: [0,65535]
1213
1214 Default value: 0
1215 @item @anchor{slot.entry.shadow-type}shadow-type. Type: @ref{shadow-type}. Accessor: @anchor{fn.entry-shadow-type}@code{entry-shadow-type}.
1216
1217 Which kind of shadow to draw around the entry when "has-frame" is set to True.
1218
1219 Default value: @EnumVRef{shadow-type,in}
1220 @item @anchor{slot.entry.text}text. Type: @code{string}. Accessor: @anchor{fn.entry-text}@code{entry-text}.
1221
1222 The contents of the entry.
1223
1224 Default value: ""
1225 @item @anchor{slot.entry.text-length}text-length. Type: @code{integer}. Accessor: @anchor{fn.entry-text-length}@code{entry-text-length}. Read-only.
1226
1227 The length of the text in the GtkEntry.
1228
1229 Allowed values: <= 65535
1230
1231 Default value: 0
1232 @item @anchor{slot.entry.truncate-multiline}truncate-multiline. Type: @code{boolean}. Accessor: @anchor{fn.entry-truncate-multiline}@code{entry-truncate-multiline}.
1233
1234 When True, pasted multi-line text is truncated to the first line.
1235
1236 Default value: False
1237 @item @anchor{slot.entry.visibility}visibility. Type: @code{boolean}. Accessor: @anchor{fn.entry-visibility}@code{entry-visibility}.
1238
1239 False displays the "invisible char" instead of the actual text (password mode).
1240
1241 Default value: True
1242 @item @anchor{slot.entry.width-chars}width-chars. Type: @code{integer}. Accessor: @anchor{fn.entry-width-chars}@code{entry-width-chars}.
1243
1244 Number of characters to leave space for in the entry.
1245
1246 Default value: -1
1247 @item @anchor{slot.entry.xalign}xalign. Type: @code{single-float}. Accessor: @anchor{fn.entry-xalign}@code{entry-xalign}.
1248
1249 The horizontal alignment, from 0 (left) to 1 (right). Reversed for RTL layouts.
1250
1251 Allowed values: [0,1]
1252
1253 Default value: 0
1254 @end itemize
1255
1256 Signals:
1257 @itemize
1258 @item @anchor{signal.entry.activate}"activate". Signature: (instance @ref{entry}) @result{} void. Options: run-last, action.
1259
1260 A keybinding signal which gets emitted when the user activates the entry.
1261
1262 Applications should not connect to it, but may emit it with @ref{emit-signal} if they need to control activation programmatically.
1263
1264 The default bindings for this signal are all forms of the Enter key.
1265 @item @anchor{signal.entry.backspace}"backspace". Signature: (instance @ref{entry}) @result{} void. Options: run-last, action.
1266
1267 This signal is a keybinding signal which gets emitted when the user asks for it.
1268
1269 The default bindings for this signal are Backspace and Shift-Backspace.
1270 @item @anchor{signal.entry.copy-clipboard}"copy-clipboard". Signature: (instance @ref{entry}) @result{} void. Options: run-last, action.
1271
1272 This signal is a keybinding signal which gets emitted to copy the selection to the clipboard.
1273
1274 The default bindings for this signal are Ctrl-c and Ctrl-Insert.
1275 @item @anchor{signal.entry.cut-clipboard}"cut-clipboard". Signature: (instance @ref{entry}) @result{} void. Options: run-last, action.
1276
1277 This signal is a keybinding signal which gets emitted to cut the selection to the clipboard.
1278
1279 The default bindings for this signal are Ctrl-x and Shift-Delete.
1280 @item @anchor{signal.entry.delete-from-cursor}"delete-from-cursor". Signature: (instance @ref{entry}), (type @ref{delete-type}), (count @code{integer}) @result{} void. Options: run-last, action.
1281
1282 This signal is a keybinding signal which gets emitted when the user initiates a text deletion.
1283
1284 If the @var{type} is @EnumVRef{delete-type,chars}, GTK+ deletes the selection if there is one, otherwise it deletes the requested number of characters.
1285
1286 The default bindings for this signal are Delete for deleting a character and Ctrl-Delete for deleting a word.
1287
1288 @var{count} is the number of type units to delete
1289 @item @anchor{signal.entry.icon-press}"icon-press". Signature: (instance @ref{entry}), (icon @ref{entry-icon-position}), (event @ref{event}) @result{} void. Options: run-last.
1290
1291 This signal is emitted when an activatable icon is clicked.
1292 @item @anchor{signal.entry.icon-release}"icon-release". Signature: (instance @ref{entry}), (icon @code{entry-icon-position}), (event @ref{event}) @result{} void. Options: run-last.
1293
1294 This signal is emitted on the button release from a mouse click over an activatable icon.
1295 @item @anchor{signal.entry.insert-at-cursor}"insert-at-cursor". Signature: (instance @ref{entry}), (string @code{string}) @result{} void. Options: run-last, action.
1296
1297 This signal is a keybinding signal which gets emitted when the user initiates the insertion of a fixed string at the cursor.
1298
1299 This signal has no default bindings.
1300 @item @anchor{signal.entry.move-cursor}"move-cursor". Signature: (instance @ref{entry}), (step @ref{movement-step}), (count @code{integer}), (extend-selection @code{boolean}) @result{} void. Options: run-last, action.
1301
1302 This signal is a keybinding signal which gets emitted when the user initiates a cursor movement. If the cursor is not visible in entry, this signal causes the viewport to be moved instead.
1303
1304 Applications should not connect to it, but may emit it with @ref{emit-signal} if they need to control the cursor programmatically.
1305
1306 The default bindings for this signal come in two variants, the variant with the Shift modifier extends the selection, the variant without the Shift modifer does not. There are too many key combinations to list them all here.
1307
1308 @itemize
1309 @item Arrow keys move by individual characters/lines
1310 @item Ctrl-arrow key combinations move by words/paragraphs
1311 @item Home/End keys move to the ends of the buffer
1312 @end itemize
1313
1314 @var{count} is the number of @var{step} units to move
1315
1316 @var{extend-selection} is True if the move should extend the selection
1317 @item @anchor{signal.entry.paste-clipboard}"paste-clipboard". Signature: (instance @ref{entry}) @result{} void. Options: run-last, action.
1318
1319 This signal is a keybinding signal which gets emitted to paste the contents of the clipboard into the text view.
1320
1321 The default bindings for this signal are Ctrl-v and Shift-Insert.
1322 @item @anchor{signal.entry.populate-popup}"populate-popup". Signature: (instance @ref{entry}), (menu @ref{menu}) @result{} void. Options: run-last.
1323
1324 This signal gets emitted before showing the context menu of the entry.
1325
1326 If you need to add items to the context menu, connect to this signal and append your menuitems to the menu.
1327 @item @anchor{signal.entry.toggle-overwrite}"toggle-overwrite". Signature: (instance @ref{entry}) @result{} void. Options: run-last, action.
1328
1329 This signal is a keybinding signal which gets emitted to toggle the overwrite mode of the entry.
1330
1331 The default bindings for this signal is Insert.
1332 @end itemize
1333
1334 @RMethod entry-layout-index-to-text-index
1335 @lisp
1336 (entry-layout-index-to-text-index entry layout-index) @result{} text-index
1337 @end lisp
1338
1339 Converts from a position in the entry contents to a position in the entry's PangoLayout.
1340
1341 @var{layout-index} - byte index into the entry layout text
1342
1343 @var{text-index} - byte index into the entry contents
1344
1345 @RMethod entry-text-index-to-layout-index
1346 @lisp
1347 (entry-text-index-to-layout-index entry text-index) @result{} layout-index
1348 @end lisp
1349
1350 Converts from a position in the entry's PangoLayout contents to a position in the entry.
1351
1352 @var{layout-index} - byte index into the entry layout text
1353
1354 @var{text-index} - byte index into the entry contents
1355
1356 @node event-box
1357 @section event-box
1358 @Class event-box
1359 Superclass: @ref{bin} @ref{atk-implementor-iface} @ref{buildable}
1360
1361 Slots:
1362 @itemize
1363 @item @anchor{slot.event-box.above-child}above-child. Type: @code{boolean}. Accessor: @anchor{fn.event-box-above-child}@code{event-box-above-child}.
1364 @item @anchor{slot.event-box.visible-window}visible-window. Type: @code{boolean}. Accessor: @anchor{fn.event-box-visible-window}@code{event-box-visible-window}.
1365 @end itemize
1366
1367
1368 Signals:
1369 @itemize
1370 @end itemize
1371
1372
1373
1374
1375 @node expander
1376 @section expander
1377 @Class expander
1378 Superclass: @ref{bin} @ref{atk-implementor-iface} @ref{buildable}
1379
1380 Slots:
1381 @itemize
1382 @item @anchor{slot.expander.expanded}expanded. Type: @code{boolean}. Accessor: @anchor{fn.expander-expanded}@code{expander-expanded}.
1383 @item @anchor{slot.expander.label}label. Type: @code{string}. Accessor: @anchor{fn.expander-label}@code{expander-label}.
1384 @item @anchor{slot.expander.label-widget}label-widget. Type: @ref{widget}. Accessor: @anchor{fn.expander-label-widget}@code{expander-label-widget}.
1385 @item @anchor{slot.expander.spacing}spacing. Type: @code{integer}. Accessor: @anchor{fn.expander-spacing}@code{expander-spacing}.
1386 @item @anchor{slot.expander.use-markup}use-markup. Type: @code{boolean}. Accessor: @anchor{fn.expander-use-markup}@code{expander-use-markup}.
1387 @item @anchor{slot.expander.use-underline}use-underline. Type: @code{boolean}. Accessor: @anchor{fn.expander-use-underline}@code{expander-use-underline}.
1388 @end itemize
1389
1390
1391 Signals:
1392 @itemize
1393 @item @anchor{signal.expander.activate}"activate". Signature: (instance @ref{expander}) @result{} void. Options: run-last, action.
1394 @end itemize
1395
1396
1397
1398
1399 @node file-chooser-button
1400 @section file-chooser-button
1401 @Class file-chooser-button
1402 Superclass: @ref{h-box} @ref{atk-implementor-iface} @ref{buildable} @ref{file-chooser} @ref{orientable}
1403
1404 Slots:
1405 @itemize
1406 @item @anchor{slot.file-chooser-button.dialog}dialog. Type: @ref{file-chooser}. Accessor: @anchor{fn.file-chooser-button-dialog}@code{file-chooser-button-dialog}. Write-only.
1407 @item @anchor{slot.file-chooser-button.focus-on-click}focus-on-click. Type: @code{boolean}. Accessor: @anchor{fn.file-chooser-button-focus-on-click}@code{file-chooser-button-focus-on-click}.
1408 @item @anchor{slot.file-chooser-button.title}title. Type: @code{string}. Accessor: @anchor{fn.file-chooser-button-title}@code{file-chooser-button-title}.
1409 @item @anchor{slot.file-chooser-button.width-chars}width-chars. Type: @code{integer}. Accessor: @anchor{fn.file-chooser-button-width-chars}@code{file-chooser-button-width-chars}.
1410 @end itemize
1411
1412
1413 Signals:
1414 @itemize
1415 @item @anchor{signal.file-chooser-button.file-set}"file-set". Signature: (instance @ref{file-chooser-button}) @result{} void. Options: run-first.
1416 @end itemize
1417
1418
1419
1420
1421 @node file-chooser-dialog
1422 @section file-chooser-dialog
1423 @Class file-chooser-dialog
1424 Superclass: @ref{dialog} @ref{atk-implementor-iface} @ref{buildable} @ref{file-chooser}
1425
1426 Slots:
1427 @itemize
1428 @end itemize
1429
1430
1431 Signals:
1432 @itemize
1433 @end itemize
1434
1435
1436
1437
1438 @node file-chooser-widget
1439 @section file-chooser-widget
1440 @Class file-chooser-widget
1441 Superclass: @ref{v-box} @ref{atk-implementor-iface} @ref{buildable} @ref{file-chooser} @ref{file-chooser-embed} @ref{orientable}
1442
1443 Slots:
1444 @itemize
1445 @end itemize
1446
1447
1448 Signals:
1449 @itemize
1450 @end itemize
1451
1452
1453
1454
1455 @node fixed
1456 @section fixed
1457 @Class fixed
1458 Superclass: @ref{container} @ref{atk-implementor-iface} @ref{buildable}
1459
1460 Slots:
1461 @itemize
1462 @item @anchor{slot.fixed.has-window}has-window. Type: @code{boolean}. Accessor: @anchor{fn.fixed-has-window}@code{fixed-has-window}.
1463 @end itemize
1464
1465
1466 Signals:
1467 @itemize
1468 @end itemize
1469
1470
1471
1472
1473 @node font-button
1474 @section font-button
1475 @Class font-button
1476 Superclass: @ref{button} @ref{atk-implementor-iface} @ref{activatable} @ref{buildable}
1477
1478 Slots:
1479 @itemize
1480 @item @anchor{slot.font-button.font-name}font-name. Type: @code{string}. Accessor: @anchor{fn.font-button-font-name}@code{font-button-font-name}.
1481 @item @anchor{slot.font-button.show-size}show-size. Type: @code{boolean}. Accessor: @anchor{fn.font-button-show-size}@code{font-button-show-size}.
1482 @item @anchor{slot.font-button.show-style}show-style. Type: @code{boolean}. Accessor: @anchor{fn.font-button-show-style}@code{font-button-show-style}.
1483 @item @anchor{slot.font-button.title}title. Type: @code{string}. Accessor: @anchor{fn.font-button-title}@code{font-button-title}.
1484 @item @anchor{slot.font-button.use-font}use-font. Type: @code{boolean}. Accessor: @anchor{fn.font-button-use-font}@code{font-button-use-font}.
1485 @item @anchor{slot.font-button.use-size}use-size. Type: @code{boolean}. Accessor: @anchor{fn.font-button-use-size}@code{font-button-use-size}.
1486 @end itemize
1487
1488
1489 Signals:
1490 @itemize
1491 @item @anchor{signal.font-button.font-set}"font-set". Signature: (instance @ref{font-button}) @result{} void. Options: run-first.
1492 @end itemize
1493
1494
1495
1496
1497 @node font-selection
1498 @section font-selection
1499 @Class font-selection
1500 Superclass: @ref{v-box} @ref{atk-implementor-iface} @ref{buildable} @ref{orientable}
1501
1502 Slots:
1503 @itemize
1504 @item @anchor{slot.font-selection.font}font. Type: @ref{font}. Accessor: @anchor{fn.font-selection-font}@code{font-selection-font}. Read-only.
1505 @item @anchor{slot.font-selection.font-name}font-name. Type: @code{string}. Accessor: @anchor{fn.font-selection-font-name}@code{font-selection-font-name}.
1506 @item @anchor{slot.font-selection.preview-text}preview-text. Type: @code{string}. Accessor: @anchor{fn.font-selection-preview-text}@code{font-selection-preview-text}.
1507 @end itemize
1508
1509
1510 Signals:
1511 @itemize
1512 @end itemize
1513
1514
1515
1516
1517 @node font-selection-dialog
1518 @section font-selection-dialog
1519 @Class font-selection-dialog
1520 Superclass: @ref{dialog} @ref{atk-implementor-iface} @ref{buildable}
1521
1522 Slots:
1523 @itemize
1524 @item @anchor{slot.font-selection-dialog.apply-button}apply-button. Type: @ref{g-object}. Accessor: @anchor{fn.font-selection-dialog-apply-button}@code{font-selection-dialog-apply-button}. Read-only.
1525 @item @anchor{slot.font-selection-dialog.cancel-button}cancel-button. Type: @ref{g-object}. Accessor: @anchor{fn.font-selection-dialog-cancel-button}@code{font-selection-dialog-cancel-button}. Read-only.
1526 @item @anchor{slot.font-selection-dialog.font-name}font-name. Type: @code{string}. Accessor: @anchor{fn.font-selection-dialog-font-name}@code{font-selection-dialog-font-name}.
1527 @item @anchor{slot.font-selection-dialog.ok-button}ok-button. Type: @ref{g-object}. Accessor: @anchor{fn.font-selection-dialog-ok-button}@code{font-selection-dialog-ok-button}. Read-only.
1528 @item @anchor{slot.font-selection-dialog.preview-text}preview-text. Type: @code{string}. Accessor: @anchor{fn.font-selection-dialog-preview-text}@code{font-selection-dialog-preview-text}.
1529 @end itemize
1530
1531
1532 Signals:
1533 @itemize
1534 @end itemize
1535
1536
1537
1538
1539 @node frame
1540 @section frame
1541 @Class frame
1542 Superclass: @ref{bin} @ref{atk-implementor-iface} @ref{buildable}
1543
1544 Subclasses: @ref{aspect-frame}
1545
1546 Slots:
1547 @itemize
1548 @item @anchor{slot.frame.label}label. Type: @code{string}. Accessor: @anchor{fn.frame-label}@code{frame-label}.
1549 @item @anchor{slot.frame.label-widget}label-widget. Type: @ref{widget}. Accessor: @anchor{fn.frame-label-widget}@code{frame-label-widget}.
1550 @item @anchor{slot.frame.label-xalign}label-xalign. Type: @code{single-float}. Accessor: @anchor{fn.frame-label-xalign}@code{frame-label-xalign}.
1551 @item @anchor{slot.frame.label-yalign}label-yalign. Type: @code{single-float}. Accessor: @anchor{fn.frame-label-yalign}@code{frame-label-yalign}.
1552 @item @anchor{slot.frame.shadow}shadow. Type: @ref{shadow-type}. Accessor: @anchor{fn.frame-shadow}@code{frame-shadow}.
1553 @item @anchor{slot.frame.shadow-type}shadow-type. Type: @ref{shadow-type}. Accessor: @anchor{fn.frame-shadow-type}@code{frame-shadow-type}.
1554 @end itemize
1555
1556
1557 Signals:
1558 @itemize
1559 @end itemize
1560
1561
1562
1563
1564 @node gamma-curve
1565 @section gamma-curve
1566 @Class gamma-curve
1567 Superclass: @ref{v-box} @ref{atk-implementor-iface} @ref{buildable} @ref{orientable}
1568
1569 Slots:
1570 @itemize
1571 @end itemize
1572
1573
1574 Signals:
1575 @itemize
1576 @end itemize
1577
1578
1579
1580
1581 @node gtk-window
1582 @section gtk-window
1583 @Class gtk-window
1584 Superclass: @ref{bin} @ref{atk-implementor-iface} @ref{buildable}
1585
1586 Subclasses: @ref{plug} @ref{assistant} @ref{dialog}
1587
1588 @ref{gtk-window} is a toplevel window that can contain other widgets. Nearly always, the type of the window should be @EnumVRef{window-type,toplevel}. If you're implementing something like a popup menu from scratch (which is a bad idea, just use @ref{menu}), you might use @EnumVRef{window-type,popup}. @EnumVRef{window-type,popup} is not for dialogs, though in some other toolkits dialogs are called "popups". In GTK+, @EnumVRef{window-type,popup} means a pop-up menu or pop-up tooltip. On X11, popup windows are not controlled by the window manager.
1589
1590 If you simply want an undecorated window (no window borders), use @SlotRef{gtk-window,decorated}, don't use @EnumVRef{window-type,popup}.
1591
1592 Slots:
1593 @itemize
1594 @item @anchor{slot.gtk-window.accept-focus}accept-focus. Type: @code{boolean}. Accessor: @anchor{fn.gtk-window-accept-focus}@code{gtk-window-accept-focus}.
1595
1596 Windows may set a hint asking the desktop environment not to receive the input focus. True if the window should receive the input focus.
1597
1598 Default value: True
1599 @item @anchor{slot.gtk-window.allow-grow}allow-grow. Type: @code{boolean}. Accessor: @anchor{fn.gtk-window-allow-grow}@code{gtk-window-allow-grow}.
1600
1601 If True, users can expand the window beyond its minimum size.
1602
1603 Default value: True
1604 @item @anchor{slot.gtk-window.allow-shrink}allow-shrink. Type: @code{boolean}. Accessor: @anchor{fn.gtk-window-allow-shrink}@code{gtk-window-allow-shrink}.
1605
1606 If True, the window has no mimimum size. Setting this to True is 99% of the time a bad idea.
1607
1608 Default value: False
1609 @item @anchor{slot.gtk-window.decorated}decorated. Type: @code{boolean}. Accessor: @anchor{fn.gtk-window-decorated}@code{gtk-window-decorated}.
1610
1611 Whether the window should be decorated by the window manager.
1612
1613 By default, windows are decorated with a title bar, resize controls, etc. Some window managers allow GTK+ to disable these decorations, creating a borderless window. If you set the decorated property to False using this function, GTK+ will do its best to convince the window manager not to decorate the window. Depending on the system, this function may not have any effect when called on a window that is already visible, so you should call it before calling @ref{widget-show}.
1614
1615 On Windows, this always works, since there's no window manager policy involved.
1616
1617 Default value: True
1618
1619 @item @anchor{slot.gtk-window.default-height}default-height. Type: @code{integer}. Accessor: @anchor{fn.gtk-window-default-height}@code{gtk-window-default-height}.
1620
1621 The default height of the window, used when initially showing the window.
1622
1623 If the window's "natural" size (its size request) is larger than the default, the default will be ignored. More generally, if the default size does not obey the geometry hints for the window (@ref{window-set-geometry-hints} can be used to set these explicitly), the default size will be clamped to the nearest permitted size.
1624
1625 Unlike @SlotRef{widget,width-request} and @SlotRef{widget,height-request}, that set a size request for a widget and thus would keep users from shrinking the window, this function only sets the initial size, just as if the user had resized the window themselves. Users can still shrink the window again as they normally would. Setting a default size of -1 means to use the "natural" default size (the size request of the window).
1626
1627 For more control over a window's initial size and how resizing works, see @ref{window-set-geometry-hints}.
1628
1629 For some uses, @ref{window-resize} is a more appropriate function. @ref{window-resize} changes the current size of the window, rather than the size to be used on initial display. @ref{window-resize} always affects the window itself, not the geometry widget.
1630
1631 The default size of a window only affects the first time a window is shown; if a window is hidden and re-shown, it will remember the size it had prior to hiding, rather than using the default size.
1632
1633 Windows can't actually be 0x0 in size, they must be at least 1x1, but passing 0 for width and height is OK, resulting in a 1x1 default size.
1634
1635 Default value: -1
1636 @item @anchor{slot.gtk-window.default-widget}default-widget. Type: @ref{widget}. Accessor: @anchor{fn.gtk-window-default-widget}@code{gtk-window-default-widget}.
1637
1638 The default widget is the widget that's activated when the user presses Enter in a dialog (for example). When setting (rather than unsetting) the default widget it's generally easier to call gtk_widget_grab_focus() on the widget. Before making a widget the default widget, you must set the @SlotRef{widget,can-default} on the widget you'd like to make the default.
1639 @item @anchor{slot.gtk-window.default-width}default-width. Type: @code{integer}. Accessor: @anchor{fn.gtk-window-default-width}@code{gtk-window-default-width}.
1640
1641 The default width of the window, used when initially showing the window.
1642
1643 See @SlotRef{gtk-window,default-height} for explanation.
1644
1645 Default value: -1
1646 @item @anchor{slot.gtk-window.deletable}deletable. Type: @code{boolean}. Accessor: @anchor{fn.gtk-window-deletable}@code{gtk-window-deletable}.
1647
1648 Whether the window frame should have a close button.
1649
1650 By default, windows have a close button in the window frame. Some window managers allow GTK+ to disable this button. If you set the deletable property to False using this function, GTK+ will do its best to convince the window manager not to show a close button. Depending on the system, this function may not have any effect when called on a window that is already visible, so you should call it before calling @ref{widget-show}.
1651
1652 On Windows, this always works, since there's no window manager policy involved.
1653
1654 Default value: True
1655 @item @anchor{slot.gtk-window.destroy-with-parent}destroy-with-parent. Type: @code{boolean}. Accessor: @anchor{fn.gtk-window-destroy-with-parent}@code{gtk-window-destroy-with-parent}.
1656
1657 If this window should be destroyed when the parent is destroyed.
1658
1659 Default value: False
1660 @item @anchor{slot.gtk-window.focus}focus. Type: @ref{widget}. Accessor: @anchor{fn.gtk-window-focus}@code{gtk-window-focus}.
1661
1662 The current focused widget within the window. Note that this is the widget that would have the focus if the toplevel window focused; if the toplevel window is not focused then @SlotRef{gtk-window,focus} will not be True for the widget.
1663
1664 Settings this works the following way. If focus is not the current focus widget, and is focusable, sets it as the focus widget for the window. If focus is NIL, unsets the focus widget for this window. To set the focus to a particular widget in the toplevel, it is usually more convenient to use @ref{widget-grab-focus} instead of this function.
1665
1666 @item @anchor{slot.gtk-window.focus-on-map}focus-on-map. Type: @code{boolean}. Accessor: @anchor{fn.gtk-window-focus-on-map}@code{gtk-window-focus-on-map}.
1667
1668 Windows may set a hint asking the desktop environment not to receive the input focus when the window is mapped.  True if the window should receive the input focus when mapped.
1669
1670 Default value: True
1671 @item @anchor{slot.gtk-window.gravity}gravity. Type: @ref{gravity}. Accessor: @anchor{fn.gtk-window-gravity}@code{gtk-window-gravity}.
1672
1673 The window gravity of the window. See @ref{window-move} and @ref{gravity} for more details about window gravity.
1674
1675 Default value: @EnumVRef{anchor-type,north-west}
1676 @item @anchor{slot.gtk-window.has-toplevel-focus}has-toplevel-focus. Type: @code{boolean}. Accessor: @anchor{fn.gtk-window-has-toplevel-focus}@code{gtk-window-has-toplevel-focus}. Read-only.
1677
1678 Whether the input focus is within this GtkWindow.
1679
1680 Default value: False
1681 @item @anchor{slot.gtk-window.icon}icon. Type: @ref{pixbuf}. Accessor: @anchor{fn.gtk-window-icon}@code{gtk-window-icon}.
1682
1683 This icon is used when the window is minimized (also known as iconified). Some window managers or desktop environments may also place it in the window frame, or display it in other contexts.
1684
1685 The icon should be provided in whatever size it was naturally drawn; that is, don't scale the image before passing it to GTK+. Scaling is postponed until the last minute, when the desired final size is known, to allow best quality.
1686
1687 Icon for this window.
1688 @item @anchor{slot.gtk-window.icon-name}icon-name. Type: @code{string}. Accessor: @anchor{fn.gtk-window-icon-name}@code{gtk-window-icon-name}.
1689
1690 The icon-name property specifies the name of the themed icon to use as the window icon. See @ref{icon-theme} for more details.
1691
1692 Note that this has nothing to do with the WM_ICON_NAME property which is mentioned in the ICCCM.
1693
1694 Default value: NIL
1695 @item @anchor{slot.gtk-window.is-active}is-active. Type: @code{boolean}. Accessor: @anchor{fn.gtk-window-is-active}@code{gtk-window-is-active}. Read-only.
1696
1697 Whether the toplevel is the current active window.
1698
1699 Default value: False
1700 @item @anchor{slot.gtk-window.modal}modal. Type: @code{boolean}. Accessor: @anchor{fn.gtk-window-modal}@code{gtk-window-modal}.
1701
1702 If True, the window is modal (other windows are not usable while this one is up).
1703
1704 Default value: False
1705 @item @anchor{slot.gtk-window.opacity}opacity. Type: @code{double-float}. Accessor: @anchor{fn.gtk-window-opacity}@code{gtk-window-opacity}.
1706
1707 The requested opacity of the window.
1708
1709 Setting opacity requests the windowing system to make window partially transparent, with opacity 0 being fully transparent and 1 fully opaque. (Values of the opacity parameter are clamped to the [0,1] range.) On X11 this has any effect only on X screens with a compositing manager running. See @SlotRef{screen,composited-p}. On Windows it should work always.
1710
1711 Note that setting a window's opacity after the window has been shown causes it to flicker once on Windows.
1712
1713 Allowed values: [0,1]
1714
1715 Default value: 1
1716 @item @anchor{slot.gtk-window.resizable}resizable. Type: @code{boolean}. Accessor: @anchor{fn.gtk-window-resizable}@code{gtk-window-resizable}.
1717
1718 If True, users can resize the window.
1719
1720 Default value: True
1721 @item @anchor{slot.gtk-window.role}role. Type: @code{string}. Accessor: @anchor{fn.gtk-window-role}@code{gtk-window-role}.
1722
1723 Unique identifier for the window to be used when restoring a session.
1724
1725 This is only useful on X11, not with other GTK+ targets.
1726
1727 In combination with the window title, the window role allows a window manager to identify "the same" window when an application is restarted. So for example you might set the "toolbox" role on your app's toolbox window, so that when the user restarts their session, the window manager can put the toolbox back in the same place.
1728
1729 If a window already has a unique title, you don't need to set the role, since the WM can use the title to identify the window when restoring the session.
1730
1731 Default value: NIL
1732 @item @anchor{slot.gtk-window.screen}screen. Type: @ref{screen}. Accessor: @anchor{fn.gtk-window-screen}@code{gtk-window-screen}.
1733
1734 The screen where this window will be displayed.
1735 @item @anchor{slot.gtk-window.skip-pager-hint}skip-pager-hint. Type: @code{boolean}. Accessor: @anchor{fn.gtk-window-skip-pager-hint}@code{gtk-window-skip-pager-hint}.
1736
1737 Windows may set a hint asking the desktop environment not to display the window in the pager. (A "pager" is any desktop navigation tool such as a workspace switcher that displays a thumbnail representation of the windows on the screen.) True if the window should not be in the pager.
1738
1739 Default value: False
1740 @item @anchor{slot.gtk-window.skip-taskbar-hint}skip-taskbar-hint. Type: @code{boolean}. Accessor: @anchor{fn.gtk-window-skip-taskbar-hint}@code{gtk-window-skip-taskbar-hint}.
1741
1742 Windows may set a hint asking the desktop environment not to display the window in the task bar. True if the window should not be in the task bar.
1743
1744 Default value: False
1745 @item @anchor{slot.gtk-window.startup-id}startup-id. Type: @code{string}. Accessor: @anchor{fn.gtk-window-startup-id}@code{gtk-window-startup-id}. Write-only.
1746
1747 The startup-id is a write-only property for setting window's startup notification identifier.
1748
1749 Startup notification identifiers are used by desktop environment to track application startup, to provide user feedback and other features. This function changes the corresponding property on the underlying @ref{gdk-window}. Normally, startup identifier is managed automatically and you should only use this function in special cases like transferring focus from other processes. You should set this before calling @ref{window-present} or any equivalent function generating a window map event.
1750
1751 This is only useful on X11, not with other GTK+ targets.
1752
1753 Default value: NIL
1754 @item @anchor{slot.gtk-window.title}title. Type: @code{string}. Accessor: @anchor{fn.gtk-window-title}@code{gtk-window-title}.
1755
1756 The title of the window.
1757
1758 Default value: NIL
1759 @item @anchor{slot.gtk-window.transient-for}transient-for. Type: @ref{gtk-window}. Accessor: @anchor{fn.gtk-window-transient-for}@code{gtk-window-transient-for}.
1760
1761 The transient parent of the window.
1762
1763 Dialog windows should be set transient for the main application window they were spawned from. This allows window managers to e.g. keep the dialog on top of the main window, or center the dialog over the main window.
1764
1765 On Windows, this puts the child window on top of the parent, much as the window manager would have done on X.
1766 @item @anchor{slot.gtk-window.type}type. Type: @ref{window-type}. Accessor: @anchor{fn.gtk-window-type}@code{gtk-window-type}.
1767
1768 The type of the window.
1769
1770 Default value: @EnumVRef{window-type,toplevel}
1771 @item @anchor{slot.gtk-window.type-hint}type-hint. Type: @ref{gdk-window-type-hint}. Accessor: @anchor{fn.gtk-window-type-hint}@code{gtk-window-type-hint}.
1772
1773 Hint to help the desktop environment understand what kind of window this is and how to treat it.
1774
1775 This should be set before the window becomes visible.
1776
1777 Default value: @EnumVRef{gdk-window-type-hint,normal}
1778 @item @anchor{slot.gtk-window.urgency-hint}urgency-hint. Type: @code{boolean}. Accessor: @anchor{fn.gtk-window-urgency-hint}@code{gtk-window-urgency-hint}.
1779
1780 Windows may set a hint asking the desktop environment to draw the users attention to the window. True if the window should be brought to the user's attention.
1781
1782 Default value: False
1783 @item @anchor{slot.gtk-window.window-position}window-position. Type: @ref{window-position}. Accessor: @anchor{fn.gtk-window-window-position}@code{gtk-window-window-position}.
1784
1785 The initial position of the window.
1786
1787 Default value: @EnumVRef{window-position,none}
1788 @end itemize
1789
1790
1791 Signals:
1792 @itemize
1793 @item @anchor{signal.gtk-window.activate-default}"activate-default". Signature: (instance @ref{gtk-window}) @result{} void. Options: run-last, action.
1794
1795 The activate-default signal is a keybinding signal which gets emitted when the user activates the default widget of window.
1796 @item @anchor{signal.gtk-window.activate-focus}"activate-focus". Signature: (instance @ref{gtk-window}) @result{} void. Options: run-last, action.
1797
1798 The activate-default signal is a keybinding signal which gets emitted when the user activates the currently focused widget of window.
1799 @item @anchor{signal.gtk-window.frame-event}"frame-event". Signature: (instance @ref{gtk-window}), (event @ref{event}) @result{} @code{boolean}. Options: run-last.
1800
1801
1802 @item @anchor{signal.gtk-window.keys-changed}"keys-changed". Signature: (instance @ref{gtk-window}) @result{} void. Options: run-first.
1803
1804 The keys-changed signal gets emitted when the set of accelerators or mnemonics that are associated with window changes.
1805 @item @anchor{signal.gtk-window.set-focus}"set-focus". Signature: (instance @ref{gtk-window}), (widget @ref{widget}) @result{} void. Options: run-last.
1806 @end itemize
1807
1808 @RMethod window-add-accel-group
1809 @lisp
1810 (window-add-accel-group window accel-group)
1811 @end lisp
1812
1813 Associate @var{accel-group} (an @ref{accel-group}) with @var{window} (an @ref{gtk-window}).
1814
1815 @RMethod window-remove-accel-group
1816 @lisp
1817 (window-remove-accel-group window accel-group)
1818 @end lisp
1819
1820 Reverses the effect of @ref{window-add-accel-group}.
1821
1822 @RMethod window-activate-focus
1823 @lisp
1824 (window-activate-focus window)
1825 @end lisp
1826
1827 Activates the current focused widget within the @var{window} (an @ref{gtk-window}).
1828
1829 @RMethod window-activate-default
1830 @lisp
1831 (window-activate-default window) @result{} activated-p
1832 @end lisp
1833
1834 Activates the default widget for the @var{window} (an @ref{gtk-window}), unless the current focused widget has been configured to receive the default action (see @SlotRef{widget,receives-default}), in which case the focused widget is activated.
1835
1836 Returns True if a widget got activated.
1837
1838 @RMethod window-set-geometry-hints
1839 @lisp
1840 (window-set-geometry-hints window geometry-widget geometry geometry-mask)
1841 @end lisp
1842
1843 This function sets up hints about how a @var{window} (an @ref{gtk-window}) can be resized by the user. You can set a minimum and maximum size; allowed resize increments (e.g. for xterm, you can only resize by the size of a character); aspect ratios; and more. See the @ref{geometry} struct.
1844
1845 @var{geometry-widget}: a @ref{widget} - widget the geometry hints will be applied to
1846
1847 @var{geometry}: a @ref{geometry} - struct containing geometry information
1848
1849 @var{geometry-mask}: a @ref{window-hints} - mask indicating which struct fields should be paid attention to
1850
1851 @Function window-list-toplevels
1852 @lisp
1853 (window-list-toplevels) @result{} windows
1854 @end lisp
1855
1856 Returns a list of all existing toplevel windows. The widgets in the list are not individually referenced.
1857
1858 @var{windows}: fresh list of @ref{gtk-window}
1859
1860 @RMethod window-add-mnemonic
1861 @lisp
1862 (window-add-mnemonic window keyval target)
1863 @end lisp
1864
1865 Adds a mnemonic to this @var{window} (a @ref{gtk-window}).
1866
1867 @var{keyval}: mnemonic keyval
1868
1869 @var{target}: the @ref{widget} that gets activated by the mnemonic
1870
1871 @RMethod window-remove-mnemonic
1872 @lisp
1873 (window-remove-mnemonic window keyval target)
1874 @end lisp
1875
1876 Removes a mnemonic from this @var{window} (a @ref{gtk-window}).
1877
1878 @var{keyval}: mnemonic keyval
1879
1880 @var{target}: the @ref{widget} that gets activated by the mnemonic
1881
1882 @RMethod window-mnemonic-activate
1883 @lisp
1884 (window-mnemonic-activate window keyval modifier)
1885 @end lisp
1886
1887 Activates the targets associated with the mnemonic.
1888
1889 @var{keyval}: mnemonic keyval
1890
1891 @var{modifier}: a @ref{modifier-type} - modifiers
1892
1893 @RMethod window-activate-key
1894 @lisp
1895 (window-activate-key window event) @result{} activated-p
1896 @end lisp
1897
1898 Activates mnemonics and accelerators for this @ref{gtk-window}. This is normally called by the default @SignalRef{widget,key-press-event} handler for toplevel windows, however in some cases it may be useful to call this directly when overriding the standard key handling for a toplevel window.
1899
1900 Returns True if a mnemonic or accelerator was found and activated.
1901
1902 @var{event}: a @ref{event-key}
1903
1904 @RMethod window-propagate-key-event
1905 @lisp
1906 (window-propagate-key-event window event) @result{} handled-p
1907 @end lisp
1908
1909 Propagate a key press or release event to the focus widget and up the focus container chain until a widget handles @var{event}. This is normally called by the default @SignalRef{widget,key-press-event} and @SignalRef{widget,key-release-event} handlers for toplevel windows, however in some cases it may be useful to call this directly when overriding the standard key handling for a toplevel window.
1910
1911 Returns True if a widget in the focus chain handled the event.
1912
1913 @var{event}: a @ref{event-key}
1914
1915 @RMethod window-present
1916 @lisp
1917 (window-present window)
1918 @end lisp
1919
1920 Presents a @var{window} (a @ref{gtk-window}) to the user. This may mean raising the window in the stacking order, deiconifying it, moving it to the current desktop, and/or giving it the keyboard focus, possibly dependent on the user's platform, window manager, and preferences.
1921
1922 If window is hidden, this function calls @ref{widget-show} as well.
1923
1924 This function should be used when the user tries to open a window that's already open. Say for example the preferences dialog is currently open, and the user chooses Preferences from the menu a second time; use @ref{window-present} to move the already-open dialog where the user can see it.
1925
1926 If you are calling this function in response to a user interaction, it is preferable to use @ref{window-present-with-time}.
1927
1928 @RMethod window-present-with-time
1929 @lisp
1930 (window-present-with-time window timestamp)
1931 @end lisp
1932
1933 Presents a @var{window} (a @ref{gtk-window}) to the user in response to a user interaction. If you need to present a window without a timestamp, use @ref{window-present}. See @ref{window-present} for details.
1934
1935 @var{timestamp}: the timestamp of the user interaction (typically a button or key press event) which triggered this call
1936
1937 @RMethod window-iconify
1938 @lisp
1939 (window-iconify window)
1940 @end lisp
1941
1942 Asks to iconify (i.e. minimize) the specified @var{window} (a @ref{gtk-window}). Note that you shouldn't assume the window is definitely iconified afterward, because other entities (e.g. the user or window manager) could deiconify it again, or there may not be a window manager in which case iconification isn't possible, etc. But normally the window will end up iconified. Just don't write code that crashes if not.
1943
1944 It's permitted to call this function before showing a window, in which case the window will be iconified before it ever appears onscreen.
1945
1946 You can track iconification via the @SignalRef{widget,window-state-event} signal on GtkWidget.
1947
1948 @RMethod window-deiconify
1949 @lisp
1950 (window-deiconify window)
1951 @end lisp
1952
1953 Asks to deiconify (i.e. unminimize) the specified window. Note that you shouldn't assume the window is definitely deiconified afterward, because other entities (e.g. the user or window manager) could iconify it again before your code which assumes deiconification gets to run.
1954
1955 You can track iconification via the @SignalRef{widget,window-state-event}.
1956
1957 @RMethod window-stick
1958 @lisp
1959 (window-stick window)
1960 @end lisp
1961 Asks to stick @var{window} (a @ref{gtk-window}), which means that it will appear on all user desktops. Note that you shouldn't assume the window is definitely stuck afterward, because other entities (e.g. the user or window manager) could unstick it again, and some window managers do not support sticking windows. But normally the window will end up stuck. Just don't write code that crashes if not.
1962
1963 It's permitted to call this function before showing a window.
1964
1965 You can track stickiness via the @SignalRef{widget,window-state-event} signal.
1966
1967 @RMethod window-unstick
1968 @lisp
1969 (window-unstick window)
1970 @end lisp
1971 Asks to unstick @var{window} (a @ref{gtk-window}), which means that it will appear on only one of the user's desktops. Note that you shouldn't assume the window is definitely unstuck afterward, because other entities (e.g. the user or window manager) could stick it again. But normally the window will end up stuck. Just don't write code that crashes if not.
1972
1973 You can track stickiness via the @SignalRef{widget,window-state-event} signal.
1974
1975 @RMethod window-maximize
1976 @lisp
1977 (window-maximize window)
1978 @end lisp
1979
1980 Asks to maximize @var{window} (a @ref{gtk-window}), so that it becomes full-screen. Note that you shouldn't assume the window is definitely maximized afterward, because other entities (e.g. the user or window manager) could unmaximize it again, and not all window managers support maximization. But normally the window will end up maximized. Just don't write code that crashes if not.
1981
1982 It's permitted to call this function before showing a window, in which case the window will be maximized when it appears onscreen initially.
1983
1984 You can track maximization via the @SignalRef{widget,window-state-event} signal.
1985
1986 @RMethod window-unmaximize
1987 @lisp
1988 (window-unmaximize window)
1989 @end lisp
1990
1991 Asks to unmaximize @var{window} (a @ref{gtk-window}). Note that you shouldn't assume the window is definitely unmaximized afterward, because other entities (e.g. the user or window manager) could maximize it again, and not all window managers honor requests to unmaximize. But normally the window will end up unmaximized. Just don't write code that crashes if not.
1992
1993 You can track maximization via the @SignalRef{widget,window-state-event} signal on GtkWidget.
1994
1995 @RMethod window-fullscreen
1996 @lisp
1997 (window-fullscreen window)
1998 @end lisp
1999
2000 Asks to place @var{window} (a @ref{gtk-window}) in the fullscreen state. Note that you shouldn't assume the window is definitely full screen afterward, because other entities (e.g. the user or window manager) could unfullscreen it again, and not all window managers honor requests to fullscreen windows. But normally the window will end up fullscreen. Just don't write code that crashes if not.
2001
2002 You can track the fullscreen state via the @SignalRef{widget,window-state-event} signal.
2003
2004 @RMethod window-unfullscreen
2005 @lisp
2006 (window-unfullscreen window)
2007 @end lisp
2008
2009 Asks to toggle off the fullscreen state for @var{window} (a @ref{gtk-window}). Note that you shouldn't assume the window is definitely not full screen afterward, because other entities (e.g. the user or window manager) could fullscreen it again, and not all window managers honor requests to unfullscreen windows. But normally the window will end up restored to its normal state. Just don't write code that crashes if not.
2010
2011 You can track the fullscreen state via the @SignalRef{widget,window-state-event} signal.
2012
2013 @RMethod window-set-keep-above
2014 @lisp
2015 (window-set-keep-above window setting)
2016 @end lisp
2017
2018 Asks to keep @var{window} (a @ref{gtk-window}) above, so that it stays on top. Note that you shouldn't assume the window is definitely above afterward, because other entities (e.g. the user or window manager) could not keep it above, and not all window managers support keeping windows above. But normally the window will end kept above. Just don't write code that crashes if not.
2019
2020 It's permitted to call this function before showing a window, in which case the window will be kept above when it appears onscreen initially.
2021
2022 You can track the above state via the @SignalRef{widget,window-state-event} signal.
2023
2024 Note that, according to the Extended Window Manager Hints specification, the above state is mainly meant for user preferences and should not be used by applications e.g. for drawing attention to their dialogs.
2025
2026 @var{setting}: a boolean; whether to keep @var{window} above other windows
2027
2028 @RMethod window-set-keep-below
2029 @lisp
2030 (window-set-keep-below window setting)
2031 @end lisp
2032 Asks to keep window below, so that it stays in bottom. Note that you shouldn't assume the window is definitely below afterward, because other entities (e.g. the user or window manager) could not keep it below, and not all window managers support putting windows below. But normally the window will be kept below. Just don't write code that crashes if not.
2033
2034 It's permitted to call this function before showing a window, in which case the window will be kept below when it appears onscreen initially.
2035
2036 You can track the below state via the "window-state-event" signal on GtkWidget.
2037
2038 Note that, according to the Extended Window Manager Hints specification, the above state is mainly meant for user preferences and should not be used by applications e.g. for drawing attention to their dialogs.
2039
2040 @var{setting}: a boolean; whether to keep window below other windows
2041
2042 @RMethod window-begin-resize-drag
2043 @lisp
2044 (window-begin-resize-drag window edge button root-x root-y timestamp)
2045 @end lisp
2046
2047 Starts resizing a @var{window} (a @ref{gtk-window}). This function is used if an application has window resizing controls. When GDK can support it, the resize will be done using the standard mechanism for the window manager or windowing system. Otherwise, GDK will try to emulate window resizing, potentially not all that well, depending on the windowing system.
2048
2049 @var{edge}: a @ref{window-edge}; position of the resize control
2050
2051 @var{button}: an integer; mouse button that initiated the drag
2052
2053 @var{root-x}: an integer; X position where the user clicked to initiate the drag, in root window coordinates
2054
2055 @var{root-y}: an integer; Y position where the user clicked to initiate the drag
2056
2057 @var{timestamp}: timestamp from the click event that initiated the drag
2058
2059 @RMethod window-begin-move-drag
2060 @lisp
2061 (window-begin-move-drag window button root-x root-y timestamp)
2062 @end lisp
2063
2064 Starts moving a window. This function is used if an application has window movement grips. When GDK can support it, the window movement will be done using the standard mechanism for the window manager or windowing system. Otherwise, GDK will try to emulate window movement, potentially not all that well, depending on the windowing system.
2065
2066 @var{edge}: a @ref{window-edge}; position of the resize control
2067
2068 @var{button}: an integer; mouse button that initiated the drag
2069
2070 @var{root-x}: an integer; X position where the user clicked to initiate the drag, in root window coordinates
2071
2072 @var{root-y}: an integer; Y position where the user clicked to initiate the drag
2073
2074 @var{timestamp}: timestamp from the click event that initiated the drag
2075
2076 @RMethod window-set-frame-dimensions
2077 @lisp
2078 (window-set-frame-dimensions window left top right bottom)
2079 @end lisp
2080
2081 (Note: this is a special-purpose function intended for the framebuffer port; see @ref{window-set-has-frame}. It will have no effect on the window border drawn by the window manager, which is the normal case when using the X Window system.)
2082
2083 For windows with frames this function can be used to change the size of the frame border.
2084
2085 @var{window}: a @ref{gtk-window}
2086
2087 @var{left}, @var{top}, @var{right}, @var{bottom} - integers; sizes of left, top, right, bottom borders
2088
2089 @RMethod window-set-has-frame
2090 @lisp
2091 (window-set-has-frame window setting)
2092 @end lisp
2093
2094 (Note: this is a special-purpose function for the framebuffer port, that causes GTK+ to draw its own window border. For most applications, you want @SlotRef{gtk-window,decorated} instead, which tells the window manager whether to draw the window border.)
2095
2096 If this function is called on a @var{window} (a @ref{gtk-window}) with setting of True, before it is realized or showed, it will have a "frame" window around window->window, accessible in window->frame. Using the signal @SignalRef{gtk-window,frame-event} you can receive all events targeted at the frame.
2097
2098 This function is used by the linux-fb port to implement managed windows, but it could conceivably be used by X-programs that want to do their own window decorations.
2099
2100 @var{setting}: a boolean
2101
2102 @RMethod window-set-mnemonic-modifier
2103 @lisp
2104 (window-set-mnemonic-modifier window modifier)
2105 @end lisp
2106
2107 Sets the mnemonic @var{modifier} (a @ref{modifier-type}) for this @var{window} (a @ref{gtk-window}).
2108
2109 @Function window-default-icon-list
2110 @lisp
2111 (setf (window-default-icon-list) icons)
2112 @end lisp
2113
2114 Sets an icon list to be used as fallback for windows that haven't had @code{gtk_window_set_icon_list} set on them to set up a window-specific icon list. This function allows you to set up the icon for all windows in your app at once.
2115
2116 @var{icons}: a list of @ref{pixbuf}s.
2117
2118 @Function window-default-icon
2119 @lisp
2120 (setf (window-default-icon) icon)
2121 @end lisp
2122
2123 Sets an @var{icon} (a @ref{pixbuf}) to be used as fallback for windows that haven't had @SlotRef{gtk-window,icon} set on them from a pixbuf.
2124
2125 @Function window-default-icon-name
2126 @lisp
2127 (setf (window-default-icon-name) name)
2128 @end lisp
2129
2130 Sets an icon (a @code{string} - the name of the themed icon) to be used as fallback for windows.
2131
2132 @RMethod window-move
2133 @lisp
2134 (window-move window x y)
2135 @end lisp
2136
2137 Asks the window manager to move @var{window} (a @ref{gtk-window}) to the given position (defined by integers @var{x}, @var{y}). Window managers are free to ignore this; most window managers ignore requests for initial window positions (instead using a user-defined placement algorithm) and honor requests after the window has already been shown.
2138
2139 Note: the position is the position of the gravity-determined reference point for the window. The gravity determines two things: first, the location of the reference point in root window coordinates; and second, which point on the window is positioned at the reference point.
2140
2141 By default the gravity is @EnumVRef{gravity,north-west}, so the reference point is simply the x, y supplied. The top-left corner of the window decorations (aka window frame or border) will be placed at x, y. Therefore, to position a window at the top left of the screen, you want to use the default gravity (which is @EnumVRef{gravity,north-west}) and move the window to 0,0.
2142
2143 To position a window at the bottom right corner of the screen, you would set @EnumVRef{gravity,south-east}, which means that the reference point is at x + the window width and y + the window height, and the bottom-right corner of the window border will be placed at that reference point. So, to place a window in the bottom right corner you would first set gravity to south east, then write: gtk_window_move (window, gdk_screen_width() - window_width, gdk_screen_height() - window_height) (note that this example does not take multi-head scenarios into account).
2144
2145 The Extended Window Manager Hints specification at http://www.freedesktop.org/Standards/wm-spec has a nice table of gravities in the "implementation notes" section.
2146
2147 @RMethod window-resize
2148 @lisp
2149 (window-resize window width height)
2150 @end lisp
2151
2152 Resizes the @var{window} (a @ref{gtk-window}) to @var{width} pixels by @var{height} pixels as if the user had done so, obeying geometry constraints. The default geometry constraint is that windows may not be smaller than their size request (see @SlotRef{widget,width-request}, @SlotRef{widget,height-request}).
2153
2154 If @ref{window-resize} is called before showing a window for the first time, it overrides any default size set with @SlotRef{gtk-window,default-width}, @SlotRef{gtk-window,default-height}.
2155
2156 Windows may not be resized smaller than 1 by 1 pixels.
2157
2158 @node h-box
2159 @section h-box
2160 @Class h-box
2161 Superclass: @ref{box} @ref{atk-implementor-iface} @ref{buildable} @ref{orientable}
2162
2163 Subclasses: @ref{statusbar} @ref{file-chooser-button}
2164
2165 Slots:
2166 @itemize
2167 @end itemize
2168
2169
2170 Signals:
2171 @itemize
2172 @end itemize
2173
2174
2175
2176
2177 @node h-button-box
2178 @section h-button-box
2179 @Class h-button-box
2180 Superclass: @ref{button-box} @ref{atk-implementor-iface} @ref{buildable} @ref{orientable}
2181
2182 Slots:
2183 @itemize
2184 @end itemize
2185
2186
2187 Signals:
2188 @itemize
2189 @end itemize
2190
2191
2192
2193
2194 @node h-paned
2195 @section h-paned
2196 @Class h-paned
2197 Superclass: @ref{paned} @ref{atk-implementor-iface} @ref{buildable} @ref{orientable}
2198
2199 Slots:
2200 @itemize
2201 @end itemize
2202
2203
2204 Signals:
2205 @itemize
2206 @end itemize
2207
2208
2209
2210
2211 @node h-ruler
2212 @section h-ruler
2213 @Class h-ruler
2214 Superclass: @ref{ruler} @ref{atk-implementor-iface} @ref{buildable} @ref{orientable}
2215
2216 Slots:
2217 @itemize
2218 @end itemize
2219
2220
2221 Signals:
2222 @itemize
2223 @end itemize
2224
2225
2226
2227
2228 @node h-s-v
2229 @section h-s-v
2230 @Class h-s-v
2231 Superclass: @ref{widget} @ref{atk-implementor-iface} @ref{buildable}
2232
2233 Slots:
2234 @itemize
2235 @end itemize
2236
2237
2238 Signals:
2239 @itemize
2240 @item @anchor{signal.h-s-v.changed}"changed". Signature: (instance @ref{h-s-v}) @result{} void. Options: run-first.
2241 @item @anchor{signal.h-s-v.move}"move". Signature: (instance @ref{h-s-v}), (arg-1 @ref{direction-type}) @result{} void. Options: run-last, action.
2242 @end itemize
2243
2244
2245
2246
2247 @node h-scale
2248 @section h-scale
2249 @Class h-scale
2250 Superclass: @ref{scale} @ref{atk-implementor-iface} @ref{buildable} @ref{orientable}
2251
2252 The @ref{h-scale} widget is used to allow the user to select a value using a horizontal slider.
2253
2254 The position to show the current value, and the number of decimal places shown can be set using the parent @ref{scale} class's functions.
2255
2256 Slots:
2257 @itemize
2258 @end itemize
2259
2260
2261 Signals:
2262 @itemize
2263 @end itemize
2264
2265
2266
2267
2268 @node h-scrollbar
2269 @section h-scrollbar
2270 @Class h-scrollbar
2271 Superclass: @ref{scrollbar} @ref{atk-implementor-iface} @ref{buildable} @ref{orientable}
2272
2273 Slots:
2274 @itemize
2275 @end itemize
2276
2277
2278 Signals:
2279 @itemize
2280 @end itemize
2281
2282
2283
2284
2285 @node h-separator
2286 @section h-separator
2287 @Class h-separator
2288 Superclass: @ref{separator} @ref{atk-implementor-iface} @ref{buildable} @ref{orientable}
2289
2290 Slots:
2291 @itemize
2292 @end itemize
2293
2294
2295 Signals:
2296 @itemize
2297 @end itemize
2298
2299
2300
2301
2302 @node handle-box
2303 @section handle-box
2304 @Class handle-box
2305 Superclass: @ref{bin} @ref{atk-implementor-iface} @ref{buildable}
2306
2307 Slots:
2308 @itemize
2309 @item @anchor{slot.handle-box.child-detached}child-detached. Type: @code{boolean}. Accessor: @anchor{fn.handle-box-child-detached}@code{handle-box-child-detached}. Read-only.
2310 @item @anchor{slot.handle-box.handle-position}handle-position. Type: @ref{position-type}. Accessor: @anchor{fn.handle-box-handle-position}@code{handle-box-handle-position}.
2311 @item @anchor{slot.handle-box.shadow}shadow. Type: @ref{shadow-type}. Accessor: @anchor{fn.handle-box-shadow}@code{handle-box-shadow}.
2312 @item @anchor{slot.handle-box.shadow-type}shadow-type. Type: @ref{shadow-type}. Accessor: @anchor{fn.handle-box-shadow-type}@code{handle-box-shadow-type}.
2313 @item @anchor{slot.handle-box.snap-edge}snap-edge. Type: @ref{position-type}. Accessor: @anchor{fn.handle-box-snap-edge}@code{handle-box-snap-edge}.
2314 @item @anchor{slot.handle-box.snap-edge-set}snap-edge-set. Type: @code{boolean}. Accessor: @anchor{fn.handle-box-snap-edge-set}@code{handle-box-snap-edge-set}.
2315 @end itemize
2316
2317
2318 Signals:
2319 @itemize
2320 @item @anchor{signal.handle-box.child-attached}"child-attached". Signature: (instance @ref{handle-box}), (arg-1 @ref{widget}) @result{} void. Options: run-first.
2321 @item @anchor{signal.handle-box.child-detached}"child-detached". Signature: (instance @ref{handle-box}), (arg-1 @ref{widget}) @result{} void. Options: run-first.
2322 @end itemize
2323
2324
2325
2326
2327 @node icon-view
2328 @section icon-view
2329 @Class icon-view
2330 Superclass: @ref{container} @ref{atk-implementor-iface} @ref{buildable} @ref{cell-layout}
2331
2332 Slots:
2333 @itemize
2334 @item @anchor{slot.icon-view.column-spacing}column-spacing. Type: @code{integer}. Accessor: @anchor{fn.icon-view-column-spacing}@code{icon-view-column-spacing}.
2335 @item @anchor{slot.icon-view.columns}columns. Type: @code{integer}. Accessor: @anchor{fn.icon-view-columns}@code{icon-view-columns}.
2336 @item @anchor{slot.icon-view.item-width}item-width. Type: @code{integer}. Accessor: @anchor{fn.icon-view-item-width}@code{icon-view-item-width}.
2337 @item @anchor{slot.icon-view.margin}margin. Type: @code{integer}. Accessor: @anchor{fn.icon-view-margin}@code{icon-view-margin}.
2338 @item @anchor{slot.icon-view.markup-column}markup-column. Type: @code{integer}. Accessor: @anchor{fn.icon-view-markup-column}@code{icon-view-markup-column}.
2339 @item @anchor{slot.icon-view.model}model. Type: @ref{tree-model}. Accessor: @anchor{fn.icon-view-model}@code{icon-view-model}.
2340 @item @anchor{slot.icon-view.orientation}orientation. Type: @ref{orientation}. Accessor: @anchor{fn.icon-view-orientation}@code{icon-view-orientation}.
2341 @item @anchor{slot.icon-view.pixbuf-column}pixbuf-column. Type: @code{integer}. Accessor: @anchor{fn.icon-view-pixbuf-column}@code{icon-view-pixbuf-column}.
2342 @item @anchor{slot.icon-view.reorderable}reorderable. Type: @code{boolean}. Accessor: @anchor{fn.icon-view-reorderable}@code{icon-view-reorderable}.
2343 @item @anchor{slot.icon-view.row-spacing}row-spacing. Type: @code{integer}. Accessor: @anchor{fn.icon-view-row-spacing}@code{icon-view-row-spacing}.
2344 @item @anchor{slot.icon-view.selection-mode}selection-mode. Type: @ref{selection-mode}. Accessor: @anchor{fn.icon-view-selection-mode}@code{icon-view-selection-mode}.
2345 @item @anchor{slot.icon-view.spacing}spacing. Type: @code{integer}. Accessor: @anchor{fn.icon-view-spacing}@code{icon-view-spacing}.
2346 @item @anchor{slot.icon-view.text-column}text-column. Type: @code{integer}. Accessor: @anchor{fn.icon-view-text-column}@code{icon-view-text-column}.
2347 @item @anchor{slot.icon-view.tooltip-column}tooltip-column. Type: @code{integer}. Accessor: @anchor{fn.icon-view-tooltip-column}@code{icon-view-tooltip-column}.
2348 @end itemize
2349
2350
2351 Signals:
2352 @itemize
2353 @item @anchor{signal.icon-view.activate-cursor-item}"activate-cursor-item". Signature: (instance @ref{icon-view}) @result{} @code{boolean}. Options: run-last, action.
2354 @item @anchor{signal.icon-view.item-activated}"item-activated". Signature: (instance @ref{icon-view}), (arg-1 @ref{tree-path}) @result{} void. Options: run-last.
2355 @item @anchor{signal.icon-view.move-cursor}"move-cursor". Signature: (instance @ref{icon-view}), (arg-1 @ref{movement-step}), (arg-2 @code{integer}) @result{} @code{boolean}. Options: run-last, action.
2356 @item @anchor{signal.icon-view.select-all}"select-all". Signature: (instance @ref{icon-view}) @result{} void. Options: run-last, action.
2357 @item @anchor{signal.icon-view.select-cursor-item}"select-cursor-item". Signature: (instance @ref{icon-view}) @result{} void. Options: run-last, action.
2358 @item @anchor{signal.icon-view.selection-changed}"selection-changed". Signature: (instance @ref{icon-view}) @result{} void. Options: run-first.
2359 @item @anchor{signal.icon-view.set-scroll-adjustments}"set-scroll-adjustments". Signature: (instance @ref{icon-view}), (arg-1 @ref{adjustment}), (arg-2 @ref{adjustment}) @result{} void. Options: run-last.
2360 @item @anchor{signal.icon-view.toggle-cursor-item}"toggle-cursor-item". Signature: (instance @ref{icon-view}) @result{} void. Options: run-last, action.
2361 @item @anchor{signal.icon-view.unselect-all}"unselect-all". Signature: (instance @ref{icon-view}) @result{} void. Options: run-last, action.
2362 @end itemize
2363
2364
2365
2366
2367 @node image
2368 @section image
2369 @Class image
2370 Superclass: @ref{misc} @ref{atk-implementor-iface} @ref{buildable}
2371
2372 The @ref{image} widget displays an image. Various kinds of object can be displayed as an image; most typically, you would load a @ref{pixbuf} ("pixel buffer") from a file, and then display that. There's an @SlotRef{image,file} slot (with @code{:file} initarg) that is used to load @ref{pixbuf} from file:
2373 @lisp
2374 (make-instance 'image :file "myfile.png")
2375 @end lisp
2376
2377 If the file isn't loaded successfully, the image will contain a "broken image" icon similar to that used in many web browsers. If you want to handle errors in loading the file yourself, for example by displaying an error message, then load the image and set the @SlotRef{image,pixbuf}.
2378
2379 The image file may contain an animation, if so the @ref{image} will display an animation (@ref{pixbuf-animation}) instead of a static image.
2380
2381 @ref{image} is a subclass of @ref{misc}, which implies that you can align it (center, left, right) and add padding to it, using @ref{misc} slot.
2382
2383 @ref{image} is a "no window" widget (has no @ref{gdk-window} of its own), so by default does not receive events. If you want to receive events on the image, such as button clicks, place the image inside a @ref{event-box}, then connect to the event signals on the event box.
2384
2385 When handling events on the event box, keep in mind that coordinates in the image may be different from event box coordinates due to the alignment and padding settings on the image (see @ref{misc}). The simplest way to solve this is to set the alignment to 0.0 (left/top), and set the padding to zero. Then the origin of the image will be the same as the origin of the event box.
2386
2387 @c Sometimes an application will want to avoid depending on external data files, such as image files. GTK+ comes with a program to avoid this, called gdk-pixbuf-csource. This program allows you to convert an image into a C variable declaration, which can then be loaded into a GdkPixbuf using gdk_pixbuf_new_from_inline().
2388
2389 Slots:
2390 @itemize
2391 @item @anchor{slot.image.file}file. Type: @code{string}. Accessor: @anchor{fn.image-file}@code{image-file}.
2392
2393 Filename to load and display.
2394
2395 Default value: NIL
2396 @item @anchor{slot.image.gicon}gicon. Type: @code{GIcon}. Accessor: @anchor{fn.image-gicon}@code{image-gicon}.
2397
2398 The GIcon displayed in the GtkImage. For themed icons, If the icon theme is changed, the image will be updated automatically.
2399
2400 TODO: GIcon is part of GIO library that is not yet supported by cl-gtk2
2401 @item @anchor{slot.image.icon-name}icon-name. Type: @code{string}. Accessor: @anchor{fn.image-icon-name}@code{image-icon-name}.
2402
2403 The name of the icon in the icon theme. If the icon theme is changed, the image will be updated automatically.
2404
2405 Default value: NIL
2406 @item @anchor{slot.image.icon-set}icon-set. Type: @code{GtkIconSet}. Accessor: @anchor{fn.image-icon-set}@code{image-icon-set}.
2407
2408 Icon set to display.
2409 @item @anchor{slot.image.icon-size}icon-size. Type: @code{integer}. Accessor: @anchor{fn.image-icon-size}@code{image-icon-size}.
2410
2411 Symbolic size to use for stock icon, icon set or named icon.
2412
2413 Allowed values: >= 0
2414
2415 Default value: 4
2416 @item @anchor{slot.image.image}image. Type: @ref{gdk-image}. Accessor: @anchor{fn.image-image}@code{image-image}.
2417
2418 A GdkImage to display.
2419 @item @anchor{slot.image.mask}mask. Type: @ref{pixmap}. Accessor: @anchor{fn.image-mask}@code{image-mask}.
2420
2421 Mask bitmap to use with @ref{gdk-image} or @ref{pixmap}.
2422 @item @anchor{slot.image.pixbuf}pixbuf. Type: @ref{pixbuf}. Accessor: @anchor{fn.image-pixbuf}@code{image-pixbuf}.
2423
2424 A @ref{pixbuf} to display.
2425 @item @anchor{slot.image.pixbuf-animation}pixbuf-animation. Type: @ref{pixbuf-animation}. Accessor: @anchor{fn.image-pixbuf-animation}@code{image-pixbuf-animation}.
2426
2427 @ref{pixbuf-animation} to display.
2428 @item @anchor{slot.image.pixel-size}pixel-size. Type: @code{integer}. Accessor: @anchor{fn.image-pixel-size}@code{image-pixel-size}.
2429
2430 This property can be used to specify a fixed size overriding the @SlotRef{image,icon-size} property for images of type @EnumVRef{image-type,icon-name}.
2431
2432 Default value: -1
2433 @item @anchor{slot.image.pixmap}pixmap. Type: @ref{pixmap}. Accessor: @anchor{fn.image-pixmap}@code{image-pixmap}.
2434
2435 A @ref{pixmap} to display.
2436 @item @anchor{slot.image.stock}stock. Type: @code{string}. Accessor: @anchor{fn.image-stock}@code{image-stock}.
2437
2438 Stock ID for a stock image to display.
2439
2440 Default value: NIL
2441 @item @anchor{slot.image.storage-type}storage-type. Type: @ref{image-type}. Accessor: @anchor{fn.image-storage-type}@code{image-storage-type}. Read-only.
2442
2443 The representation being used for image data.
2444
2445 Default value: @EnumVRef{image-type,empty}
2446 @end itemize
2447
2448
2449 Signals:
2450 @itemize
2451 @end itemize
2452
2453
2454
2455
2456 @node image-menu-item
2457 @section image-menu-item
2458 @Class image-menu-item
2459 Superclass: @ref{menu-item} @ref{atk-implementor-iface} @ref{activatable} @ref{buildable}
2460
2461 Slots:
2462 @itemize
2463 @item @anchor{slot.image-menu-item.accel-group}accel-group. Type: @ref{accel-group}. Accessor: @anchor{fn.image-menu-item-accel-group}@code{image-menu-item-accel-group}. Write-only.
2464 @item @anchor{slot.image-menu-item.always-show-image}always-show-image. Type: @code{boolean}. Accessor: @anchor{fn.image-menu-item-always-show-image}@code{image-menu-item-always-show-image}.
2465 @item @anchor{slot.image-menu-item.image}image. Type: @ref{widget}. Accessor: @anchor{fn.image-menu-item-image}@code{image-menu-item-image}.
2466 @item @anchor{slot.image-menu-item.use-stock}use-stock. Type: @code{boolean}. Accessor: @anchor{fn.image-menu-item-use-stock}@code{image-menu-item-use-stock}.
2467 @end itemize
2468
2469
2470 Signals:
2471 @itemize
2472 @end itemize
2473
2474
2475
2476
2477 @node input-dialog
2478 @section input-dialog
2479 @Class input-dialog
2480 Superclass: @ref{dialog} @ref{atk-implementor-iface} @ref{buildable}
2481
2482 Slots:
2483 @itemize
2484 @end itemize
2485
2486
2487 Signals:
2488 @itemize
2489 @item @anchor{signal.input-dialog.disable-device}"disable-device". Signature: (instance @ref{input-dialog}), (arg-1 @code{GdkDevice}) @result{} void. Options: run-last.
2490 @item @anchor{signal.input-dialog.enable-device}"enable-device". Signature: (instance @ref{input-dialog}), (arg-1 @code{GdkDevice}) @result{} void. Options: run-last.
2491 @end itemize
2492
2493
2494
2495
2496 @node invisible
2497 @section invisible
2498 @Class invisible
2499 Superclass: @ref{widget} @ref{atk-implementor-iface} @ref{buildable}
2500
2501 The @ref{invisible} widget is used internally in GTK+, and is probably not very useful for application developers.
2502
2503 It is used for reliable pointer grabs and selection handling in the code for drag-and-drop.
2504
2505 Slots:
2506 @itemize
2507 @item @anchor{slot.invisible.screen}screen. Type: @ref{screen}. Accessor: @anchor{fn.invisible-screen}@code{invisible-screen}.
2508
2509 The @ref{screen} where this window will be displayed.
2510 @end itemize
2511
2512
2513 Signals:
2514 @itemize
2515 @end itemize
2516
2517
2518
2519
2520 @node item
2521 @section item
2522 @Class item
2523 Superclass: @ref{bin} @ref{atk-implementor-iface} @ref{buildable}
2524
2525 Subclasses: @ref{tree-item} @ref{menu-item}
2526
2527 Slots:
2528 @itemize
2529 @end itemize
2530
2531
2532 Signals:
2533 @itemize
2534 @item @anchor{signal.item.deselect}"deselect". Signature: (instance @ref{item}) @result{} void. Options: run-first.
2535 @item @anchor{signal.item.select}"select". Signature: (instance @ref{item}) @result{} void. Options: run-first.
2536 @item @anchor{signal.item.toggle}"toggle". Signature: (instance @ref{item}) @result{} void. Options: run-first.
2537 @end itemize
2538
2539
2540
2541
2542 @node label
2543 @section label
2544 @Class label
2545 Superclass: @ref{misc} @ref{atk-implementor-iface} @ref{buildable}
2546
2547 Subclasses: @ref{accel-label}
2548
2549 The @ref{label} widget displays a small amount of text. As the name implies, most labels are used to label another widget such as a @ref{button}, or a @ref{menu-item}.
2550
2551 @chapheading Mnemonics
2552
2553 Labels may contain mnemonics. Mnemonics are underlined characters in the label, used for keyboard navigation. Mnemonics are created by providing a string with an underscore before the mnemonic character, such as "_File", to @SlotRef{label,label} and setting @SlotRef{label,use-underline} to True.
2554
2555 Mnemonics automatically activate any activatable widget the label is inside, such as a @ref{button}; if the label is not inside the mnemonic's target widget, you have to tell the label about the target by settings @SlotRef{label,mnemonic-widget}. Here's a simple example where the label is inside a button:
2556
2557 @chapheading Markup (styled text)
2558
2559 To make it easy to format text in a label (changing colors, fonts, etc.), label text can be provided in a simple markup format. Set @SlotRef{label,use-markup} to True if @SlotRef{label,label} contains markup. Here's how to create a label with a small font:
2560 @lisp
2561 (make-instance 'label :label "<small>Small text</small>" :use-markup t)
2562 @end lisp
2563 (See @uref{http://library.gnome.org/devel/pango/stable/PangoMarkupFormat.html,,complete documentation} of available tags in the Pango manual.)
2564
2565 The markup passed to @SlotRef{label,label} must be valid; for example, literal @code{</>/&} characters must be escaped as @code{&lt;}, @code{&gt;}, and @code{&amp;}. If you pass text obtained from the user, file, or a network, you'll want to escape it with g_markup_escape_text() or g_markup_printf_escaped(). (TODO: these functions are not supported yet in cl-gtk2)
2566
2567 Markup strings are just a convenient way to set the PangoAttrList on a label; @SlotRef{label,attributes} may be a simpler way to set attributes in some cases. Be careful though; PangoAttrList tends to cause internationalization problems, unless you're applying attributes to the entire string (i.e. unless you set the range of each attribute to [0, G_MAXINT)). The reason is that specifying the start_index and end_index for a PangoAttribute requires knowledge of the exact string being displayed, so translations will cause problems.
2568
2569 @chapheading Selectable labels
2570
2571 Labels can be made selectable with @SlotRef{label,selectable}. Selectable labels allow the user to copy the label contents to the clipboard. Only labels that contain useful-to-copy information - such as error messages - should be made selectable.
2572
2573 @chapheading Text layout
2574
2575 A label can contain any number of paragraphs, but will have performance problems if it contains more than a small number. Paragraphs are separated by newlines or other paragraph separators understood by Pango.
2576
2577 Labels can automatically wrap text if you call @SlotRef{label,line-wrap}.
2578
2579 @SlotRef{label,justify} sets how the lines in a label align with one another. If you want to set how the label as a whole aligns in its available space, see @SlotRef{misc,xalign} and @SlotRef{misc,yalign}.
2580
2581 Slots:
2582 @itemize
2583 @item @anchor{slot.label.angle}angle. Type: @code{double-float}. Accessor: @anchor{fn.label-angle}@code{label-angle}.
2584
2585 The angle that the baseline of the label makes with the horizontal, in degrees, measured counterclockwise. An angle of 90 reads from from bottom to top, an angle of 270, from top to bottom. Ignored if the label is selectable, wrapped, or ellipsized.
2586
2587 Allowed values: [0,360]
2588
2589 Default value: 0
2590 @item @anchor{slot.label.attributes}attributes. Type: @code{PangoAttrList}. Accessor: @anchor{fn.label-attributes}@code{label-attributes}.
2591
2592 A list of style attributes to apply to the text of the label
2593 @item @anchor{slot.label.cursor-position}cursor-position. Type: @code{integer}. Accessor: @anchor{fn.label-cursor-position}@code{label-cursor-position}. Read-only.
2594
2595 The current position of the insertion cursor in chars.
2596
2597 Allowed values: >= 0
2598
2599 Default value: 0
2600 @item @anchor{slot.label.ellipsize}ellipsize. Type: @ref{pango-ellipsize-mode}. Accessor: @anchor{fn.label-ellipsize}@code{label-ellipsize}.
2601
2602 The preferred place to ellipsize the string, if the label does not have enough room to display the entire string.
2603
2604 Note that setting this property to a value other than @EnumVRef{pango-ellipsize-mode,none} has the side-effect that the label requests only enough space to display the ellipsis "...". In particular, this means that ellipsizing labels do not work well in notebook tabs, unless the tab's "tab-expand" property is set to True. Other ways to set a label's width are @SlotRef{widget,width-request} and @SlotRef{label,width-chars}.
2605
2606 Default value: @EnumVRef{pango-ellipsize-mode,none}
2607 @item @anchor{slot.label.justify}justify. Type: @ref{justification}. Accessor: @anchor{fn.label-justify}@code{label-justify}.
2608
2609 The alignment of the lines in the text of the label relative to each other. This does NOT affect the alignment of the label within its allocation. See @SlotRef{misc,xalign} for that.
2610
2611 Default value: @EnumVRef{justification,left}
2612 @item @anchor{slot.label.label}label. Type: @code{string}. Accessor: @anchor{fn.label-label}@code{label-label}.
2613
2614 The text of the label.
2615
2616 Default value: ""
2617 @item @anchor{slot.label.layout}layout. Type: @ref{g-object}. Accessor: @anchor{fn.label-layout}@code{label-layout}. Read-only.
2618
2619 Gets the PangoLayout used to display the label. The layout is useful to e.g. convert text positions to pixel positions, in combination with @SlotRef{label,layout-offsets}.
2620 @item @anchor{slot.label.layout-offsets}layout-offsets. Type: list of @code{integer}. Accessor: @anchor{fn.label-layout-offsets}@code{label-layout-offsets}. Read-only.
2621
2622 The coordinates where the label will draw the @code{PangoLayout} representing the text in the label; useful to convert mouse events into coordinates inside the @code{PangoLayout}, e.g. to take some action if some part of the label is clicked. Of course you will need to create a @ref{event-box} to receive the events, and pack the label inside it, since labels are a no-window widgets. Remember when using the @code{PangoLayout} functions you need to convert to and from pixels using PANGO_PIXELS or PANGO_SCALE.
2623 @item @anchor{slot.label.line-wrap}line-wrap. Type: @code{boolean}. Accessor: @anchor{fn.label-line-wrap}@code{label-line-wrap}.
2624
2625 Whether lines in the label are automatically wrapped. True makes label break lines if text exceeds the widget's size. False lets the text get cut off by the edge of the widget if it exceeds the widget size.
2626
2627 Note that setting line wrapping to True does not make the label wrap at its parent container's width, because GTK+ widgets conceptually can't make their requisition depend on the parent container's size. For a label that wraps at a specific position, set the label's width using @SlotRef{widget,width-request}.
2628 @item @anchor{slot.label.line-wrap-mode}line-wrap-mode. Type: @ref{pango-wrap-mode}. Accessor: @anchor{fn.label-line-wrap-mode}@code{label-line-wrap-mode}.
2629
2630 If line wrapping is on (see @SlotRef{label,line-wrap}) this controls how the line wrapping is done. The default is @EnumVRef{pango-wrap-mode,word} which means wrap on word boundaries.
2631 @item @anchor{slot.label.max-width-chars}max-width-chars. Type: @code{integer}. Accessor: @anchor{fn.label-max-width-chars}@code{label-max-width-chars}.
2632
2633 The desired maximum width of the label, in characters. If this property is set to -1, the width will be calculated automatically, otherwise the label will request space for no more than the requested number of characters. If the @SlotRef{label,width-chars} property is set to a positive value, then the @SlotRef{label,max-width-chars} property is ignored.
2634
2635 Default value: -1
2636 @item @anchor{slot.label.mnemonic-keyval}mnemonic-keyval. Type: @code{integer}. Accessor: @anchor{fn.label-mnemonic-keyval}@code{label-mnemonic-keyval}. Read-only.
2637
2638 The mnemonic accelerator key for this label.
2639
2640 Default value: 16777215
2641 @item @anchor{slot.label.mnemonic-widget}mnemonic-widget. Type: @ref{widget}. Accessor: @anchor{fn.label-mnemonic-widget}@code{label-mnemonic-widget}.
2642
2643 The widget to be activated when the label's mnemonic key is pressed.
2644 @item @anchor{slot.label.pattern}pattern. Type: @code{string}. Accessor: @anchor{fn.label-pattern}@code{label-pattern}. Write-only.
2645
2646 A string with _ characters in positions correspond to characters in the text to underline.
2647
2648 Default value: NIL
2649 @item @anchor{slot.label.selectable}selectable. Type: @code{boolean}. Accessor: @anchor{fn.label-selectable}@code{label-selectable}.
2650
2651 Whether the label text can be selected with the mouse.
2652
2653 Default value: False
2654 @item @anchor{slot.label.selection-bound}selection-bound. Type: @code{integer}. Accessor: @anchor{fn.label-selection-bound}@code{label-selection-bound}. Read-only.
2655
2656 The position of the opposite end of the selection from the cursor in chars.
2657
2658 Allowed values: >= 0
2659
2660 Default value: 0
2661 @item @anchor{slot.label.selection-bounds}selection-bounds. Type: @code{(list integer integer)}. Accessor: @anchor{fn.label-selection-bounds}@code{label-selection-bounds}. Read-only.
2662
2663 Gets the selected range of characters in the label. Returns either NIL if there is no selection or list of two integers specifying character offsets of start and end of a selection
2664 @item @anchor{slot.label.single-line-mode}single-line-mode. Type: @code{boolean}. Accessor: @anchor{fn.label-single-line-mode}@code{label-single-line-mode}.
2665
2666 Whether the label is in single line mode. In single line mode, the height of the label does not depend on the actual text, it is always set to ascent + descent of the font. This can be an advantage in situations where resizing the label because of text changes would be distracting, e.g. in a statusbar.
2667
2668 Default value: False
2669 @item @anchor{slot.label.use-markup}use-markup. Type: @code{boolean}. Accessor: @anchor{fn.label-use-markup}@code{label-use-markup}.
2670
2671 The text of the label includes XML markup.
2672
2673 Default value: False
2674 @item @anchor{slot.label.use-underline}use-underline. Type: @code{boolean}. Accessor: @anchor{fn.label-use-underline}@code{label-use-underline}.
2675
2676 If set, an underline in the text indicates the next character should be used for the mnemonic accelerator key.
2677
2678 Default value: False
2679 @item @anchor{slot.label.width-chars}width-chars. Type: @code{integer}. Accessor: @anchor{fn.label-width-chars}@code{label-width-chars}.
2680
2681 he desired width of the label, in characters. If this property is set to -1, the width will be calculated automatically, otherwise the label will request either 3 characters or the property value, whichever is greater. If the @SlotRef{label,width-chars} property is set to a positive value, then the @SlotRef{label,max-width-chars} property is ignored.
2682
2683 Default value: -1
2684 @item @anchor{slot.label.wrap}wrap. Type: @code{boolean}. Accessor: @anchor{fn.label-wrap}@code{label-wrap}.
2685
2686 If set, wrap lines if the text becomes too wide.
2687
2688 Default value: False
2689 @item @anchor{slot.label.wrap-mode}wrap-mode. Type: @ref{pango-wrap-mode}. Accessor: @anchor{fn.label-wrap-mode}@code{label-wrap-mode}.
2690
2691 If line wrapping is on (see the @SlotRef{label,wrap} property) this controls how the line wrapping is done. The default is @EnumVRef{pango-wrap-mode,word}, which means wrap on word boundaries.
2692 @end itemize
2693
2694
2695 Signals:
2696 @itemize
2697 @item @anchor{signal.label.copy-clipboard}"copy-clipboard". Signature: (instance @ref{label}) @result{} void. Options: run-last, action.
2698
2699 This signal is a keybinding signal which gets emitted to copy the selection to the clipboard.
2700
2701 The default binding for this signal is Ctrl-c.
2702 @item @anchor{signal.label.move-cursor}"move-cursor". Signature: (instance @ref{label}), (step @ref{movement-step}), (count @code{integer}), (extend-selection @code{boolean}) @result{} void. Options: run-last, action.
2703
2704 This signal is a keybinding signal which gets emitted when the user initiates a cursor movement. If the cursor is not visible in entry, this signal causes the viewport to be moved instead.
2705
2706 Applications should not connect to it, but may emit it with @ref{emit-signal} if they need to control the cursor programmatically.
2707
2708 The default bindings for this signal come in two variants, the variant with the Shift modifier extends the selection, the variant without the Shift modifer does not. There are too many key combinations to list them all here.
2709
2710 @itemize
2711 @item Arrow keys move by individual characters/lines
2712 @item Ctrl-arrow key combinations move by words/paragraphs
2713 @item Home/End keys move to the ends of the buffer
2714 @end itemize
2715
2716
2717 @var{step}: the granularity of the move, as a GtkMovementStep
2718
2719 @var{count}: the number of step units to move
2720
2721 @var{extend-selection}: True if the move should extend the selection
2722 @item @anchor{signal.label.populate-popup}"populate-popup". Signature: (instance @ref{label}), (menu @ref{menu}) @result{} void. Options: run-last.
2723
2724 This signal gets emitted before showing the context menu of the label. Note that only selectable labels have context menus.
2725
2726 If you need to add items to the context menu, connect to this signal and append your menuitems to the menu.
2727 @end itemize
2728
2729
2730
2731
2732 @node layout
2733 @section layout
2734 @Class layout
2735 Superclass: @ref{container} @ref{atk-implementor-iface} @ref{buildable}
2736
2737 Slots:
2738 @itemize
2739 @item @anchor{slot.layout.bin-window}bin-window. Type: @ref{g-object}. Accessor: @anchor{fn.layout-bin-window}@code{layout-bin-window}. Read-only.
2740 @item @anchor{slot.layout.hadjustment}hadjustment. Type: @ref{adjustment}. Accessor: @anchor{fn.layout-hadjustment}@code{layout-hadjustment}.
2741 @item @anchor{slot.layout.height}height. Type: @code{integer}. Accessor: @anchor{fn.layout-height}@code{layout-height}.
2742 @item @anchor{slot.layout.vadjustment}vadjustment. Type: @ref{adjustment}. Accessor: @anchor{fn.layout-vadjustment}@code{layout-vadjustment}.
2743 @item @anchor{slot.layout.width}width. Type: @code{integer}. Accessor: @anchor{fn.layout-width}@code{layout-width}.
2744 @end itemize
2745
2746
2747 Signals:
2748 @itemize
2749 @item @anchor{signal.layout.set-scroll-adjustments}"set-scroll-adjustments". Signature: (instance @ref{layout}), (arg-1 @ref{adjustment}), (arg-2 @ref{adjustment}) @result{} void. Options: run-last, action.
2750 @end itemize
2751
2752
2753
2754
2755 @node link-button
2756 @section link-button
2757 @Class link-button
2758 Superclass: @ref{button} @ref{atk-implementor-iface} @ref{activatable} @ref{buildable}
2759
2760 A @ref{link-button} is a @ref{button} with a hyperlink, similar to the one used by web browsers, which triggers an action when clicked. It is useful to show quick links to resources.
2761
2762 @ref{link-button} offers a global hook, which is called when the used clicks on it: see @ref{link-button-global-uri-hook}.
2763
2764 Slots:
2765 @itemize
2766 @item @anchor{slot.link-button.uri}uri. Type: @code{string}. Accessor: @anchor{fn.link-button-uri}@code{link-button-uri}.
2767
2768 The URI bound to this button.
2769
2770 Default value: NIL
2771 @item @anchor{slot.link-button.visited}visited. Type: @code{boolean}. Accessor: @anchor{fn.link-button-visited}@code{link-button-visited}.
2772
2773 The 'visited' state of this button. A visited link is drawn in a different color.
2774
2775 Default value: False
2776 @end itemize
2777
2778
2779 Signals:
2780 @itemize
2781 @end itemize
2782
2783 @RFunction link-button-global-uri-hook
2784 @lisp
2785 (setf (link-button-gloval-uri-hook) function)
2786 @end lisp
2787
2788 Sets function as the function that should be invoked every time a user clicks a @ref{link-button}. This function is called before every callback registered for the @SignalRef{button,clicked} signal.
2789
2790 If @var{function} is NIL, GTK+ defaults to calling gtk_show_uri() (default function that opens the default application for a URI).
2791
2792 @var{function} is a function of two arguments: a @ref{link-button} and a @code{string}. First argument is the button that was clicked and the second is the URI of the button.
2793
2794 @node menu
2795 @section menu
2796 @Class menu
2797 Superclass: @ref{menu-shell} @ref{atk-implementor-iface} @ref{buildable}
2798
2799 Subclasses: @ref{recent-chooser-menu}
2800
2801 Slots:
2802 @itemize
2803 @item @anchor{slot.menu.accel-group}accel-group. Type: @ref{accel-group}. Accessor: @anchor{fn.menu-accel-group}@code{menu-accel-group}.
2804 @item @anchor{slot.menu.accel-path}accel-path. Type: @code{string}. Accessor: @anchor{fn.menu-accel-path}@code{menu-accel-path}.
2805 @item @anchor{slot.menu.active}active. Type: @code{integer}. Accessor: @anchor{fn.menu-active}@code{menu-active}.
2806 @item @anchor{slot.menu.attach-widget}attach-widget. Type: @ref{widget}. Accessor: @anchor{fn.menu-attach-widget}@code{menu-attach-widget}.
2807 @item @anchor{slot.menu.monitor}monitor. Type: @code{integer}. Accessor: @anchor{fn.menu-monitor}@code{menu-monitor}.
2808 @item @anchor{slot.menu.screen}screen. Type: @ref{g-object}. Accessor: @anchor{fn.menu-screen}@code{menu-screen}. Write-only.
2809 @item @anchor{slot.menu.tearoff-state}tearoff-state. Type: @code{boolean}. Accessor: @anchor{fn.menu-tearoff-state}@code{menu-tearoff-state}.
2810 @item @anchor{slot.menu.tearoff-title}tearoff-title. Type: @code{string}. Accessor: @anchor{fn.menu-tearoff-title}@code{menu-tearoff-title}.
2811 @end itemize
2812
2813
2814 Signals:
2815 @itemize
2816 @item @anchor{signal.menu.move-scroll}"move-scroll". Signature: (instance @ref{menu}), (arg-1 @ref{scroll-type}) @result{} void. Options: run-last, action.
2817 @end itemize
2818
2819
2820
2821
2822 @node menu-bar
2823 @section menu-bar
2824 @Class menu-bar
2825 Superclass: @ref{menu-shell} @ref{atk-implementor-iface} @ref{buildable}
2826
2827 Slots:
2828 @itemize
2829 @item @anchor{slot.menu-bar.child-pack-direction}child-pack-direction. Type: @ref{pack-direction}. Accessor: @anchor{fn.menu-bar-child-pack-direction}@code{menu-bar-child-pack-direction}.
2830 @item @anchor{slot.menu-bar.pack-direction}pack-direction. Type: @ref{pack-direction}. Accessor: @anchor{fn.menu-bar-pack-direction}@code{menu-bar-pack-direction}.
2831 @end itemize
2832
2833
2834 Signals:
2835 @itemize
2836 @end itemize
2837
2838
2839
2840
2841 @node menu-item
2842 @section menu-item
2843 @Class menu-item
2844 Superclass: @ref{item} @ref{atk-implementor-iface} @ref{activatable} @ref{buildable}
2845
2846 Subclasses: @ref{tearoff-menu-item} @ref{separator-menu-item} @ref{image-menu-item} @ref{check-menu-item}
2847
2848 Slots:
2849 @itemize
2850 @item @anchor{slot.menu-item.accel-path}accel-path. Type: @code{string}. Accessor: @anchor{fn.menu-item-accel-path}@code{menu-item-accel-path}.
2851 @item @anchor{slot.menu-item.label}label. Type: @code{string}. Accessor: @anchor{fn.menu-item-label}@code{menu-item-label}.
2852 @item @anchor{slot.menu-item.right-justified}right-justified. Type: @code{boolean}. Accessor: @anchor{fn.menu-item-right-justified}@code{menu-item-right-justified}.
2853 @item @anchor{slot.menu-item.submenu}submenu. Type: @ref{menu}. Accessor: @anchor{fn.menu-item-submenu}@code{menu-item-submenu}.
2854 @item @anchor{slot.menu-item.use-underline}use-underline. Type: @code{boolean}. Accessor: @anchor{fn.menu-item-use-underline}@code{menu-item-use-underline}.
2855 @end itemize
2856
2857
2858 Signals:
2859 @itemize
2860 @item @anchor{signal.menu-item.activate}"activate". Signature: (instance @ref{menu-item}) @result{} void. Options: run-first, action.
2861 @item @anchor{signal.menu-item.activate-item}"activate-item". Signature: (instance @ref{menu-item}) @result{} void. Options: run-first.
2862 @item @anchor{signal.menu-item.toggle-size-allocate}"toggle-size-allocate". Signature: (instance @ref{menu-item}), (arg-1 @code{integer}) @result{} void. Options: run-first.
2863 @item @anchor{signal.menu-item.toggle-size-request}"toggle-size-request". Signature: (instance @ref{menu-item}), (arg-1 gpointer) @result{} void. Options: run-first.
2864 @end itemize
2865
2866
2867
2868
2869 @node menu-shell
2870 @section menu-shell
2871 @Class menu-shell
2872 Superclass: @ref{container} @ref{atk-implementor-iface} @ref{buildable}
2873
2874 Subclasses: @ref{menu-bar} @ref{menu}
2875
2876 Slots:
2877 @itemize
2878 @item @anchor{slot.menu-shell.take-focus}take-focus. Type: @code{boolean}. Accessor: @anchor{fn.menu-shell-take-focus}@code{menu-shell-take-focus}.
2879 @end itemize
2880
2881
2882 Signals:
2883 @itemize
2884 @item @anchor{signal.menu-shell.activate-current}"activate-current". Signature: (instance @ref{menu-shell}), (arg-1 @code{boolean}) @result{} void. Options: run-last, action.
2885 @item @anchor{signal.menu-shell.cancel}"cancel". Signature: (instance @ref{menu-shell}) @result{} void. Options: run-last, action.
2886 @item @anchor{signal.menu-shell.cycle-focus}"cycle-focus". Signature: (instance @ref{menu-shell}), (arg-1 @ref{direction-type}) @result{} void. Options: run-last, action.
2887 @item @anchor{signal.menu-shell.deactivate}"deactivate". Signature: (instance @ref{menu-shell}) @result{} void. Options: run-first.
2888 @item @anchor{signal.menu-shell.move-current}"move-current". Signature: (instance @ref{menu-shell}), (arg-1 @ref{menu-direction-type}) @result{} void. Options: run-last, action.
2889 @item @anchor{signal.menu-shell.move-selected}"move-selected". Signature: (instance @ref{menu-shell}), (arg-1 @code{integer}) @result{} @code{boolean}. Options: run-last.
2890 @item @anchor{signal.menu-shell.selection-done}"selection-done". Signature: (instance @ref{menu-shell}) @result{} void. Options: run-first.
2891 @end itemize
2892
2893
2894
2895
2896 @node menu-tool-button
2897 @section menu-tool-button
2898 @Class menu-tool-button
2899 Superclass: @ref{tool-button} @ref{atk-implementor-iface} @ref{activatable} @ref{buildable}
2900
2901 Slots:
2902 @itemize
2903 @item @anchor{slot.menu-tool-button.arrow-tooltip-markup}arrow-tooltip-markup. Type: @code{string}. Accessor: @anchor{fn.menu-tool-button-arrow-tooltip-markup}@code{menu-tool-button-arrow-tooltip-markup}. Write-only.
2904 @item @anchor{slot.menu-tool-button.arrow-tooltip-text}arrow-tooltip-text. Type: @code{string}. Accessor: @anchor{fn.menu-tool-button-arrow-tooltip-text}@code{menu-tool-button-arrow-tooltip-text}. Write-only.
2905 @item @anchor{slot.menu-tool-button.menu}menu. Type: @ref{menu}. Accessor: @anchor{fn.menu-tool-button-menu}@code{menu-tool-button-menu}.
2906 @end itemize
2907
2908
2909 Signals:
2910 @itemize
2911 @item @anchor{signal.menu-tool-button.show-menu}"show-menu". Signature: (instance @ref{menu-tool-button}) @result{} void. Options: run-first.
2912 @end itemize
2913
2914
2915
2916
2917 @node message-dialog
2918 @section message-dialog
2919 @Class message-dialog
2920 Superclass: @ref{dialog} @ref{atk-implementor-iface} @ref{buildable}
2921
2922 @ref{message-dialog} presents a dialog with an image representing the
2923 type of message (Error, Question, etc.) alongside some message
2924 text. It's simply a convenience widget; you could construct the
2925 equivalent of @ref{message-dialog} from @ref{dialog} without too much
2926 effort, but @ref{message-dialog} saves typing.
2927
2928 The easiest way to do a modal message dialog is to use gtk_dialog_run(),
2929 though you can also pass in the @FlagsVRef{dialog-flags,modal} flag,
2930 @ref{dialog-run} automatically makes the dialog modal and waits for the
2931 user to respond to it. @ref{dialog-run} returns when any dialog button
2932 is clicked.
2933
2934 Slots:
2935 @itemize
2936 @item @anchor{slot.message-dialog.buttons}buttons. Type: @ref{buttons-type}. Accessor: @anchor{fn.message-dialog-buttons}@code{message-dialog-buttons}. Write-only.
2937
2938 The buttons shown in the message dialog.
2939
2940 Default value: @EnumVRef{buttons-type,none}
2941 @item @anchor{slot.message-dialog.image}image. Type: @ref{widget}. Accessor: @anchor{fn.message-dialog-image}@code{message-dialog-image}.
2942
2943 The image for this dialog
2944 @item @anchor{slot.message-dialog.message-type}message-type. Type: @ref{message-type}. Accessor: @anchor{fn.message-dialog-message-type}@code{message-dialog-message-type}.
2945
2946 The type of the message. The type is used to determine the image that is shown in the dialog, unless the image is explicitly set by the @SlotRef{message-dialog,image} property.
2947
2948 Default value: @EnumVRef{message-type,info}
2949 @item @anchor{slot.message-dialog.secondary-text}secondary-text. Type: @code{string}. Accessor: @anchor{fn.message-dialog-secondary-text}@code{message-dialog-secondary-text}.
2950
2951 The secondary text of the message dialog.
2952
2953 Default value: NIL
2954 @item @anchor{slot.message-dialog.secondary-use-markup}secondary-use-markup. Type: @code{boolean}. Accessor: @anchor{fn.message-dialog-secondary-use-markup}@code{message-dialog-secondary-use-markup}.
2955
2956 True if the secondary text of the dialog includes Pango markup. See pango_parse_markup().
2957
2958 Default value: False
2959 @item @anchor{slot.message-dialog.text}text. Type: @code{string}. Accessor: @anchor{fn.message-dialog-text}@code{message-dialog-text}.
2960
2961 The primary text of the message dialog. If the dialog has a secondary text, this will appear as the title.
2962
2963 Default value: ""
2964 @item @anchor{slot.message-dialog.use-markup}use-markup. Type: @code{boolean}. Accessor: @anchor{fn.message-dialog-use-markup}@code{message-dialog-use-markup}.
2965
2966 True if the primary text of the dialog includes Pango markup. See pango_parse_markup().
2967
2968 Default value: False
2969 @end itemize
2970
2971
2972 Signals:
2973 @itemize
2974 @end itemize
2975
2976
2977 @node misc
2978 @section misc
2979 @Class misc
2980 Superclass: @ref{widget} @ref{atk-implementor-iface} @ref{buildable}
2981
2982 Subclasses: @ref{image} @ref{arrow} @ref{label}
2983
2984 Slots:
2985 @itemize
2986 @item @anchor{slot.misc.xalign}xalign. Type: @code{single-float}. Accessor: @anchor{fn.misc-xalign}@code{misc-xalign}.
2987 @item @anchor{slot.misc.xpad}xpad. Type: @code{integer}. Accessor: @anchor{fn.misc-xpad}@code{misc-xpad}.
2988 @item @anchor{slot.misc.yalign}yalign. Type: @code{single-float}. Accessor: @anchor{fn.misc-yalign}@code{misc-yalign}.
2989 @item @anchor{slot.misc.ypad}ypad. Type: @code{integer}. Accessor: @anchor{fn.misc-ypad}@code{misc-ypad}.
2990 @end itemize
2991
2992
2993 Signals:
2994 @itemize
2995 @end itemize
2996
2997
2998
2999
3000 @node notebook
3001 @section notebook
3002 @Class notebook
3003 Superclass: @ref{container} @ref{atk-implementor-iface} @ref{buildable}
3004
3005 Slots:
3006 @itemize
3007 @item @anchor{slot.notebook.enable-popup}enable-popup. Type: @code{boolean}. Accessor: @anchor{fn.notebook-enable-popup}@code{notebook-enable-popup}.
3008 @item @anchor{slot.notebook.group}group. Type: gpointer. Accessor: @anchor{fn.notebook-group}@code{notebook-group}.
3009 @item @anchor{slot.notebook.group-id}group-id. Type: @code{integer}. Accessor: @anchor{fn.notebook-group-id}@code{notebook-group-id}.
3010 @item @anchor{slot.notebook.homogeneous}homogeneous. Type: @code{boolean}. Accessor: @anchor{fn.notebook-homogeneous}@code{notebook-homogeneous}.
3011 @item @anchor{slot.notebook.page}page. Type: @code{integer}. Accessor: @anchor{fn.notebook-page}@code{notebook-page}.
3012 @item @anchor{slot.notebook.scrollable}scrollable. Type: @code{boolean}. Accessor: @anchor{fn.notebook-scrollable}@code{notebook-scrollable}.
3013 @item @anchor{slot.notebook.show-border}show-border. Type: @code{boolean}. Accessor: @anchor{fn.notebook-show-border}@code{notebook-show-border}.
3014 @item @anchor{slot.notebook.show-tabs}show-tabs. Type: @code{boolean}. Accessor: @anchor{fn.notebook-show-tabs}@code{notebook-show-tabs}.
3015 @item @anchor{slot.notebook.tab-border}tab-border. Type: @code{integer}. Accessor: @anchor{fn.notebook-tab-border}@code{notebook-tab-border}. Write-only.
3016 @item @anchor{slot.notebook.tab-hborder}tab-hborder. Type: @code{integer}. Accessor: @anchor{fn.notebook-tab-hborder}@code{notebook-tab-hborder}.
3017 @item @anchor{slot.notebook.tab-pos}tab-pos. Type: @ref{position-type}. Accessor: @anchor{fn.notebook-tab-pos}@code{notebook-tab-pos}.
3018 @item @anchor{slot.notebook.tab-vborder}tab-vborder. Type: @code{integer}. Accessor: @anchor{fn.notebook-tab-vborder}@code{notebook-tab-vborder}.
3019 @end itemize
3020
3021
3022 Signals:
3023 @itemize
3024 @item @anchor{signal.notebook.change-current-page}"change-current-page". Signature: (instance @ref{notebook}), (arg-1 @code{integer}) @result{} @code{boolean}. Options: run-last, action.
3025 @item @anchor{signal.notebook.create-window}"create-window". Signature: (instance @ref{notebook}), (arg-1 @ref{widget}), (arg-2 @code{integer}), (arg-3 @code{integer}) @result{} @ref{notebook}. Options: run-last.
3026 @item @anchor{signal.notebook.focus-tab}"focus-tab". Signature: (instance @ref{notebook}), (arg-1 @ref{notebook-tab}) @result{} @code{boolean}. Options: run-last, action.
3027 @item @anchor{signal.notebook.move-focus-out}"move-focus-out". Signature: (instance @ref{notebook}), (arg-1 @ref{direction-type}) @result{} void. Options: run-last, action.
3028 @item @anchor{signal.notebook.page-added}"page-added". Signature: (instance @ref{notebook}), (arg-1 @ref{widget}), (arg-2 @code{integer}) @result{} void. Options: run-last.
3029 @item @anchor{signal.notebook.page-removed}"page-removed". Signature: (instance @ref{notebook}), (arg-1 @ref{widget}), (arg-2 @code{integer}) @result{} void. Options: run-last.
3030 @item @anchor{signal.notebook.page-reordered}"page-reordered". Signature: (instance @ref{notebook}), (arg-1 @ref{widget}), (arg-2 @code{integer}) @result{} void. Options: run-last.
3031 @item @anchor{signal.notebook.reorder-tab}"reorder-tab". Signature: (instance @ref{notebook}), (arg-1 @ref{direction-type}), (arg-2 @code{boolean}) @result{} @code{boolean}. Options: run-last, action.
3032 @item @anchor{signal.notebook.select-page}"select-page". Signature: (instance @ref{notebook}), (arg-1 @code{boolean}) @result{} @code{boolean}. Options: run-last, action.
3033 @item @anchor{signal.notebook.switch-page}"switch-page". Signature: (instance @ref{notebook}), (arg-1 gpointer), (arg-2 @code{integer}) @result{} void. Options: run-last.
3034 @end itemize
3035
3036
3037
3038
3039 @node old-editable
3040 @section old-editable
3041 @Class old-editable
3042 Superclass: @ref{widget} @ref{atk-implementor-iface} @ref{buildable} @ref{editable}
3043
3044 Subclasses: @ref{text}
3045
3046 Slots:
3047 @itemize
3048 @item @anchor{slot.old-editable.editable}editable. Type: @code{boolean}. Accessor: @anchor{fn.old-editable-editable}@code{old-editable-editable}.
3049 @item @anchor{slot.old-editable.text-position}text-position. Type: @code{integer}. Accessor: @anchor{fn.old-editable-text-position}@code{old-editable-text-position}.
3050 @end itemize
3051
3052
3053 Signals:
3054 @itemize
3055 @item @anchor{signal.old-editable.activate}"activate". Signature: (instance @ref{old-editable}) @result{} void. Options: run-last, action.
3056 @item @anchor{signal.old-editable.copy-clipboard}"copy-clipboard". Signature: (instance @ref{old-editable}) @result{} void. Options: run-last, action.
3057 @item @anchor{signal.old-editable.cut-clipboard}"cut-clipboard". Signature: (instance @ref{old-editable}) @result{} void. Options: run-last, action.
3058 @item @anchor{signal.old-editable.kill-char}"kill-char". Signature: (instance @ref{old-editable}), (arg-1 @code{integer}) @result{} void. Options: run-last, action.
3059 @item @anchor{signal.old-editable.kill-line}"kill-line". Signature: (instance @ref{old-editable}), (arg-1 @code{integer}) @result{} void. Options: run-last, action.
3060 @item @anchor{signal.old-editable.kill-word}"kill-word". Signature: (instance @ref{old-editable}), (arg-1 @code{integer}) @result{} void. Options: run-last, action.
3061 @item @anchor{signal.old-editable.move-cursor}"move-cursor". Signature: (instance @ref{old-editable}), (arg-1 @code{integer}), (arg-2 @code{integer}) @result{} void. Options: run-last, action.
3062 @item @anchor{signal.old-editable.move-page}"move-page". Signature: (instance @ref{old-editable}), (arg-1 @code{integer}), (arg-2 @code{integer}) @result{} void. Options: run-last, action.
3063 @item @anchor{signal.old-editable.move-to-column}"move-to-column". Signature: (instance @ref{old-editable}), (arg-1 @code{integer}) @result{} void. Options: run-last, action.
3064 @item @anchor{signal.old-editable.move-to-row}"move-to-row". Signature: (instance @ref{old-editable}), (arg-1 @code{integer}) @result{} void. Options: run-last, action.
3065 @item @anchor{signal.old-editable.move-word}"move-word". Signature: (instance @ref{old-editable}), (arg-1 @code{integer}) @result{} void. Options: run-last, action.
3066 @item @anchor{signal.old-editable.paste-clipboard}"paste-clipboard". Signature: (instance @ref{old-editable}) @result{} void. Options: run-last, action.
3067 @item @anchor{signal.old-editable.set-editable}"set-editable". Signature: (instance @ref{old-editable}), (arg-1 @code{boolean}) @result{} void. Options: run-last, action.
3068 @end itemize
3069
3070
3071
3072
3073 @node paned
3074 @section paned
3075 @Class paned
3076 Superclass: @ref{container} @ref{atk-implementor-iface} @ref{buildable} @ref{orientable}
3077
3078 Subclasses: @ref{v-paned} @ref{h-paned}
3079
3080 Slots:
3081 @itemize
3082 @item @anchor{slot.paned.max-position}max-position. Type: @code{integer}. Accessor: @anchor{fn.paned-max-position}@code{paned-max-position}. Read-only.
3083 @item @anchor{slot.paned.min-position}min-position. Type: @code{integer}. Accessor: @anchor{fn.paned-min-position}@code{paned-min-position}. Read-only.
3084 @item @anchor{slot.paned.position}position. Type: @code{integer}. Accessor: @anchor{fn.paned-position}@code{paned-position}.
3085 @item @anchor{slot.paned.position-set}position-set. Type: @code{boolean}. Accessor: @anchor{fn.paned-position-set}@code{paned-position-set}.
3086 @end itemize
3087
3088
3089 Signals:
3090 @itemize
3091 @item @anchor{signal.paned.accept-position}"accept-position". Signature: (instance @ref{paned}) @result{} @code{boolean}. Options: run-last, action.
3092 @item @anchor{signal.paned.cancel-position}"cancel-position". Signature: (instance @ref{paned}) @result{} @code{boolean}. Options: run-last, action.
3093 @item @anchor{signal.paned.cycle-child-focus}"cycle-child-focus". Signature: (instance @ref{paned}), (arg-1 @code{boolean}) @result{} @code{boolean}. Options: run-last, action.
3094 @item @anchor{signal.paned.cycle-handle-focus}"cycle-handle-focus". Signature: (instance @ref{paned}), (arg-1 @code{boolean}) @result{} @code{boolean}. Options: run-last, action.
3095 @item @anchor{signal.paned.move-handle}"move-handle". Signature: (instance @ref{paned}), (arg-1 @ref{scroll-type}) @result{} @code{boolean}. Options: run-last, action.
3096 @item @anchor{signal.paned.toggle-handle-focus}"toggle-handle-focus". Signature: (instance @ref{paned}) @result{} @code{boolean}. Options: run-last, action.
3097 @end itemize
3098
3099
3100
3101
3102 @node plug
3103 @section plug
3104 @Class plug
3105 Superclass: @ref{gtk-window} @ref{atk-implementor-iface} @ref{buildable}
3106
3107 Slots:
3108 @itemize
3109 @item @anchor{slot.plug.embedded}embedded. Type: @code{boolean}. Accessor: @anchor{fn.plug-embedded}@code{plug-embedded}. Read-only.
3110 @item @anchor{slot.plug.socket-window}socket-window. Type: @ref{gdk-window}. Accessor: @anchor{fn.plug-socket-window}@code{plug-socket-window}. Read-only.
3111 @end itemize
3112
3113
3114 Signals:
3115 @itemize
3116 @item @anchor{signal.plug.embedded}"embedded". Signature: (instance @ref{plug}) @result{} void. Options: run-last.
3117 @end itemize
3118
3119
3120
3121
3122 @node progress
3123 @section progress
3124 @Class progress
3125 Superclass: @ref{widget} @ref{atk-implementor-iface} @ref{buildable}
3126
3127 Subclasses: @ref{progress-bar}
3128
3129 Slots:
3130 @itemize
3131 @item @anchor{slot.progress.activity-mode}activity-mode. Type: @code{boolean}. Accessor: @anchor{fn.progress-activity-mode}@code{progress-activity-mode}.
3132 @item @anchor{slot.progress.show-text}show-text. Type: @code{boolean}. Accessor: @anchor{fn.progress-show-text}@code{progress-show-text}.
3133 @item @anchor{slot.progress.text-xalign}text-xalign. Type: @code{single-float}. Accessor: @anchor{fn.progress-text-xalign}@code{progress-text-xalign}.
3134 @item @anchor{slot.progress.text-yalign}text-yalign. Type: @code{single-float}. Accessor: @anchor{fn.progress-text-yalign}@code{progress-text-yalign}.
3135 @end itemize
3136
3137
3138 Signals:
3139 @itemize
3140 @end itemize
3141
3142
3143
3144
3145 @node progress-bar
3146 @section progress-bar
3147 @Class progress-bar
3148 Superclass: @ref{progress} @ref{atk-implementor-iface} @ref{buildable}
3149
3150 The @ref{progress-bar} is typically used to display the progress of a long running operation. It provides a visual clue that processing is underway. The @ref{progress-bar} can be used in two different modes: percentage mode and activity  mode.
3151
3152 When an application can determine how much work needs to take place (e.g. read a fixed number of bytes from a file) and can monitor its progress, it can use the @ref{progress-bar} in percentage mode and the user sees a growing bar indicating the percentage of the work that has been completed. In this mode, the application is required to set @SlotRef{progress-bar,fraction} periodically to update the progress bar.
3153
3154 When an application has no accurate way of knowing the amount of work to do, it can use the @ref{progress-bar} in activity mode, which shows activity by a block moving back and forth within the progress area. In this mode, the application is required to call @ref{progress-bar-pulse} perodically to update the progress bar.
3155
3156 There is quite a bit of flexibility provided to control the appearance of the @ref{progress-bar}. Functions are provided to control the orientation of the bar, optional text can be displayed along with the bar, and the step size used in activity mode can be set.
3157
3158 Slots:
3159 @itemize
3160 @item @anchor{slot.progress-bar.activity-blocks}activity-blocks. Type: @code{integer}. Accessor: @anchor{fn.progress-bar-activity-blocks}@code{progress-bar-activity-blocks}.
3161
3162 The number of blocks which can fit in the progress bar area in activity mode (Deprecated).
3163
3164 Allowed values: >= 2
3165
3166 Default value: 5
3167 @item @anchor{slot.progress-bar.activity-step}activity-step. Type: @code{integer}. Accessor: @anchor{fn.progress-bar-activity-step}@code{progress-bar-activity-step}.
3168
3169 The increment used for each iteration in activity mode (Deprecated).
3170
3171 Default value: 3
3172 @item @anchor{slot.progress-bar.adjustment}adjustment. Type: @ref{adjustment}. Accessor: @anchor{fn.progress-bar-adjustment}@code{progress-bar-adjustment}.
3173
3174 The @ref{adjustment} connected to the progress bar (Deprecated
3175 @item @anchor{slot.progress-bar.bar-style}bar-style. Type: @ref{progress-bar-style}. Accessor: @anchor{fn.progress-bar-bar-style}@code{progress-bar-bar-style}.
3176
3177 Specifies the visual style of the bar in percentage mode (Deprecated).
3178
3179 Default value: @EnumVRef{progress-bar-style,continuous}
3180 @item @anchor{slot.progress-bar.discrete-blocks}discrete-blocks. Type: @code{integer}. Accessor: @anchor{fn.progress-bar-discrete-blocks}@code{progress-bar-discrete-blocks}.
3181
3182 The number of discrete blocks in a progress bar (when shown in the discrete style).
3183
3184 Allowed values: >= 2
3185
3186 Default value: 10
3187 @item @anchor{slot.progress-bar.ellipsize}ellipsize. Type: @ref{pango-ellipsize-mode}. Accessor: @anchor{fn.progress-bar-ellipsize}@code{progress-bar-ellipsize}.
3188
3189 The preferred place to ellipsize the string, if the progressbar does not have enough room to display the entire string.
3190
3191 Note that setting this property to a value other than @EnumVRef{pango-ellipsize-mode,none} has the side-effect that the progressbar requests only enough space to display the ellipsis "...". Another means to set a progressbar's width is @SlotRef{widget,width-request}.
3192
3193 Default value: @EnumVRef{pango-ellipsize-mode,none}
3194 @item @anchor{slot.progress-bar.fraction}fraction. Type: @code{double-float}. Accessor: @anchor{fn.progress-bar-fraction}@code{progress-bar-fraction}.
3195
3196 The fraction of total work that has been completed.
3197
3198 Allowed values: [0,1]
3199
3200 Default value: 0
3201 @item @anchor{slot.progress-bar.orientation}orientation. Type: @ref{progress-bar-orientation}. Accessor: @anchor{fn.progress-bar-orientation}@code{progress-bar-orientation}.
3202
3203 Orientation and growth direction of the progress bar.
3204
3205 Default value: @EnumVRef{progress-bar-orientation,left-to-right}
3206 @item @anchor{slot.progress-bar.pulse-step}pulse-step. Type: @code{double-float}. Accessor: @anchor{fn.progress-bar-pulse-step}@code{progress-bar-pulse-step}.
3207
3208 The fraction of total progress to move the bouncing block when pulsed.
3209
3210 Allowed values: [0,1]
3211
3212 Default value: 0.1
3213 @item @anchor{slot.progress-bar.text}text. Type: @code{string}. Accessor: @anchor{fn.progress-bar-text}@code{progress-bar-text}.
3214
3215 Text to be displayed in the progress bar.
3216
3217 Default value: NIL
3218 @end itemize
3219
3220
3221 Signals:
3222 @itemize
3223 @end itemize
3224
3225 @RMethod progress-bar-pulse
3226 @lisp
3227 (progress-bar-pulse progress-bar)
3228 @end lisp
3229
3230 Indicates that some progress is made, but you don't know how much. Causes the progress bar to enter "activity mode," where a block bounces back and forth. Each call to @ref{progress-bar-pulse} causes the block to move by a little bit (the amount of movement per pulse is determined by @SlotRef{progress-bar,pulse-step}).
3231
3232 @node radio-button
3233 @section radio-button
3234 @Class radio-button
3235 Superclass: @ref{check-button} @ref{atk-implementor-iface} @ref{activatable} @ref{buildable}
3236
3237 A single radio button performs the same basic function as a @ref{check-button}, as its position in the object hierarchy reflects. It is only when multiple radio buttons are grouped together that they become a different user interface component in their own right.
3238
3239 Every radio button is a member of some group of radio buttons. When one is selected, all other radio buttons in the same group are deselected. A @ref{radio-button} is one way of giving the user a choice from many options.
3240
3241 To group radio buttons into one group, set @SlotRef{radio-button,group} to one of the radio buttons of the group.
3242
3243 Slots:
3244 @itemize
3245 @item @anchor{slot.radio-button.group}group. Type: @ref{radio-button}. Accessor: @anchor{fn.radio-button-group}@code{radio-button-group}. Write-only.
3246
3247 A button of the radio button group that this radio button belongs to
3248 @end itemize
3249
3250
3251 Signals:
3252 @itemize
3253 @item @anchor{signal.radio-button.group-changed}"group-changed". Signature: (instance @ref{radio-button}) @result{} void. Options: run-first.
3254
3255 Emitted when the group of radio buttons that a radio button belongs to changes. This is emitted when a radio button switches from being alone to being part of a group of 2 or more buttons, or vice-versa, and when a button is moved from one group of 2 or more buttons to a different one, but not when the composition of the group that a button belongs to changes.
3256 @end itemize
3257
3258
3259
3260
3261 @node radio-menu-item
3262 @section radio-menu-item
3263 @Class radio-menu-item
3264 Superclass: @ref{check-menu-item} @ref{atk-implementor-iface} @ref{activatable} @ref{buildable}
3265
3266 Slots:
3267 @itemize
3268 @item @anchor{slot.radio-menu-item.group}group. Type: @ref{radio-menu-item}. Accessor: @anchor{fn.radio-menu-item-group}@code{radio-menu-item-group}. Write-only.
3269 @end itemize
3270
3271
3272 Signals:
3273 @itemize
3274 @item @anchor{signal.radio-menu-item.group-changed}"group-changed". Signature: (instance @ref{radio-menu-item}) @result{} void. Options: run-first.
3275 @end itemize
3276
3277
3278
3279
3280 @node radio-tool-button
3281 @section radio-tool-button
3282 @Class radio-tool-button
3283 Superclass: @ref{toggle-tool-button} @ref{atk-implementor-iface} @ref{activatable} @ref{buildable}
3284
3285 Slots:
3286 @itemize
3287 @item @anchor{slot.radio-tool-button.group}group. Type: @ref{radio-tool-button}. Accessor: @anchor{fn.radio-tool-button-group}@code{radio-tool-button-group}. Write-only.
3288 @end itemize
3289
3290
3291 Signals:
3292 @itemize
3293 @end itemize
3294
3295
3296
3297
3298 @node range
3299 @section range
3300 @Class range
3301 Superclass: @ref{widget} @ref{atk-implementor-iface} @ref{buildable} @ref{orientable}
3302
3303 Subclasses: @ref{scrollbar} @ref{scale}
3304
3305 Slots:
3306 @itemize
3307 @item @anchor{slot.range.adjustment}adjustment. Type: @ref{adjustment}. Accessor: @anchor{fn.range-adjustment}@code{range-adjustment}.
3308 @item @anchor{slot.range.fill-level}fill-level. Type: @code{double-float}. Accessor: @anchor{fn.range-fill-level}@code{range-fill-level}.
3309 @item @anchor{slot.range.inverted}inverted. Type: @code{boolean}. Accessor: @anchor{fn.range-inverted}@code{range-inverted}.
3310 @item @anchor{slot.range.lower-stepper-sensitivity}lower-stepper-sensitivity. Type: @ref{sensitivity-type}. Accessor: @anchor{fn.range-lower-stepper-sensitivity}@code{range-lower-stepper-sensitivity}.
3311 @item @anchor{slot.range.restrict-to-fill-level}restrict-to-fill-level. Type: @code{boolean}. Accessor: @anchor{fn.range-restrict-to-fill-level}@code{range-restrict-to-fill-level}.
3312 @item @anchor{slot.range.show-fill-level}show-fill-level. Type: @code{boolean}. Accessor: @anchor{fn.range-show-fill-level}@code{range-show-fill-level}.
3313 @item @anchor{slot.range.update-policy}update-policy. Type: @ref{update-type}. Accessor: @anchor{fn.range-update-policy}@code{range-update-policy}.
3314 @item @anchor{slot.range.upper-stepper-sensitivity}upper-stepper-sensitivity. Type: @ref{sensitivity-type}. Accessor: @anchor{fn.range-upper-stepper-sensitivity}@code{range-upper-stepper-sensitivity}.
3315 @end itemize
3316
3317
3318 Signals:
3319 @itemize
3320 @item @anchor{signal.range.adjust-bounds}"adjust-bounds". Signature: (instance @ref{range}), (arg-1 @code{double-float}) @result{} void. Options: run-last.
3321 @item @anchor{signal.range.change-value}"change-value". Signature: (instance @ref{range}), (arg-1 @ref{scroll-type}), (arg-2 @code{double-float}) @result{} @code{boolean}. Options: run-last.
3322 @item @anchor{signal.range.move-slider}"move-slider". Signature: (instance @ref{range}), (arg-1 @ref{scroll-type}) @result{} void. Options: run-last, action.
3323 @item @anchor{signal.range.value-changed}"value-changed". Signature: (instance @ref{range}) @result{} void. Options: run-last.
3324 @end itemize
3325
3326
3327
3328
3329 @node recent-chooser-dialog
3330 @section recent-chooser-dialog
3331 @Class recent-chooser-dialog
3332 Superclass: @ref{dialog} @ref{atk-implementor-iface} @ref{buildable} @ref{recent-chooser}
3333
3334 Slots:
3335 @itemize
3336 @end itemize
3337
3338
3339 Signals:
3340 @itemize
3341 @end itemize
3342
3343
3344
3345
3346 @node recent-chooser-menu
3347 @section recent-chooser-menu
3348 @Class recent-chooser-menu
3349 Superclass: @ref{menu} @ref{atk-implementor-iface} @ref{activatable} @ref{buildable} @ref{recent-chooser}
3350
3351 Slots:
3352 @itemize
3353 @item @anchor{slot.recent-chooser-menu.show-numbers}show-numbers. Type: @code{boolean}. Accessor: @anchor{fn.recent-chooser-menu-show-numbers}@code{recent-chooser-menu-show-numbers}.
3354 @end itemize
3355
3356
3357 Signals:
3358 @itemize
3359 @end itemize
3360
3361
3362
3363
3364 @node recent-chooser-widget
3365 @section recent-chooser-widget
3366 @Class recent-chooser-widget
3367 Superclass: @ref{v-box} @ref{atk-implementor-iface} @ref{buildable} @ref{orientable} @ref{recent-chooser}
3368
3369 Slots:
3370 @itemize
3371 @end itemize
3372
3373
3374 Signals:
3375 @itemize
3376 @end itemize
3377
3378
3379
3380
3381 @node ruler
3382 @section ruler
3383 @Class ruler
3384 Superclass: @ref{widget} @ref{atk-implementor-iface} @ref{buildable} @ref{orientable}
3385
3386 Subclasses: @ref{v-ruler} @ref{h-ruler}
3387
3388 Slots:
3389 @itemize
3390 @item @anchor{slot.ruler.lower}lower. Type: @code{double-float}. Accessor: @anchor{fn.ruler-lower}@code{ruler-lower}.
3391 @item @anchor{slot.ruler.max-size}max-size. Type: @code{double-float}. Accessor: @anchor{fn.ruler-max-size}@code{ruler-max-size}.
3392 @item @anchor{slot.ruler.metric}metric. Type: @ref{metric-type}. Accessor: @anchor{fn.ruler-metric}@code{ruler-metric}.
3393 @item @anchor{slot.ruler.position}position. Type: @code{double-float}. Accessor: @anchor{fn.ruler-position}@code{ruler-position}.
3394 @item @anchor{slot.ruler.upper}upper. Type: @code{double-float}. Accessor: @anchor{fn.ruler-upper}@code{ruler-upper}.
3395 @end itemize
3396
3397
3398 Signals:
3399 @itemize
3400 @end itemize
3401
3402
3403
3404
3405 @node scale
3406 @section scale
3407 @Class scale
3408 Superclass: @ref{range} @ref{atk-implementor-iface} @ref{buildable} @ref{orientable}
3409
3410 Subclasses: @ref{v-scale} @ref{h-scale}
3411
3412 Slots:
3413 @itemize
3414 @item @anchor{slot.scale.digits}digits. Type: @code{integer}. Accessor: @anchor{fn.scale-digits}@code{scale-digits}.
3415 @item @anchor{slot.scale.draw-value}draw-value. Type: @code{boolean}. Accessor: @anchor{fn.scale-draw-value}@code{scale-draw-value}.
3416 @item @anchor{slot.scale.value-pos}value-pos. Type: @ref{position-type}. Accessor: @anchor{fn.scale-value-pos}@code{scale-value-pos}.
3417 @end itemize
3418
3419
3420 Signals:
3421 @itemize
3422 @item @anchor{signal.scale.format-value}"format-value". Signature: (instance @ref{scale}), (arg-1 @code{double-float}) @result{} @code{string}. Options: run-last.
3423 @end itemize
3424
3425
3426
3427
3428 @node scale-button
3429 @section scale-button
3430 @Class scale-button
3431 Superclass: @ref{button} @ref{atk-implementor-iface} @ref{activatable} @ref{buildable} @ref{orientable}
3432
3433 Subclasses: @ref{volume-button}
3434
3435 @ref{scale-button} provides a button which pops up a scale widget. This kind of widget is commonly used for volume controls in multimedia applications, and GTK+ provides a @ref{volume-button} subclass that is tailored for this use case.
3436
3437 Slots:
3438 @itemize
3439 @item @anchor{slot.scale-button.adjustment}adjustment. Type: @ref{adjustment}. Accessor: @anchor{fn.scale-button-adjustment}@code{scale-button-adjustment}.
3440
3441 The @ref{adjustment} that contains the current value of this scale button object.
3442 @item @anchor{slot.scale-button.icons}icons. Type: list of @code{string}. Accessor: @anchor{fn.scale-button-icons}@code{scale-button-icons}.
3443
3444 The names of the icons to be used by the scale button. The first item in the list will be used in the button when the current value is the lowest value, the second item for the highest value. All the subsequent icons will be used for all the other values, spread evenly over the range of values.
3445
3446 If there's only one icon name in the icons array, it will be used for all the values. If only two icon names are in the icons array, the first one will be used for the bottom 50% of the scale, and the second one for the top 50%.
3447
3448 It is recommended to use at least 3 icons so that the @ref{scale-button} reflects the current value of the scale better for the users.
3449 @item @anchor{slot.scale-button.size}size. Type: @ref{icon-size}. Accessor: @anchor{fn.scale-button-size}@code{scale-button-size}.
3450
3451 The icon size.
3452
3453 Default value: @EnumVRef{icon-size,small-toolbar}
3454 @item @anchor{slot.scale-button.value}value. Type: @code{double-float}. Accessor: @anchor{fn.scale-button-value}@code{scale-button-value}.
3455
3456 The value of the scale.
3457
3458 Default value: 0
3459 @end itemize
3460
3461
3462 Signals:
3463 @itemize
3464 @item @anchor{signal.scale-button.popdown}"popdown". Signature: (instance @ref{scale-button}) @result{} void. Options: run-last, action.
3465
3466 This signal is a keybinding signal which gets emitted to popdown the scale widget.
3467
3468 The default binding for this signal is Escape.
3469 @item @anchor{signal.scale-button.popup}"popup". Signature: (instance @ref{scale-button}) @result{} void. Options: run-last, action.
3470
3471 This signal is a keybinding signal which gets emitted to popup the scale widget.
3472
3473 The default bindings for this signal are Space, Enter and Return.
3474 @item @anchor{signal.scale-button.value-changed}"value-changed". Signature: (instance @ref{scale-button}), (arg-1 @code{double-float}) @result{} void. Options: run-last.
3475
3476 This signal is emitted when the value field has changed.
3477 @end itemize
3478
3479
3480
3481
3482 @node scrollbar
3483 @section scrollbar
3484 @Class scrollbar
3485 Superclass: @ref{range} @ref{atk-implementor-iface} @ref{buildable} @ref{orientable}
3486
3487 Subclasses: @ref{v-scrollbar} @ref{h-scrollbar}
3488
3489 Slots:
3490 @itemize
3491 @end itemize
3492
3493
3494 Signals:
3495 @itemize
3496 @end itemize
3497
3498
3499
3500
3501 @node scrolled-window
3502 @section scrolled-window
3503 @Class scrolled-window
3504 Superclass: @ref{bin} @ref{atk-implementor-iface} @ref{buildable}
3505
3506 Slots:
3507 @itemize
3508 @item @anchor{slot.scrolled-window.hadjustment}hadjustment. Type: @ref{adjustment}. Accessor: @anchor{fn.scrolled-window-hadjustment}@code{scrolled-window-hadjustment}.
3509 @item @anchor{slot.scrolled-window.hscrollbar-policy}hscrollbar-policy. Type: @ref{policy-type}. Accessor: @anchor{fn.scrolled-window-hscrollbar-policy}@code{scrolled-window-hscrollbar-policy}.
3510 @item @anchor{slot.scrolled-window.shadow-type}shadow-type. Type: @ref{shadow-type}. Accessor: @anchor{fn.scrolled-window-shadow-type}@code{scrolled-window-shadow-type}.
3511 @item @anchor{slot.scrolled-window.vadjustment}vadjustment. Type: @ref{adjustment}. Accessor: @anchor{fn.scrolled-window-vadjustment}@code{scrolled-window-vadjustment}.
3512 @item @anchor{slot.scrolled-window.vscrollbar-policy}vscrollbar-policy. Type: @ref{policy-type}. Accessor: @anchor{fn.scrolled-window-vscrollbar-policy}@code{scrolled-window-vscrollbar-policy}.
3513 @item @anchor{slot.scrolled-window.window-placement}window-placement. Type: @ref{corner-type}. Accessor: @anchor{fn.scrolled-window-window-placement}@code{scrolled-window-window-placement}.
3514 @item @anchor{slot.scrolled-window.window-placement-set}window-placement-set. Type: @code{boolean}. Accessor: @anchor{fn.scrolled-window-window-placement-set}@code{scrolled-window-window-placement-set}.
3515 @end itemize
3516
3517
3518 Signals:
3519 @itemize
3520 @item @anchor{signal.scrolled-window.move-focus-out}"move-focus-out". Signature: (instance @ref{scrolled-window}), (arg-1 @ref{direction-type}) @result{} void. Options: run-last, action.
3521 @item @anchor{signal.scrolled-window.scroll-child}"scroll-child". Signature: (instance @ref{scrolled-window}), (arg-1 @ref{scroll-type}), (arg-2 @code{boolean}) @result{} @code{boolean}. Options: run-last, action.
3522 @end itemize
3523
3524
3525
3526
3527 @node separator
3528 @section separator
3529 @Class separator
3530 Superclass: @ref{widget} @ref{atk-implementor-iface} @ref{buildable} @ref{orientable}
3531
3532 Subclasses: @ref{v-separator} @ref{h-separator}
3533
3534 Slots:
3535 @itemize
3536 @end itemize
3537
3538
3539 Signals:
3540 @itemize
3541 @end itemize
3542
3543
3544
3545
3546 @node separator-menu-item
3547 @section separator-menu-item
3548 @Class separator-menu-item
3549 Superclass: @ref{menu-item} @ref{atk-implementor-iface} @ref{activatable} @ref{buildable}
3550
3551 Slots:
3552 @itemize
3553 @end itemize
3554
3555
3556 Signals:
3557 @itemize
3558 @end itemize
3559
3560
3561
3562
3563 @node separator-tool-item
3564 @section separator-tool-item
3565 @Class separator-tool-item
3566 Superclass: @ref{tool-item} @ref{atk-implementor-iface} @ref{activatable} @ref{buildable}
3567
3568 Slots:
3569 @itemize
3570 @item @anchor{slot.separator-tool-item.draw}draw. Type: @code{boolean}. Accessor: @anchor{fn.separator-tool-item-draw}@code{separator-tool-item-draw}.
3571 @end itemize
3572
3573
3574 Signals:
3575 @itemize
3576 @end itemize
3577
3578
3579
3580
3581 @node socket
3582 @section socket
3583 @Class socket
3584 Superclass: @ref{container} @ref{atk-implementor-iface} @ref{buildable}
3585
3586 Slots:
3587 @itemize
3588 @end itemize
3589
3590
3591 Signals:
3592 @itemize
3593 @item @anchor{signal.socket.plug-added}"plug-added". Signature: (instance @ref{socket}) @result{} void. Options: run-last.
3594 @item @anchor{signal.socket.plug-removed}"plug-removed". Signature: (instance @ref{socket}) @result{} @code{boolean}. Options: run-last.
3595 @end itemize
3596
3597
3598
3599
3600 @node spin-button
3601 @section spin-button
3602 @Class spin-button
3603 Superclass: @ref{entry} @ref{atk-implementor-iface} @ref{buildable} @ref{cell-editable} @ref{editable}
3604
3605 Slots:
3606 @itemize
3607 @item @anchor{slot.spin-button.adjustment}adjustment. Type: @ref{adjustment}. Accessor: @anchor{fn.spin-button-adjustment}@code{spin-button-adjustment}.
3608 @item @anchor{slot.spin-button.climb-rate}climb-rate. Type: @code{double-float}. Accessor: @anchor{fn.spin-button-climb-rate}@code{spin-button-climb-rate}.
3609 @item @anchor{slot.spin-button.digits}digits. Type: @code{integer}. Accessor: @anchor{fn.spin-button-digits}@code{spin-button-digits}.
3610 @item @anchor{slot.spin-button.numeric}numeric. Type: @code{boolean}. Accessor: @anchor{fn.spin-button-numeric}@code{spin-button-numeric}.
3611 @item @anchor{slot.spin-button.snap-to-ticks}snap-to-ticks. Type: @code{boolean}. Accessor: @anchor{fn.spin-button-snap-to-ticks}@code{spin-button-snap-to-ticks}.
3612 @item @anchor{slot.spin-button.update-policy}update-policy. Type: @ref{spin-button-update-policy}. Accessor: @anchor{fn.spin-button-update-policy}@code{spin-button-update-policy}.
3613 @item @anchor{slot.spin-button.value}value. Type: @code{double-float}. Accessor: @anchor{fn.spin-button-value}@code{spin-button-value}.
3614 @item @anchor{slot.spin-button.wrap}wrap. Type: @code{boolean}. Accessor: @anchor{fn.spin-button-wrap}@code{spin-button-wrap}.
3615 @end itemize
3616
3617
3618 Signals:
3619 @itemize
3620 @item @anchor{signal.spin-button.change-value}"change-value". Signature: (instance @ref{spin-button}), (arg-1 @ref{scroll-type}) @result{} void. Options: run-last, action.
3621 @item @anchor{signal.spin-button.input}"input". Signature: (instance @ref{spin-button}), (arg-1 gpointer) @result{} @code{integer}. Options: run-last.
3622 @item @anchor{signal.spin-button.output}"output". Signature: (instance @ref{spin-button}) @result{} @code{boolean}. Options: run-last.
3623 @item @anchor{signal.spin-button.value-changed}"value-changed". Signature: (instance @ref{spin-button}) @result{} void. Options: run-last.
3624 @item @anchor{signal.spin-button.wrapped}"wrapped". Signature: (instance @ref{spin-button}) @result{} void. Options: run-last.
3625 @end itemize
3626
3627
3628
3629
3630 @node statusbar
3631 @section statusbar
3632 @Class statusbar
3633 Superclass: @ref{h-box} @ref{atk-implementor-iface} @ref{buildable} @ref{orientable}
3634
3635 A @ref{statusbar} is usually placed along the bottom of an application's main @ref{gtk-window}. It may provide a regular commentary of the application's status (as is usually the case in a web browser, for example), or may be used to simply output a message when the status changes, (when an upload is complete in an FTP client, for example). It may also have a resize grip (a triangular area in the lower right corner) which can be clicked on to resize the window containing the statusbar.
3636
3637 Status bars in GTK+ maintain a stack of messages. The message at the top of the each bar's stack is the one that will currently be displayed.
3638
3639 Any messages added to a statusbar's stack must specify a context id that is used to uniquely identify the source of a message. Context ids may be specified by context descriptions (as string) or by numeric identifiers obtained by @ref{statusbar-context-id}. Note that messages are stored in a stack, and when choosing which message to display, the stack structure is adhered to, regardless of the context description of a message.
3640
3641 One could say that a statusbar maintains one stack of messages for display purposes, but allows multiple message producers to maintain sub-stacks of the messages they produced (via context descriptions).
3642
3643 Messages are added to the bar's stack with @ref{statusbar-push}.
3644
3645 The message at the top of the stack can be removed using @ref{statusbar-pop}. A message can be removed from anywhere in the stack if its @var{message-id} was recorded at the time it was added. This is done using @ref{statusbar-remove}.
3646
3647 Slots:
3648 @itemize
3649 @item @anchor{slot.statusbar.has-resize-grip}has-resize-grip. Type: @code{boolean}. Accessor: @anchor{fn.statusbar-has-resize-grip}@code{statusbar-has-resize-grip}.
3650
3651 Whether the statusbar has a grip for resizing the toplevel window.
3652
3653 Default value: True
3654 @end itemize
3655
3656
3657 Signals:
3658 @itemize
3659 @item @anchor{signal.statusbar.text-popped}"text-popped". Signature: (instance @ref{statusbar}), (context-id @code{integer}), (text @code{string}) @result{} void. Options: run-last.
3660
3661 Is emitted whenever a new message is popped off a statusbar's stack.
3662
3663 @var{context-id} is a numeric identifier of a context.
3664 @item @anchor{signal.statusbar.text-pushed}"text-pushed". Signature: (instance @ref{statusbar}), (context-id @code{integer}), (text @code{string}) @result{} void. Options: run-last.
3665
3666 Is emitted whenever a new message gets pushed onto a statusbar's stack.
3667
3668 @var{context-id} is a numeric identifier of a context.
3669 @end itemize
3670
3671 @RMethod statusbar-context-id
3672 @lisp
3673 (statusbar-context-id statusbar context-description) @result{} context-id
3674 @end lisp
3675
3676 Returns a context identifier, given a description of the actual context. Note that the description is not shown in the UI.
3677
3678 @var{context-description} is a string - textual description of what context the new message is being used in
3679
3680 @RMethod statusbar-push
3681 @lisp
3682 (statusbar-push statusbar context text) @result{} message-id
3683 @end lisp
3684
3685 Pushes a new message onto a statusbar's stack.
3686
3687 @var{context}: a string (context description) or a number obtained by @ref{statusbar-context-id}
3688
3689 @var{text}: the message to add to the statusbar
3690
3691 @var{message-id}: a message id that can be used with @ref{statusbar-remove}.
3692
3693 @RMethod statusbar-pop
3694 @lisp
3695 (statusbar-pop statusbar context)
3696 @end lisp
3697
3698 Removes the first message in the @ref{statusbar}'s stack with the given context.
3699
3700 Note that this may not change the displayed message, if the message at the top of the stack has a different context.
3701
3702 @var{context}: a string (context description) or a number obtained by @ref{statusbar-context-id}
3703
3704 @RMethod statusbar-remove
3705 @lisp
3706 (statusbar-remove statusbar context message-id)
3707 @end lisp
3708
3709 Forces the removal of a message from a statusbar's stack. The exact @var{context} and @var{message-id} must be specified.
3710
3711 @var{context}: a string (context description) or a number obtained by @ref{statusbar-context-id}
3712
3713 @var{message-id}: a message identifier returned by @ref{statusbar-push}
3714
3715 @node table
3716 @section table
3717 @Class table
3718 Superclass: @ref{container} @ref{atk-implementor-iface} @ref{buildable}
3719
3720 Slots:
3721 @itemize
3722 @item @anchor{slot.table.column-spacing}column-spacing. Type: @code{integer}. Accessor: @anchor{fn.table-column-spacing}@code{table-column-spacing}.
3723 @item @anchor{slot.table.homogeneous}homogeneous. Type: @code{boolean}. Accessor: @anchor{fn.table-homogeneous}@code{table-homogeneous}.
3724 @item @anchor{slot.table.n-columns}n-columns. Type: @code{integer}. Accessor: @anchor{fn.table-n-columns}@code{table-n-columns}.
3725 @item @anchor{slot.table.n-rows}n-rows. Type: @code{integer}. Accessor: @anchor{fn.table-n-rows}@code{table-n-rows}.
3726 @item @anchor{slot.table.row-spacing}row-spacing. Type: @code{integer}. Accessor: @anchor{fn.table-row-spacing}@code{table-row-spacing}.
3727 @end itemize
3728
3729
3730 Signals:
3731 @itemize
3732 @end itemize
3733
3734
3735
3736
3737 @node tearoff-menu-item
3738 @section tearoff-menu-item
3739 @Class tearoff-menu-item
3740 Superclass: @ref{menu-item} @ref{atk-implementor-iface} @ref{activatable} @ref{buildable}
3741
3742 Slots:
3743 @itemize
3744 @end itemize
3745
3746
3747 Signals:
3748 @itemize
3749 @end itemize
3750
3751
3752
3753
3754 @node text
3755 @section text
3756 @Class text
3757 Superclass: @ref{old-editable} @ref{atk-implementor-iface} @ref{buildable} @ref{editable}
3758
3759 Slots:
3760 @itemize
3761 @item @anchor{slot.text.hadjustment}hadjustment. Type: @ref{adjustment}. Accessor: @anchor{fn.text-hadjustment}@code{text-hadjustment}.
3762 @item @anchor{slot.text.line-wrap}line-wrap. Type: @code{boolean}. Accessor: @anchor{fn.text-line-wrap}@code{text-line-wrap}.
3763 @item @anchor{slot.text.vadjustment}vadjustment. Type: @ref{adjustment}. Accessor: @anchor{fn.text-vadjustment}@code{text-vadjustment}.
3764 @item @anchor{slot.text.word-wrap}word-wrap. Type: @code{boolean}. Accessor: @anchor{fn.text-word-wrap}@code{text-word-wrap}.
3765 @end itemize
3766
3767
3768 Signals:
3769 @itemize
3770 @item @anchor{signal.text.set-scroll-adjustments}"set-scroll-adjustments". Signature: (instance @ref{text}), (arg-1 @ref{adjustment}), (arg-2 @ref{adjustment}) @result{} void. Options: run-last.
3771 @end itemize
3772
3773
3774
3775
3776 @node text-view
3777 @section text-view
3778 @Class text-view
3779 Superclass: @ref{container} @ref{atk-implementor-iface} @ref{buildable}
3780
3781 Slots:
3782 @itemize
3783 @item @anchor{slot.text-view.accepts-tab}accepts-tab. Type: @code{boolean}. Accessor: @anchor{fn.text-view-accepts-tab}@code{text-view-accepts-tab}.
3784 @item @anchor{slot.text-view.buffer}buffer. Type: @ref{text-buffer}. Accessor: @anchor{fn.text-view-buffer}@code{text-view-buffer}.
3785 @item @anchor{slot.text-view.cursor-visible}cursor-visible. Type: @code{boolean}. Accessor: @anchor{fn.text-view-cursor-visible}@code{text-view-cursor-visible}.
3786 @item @anchor{slot.text-view.editable}editable. Type: @code{boolean}. Accessor: @anchor{fn.text-view-editable}@code{text-view-editable}.
3787 @item @anchor{slot.text-view.im-module}im-module. Type: @code{string}. Accessor: @anchor{fn.text-view-im-module}@code{text-view-im-module}.
3788 @item @anchor{slot.text-view.indent}indent. Type: @code{integer}. Accessor: @anchor{fn.text-view-indent}@code{text-view-indent}.
3789 @item @anchor{slot.text-view.justification}justification. Type: @ref{justification}. Accessor: @anchor{fn.text-view-justification}@code{text-view-justification}.
3790 @item @anchor{slot.text-view.left-margin}left-margin. Type: @code{integer}. Accessor: @anchor{fn.text-view-left-margin}@code{text-view-left-margin}.
3791 @item @anchor{slot.text-view.overwrite}overwrite. Type: @code{boolean}. Accessor: @anchor{fn.text-view-overwrite}@code{text-view-overwrite}.
3792 @item @anchor{slot.text-view.pixels-above-lines}pixels-above-lines. Type: @code{integer}. Accessor: @anchor{fn.text-view-pixels-above-lines}@code{text-view-pixels-above-lines}.
3793 @item @anchor{slot.text-view.pixels-below-lines}pixels-below-lines. Type: @code{integer}. Accessor: @anchor{fn.text-view-pixels-below-lines}@code{text-view-pixels-below-lines}.
3794 @item @anchor{slot.text-view.pixels-inside-wrap}pixels-inside-wrap. Type: @code{integer}. Accessor: @anchor{fn.text-view-pixels-inside-wrap}@code{text-view-pixels-inside-wrap}.
3795 @item @anchor{slot.text-view.right-margin}right-margin. Type: @code{integer}. Accessor: @anchor{fn.text-view-right-margin}@code{text-view-right-margin}.
3796 @item @anchor{slot.text-view.tabs}tabs. Type: @code{PangoTabArray}. Accessor: @anchor{fn.text-view-tabs}@code{text-view-tabs}.
3797 @item @anchor{slot.text-view.wrap-mode}wrap-mode. Type: @ref{wrap-mode}. Accessor: @anchor{fn.text-view-wrap-mode}@code{text-view-wrap-mode}.
3798 @end itemize
3799
3800
3801 Signals:
3802 @itemize
3803 @item @anchor{signal.text-view.backspace}"backspace". Signature: (instance @ref{text-view}) @result{} void. Options: run-last, action.
3804 @item @anchor{signal.text-view.copy-clipboard}"copy-clipboard". Signature: (instance @ref{text-view}) @result{} void. Options: run-last, action.
3805 @item @anchor{signal.text-view.cut-clipboard}"cut-clipboard". Signature: (instance @ref{text-view}) @result{} void. Options: run-last, action.
3806 @item @anchor{signal.text-view.delete-from-cursor}"delete-from-cursor". Signature: (instance @ref{text-view}), (arg-1 @ref{delete-type}), (arg-2 @code{integer}) @result{} void. Options: run-last, action.
3807 @item @anchor{signal.text-view.insert-at-cursor}"insert-at-cursor". Signature: (instance @ref{text-view}), (arg-1 @code{string}) @result{} void. Options: run-last, action.
3808 @item @anchor{signal.text-view.move-cursor}"move-cursor". Signature: (instance @ref{text-view}), (arg-1 @ref{movement-step}), (arg-2 @code{integer}), (arg-3 @code{boolean}) @result{} void. Options: run-last, action.
3809 @item @anchor{signal.text-view.move-viewport}"move-viewport". Signature: (instance @ref{text-view}), (arg-1 @ref{scroll-step}), (arg-2 @code{integer}) @result{} void. Options: run-last, action.
3810 @item @anchor{signal.text-view.page-horizontally}"page-horizontally". Signature: (instance @ref{text-view}), (arg-1 @code{integer}), (arg-2 @code{boolean}) @result{} void. Options: run-last, action.
3811 @item @anchor{signal.text-view.paste-clipboard}"paste-clipboard". Signature: (instance @ref{text-view}) @result{} void. Options: run-last, action.
3812 @item @anchor{signal.text-view.populate-popup}"populate-popup". Signature: (instance @ref{text-view}), (arg-1 @ref{menu}) @result{} void. Options: run-last.
3813 @item @anchor{signal.text-view.select-all}"select-all". Signature: (instance @ref{text-view}), (arg-1 @code{boolean}) @result{} void. Options: run-last, action.
3814 @item @anchor{signal.text-view.set-anchor}"set-anchor". Signature: (instance @ref{text-view}) @result{} void. Options: run-last, action.
3815 @item @anchor{signal.text-view.set-scroll-adjustments}"set-scroll-adjustments". Signature: (instance @ref{text-view}), (arg-1 @ref{adjustment}), (arg-2 @ref{adjustment}) @result{} void. Options: run-last, action.
3816 @item @anchor{signal.text-view.toggle-cursor-visible}"toggle-cursor-visible". Signature: (instance @ref{text-view}) @result{} void. Options: run-last, action.
3817 @item @anchor{signal.text-view.toggle-overwrite}"toggle-overwrite". Signature: (instance @ref{text-view}) @result{} void. Options: run-last, action.
3818 @end itemize
3819
3820
3821
3822
3823 @node toggle-button
3824 @section toggle-button
3825 @Class toggle-button
3826 Superclass: @ref{button} @ref{atk-implementor-iface} @ref{activatable} @ref{buildable}
3827
3828 Subclasses: @ref{check-button}
3829
3830 A @ref{toggle-button} is a @ref{button} which will remain 'pressed-in' when clicked. Clicking again will cause the toggle button to return to its normal state.
3831
3832 The state of a @ref{toggle-button} is stored in @SlotRef{toggle-button,active} and @SlotRef{toggle-button,inconsistent}.
3833
3834 Slots:
3835 @itemize
3836 @item @anchor{slot.toggle-button.active}active. Type: @code{boolean}. Accessor: @anchor{fn.toggle-button-active}@code{toggle-button-active}.
3837
3838 If the toggle button should be pressed in or not.
3839
3840 Default value: False
3841 @item @anchor{slot.toggle-button.draw-indicator}draw-indicator. Type: @code{boolean}. Accessor: @anchor{fn.toggle-button-draw-indicator}@code{toggle-button-draw-indicator}.
3842
3843 If the toggle part of the button is displayed.
3844
3845 Default value: False
3846 @item @anchor{slot.toggle-button.inconsistent}inconsistent. Type: @code{boolean}. Accessor: @anchor{fn.toggle-button-inconsistent}@code{toggle-button-inconsistent}.
3847
3848 If the toggle button is in an "in between" state.
3849
3850 Default value: False
3851 @end itemize
3852
3853
3854 Signals:
3855 @itemize
3856 @item @anchor{signal.toggle-button.toggled}"toggled". Signature: (instance @ref{toggle-button}) @result{} void. Options: run-first.
3857
3858 Should be connected if you wish to perform an action whenever the @ref{toggle-button}'s state is changed.
3859 @end itemize
3860
3861
3862
3863
3864 @node toggle-tool-button
3865 @section toggle-tool-button
3866 @Class toggle-tool-button
3867 Superclass: @ref{tool-button} @ref{atk-implementor-iface} @ref{activatable} @ref{buildable}
3868
3869 Subclasses: @ref{radio-tool-button}
3870
3871 Slots:
3872 @itemize
3873 @item @anchor{slot.toggle-tool-button.active}active. Type: @code{boolean}. Accessor: @anchor{fn.toggle-tool-button-active}@code{toggle-tool-button-active}.
3874 @end itemize
3875
3876
3877 Signals:
3878 @itemize
3879 @item @anchor{signal.toggle-tool-button.toggled}"toggled". Signature: (instance @ref{toggle-tool-button}) @result{} void. Options: run-first.
3880 @end itemize
3881
3882
3883
3884
3885 @node tool-button
3886 @section tool-button
3887 @Class tool-button
3888 Superclass: @ref{tool-item} @ref{atk-implementor-iface} @ref{activatable} @ref{buildable}
3889
3890 Subclasses: @ref{toggle-tool-button} @ref{menu-tool-button}
3891
3892 Slots:
3893 @itemize
3894 @item @anchor{slot.tool-button.icon-name}icon-name. Type: @code{string}. Accessor: @anchor{fn.tool-button-icon-name}@code{tool-button-icon-name}.
3895 @item @anchor{slot.tool-button.icon-widget}icon-widget. Type: @ref{widget}. Accessor: @anchor{fn.tool-button-icon-widget}@code{tool-button-icon-widget}.
3896 @item @anchor{slot.tool-button.label}label. Type: @code{string}. Accessor: @anchor{fn.tool-button-label}@code{tool-button-label}.
3897 @item @anchor{slot.tool-button.label-widget}label-widget. Type: @ref{widget}. Accessor: @anchor{fn.tool-button-label-widget}@code{tool-button-label-widget}.
3898 @item @anchor{slot.tool-button.stock-id}stock-id. Type: @code{string}. Accessor: @anchor{fn.tool-button-stock-id}@code{tool-button-stock-id}.
3899 @item @anchor{slot.tool-button.use-underline}use-underline. Type: @code{boolean}. Accessor: @anchor{fn.tool-button-use-underline}@code{tool-button-use-underline}.
3900 @end itemize
3901
3902
3903 Signals:
3904 @itemize
3905 @item @anchor{signal.tool-button.clicked}"clicked". Signature: (instance @ref{tool-button}) @result{} void. Options: run-first, action.
3906 @end itemize
3907
3908
3909
3910
3911 @node tool-item
3912 @section tool-item
3913 @Class tool-item
3914 Superclass: @ref{bin} @ref{atk-implementor-iface} @ref{activatable} @ref{buildable}
3915
3916 Subclasses: @ref{separator-tool-item} @ref{tool-button}
3917
3918 Slots:
3919 @itemize
3920 @item @anchor{slot.tool-item.expand}expand. Type: @code{boolean}. Accessor: @anchor{fn.tool-item-expand}@code{tool-item-expand}.
3921 @item @anchor{slot.tool-item.icon-size}icon-size. Type: @ref{icon-size}. Accessor: @anchor{fn.tool-item-icon-size}@code{tool-item-icon-size}. Read-only.
3922 @item @anchor{slot.tool-item.is-important}is-important. Type: @code{boolean}. Accessor: @anchor{fn.tool-item-is-important}@code{tool-item-is-important}.
3923 @item @anchor{slot.tool-item.orientation}orientation. Type: @ref{orientation}. Accessor: @anchor{fn.tool-item-orientation}@code{tool-item-orientation}. Read-only.
3924 @item @anchor{slot.tool-item.relief-style}relief-style. Type: @ref{relief-style}. Accessor: @anchor{fn.tool-item-relief-style}@code{tool-item-relief-style}. Read-only.
3925 @item @anchor{slot.tool-item.toolbar-style}toolbar-style. Type: @ref{toolbar-style}. Accessor: @anchor{fn.tool-item-toolbar-style}@code{tool-item-toolbar-style}. Read-only.
3926 @item @anchor{slot.tool-item.use-drag-window}use-drag-window. Type: @code{boolean}. Accessor: @anchor{fn.tool-item-use-drag-window}@code{tool-item-use-drag-window}.
3927 @item @anchor{slot.tool-item.visible-horizontal}visible-horizontal. Type: @code{boolean}. Accessor: @anchor{fn.tool-item-visible-horizontal}@code{tool-item-visible-horizontal}.
3928 @item @anchor{slot.tool-item.visible-vertical}visible-vertical. Type: @code{boolean}. Accessor: @anchor{fn.tool-item-visible-vertical}@code{tool-item-visible-vertical}.
3929 @end itemize
3930
3931
3932 Signals:
3933 @itemize
3934 @item @anchor{signal.tool-item.create-menu-proxy}"create-menu-proxy". Signature: (instance @ref{tool-item}) @result{} @code{boolean}. Options: run-last.
3935 @item @anchor{signal.tool-item.set-tooltip}"set-tooltip". Signature: (instance @ref{tool-item}), (arg-1 @ref{tooltips}), (arg-2 @code{string}), (arg-3 @code{string}) @result{} @code{boolean}. Options: run-last.
3936 @item @anchor{signal.tool-item.toolbar-reconfigured}"toolbar-reconfigured". Signature: (instance @ref{tool-item}) @result{} void. Options: run-last.
3937 @end itemize
3938
3939
3940
3941
3942 @node toolbar
3943 @section toolbar
3944 @Class toolbar
3945 Superclass: @ref{container} @ref{atk-implementor-iface} @ref{buildable} @ref{orientable} @ref{tool-shell}
3946
3947 Slots:
3948 @itemize
3949 @item @anchor{slot.toolbar.icon-size}icon-size. Type: @code{integer}. Accessor: @anchor{fn.toolbar-icon-size}@code{toolbar-icon-size}.
3950 @item @anchor{slot.toolbar.icon-size-set}icon-size-set. Type: @code{boolean}. Accessor: @anchor{fn.toolbar-icon-size-set}@code{toolbar-icon-size-set}.
3951 @item @anchor{slot.toolbar.show-arrow}show-arrow. Type: @code{boolean}. Accessor: @anchor{fn.toolbar-show-arrow}@code{toolbar-show-arrow}.
3952 @item @anchor{slot.toolbar.toolbar-style}toolbar-style. Type: @ref{toolbar-style}. Accessor: @anchor{fn.toolbar-toolbar-style}@code{toolbar-toolbar-style}.
3953 @item @anchor{slot.toolbar.tooltips}tooltips. Type: @code{boolean}. Accessor: @anchor{fn.toolbar-tooltips}@code{toolbar-tooltips}.
3954 @end itemize
3955
3956
3957 Signals:
3958 @itemize
3959 @item @anchor{signal.toolbar.focus-home-or-end}"focus-home-or-end". Signature: (instance @ref{toolbar}), (arg-1 @code{boolean}) @result{} @code{boolean}. Options: run-last, action.
3960 @item @anchor{signal.toolbar.orientation-changed}"orientation-changed". Signature: (instance @ref{toolbar}), (arg-1 @ref{orientation}) @result{} void. Options: run-first.
3961 @item @anchor{signal.toolbar.popup-context-menu}"popup-context-menu". Signature: (instance @ref{toolbar}), (arg-1 @code{integer}), (arg-2 @code{integer}), (arg-3 @code{integer}) @result{} @code{boolean}. Options: run-last.
3962 @item @anchor{signal.toolbar.style-changed}"style-changed". Signature: (instance @ref{toolbar}), (arg-1 @ref{toolbar-style}) @result{} void. Options: run-first.
3963 @end itemize
3964
3965
3966
3967
3968 @node tree
3969 @section tree
3970 @Class tree
3971 Superclass: @ref{container} @ref{atk-implementor-iface} @ref{buildable}
3972
3973 Slots:
3974 @itemize
3975 @end itemize
3976
3977
3978 Signals:
3979 @itemize
3980 @item @anchor{signal.tree.select-child}"select-child". Signature: (instance @ref{tree}), (arg-1 @ref{widget}) @result{} void. Options: run-first.
3981 @item @anchor{signal.tree.selection-changed}"selection-changed". Signature: (instance @ref{tree}) @result{} void. Options: run-first.
3982 @item @anchor{signal.tree.unselect-child}"unselect-child". Signature: (instance @ref{tree}), (arg-1 @ref{widget}) @result{} void. Options: run-first.
3983 @end itemize
3984
3985
3986
3987
3988 @node tree-item
3989 @section tree-item
3990 @Class tree-item
3991 Superclass: @ref{item} @ref{atk-implementor-iface} @ref{buildable}
3992
3993 Slots:
3994 @itemize
3995 @end itemize
3996
3997
3998 Signals:
3999 @itemize
4000 @item @anchor{signal.tree-item.collapse}"collapse". Signature: (instance @ref{tree-item}) @result{} void. Options: run-first.
4001 @item @anchor{signal.tree-item.expand}"expand". Signature: (instance @ref{tree-item}) @result{} void. Options: run-first.
4002 @end itemize
4003
4004
4005
4006
4007 @node tree-view
4008 @section tree-view
4009 @Class tree-view
4010 Superclass: @ref{container} @ref{atk-implementor-iface} @ref{buildable}
4011
4012 Slots:
4013 @itemize
4014 @item @anchor{slot.tree-view.bin-window}bin-window. Type: @ref{g-object}. Accessor: @anchor{fn.tree-view-bin-window}@code{tree-view-bin-window}. Read-only.
4015 @item @anchor{slot.tree-view.column-drag-function}column-drag-function. Type: ????. Accessor: @anchor{fn.tree-view-column-drag-function}@code{tree-view-column-drag-function}. Write-only.
4016 @item @anchor{slot.tree-view.enable-grid-lines}enable-grid-lines. Type: @ref{tree-view-grid-lines}. Accessor: @anchor{fn.tree-view-enable-grid-lines}@code{tree-view-enable-grid-lines}.
4017 @item @anchor{slot.tree-view.enable-search}enable-search. Type: @code{boolean}. Accessor: @anchor{fn.tree-view-enable-search}@code{tree-view-enable-search}.
4018 @item @anchor{slot.tree-view.enable-tree-lines}enable-tree-lines. Type: @code{boolean}. Accessor: @anchor{fn.tree-view-enable-tree-lines}@code{tree-view-enable-tree-lines}.
4019 @item @anchor{slot.tree-view.expander-column}expander-column. Type: @ref{tree-view-column}. Accessor: @anchor{fn.tree-view-expander-column}@code{tree-view-expander-column}.
4020 @item @anchor{slot.tree-view.fixed-height-mode}fixed-height-mode. Type: @code{boolean}. Accessor: @anchor{fn.tree-view-fixed-height-mode}@code{tree-view-fixed-height-mode}.
4021 @item @anchor{slot.tree-view.hadjustment}hadjustment. Type: @ref{adjustment}. Accessor: @anchor{fn.tree-view-hadjustment}@code{tree-view-hadjustment}.
4022 @item @anchor{slot.tree-view.headers-clickable}headers-clickable. Type: @code{boolean}. Accessor: @anchor{fn.tree-view-headers-clickable}@code{tree-view-headers-clickable}.
4023 @item @anchor{slot.tree-view.headers-visible}headers-visible. Type: @code{boolean}. Accessor: @anchor{fn.tree-view-headers-visible}@code{tree-view-headers-visible}.
4024 @item @anchor{slot.tree-view.hover-expand}hover-expand. Type: @code{boolean}. Accessor: @anchor{fn.tree-view-hover-expand}@code{tree-view-hover-expand}.
4025 @item @anchor{slot.tree-view.hover-selection}hover-selection. Type: @code{boolean}. Accessor: @anchor{fn.tree-view-hover-selection}@code{tree-view-hover-selection}.
4026 @item @anchor{slot.tree-view.level-indentation}level-indentation. Type: @code{integer}. Accessor: @anchor{fn.tree-view-level-indentation}@code{tree-view-level-indentation}.
4027 @item @anchor{slot.tree-view.model}model. Type: @ref{tree-model}. Accessor: @anchor{fn.tree-view-model}@code{tree-view-model}.
4028 @item @anchor{slot.tree-view.reorderable}reorderable. Type: @code{boolean}. Accessor: @anchor{fn.tree-view-reorderable}@code{tree-view-reorderable}.
4029 @item @anchor{slot.tree-view.row-separator-func}row-separator-func. Type: ????. Accessor: @anchor{fn.tree-view-row-separator-func}@code{tree-view-row-separator-func}. Write-only.
4030 @item @anchor{slot.tree-view.rubber-banding}rubber-banding. Type: @code{boolean}. Accessor: @anchor{fn.tree-view-rubber-banding}@code{tree-view-rubber-banding}.
4031 @item @anchor{slot.tree-view.rules-hint}rules-hint. Type: @code{boolean}. Accessor: @anchor{fn.tree-view-rules-hint}@code{tree-view-rules-hint}.
4032 @item @anchor{slot.tree-view.search-column}search-column. Type: @code{integer}. Accessor: @anchor{fn.tree-view-search-column}@code{tree-view-search-column}.
4033 @item @anchor{slot.tree-view.search-entry}search-entry. Type: @ref{g-object}. Accessor: @anchor{fn.tree-view-search-entry}@code{tree-view-search-entry}.
4034 @item @anchor{slot.tree-view.search-equal-func}search-equal-func. Type: ????. Accessor: @anchor{fn.tree-view-search-equal-func}@code{tree-view-search-equal-func}. Write-only.
4035 @item @anchor{slot.tree-view.search-position-func}search-position-func. Type: ????. Accessor: @anchor{fn.tree-view-search-position-func}@code{tree-view-search-position-func}. Write-only.
4036 @item @anchor{slot.tree-view.selection}selection. Type: @ref{g-object}. Accessor: @anchor{fn.tree-view-selection}@code{tree-view-selection}. Read-only.
4037 @item @anchor{slot.tree-view.show-expanders}show-expanders. Type: @code{boolean}. Accessor: @anchor{fn.tree-view-show-expanders}@code{tree-view-show-expanders}.
4038 @item @anchor{slot.tree-view.tooltip-column}tooltip-column. Type: @code{integer}. Accessor: @anchor{fn.tree-view-tooltip-column}@code{tree-view-tooltip-column}.
4039 @item @anchor{slot.tree-view.vadjustment}vadjustment. Type: @ref{adjustment}. Accessor: @anchor{fn.tree-view-vadjustment}@code{tree-view-vadjustment}.
4040 @end itemize
4041
4042
4043 Signals:
4044 @itemize
4045 @item @anchor{signal.tree-view.columns-changed}"columns-changed". Signature: (instance @ref{tree-view}) @result{} void. Options: run-last.
4046 @item @anchor{signal.tree-view.cursor-changed}"cursor-changed". Signature: (instance @ref{tree-view}) @result{} void. Options: run-last.
4047 @item @anchor{signal.tree-view.expand-collapse-cursor-row}"expand-collapse-cursor-row". Signature: (instance @ref{tree-view}), (arg-1 @code{boolean}), (arg-2 @code{boolean}), (arg-3 @code{boolean}) @result{} @code{boolean}. Options: run-last, action.
4048 @item @anchor{signal.tree-view.move-cursor}"move-cursor". Signature: (instance @ref{tree-view}), (arg-1 @ref{movement-step}), (arg-2 @code{integer}) @result{} @code{boolean}. Options: run-last, action.
4049 @item @anchor{signal.tree-view.row-activated}"row-activated". Signature: (instance @ref{tree-view}), (arg-1 @ref{tree-path}), (arg-2 @ref{tree-view-column}) @result{} void. Options: run-last, action.
4050 @item @anchor{signal.tree-view.row-collapsed}"row-collapsed". Signature: (instance @ref{tree-view}), (arg-1 @ref{tree-iter}), (arg-2 @ref{tree-path}) @result{} void. Options: run-last.
4051 @item @anchor{signal.tree-view.row-expanded}"row-expanded". Signature: (instance @ref{tree-view}), (arg-1 @ref{tree-iter}), (arg-2 @ref{tree-path}) @result{} void. Options: run-last.
4052 @item @anchor{signal.tree-view.select-all}"select-all". Signature: (instance @ref{tree-view}) @result{} @code{boolean}. Options: run-last, action.
4053 @item @anchor{signal.tree-view.select-cursor-parent}"select-cursor-parent". Signature: (instance @ref{tree-view}) @result{} @code{boolean}. Options: run-last, action.
4054 @item @anchor{signal.tree-view.select-cursor-row}"select-cursor-row". Signature: (instance @ref{tree-view}), (arg-1 @code{boolean}) @result{} @code{boolean}. Options: run-last, action.
4055 @item @anchor{signal.tree-view.set-scroll-adjustments}"set-scroll-adjustments". Signature: (instance @ref{tree-view}), (arg-1 @ref{adjustment}), (arg-2 @ref{adjustment}) @result{} void. Options: run-last, action.
4056 @item @anchor{signal.tree-view.start-interactive-search}"start-interactive-search". Signature: (instance @ref{tree-view}) @result{} @code{boolean}. Options: run-last, action.
4057 @item @anchor{signal.tree-view.test-collapse-row}"test-collapse-row". Signature: (instance @ref{tree-view}), (arg-1 @ref{tree-iter}), (arg-2 @ref{tree-path}) @result{} @code{boolean}. Options: run-last.
4058 @item @anchor{signal.tree-view.test-expand-row}"test-expand-row". Signature: (instance @ref{tree-view}), (arg-1 @ref{tree-iter}), (arg-2 @ref{tree-path}) @result{} @code{boolean}. Options: run-last.
4059 @item @anchor{signal.tree-view.toggle-cursor-row}"toggle-cursor-row". Signature: (instance @ref{tree-view}) @result{} @code{boolean}. Options: run-last, action.
4060 @item @anchor{signal.tree-view.unselect-all}"unselect-all". Signature: (instance @ref{tree-view}) @result{} @code{boolean}. Options: run-last, action.
4061 @end itemize
4062
4063
4064
4065
4066 @node v-box
4067 @section v-box
4068 @Class v-box
4069 Superclass: @ref{box} @ref{atk-implementor-iface} @ref{buildable} @ref{orientable}
4070
4071 Subclasses: @ref{recent-chooser-widget} @ref{gamma-curve} @ref{font-selection} @ref{file-chooser-widget} @ref{color-selection}
4072
4073 Slots:
4074 @itemize
4075 @end itemize
4076
4077
4078 Signals:
4079 @itemize
4080 @end itemize
4081
4082
4083
4084
4085 @node v-button-box
4086 @section v-button-box
4087 @Class v-button-box
4088 Superclass: @ref{button-box} @ref{atk-implementor-iface} @ref{buildable} @ref{orientable}
4089
4090 Slots:
4091 @itemize
4092 @end itemize
4093
4094
4095 Signals:
4096 @itemize
4097 @end itemize
4098
4099
4100
4101
4102 @node v-paned
4103 @section v-paned
4104 @Class v-paned
4105 Superclass: @ref{paned} @ref{atk-implementor-iface} @ref{buildable} @ref{orientable}
4106
4107 Slots:
4108 @itemize
4109 @end itemize
4110
4111
4112 Signals:
4113 @itemize
4114 @end itemize
4115
4116
4117
4118
4119 @node v-ruler
4120 @section v-ruler
4121 @Class v-ruler
4122 Superclass: @ref{ruler} @ref{atk-implementor-iface} @ref{buildable} @ref{orientable}
4123
4124 Slots:
4125 @itemize
4126 @end itemize
4127
4128
4129 Signals:
4130 @itemize
4131 @end itemize
4132
4133
4134
4135
4136 @node v-scale
4137 @section v-scale
4138 @Class v-scale
4139 Superclass: @ref{scale} @ref{atk-implementor-iface} @ref{buildable} @ref{orientable}
4140
4141 The @ref{v-scale} widget is used to allow the user to select a value using a vertical slider.
4142
4143 The position to show the current value, and the number of decimal places shown can be set using the parent @ref{scale} class's functions.
4144
4145 Slots:
4146 @itemize
4147 @end itemize
4148
4149
4150 Signals:
4151 @itemize
4152 @end itemize
4153
4154
4155
4156
4157 @node v-scrollbar
4158 @section v-scrollbar
4159 @Class v-scrollbar
4160 Superclass: @ref{scrollbar} @ref{atk-implementor-iface} @ref{buildable} @ref{orientable}
4161
4162 Slots:
4163 @itemize
4164 @end itemize
4165
4166
4167 Signals:
4168 @itemize
4169 @end itemize
4170
4171
4172
4173
4174 @node v-separator
4175 @section v-separator
4176 @Class v-separator
4177 Superclass: @ref{separator} @ref{atk-implementor-iface} @ref{buildable} @ref{orientable}
4178
4179 Slots:
4180 @itemize
4181 @end itemize
4182
4183
4184 Signals:
4185 @itemize
4186 @end itemize
4187
4188
4189
4190
4191 @node viewport
4192 @section viewport
4193 @Class viewport
4194 Superclass: @ref{bin} @ref{atk-implementor-iface} @ref{buildable}
4195
4196 Slots:
4197 @itemize
4198 @item @anchor{slot.viewport.hadjustment}hadjustment. Type: @ref{adjustment}. Accessor: @anchor{fn.viewport-hadjustment}@code{viewport-hadjustment}.
4199 @item @anchor{slot.viewport.shadow-type}shadow-type. Type: @ref{shadow-type}. Accessor: @anchor{fn.viewport-shadow-type}@code{viewport-shadow-type}.
4200 @item @anchor{slot.viewport.vadjustment}vadjustment. Type: @ref{adjustment}. Accessor: @anchor{fn.viewport-vadjustment}@code{viewport-vadjustment}.
4201 @end itemize
4202
4203
4204 Signals:
4205 @itemize
4206 @item @anchor{signal.viewport.set-scroll-adjustments}"set-scroll-adjustments". Signature: (instance @ref{viewport}), (arg-1 @ref{adjustment}), (arg-2 @ref{adjustment}) @result{} void. Options: run-last, action.
4207 @end itemize
4208
4209
4210
4211
4212 @node volume-button
4213 @section volume-button
4214 @Class volume-button
4215 Superclass: @ref{scale-button} @ref{atk-implementor-iface} @ref{activatable} @ref{buildable} @ref{orientable}
4216
4217 @ref{volume-button} is a subclass of @ref{scale-button} that has been tailored for use as a volume control widget with suitable icons, tooltips and accessible labels.
4218
4219 Slots:
4220 @itemize
4221 @end itemize
4222
4223
4224 Signals:
4225 @itemize
4226 @end itemize
4227
4228
4229
4230
4231 @node widget
4232 @section widget
4233 @Class widget
4234 Superclass: @ref{gtk-object} @ref{atk-implementor-iface} @ref{buildable}
4235
4236 Subclasses: @ref{old-editable} @ref{progress} @ref{invisible} @ref{h-s-v} @ref{separator} @ref{range} @ref{ruler} @ref{entry} @ref{drawing-area} @ref{cell-view} @ref{calendar} @ref{misc} @ref{container}
4237
4238 Slots:
4239 @itemize
4240 @item @anchor{slot.widget.accessible}accessible. Type: @ref{g-object}. Accessor: @anchor{fn.widget-accessible}@code{widget-accessible}. Read-only.
4241 @item @anchor{slot.widget.app-paintable}app-paintable. Type: @code{boolean}. Accessor: @anchor{fn.widget-app-paintable}@code{widget-app-paintable}.
4242 @item @anchor{slot.widget.can-default}can-default. Type: @code{boolean}. Accessor: @anchor{fn.widget-can-default}@code{widget-can-default}.
4243 @item @anchor{slot.widget.can-focus}can-focus. Type: @code{boolean}. Accessor: @anchor{fn.widget-can-focus}@code{widget-can-focus}.
4244 @item @anchor{slot.widget.composite-child}composite-child. Type: @code{boolean}. Accessor: @anchor{fn.widget-composite-child}@code{widget-composite-child}. Read-only.
4245 @item @anchor{slot.widget.composite-name}composite-name. Type: @code{string}. Accessor: @anchor{fn.widget-composite-name}@code{widget-composite-name}.
4246 @item @anchor{slot.widget.direction}direction. Type: @ref{text-direction}. Accessor: @anchor{fn.widget-direction}@code{widget-direction}.
4247 @item @anchor{slot.widget.events}events. Type: @ref{event-mask}. Accessor: @anchor{fn.widget-events}@code{widget-events}.
4248 @item @anchor{slot.widget.extension-events}extension-events. Type: @ref{gdk-extension-mode}. Accessor: @anchor{fn.widget-extension-events}@code{widget-extension-events}.
4249 @item @anchor{slot.widget.has-default}has-default. Type: @code{boolean}. Accessor: @anchor{fn.widget-has-default}@code{widget-has-default}.
4250 @item @anchor{slot.widget.has-focus}has-focus. Type: @code{boolean}. Accessor: @anchor{fn.widget-has-focus}@code{widget-has-focus}.
4251 @item @anchor{slot.widget.has-tooltip}has-tooltip. Type: @code{boolean}. Accessor: @anchor{fn.widget-has-tooltip}@code{widget-has-tooltip}.
4252 @item @anchor{slot.widget.height-request}height-request. Type: @code{integer}. Accessor: @anchor{fn.widget-height-request}@code{widget-height-request}.
4253 @item @anchor{slot.widget.is-focus}is-focus. Type: @code{boolean}. Accessor: @anchor{fn.widget-is-focus}@code{widget-is-focus}.
4254 @item @anchor{slot.widget.name}name. Type: @code{string}. Accessor: @anchor{fn.widget-name}@code{widget-name}.
4255 @item @anchor{slot.widget.no-show-all}no-show-all. Type: @code{boolean}. Accessor: @anchor{fn.widget-no-show-all}@code{widget-no-show-all}.
4256 @item @anchor{slot.widget.parent}parent. Type: @ref{container}. Accessor: @anchor{fn.widget-parent}@code{widget-parent}.
4257 @item @anchor{slot.widget.receives-default}receives-default. Type: @code{boolean}. Accessor: @anchor{fn.widget-receives-default}@code{widget-receives-default}.
4258 @item @anchor{slot.widget.redraw-on-allocate}redraw-on-allocate. Type: @code{boolean}. Accessor: @anchor{fn.widget-redraw-on-allocate}@code{widget-redraw-on-allocate}. Write-only.
4259 @item @anchor{slot.widget.sensitive}sensitive. Type: @code{boolean}. Accessor: @anchor{fn.widget-sensitive}@code{widget-sensitive}.
4260 @item @anchor{slot.widget.style}style. Type: @ref{style}. Accessor: @anchor{fn.widget-style}@code{widget-style}.
4261 @item @anchor{slot.widget.tooltip-markup}tooltip-markup. Type: @code{string}. Accessor: @anchor{fn.widget-tooltip-markup}@code{widget-tooltip-markup}.
4262 @item @anchor{slot.widget.tooltip-text}tooltip-text. Type: @code{string}. Accessor: @anchor{fn.widget-tooltip-text}@code{widget-tooltip-text}.
4263 @item @anchor{slot.widget.tooltip-window}tooltip-window. Type: @ref{g-object}. Accessor: @anchor{fn.widget-tooltip-window}@code{widget-tooltip-window}.
4264 @item @anchor{slot.widget.visible}visible. Type: @code{boolean}. Accessor: @anchor{fn.widget-visible}@code{widget-visible}.
4265 @item @anchor{slot.widget.width-request}width-request. Type: @code{integer}. Accessor: @anchor{fn.widget-width-request}@code{widget-width-request}.
4266 @item @anchor{slot.widget.window}window. Type: @ref{gdk-window}. Accessor: @anchor{fn.widget-window}@code{widget-window}. Read-only.
4267 @end itemize
4268
4269
4270 Signals:
4271 @itemize
4272 @item @anchor{signal.widget.accel-closures-changed}"accel-closures-changed". Signature: (instance @ref{widget}) @result{} void. Options: .
4273 @item @anchor{signal.widget.button-press-event}"button-press-event". Signature: (instance @ref{widget}), (arg-1 @ref{event}) @result{} @code{boolean}. Options: run-last.
4274 @item @anchor{signal.widget.button-release-event}"button-release-event". Signature: (instance @ref{widget}), (arg-1 @ref{event}) @result{} @code{boolean}. Options: run-last.
4275 @item @anchor{signal.widget.can-activate-accel}"can-activate-accel". Signature: (instance @ref{widget}), (arg-1 @code{integer}) @result{} @code{boolean}. Options: run-last.
4276 @item @anchor{signal.widget.child-notify}"child-notify". Signature: (instance @ref{widget}), (arg-1 GParam) @result{} void. Options: run-first, no-recurse, detailed, no-hooks.
4277 @item @anchor{signal.widget.client-event}"client-event". Signature: (instance @ref{widget}), (arg-1 @ref{event}) @result{} @code{boolean}. Options: run-last.
4278 @item @anchor{signal.widget.composited-changed}"composited-changed". Signature: (instance @ref{widget}) @result{} void. Options: run-last, action.
4279 @item @anchor{signal.widget.configure-event}"configure-event". Signature: (instance @ref{widget}), (arg-1 @ref{event}) @result{} @code{boolean}. Options: run-last.
4280 @item @anchor{signal.widget.damage-event}"damage-event". Signature: (instance @ref{widget}), (arg-1 @ref{event}) @result{} @code{boolean}. Options: run-last.
4281 @item @anchor{signal.widget.delete-event}"delete-event". Signature: (instance @ref{widget}), (arg-1 @ref{event}) @result{} @code{boolean}. Options: run-last.
4282 @item @anchor{signal.widget.destroy-event}"destroy-event". Signature: (instance @ref{widget}), (arg-1 @ref{event}) @result{} @code{boolean}. Options: run-last.
4283 @item @anchor{signal.widget.direction-changed}"direction-changed". Signature: (instance @ref{widget}), (arg-1 @ref{text-direction}) @result{} void. Options: run-first.
4284 @item @anchor{signal.widget.drag-begin}"drag-begin". Signature: (instance @ref{widget}), (arg-1 @ref{drag-context}) @result{} void. Options: run-last.
4285 @item @anchor{signal.widget.drag-data-delete}"drag-data-delete". Signature: (instance @ref{widget}), (arg-1 @ref{drag-context}) @result{} void. Options: run-last.
4286 @item @anchor{signal.widget.drag-data-get}"drag-data-get". Signature: (instance @ref{widget}), (arg-1 @ref{drag-context}), (arg-2 @code{GtkSelectionData}), (arg-3 @code{integer}), (arg-4 @code{integer}) @result{} void. Options: run-last.
4287 @item @anchor{signal.widget.drag-data-received}"drag-data-received". Signature: (instance @ref{widget}), (arg-1 @ref{drag-context}), (arg-2 @code{integer}), (arg-3 @code{integer}), (arg-4 @code{GtkSelectionData}), (arg-5 @code{integer}), (arg-6 @code{integer}) @result{} void. Options: run-last.
4288 @item @anchor{signal.widget.drag-drop}"drag-drop". Signature: (instance @ref{widget}), (arg-1 @ref{drag-context}), (arg-2 @code{integer}), (arg-3 @code{integer}), (arg-4 @code{integer}) @result{} @code{boolean}. Options: run-last.
4289 @item @anchor{signal.widget.drag-end}"drag-end". Signature: (instance @ref{widget}), (arg-1 @ref{drag-context}) @result{} void. Options: run-last.
4290 @item @anchor{signal.widget.drag-failed}"drag-failed". Signature: (instance @ref{widget}), (arg-1 @ref{drag-context}), (arg-2 @ref{drag-result}) @result{} @code{boolean}. Options: run-last.
4291 @item @anchor{signal.widget.drag-leave}"drag-leave". Signature: (instance @ref{widget}), (arg-1 @ref{drag-context}), (arg-2 @code{integer}) @result{} void. Options: run-last.
4292 @item @anchor{signal.widget.drag-motion}"drag-motion". Signature: (instance @ref{widget}), (arg-1 @ref{drag-context}), (arg-2 @code{integer}), (arg-3 @code{integer}), (arg-4 @code{integer}) @result{} @code{boolean}. Options: run-last.
4293 @item @anchor{signal.widget.enter-notify-event}"enter-notify-event". Signature: (instance @ref{widget}), (arg-1 @ref{event}) @result{} @code{boolean}. Options: run-last.
4294 @item @anchor{signal.widget.event}"event". Signature: (instance @ref{widget}), (arg-1 @ref{event}) @result{} @code{boolean}. Options: run-last.
4295 @item @anchor{signal.widget.event-after}"event-after". Signature: (instance @ref{widget}), (arg-1 @ref{event}) @result{} void. Options: .
4296 @item @anchor{signal.widget.expose-event}"expose-event". Signature: (instance @ref{widget}), (arg-1 @ref{event}) @result{} @code{boolean}. Options: run-last.
4297 @item @anchor{signal.widget.focus}"focus". Signature: (instance @ref{widget}), (arg-1 @ref{direction-type}) @result{} @code{boolean}. Options: run-last.
4298 @item @anchor{signal.widget.focus-in-event}"focus-in-event". Signature: (instance @ref{widget}), (arg-1 @ref{event}) @result{} @code{boolean}. Options: run-last.
4299 @item @anchor{signal.widget.focus-out-event}"focus-out-event". Signature: (instance @ref{widget}), (arg-1 @ref{event}) @result{} @code{boolean}. Options: run-last.
4300 @item @anchor{signal.widget.grab-broken-event}"grab-broken-event". Signature: (instance @ref{widget}), (arg-1 @ref{event}) @result{} @code{boolean}. Options: run-last.
4301 @item @anchor{signal.widget.grab-focus}"grab-focus". Signature: (instance @ref{widget}) @result{} void. Options: run-last, action.
4302 @item @anchor{signal.widget.grab-notify}"grab-notify". Signature: (instance @ref{widget}), (arg-1 @code{boolean}) @result{} void. Options: run-first.
4303 @item @anchor{signal.widget.hide}"hide". Signature: (instance @ref{widget}) @result{} void. Options: run-first.
4304 @item @anchor{signal.widget.hierarchy-changed}"hierarchy-changed". Signature: (instance @ref{widget}), (arg-1 @ref{widget}) @result{} void. Options: run-last.
4305 @item @anchor{signal.widget.key-press-event}"key-press-event". Signature: (instance @ref{widget}), (arg-1 @ref{event}) @result{} @code{boolean}. Options: run-last.
4306 @item @anchor{signal.widget.key-release-event}"key-release-event". Signature: (instance @ref{widget}), (arg-1 @ref{event}) @result{} @code{boolean}. Options: run-last.
4307 @item @anchor{signal.widget.keynav-failed}"keynav-failed". Signature: (instance @ref{widget}), (arg-1 @ref{direction-type}) @result{} @code{boolean}. Options: run-last.
4308 @item @anchor{signal.widget.leave-notify-event}"leave-notify-event". Signature: (instance @ref{widget}), (arg-1 @ref{event}) @result{} @code{boolean}. Options: run-last.
4309 @item @anchor{signal.widget.map}"map". Signature: (instance @ref{widget}) @result{} void. Options: run-first.
4310 @item @anchor{signal.widget.map-event}"map-event". Signature: (instance @ref{widget}), (arg-1 @ref{event}) @result{} @code{boolean}. Options: run-last.
4311 @item @anchor{signal.widget.mnemonic-activate}"mnemonic-activate". Signature: (instance @ref{widget}), (arg-1 @code{boolean}) @result{} @code{boolean}. Options: run-last.
4312 @item @anchor{signal.widget.motion-notify-event}"motion-notify-event". Signature: (instance @ref{widget}), (arg-1 @ref{event}) @result{} @code{boolean}. Options: run-last.
4313 @item @anchor{signal.widget.move-focus}"move-focus". Signature: (instance @ref{widget}), (arg-1 @ref{direction-type}) @result{} void. Options: run-last, action.
4314 @item @anchor{signal.widget.no-expose-event}"no-expose-event". Signature: (instance @ref{widget}), (arg-1 @ref{event}) @result{} @code{boolean}. Options: run-last.
4315 @item @anchor{signal.widget.parent-set}"parent-set". Signature: (instance @ref{widget}), (arg-1 @ref{widget}) @result{} void. Options: run-first.
4316 @item @anchor{signal.widget.popup-menu}"popup-menu". Signature: (instance @ref{widget}) @result{} @code{boolean}. Options: run-last, action.
4317 @item @anchor{signal.widget.property-notify-event}"property-notify-event". Signature: (instance @ref{widget}), (arg-1 @ref{event}) @result{} @code{boolean}. Options: run-last.
4318 @item @anchor{signal.widget.proximity-in-event}"proximity-in-event". Signature: (instance @ref{widget}), (arg-1 @ref{event}) @result{} @code{boolean}. Options: run-last.
4319 @item @anchor{signal.widget.proximity-out-event}"proximity-out-event". Signature: (instance @ref{widget}), (arg-1 @ref{event}) @result{} @code{boolean}. Options: run-last.
4320 @item @anchor{signal.widget.query-tooltip}"query-tooltip". Signature: (instance @ref{widget}), (arg-1 @code{integer}), (arg-2 @code{integer}), (arg-3 @code{boolean}), (arg-4 @ref{tooltip}) @result{} @code{boolean}. Options: run-last.
4321 @item @anchor{signal.widget.realize}"realize". Signature: (instance @ref{widget}) @result{} void. Options: run-first.
4322 @item @anchor{signal.widget.screen-changed}"screen-changed". Signature: (instance @ref{widget}), (arg-1 @ref{screen}) @result{} void. Options: run-last.
4323 @item @anchor{signal.widget.scroll-event}"scroll-event". Signature: (instance @ref{widget}), (arg-1 @ref{event}) @result{} @code{boolean}. Options: run-last.
4324 @item @anchor{signal.widget.selection-clear-event}"selection-clear-event". Signature: (instance @ref{widget}), (arg-1 @ref{event}) @result{} @code{boolean}. Options: run-last.
4325 @item @anchor{signal.widget.selection-get}"selection-get". Signature: (instance @ref{widget}), (arg-1 @code{GtkSelectionData}), (arg-2 @code{integer}), (arg-3 @code{integer}) @result{} void. Options: run-last.
4326 @item @anchor{signal.widget.selection-notify-event}"selection-notify-event". Signature: (instance @ref{widget}), (arg-1 @ref{event}) @result{} @code{boolean}. Options: run-last.
4327 @item @anchor{signal.widget.selection-received}"selection-received". Signature: (instance @ref{widget}), (arg-1 @code{GtkSelectionData}), (arg-2 @code{integer}) @result{} void. Options: run-last.
4328 @item @anchor{signal.widget.selection-request-event}"selection-request-event". Signature: (instance @ref{widget}), (arg-1 @ref{event}) @result{} @code{boolean}. Options: run-last.
4329 @item @anchor{signal.widget.show}"show". Signature: (instance @ref{widget}) @result{} void. Options: run-first.
4330 @item @anchor{signal.widget.show-help}"show-help". Signature: (instance @ref{widget}), (arg-1 @ref{widget-help-type}) @result{} @code{boolean}. Options: run-last, action.
4331 @item @anchor{signal.widget.size-allocate}"size-allocate". Signature: (instance @ref{widget}), (arg-1 @ref{rectangle}) @result{} void. Options: run-first.
4332 @item @anchor{signal.widget.size-request}"size-request". Signature: (instance @ref{widget}), (arg-1 @code{GtkRequisition}) @result{} void. Options: run-first.
4333 @item @anchor{signal.widget.state-changed}"state-changed". Signature: (instance @ref{widget}), (arg-1 @ref{state-type}) @result{} void. Options: run-first.
4334 @item @anchor{signal.widget.style-set}"style-set". Signature: (instance @ref{widget}), (arg-1 @ref{style}) @result{} void. Options: run-first.
4335 @item @anchor{signal.widget.unmap}"unmap". Signature: (instance @ref{widget}) @result{} void. Options: run-first.
4336 @item @anchor{signal.widget.unmap-event}"unmap-event". Signature: (instance @ref{widget}), (arg-1 @ref{event}) @result{} @code{boolean}. Options: run-last.
4337 @item @anchor{signal.widget.unrealize}"unrealize". Signature: (instance @ref{widget}) @result{} void. Options: run-last.
4338 @item @anchor{signal.widget.visibility-notify-event}"visibility-notify-event". Signature: (instance @ref{widget}), (arg-1 @ref{event}) @result{} @code{boolean}. Options: run-last.
4339 @item @anchor{signal.widget.window-state-event}"window-state-event". Signature: (instance @ref{widget}), (arg-1 @ref{event}) @result{} @code{boolean}. Options: run-last.
4340 @end itemize
4341
4342 @RMethod widget-show
4343
4344 Undocumented yet
4345
4346 @RMethod widget-grab-focus
4347
4348 Undocumented yet
4349