Merge lp:~jeremywootten/pantheon-files/various-fixes-part3-fix-network-file-operations into lp:~elementary-apps/pantheon-files/trunk

Proposed by Jeremy Wootten
Status: Merged
Approved by: Cody Garver
Approved revision: 2049
Merged at revision: 2065
Proposed branch: lp:~jeremywootten/pantheon-files/various-fixes-part3-fix-network-file-operations
Merge into: lp:~elementary-apps/pantheon-files/trunk
Diff against target: 11228 lines (+509/-10139)
20 files modified
CMakeLists.txt (+1/-1)
libcore/BookmarkList.vala (+1/-1)
libcore/FileUtils.vala (+255/-1)
libcore/gof-directory-async.vala (+20/-12)
libcore/gof-file.c (+37/-21)
libcore/marlin-undostack-manager.c (+8/-12)
libwidgets/CMakeLists.txt (+0/-1)
libwidgets/FileUtils.vala (+0/-185)
libwidgets/Resources.vala (+0/-29)
src/AbstractEditableLabel.vala (+11/-15)
src/CMakeLists.txt (+1/-1)
src/TextRenderer.vala (+7/-8)
src/View/AbstractDirectoryView.vala (+99/-101)
src/View/IconView.vala (+1/-9)
src/View/PropertiesWindow.vala (+14/-6)
src/View/Sidebar.vala (+8/-8)
src/View/Slot.vala (+41/-4)
src/View/Window.vala (+5/-4)
src/gtk+-3.0.deps (+0/-7)
src/gtk+-3.0.vapi (+0/-9713)
To merge this branch: bzr merge lp:~jeremywootten/pantheon-files/various-fixes-part3-fix-network-file-operations
Reviewer Review Type Date Requested Status
Cody Garver (community) Needs Fixing
Review via email: mp+285279@code.launchpad.net

Commit message

Improve rename and DnD on remote folders

Description of the change

This branch fixes a number of issues around manipulating files on remote folders. The following actions should work more reliably:

1) Rename
2) Drag and drop

As a side-effect, it removes the need for a custom gtk+-3.0.vapi file, but requires a later minimum version of valac to compile (0.28). It still will compile and run on Freya.

To post a comment you must log in.
Revision history for this message
Cody Garver (codygarver) wrote :

Conflicts with trunk

2048. By Jeremy Wootten

Resolved conflict with trunk

Revision history for this message
Cody Garver (codygarver) wrote :

Screenshot of sidebar regression: http://i.imgur.com/eM9gkdV.png

review: Needs Fixing
2049. By Jeremy Wootten

Merge trunk to r2059

Revision history for this message
Jeremy Wootten (jeremywootten) wrote :

Regression in sidebar layout is fixed in branch

lp:~jeremywootten/pantheon-files/fix-sidebar-regressions-with-latest-Gtk

which depends on this one.

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'CMakeLists.txt'
2--- CMakeLists.txt 2015-12-02 14:34:10 +0000
3+++ CMakeLists.txt 2016-02-14 12:51:24 +0000
4@@ -24,7 +24,7 @@
5
6 find_package (Vala REQUIRED)
7 include (ValaVersion)
8-ensure_vala_version ("0.26" MINIMUM)
9+ensure_vala_version ("0.28" MINIMUM)
10 include (ValaPrecompile)
11
12 if (MODULE_ONLY)
13
14=== modified file 'libcore/BookmarkList.vala'
15--- libcore/BookmarkList.vala 2015-10-03 13:12:25 +0000
16+++ libcore/BookmarkList.vala 2016-02-14 12:51:24 +0000
17@@ -305,7 +305,7 @@
18 contents_changed ();
19 }
20 catch (GLib.Error error) {
21- message ("Error replacing bookmarks file contents %s", error.message);
22+ warning ("Error replacing bookmarks file contents %s", error.message);
23 }
24 op_processed_call_back ();
25 });
26
27=== modified file 'libcore/FileUtils.vala'
28--- libcore/FileUtils.vala 2016-01-18 14:17:50 +0000
29+++ libcore/FileUtils.vala 2016-02-14 12:51:24 +0000
30@@ -16,10 +16,264 @@
31 Authors : Jeremy Wootten <jeremy@elementaryos.org>
32 ***/
33 namespace PF.FileUtils {
34- const string reserved_chars = (GLib.Uri.RESERVED_CHARS_GENERIC_DELIMITERS + GLib.Uri.RESERVED_CHARS_SUBCOMPONENT_DELIMITERS + " ");
35+ /**
36+ * Gets a properly escaped GLib.File for the given path
37+ **/
38+ const string reserved_chars = (GLib.Uri.RESERVED_CHARS_GENERIC_DELIMITERS + GLib.Uri.RESERVED_CHARS_SUBCOMPONENT_DELIMITERS + " ");
39+
40+ public File? get_file_for_path (string? path) {
41+ File? file = null;
42+ string new_path = sanitize_path (path);
43+ if (path.length > 0) {
44+ file = File.new_for_commandline_arg (new_path);
45+ }
46+ return file;
47+ }
48+
49+ public string get_parent_path_from_path (string path) {
50+ /* We construct the parent path rather than use File.get_parent () as the latter gives odd
51+ * results for some gvfs files.
52+ */
53+ string parent_path = construct_parent_path (path);
54+ if (parent_path == Marlin.FTP_URI ||
55+ parent_path == Marlin.SFTP_URI) {
56+
57+ parent_path = path;
58+ }
59+
60+ if (parent_path.has_prefix (Marlin.MTP_URI) && !valid_mtp_uri (parent_path)) {
61+ parent_path = path;
62+ }
63+
64+ if (parent_path == Marlin.SMB_URI) {
65+ parent_path = parent_path + Path.DIR_SEPARATOR_S;
66+ }
67+ return parent_path;
68+ }
69+
70+ private string construct_parent_path (string path) {
71+ if (path.length < 2) {
72+ return Path.DIR_SEPARATOR_S;
73+ }
74+ StringBuilder sb = new StringBuilder (path);
75+ if (path.has_suffix (Path.DIR_SEPARATOR_S)) {
76+ sb.erase (sb.str.length - 1,-1);
77+ }
78+ int last_separator = sb.str.last_index_of (Path.DIR_SEPARATOR_S);
79+ if (last_separator < 0) {
80+ last_separator = 0;
81+ }
82+ sb.erase (last_separator, -1);
83+ string parent_path = sb.str + Path.DIR_SEPARATOR_S;
84+ return sanitize_path (parent_path);
85+ }
86+
87+ public bool path_has_parent (string new_path) {
88+ var file = File.new_for_commandline_arg (new_path);
89+ return file.get_parent () != null;
90+ }
91
92 public string? escape_uri (string uri, bool allow_utf8 = true) {
93 string rc = reserved_chars.replace("#", "").replace ("*","");
94 return Uri.escape_string ((Uri.unescape_string (uri) ?? uri), rc , allow_utf8);
95 }
96+
97+ /** Produce a valid unescaped path **/
98+ public string sanitize_path (string? p, string? cp = null) {
99+ string path = "";
100+ string scheme = "";
101+ string? current_path = null;
102+ string? current_scheme = null;
103+
104+ if (p == null || p == "") {
105+ return cp ?? "";
106+ }
107+ string? unescaped_p = Uri.unescape_string (p, null);
108+ if (unescaped_p == null) {
109+ unescaped_p = p;
110+ }
111+
112+ split_protocol_from_path (unescaped_p, out scheme, out path);
113+ path = path.strip ().replace ("//", "/");
114+ StringBuilder sb = new StringBuilder (path);
115+ if (cp != null) {
116+ split_protocol_from_path (cp, out current_scheme, out current_path);
117+ /* current_path is assumed already sanitized */
118+ if (scheme == "" && path.has_prefix ("/./")) {
119+ sb.erase (0, 2);
120+ sb.prepend (cp);
121+ split_protocol_from_path (sb.str , out scheme, out path);
122+ sb.assign (path);
123+ } else if (path.has_prefix ("/../")) {
124+ sb.erase (0, 3);
125+ sb.prepend (get_parent_path_from_path (current_path));
126+ sb.prepend (current_scheme);
127+ split_protocol_from_path (sb.str , out scheme, out path);
128+ sb.assign (path);
129+ }
130+ }
131+
132+ if (path.length > 0) {
133+ if (scheme == "" && path.has_prefix ("/~/")) {
134+ sb.erase (0, 2);
135+ sb.prepend (Environment.get_home_dir ());
136+ }
137+ }
138+
139+ path = sb.str;
140+ do {
141+ path = path.replace ("//", "/");
142+ } while (path.contains ("//"));
143+
144+ string new_path = (scheme + path).replace("////", "///");
145+
146+ if (new_path.length > 0) {
147+ if (scheme != Marlin.ROOT_FS_URI && path != "/") {
148+ new_path = new_path.replace ("///", "//");
149+ }
150+ new_path = new_path.replace("ssh:", "sftp:");
151+ }
152+
153+ return new_path;
154+ }
155+
156+ /** Splits the path into a protocol ending in '://" (unless it is file:// which is replaced by "")
157+ * and a path beginning "/".
158+ **/
159+ public void split_protocol_from_path (string path, out string protocol, out string new_path) {
160+ protocol = "";
161+ new_path = path.dup ();
162+
163+ string[] explode_protocol = new_path.split ("://");
164+ if (explode_protocol.length > 2) {
165+ new_path = "";
166+ return;
167+ }
168+ if (explode_protocol.length > 1) {
169+ if (explode_protocol[0] == "mtp") {
170+ string[] explode_path = explode_protocol[1].split ("]", 2);
171+ if (explode_path[0] != null && explode_path[0].has_prefix ("[")) {
172+ protocol = (explode_protocol[0] + "://" + explode_path[0] + "]").replace ("///", "//");
173+ /* If path is being manually edited there may not be "]" so explode_path[1] may be null*/
174+ new_path = explode_path [1] ?? "";
175+ } else {
176+ warning ("Invalid mtp path");
177+ protocol = new_path.dup ();
178+ new_path = "/";
179+ }
180+ } else {
181+ protocol = explode_protocol[0] + "://";
182+ new_path = explode_protocol[1] ?? "";
183+ }
184+ } else {
185+ protocol = Marlin.ROOT_FS_URI;
186+ }
187+
188+ if (Marlin.ROOT_FS_URI.has_prefix (protocol)) {
189+ protocol = "";
190+ }
191+ if (!new_path.has_prefix (Path.DIR_SEPARATOR_S)) {
192+ new_path = Path.DIR_SEPARATOR_S + new_path;
193+ }
194+ }
195+
196+ private bool valid_mtp_uri (string uri) {
197+ if (!uri.contains (Marlin.MTP_URI)) {
198+ return false;
199+ }
200+ string[] explode_protocol = uri.split ("://",2);
201+ if (explode_protocol.length != 2 ||
202+ !explode_protocol[1].has_prefix ("[") ||
203+ !explode_protocol[1].contains ("]")) {
204+ return false;
205+ }
206+ return true;
207+ }
208+
209+ public string get_smb_share_from_uri (string uri) {
210+ if (!(Uri.parse_scheme (uri) == "smb"))
211+ return (uri);
212+
213+ string [] uri_parts = uri.split (Path.DIR_SEPARATOR_S);
214+
215+ if (uri_parts.length < 4)
216+ return uri;
217+ else {
218+ var sb = new StringBuilder ();
219+ for (int i = 0; i < 4; i++)
220+ sb.append (uri_parts [i] + Path.DIR_SEPARATOR_S);
221+
222+ return sb.str;
223+ }
224+ }
225+
226+ /* Signature must be compatible with MarlinUndoStackManager undo and redo functions */
227+ public delegate void RenameCallbackFunc (GLib.File old_location, GLib.File? new_location, GLib.Error? error);
228+
229+ public void set_file_display_name (GLib.File old_location, string new_name, PF.FileUtils.RenameCallbackFunc? f) {
230+
231+ /** TODO Check validity of new name, make cancellable **/
232+
233+ GLib.File? new_location = null;
234+ GOF.Directory.Async? dir = GOF.Directory.Async.cache_lookup_parent (old_location);
235+ string original_name = old_location.get_basename ();
236+
237+ old_location.set_display_name_async (new_name, 0, null, (obj, res) => {
238+ try {
239+ assert (obj is GLib.Object);
240+ GLib.File? n = old_location.set_display_name_async.end (res);
241+ /* Unless we decouple the new_file from the object returned by set_display_name_async
242+ * it can get corrupted when this thread exits when working with remote files, presumably
243+ * due to a bug in gvfs backend. This leads to obscure bugs in Files.
244+ */
245+ new_location= GLib.File.new_for_uri (n.get_uri ());
246+
247+ if (dir != null) {
248+ /* Notify directory of change. Since only a single file is changed we bypass MarlinFileChangesQueue */
249+
250+ GLib.List<GLib.File>added_files = null;
251+ added_files.append (new_location);
252+ GLib.List<GLib.File>removed_files = null;
253+ removed_files.append (old_location);
254+ GOF.Directory.Async.notify_files_removed (removed_files);
255+ GOF.Directory.Async.notify_files_added (added_files);
256+ } else {
257+ warning ("Renamed file has no GOF.Directory.Async");
258+ }
259+
260+ /* Register the change with the undo manager */
261+ Marlin.UndoManager.instance ().add_rename_action (new_location,
262+ original_name);
263+ } catch (Error e) {
264+ warning ("Rename error");
265+ Eel.show_error_dialog (_("Could not rename to '%s'").printf (new_name),
266+ e.message,
267+ null);
268+ new_location = null;
269+
270+ if (dir != null) {
271+ /* We emit this signal anyway so callers can know rename failed and disconnect */
272+ dir.file_added (null);
273+ }
274+ }
275+ /* PropertiesWindow also calls this function with a different callback */
276+ if (f != null) {
277+ f (old_location, new_location, null);
278+ }
279+ });
280+ }
281+}
282+
283+namespace Marlin {
284+ public const string ROOT_FS_URI = "file://";
285+ public const string TRASH_URI = "trash:///";
286+ public const string NETWORK_URI = "network:///";
287+ public const string RECENT_URI = "recent:///";
288+ public const string AFP_URI = "afp://";
289+ public const string DAV_URI = "dav://";
290+ public const string DAVS_URI = "davs://";
291+ public const string SFTP_URI = "sftp://";
292+ public const string FTP_URI = "ftp://";
293+ public const string SMB_URI = "smb://";
294+ public const string MTP_URI = "mtp://";
295 }
296
297=== modified file 'libcore/gof-directory-async.vala'
298--- libcore/gof-directory-async.vala 2016-01-27 19:54:38 +0000
299+++ libcore/gof-directory-async.vala 2016-02-14 12:51:24 +0000
300@@ -56,7 +56,7 @@
301 private List<unowned GOF.File>? sorted_dirs = null;
302
303 public signal void file_loaded (GOF.File file);
304- public signal void file_added (GOF.File file);
305+ public signal void file_added (GOF.File? file); /* null used to signal failed operation */
306 public signal void file_changed (GOF.File file);
307 public signal void file_deleted (GOF.File file);
308 public signal void icon_changed (GOF.File file); /* Called directly by GOF.File - handled by AbstractDirectoryView
309@@ -375,17 +375,12 @@
310 public void cancel () {
311 /* This should only be called when closing the view - it will cancel initialisation of the directory */
312 cancellable.cancel ();
313- cancel_thumbnailing ();
314- cancel_timeout (ref load_timeout_id);
315- cancel_timeout (ref idle_consume_changes_id);
316+ cancel_timeouts ();
317 }
318
319 public void cancel_thumbnailing () {
320 /* remove any pending thumbnail generation */
321- if (timeout_thumbsq != 0) {
322- Source.remove (timeout_thumbsq);
323- timeout_thumbsq = 0;
324- }
325+ cancel_timeout (ref timeout_thumbsq);
326 }
327
328 public void reload () {
329@@ -620,8 +615,9 @@
330 FileQueryInfoFlags.NONE,
331 Priority.DEFAULT,
332 cancellable);
333- if (f != null)
334+ if (f != null) {
335 f (gof);
336+ }
337 } catch (Error err) {
338 warning ("query info failed, %s %s", err.message, gof.uri);
339 if (err is IOError.NOT_FOUND) {
340@@ -632,8 +628,10 @@
341 }
342
343 private void changed_and_refresh (GOF.File gof) {
344- if (gof.is_gone)
345+ if (gof.is_gone) {
346+ warning ("File marked as gone when refreshing change");
347 return;
348+ }
349
350 gof.update ();
351
352@@ -644,9 +642,10 @@
353 }
354
355 private void add_and_refresh (GOF.File gof) {
356- if (gof.is_gone)
357+ if (gof.is_gone) {
358+ warning ("Add and refresh file which is gone");
359 return;
360-
361+ }
362 if (gof.info == null)
363 critical ("FILE INFO null");
364
365@@ -814,6 +813,8 @@
366
367 if (!found)
368 dirs.append (dir);
369+ } else {
370+ warning ("parent of deleted file not found");
371 }
372 }
373
374@@ -1043,6 +1044,13 @@
375 timeout_thumbsq = Timeout.add (40, queue_thumbs_timeout_cb);
376 }
377
378+ private void cancel_timeouts () {
379+ cancel_timeout (ref timeout_thumbsq);
380+ cancel_timeout (ref idle_consume_changes_id);
381+ cancel_timeout (ref load_timeout_id);
382+
383+ }
384+
385 private bool cancel_timeout (ref uint id) {
386 if (id > 0) {
387 Source.remove (id);
388
389=== modified file 'libcore/gof-file.c'
390--- libcore/gof-file.c 2016-01-03 13:02:06 +0000
391+++ libcore/gof-file.c 2016-02-14 12:51:24 +0000
392@@ -967,9 +967,12 @@
393 else
394 g_warning ("%s %s", G_STRFUNC, file->basename);
395 #endif
396-
397+ if (!(G_IS_FILE (file->location))) {
398+ g_warning ("Invalid file location on finalize for %s", file->basename);
399+ } else {
400+ g_object_unref (file->location);
401+ }
402 g_clear_object (&file->info);
403- _g_object_unref0 (file->location);
404 _g_object_unref0 (file->directory);
405 _g_free0 (file->uri);
406 _g_free0(file->basename);
407@@ -1681,17 +1684,6 @@
408 /* determine the possible actions */
409 actions = gdk_drag_context_get_actions (context) & (GDK_ACTION_COPY | GDK_ACTION_MOVE | GDK_ACTION_LINK | GDK_ACTION_ASK);
410
411- char *scheme;
412- scheme = g_file_get_uri_scheme (gof_file_get_target_location (file));
413- /* do not allow symbolic links to remote filesystems */
414- if (!g_str_has_prefix (scheme, "file"))
415- actions &= ~(GDK_ACTION_LINK);
416-
417- g_free (scheme);
418-
419- /* cannot create symbolic links in the trash or copy to the trash */
420- if (gof_file_is_trashed (file))
421- actions &= ~(GDK_ACTION_COPY | GDK_ACTION_LINK);
422
423 /* check up to 100 of the paths (just in case somebody tries to
424 * drag around his music collection with 5000 files).
425@@ -1699,13 +1691,7 @@
426
427 for (lp = file_list, n = 0; lp != NULL && n < 100; lp = lp->next, ++n)
428 {
429- scheme = g_file_get_uri_scheme (lp->data);
430- if (!g_str_has_prefix (scheme, "file")) {
431- /* do not allow symbolic links from remote filesystems */
432- actions &= ~(GDK_ACTION_LINK);
433- }
434
435- g_free (scheme);
436 /* we cannot drop a file on itself */
437 if (G_UNLIKELY (g_file_equal (gof_file_get_target_location (file), lp->data)))
438 return 0;
439@@ -1724,6 +1710,16 @@
440 g_object_unref (parent_file);
441 }
442
443+ /* Make these tests at the end so that any changes are not reversed subsequently */
444+ char *scheme;
445+ scheme = g_file_get_uri_scheme (lp->data);
446+ if (!g_str_has_prefix (scheme, "file")) {
447+ /* do not allow symbolic links from remote filesystems */
448+ actions &= ~(GDK_ACTION_LINK);
449+ }
450+
451+ g_free (scheme);
452+
453 /* copy/move/link within the trash not possible */
454 if (G_UNLIKELY (eel_g_file_is_trashed (lp->data) && gof_file_is_trashed (file)))
455 return 0;
456@@ -1766,8 +1762,28 @@
457 {
458 /* determine the possible actions */
459 actions = gdk_drag_context_get_actions (context) & (GDK_ACTION_COPY | GDK_ACTION_MOVE | GDK_ACTION_LINK | GDK_ACTION_PRIVATE);
460- } else
461- return 0;
462+ } else {
463+ g_debug ("Not a valid drop target");
464+ return 0;
465+ }
466+
467+ /* Make these tests at the end so that any changes are not reversed subsequently */
468+ char *scheme;
469+ scheme = g_file_get_uri_scheme (gof_file_get_target_location (file));
470+ /* do not allow symbolic links to remote filesystems */
471+ if (!g_str_has_prefix (scheme, "file"))
472+ actions &= ~(GDK_ACTION_LINK);
473+
474+ g_free (scheme);
475+
476+ /* cannot create symbolic links in the trash or copy to the trash */
477+ if (gof_file_is_trashed (file))
478+ actions &= ~(GDK_ACTION_COPY | GDK_ACTION_LINK);
479+
480+ if (actions == GDK_ACTION_ASK) {
481+ /* No point in asking if there are no allowed actions */
482+ return 0;
483+ }
484
485 /* determine the preferred action based on the context */
486 if (G_LIKELY (suggested_action_return != NULL))
487
488=== modified file 'libcore/marlin-undostack-manager.c'
489--- libcore/marlin-undostack-manager.c 2015-10-15 08:17:22 +0000
490+++ libcore/marlin-undostack-manager.c 2016-02-14 12:51:24 +0000
491@@ -461,11 +461,10 @@
492 break;
493
494 case MARLIN_UNDO_RENAME:
495- new_name = get_uri_basename (action->new_uri);
496- file = gof_file_get_by_uri (action->old_uri);
497- gof_file_rename (file, new_name, undo_redo_done_rename_callback, action);
498- g_object_unref (file);
499- g_free (new_name);
500+ pf_file_utils_set_file_display_name (g_file_new_for_uri (action->old_uri),
501+ get_uri_basename (action->new_uri),
502+ undo_redo_done_rename_callback,
503+ action);
504 break;
505
506 case MARLIN_UNDO_CREATEEMPTYFILE:
507@@ -555,8 +554,6 @@
508 {
509 GList *uris = NULL;
510 GHashTable *files_to_restore;
511- GOFFile *file;
512- char *new_name;
513 MarlinUndoManagerPrivate *priv = manager->priv;
514
515 g_mutex_lock (&priv->mutex);
516@@ -652,11 +649,10 @@
517 break;
518
519 case MARLIN_UNDO_RENAME:
520- new_name = get_uri_basename (action->old_uri);
521- file = gof_file_get_by_uri (action->new_uri);
522- gof_file_rename (file, new_name, undo_redo_done_rename_callback, action);
523- g_object_unref (file);
524- g_free (new_name);
525+ pf_file_utils_set_file_display_name (g_file_new_for_uri (action->new_uri),
526+ get_uri_basename (action->old_uri),
527+ undo_redo_done_rename_callback,
528+ action);
529 break;
530
531 #if 0
532
533=== modified file 'libwidgets/CMakeLists.txt'
534--- libwidgets/CMakeLists.txt 2015-12-02 14:34:10 +0000
535+++ libwidgets/CMakeLists.txt 2016-02-14 12:51:24 +0000
536@@ -46,7 +46,6 @@
537 Chrome/ViewSwitcher.vala
538 Chrome/XsEntry.vala
539 Animations/Animations.vala
540- FileUtils.vala
541 Resources.vala
542 MimeActions.vala
543 Welcome.vala
544
545=== removed file 'libwidgets/FileUtils.vala'
546--- libwidgets/FileUtils.vala 2016-01-31 23:03:20 +0000
547+++ libwidgets/FileUtils.vala 1970-01-01 00:00:00 +0000
548@@ -1,185 +0,0 @@
549-/***
550- Copyright (C) 2015 elementary Developers
551-
552- This program is free software: you can redistribute it and/or modify it
553- under the terms of the GNU Lesser General Public License version 3, as published
554- by the Free Software Foundation.
555-
556- This program is distributed in the hope that it will be useful, but
557- WITHOUT ANY WARRANTY; without even the implied warranties of
558- MERCHANTABILITY, SATISFACTORY QUALITY, or FITNESS FOR A PARTICULAR
559- PURPOSE. See the GNU General Public License for more details.
560-
561- You should have received a copy of the GNU General Public License along
562- with this program. If not, see <http://www.gnu.org/licenses/>.
563-
564- Authors : Jeremy Wootten <jeremy@elementaryos.org>
565-***/
566-namespace PF.FileUtils {
567- /**
568- * Gets a properly escaped GLib.File for the given path
569- **/
570- public File? get_file_for_path (string? path) {
571- File? file = null;
572- string new_path = sanitize_path (path);
573- if (path.length > 0) {
574- file = File.new_for_commandline_arg (new_path);
575- }
576- return file;
577- }
578-
579- public string get_parent_path_from_path (string path) {
580- /* We construct the parent path rather than use File.get_parent () as the latter gives odd
581- * results for some gvfs files.
582- */
583- string parent_path = construct_parent_path (path);
584- if (parent_path == Marlin.FTP_URI ||
585- parent_path == Marlin.SFTP_URI) {
586-
587- parent_path = path;
588- }
589-
590- if (parent_path.has_prefix (Marlin.MTP_URI) && !valid_mtp_uri (parent_path)) {
591- parent_path = path;
592- }
593-
594- if (parent_path == Marlin.SMB_URI) {
595- parent_path = parent_path + Path.DIR_SEPARATOR_S;
596- }
597- return parent_path;
598- }
599-
600- private string construct_parent_path (string path) {
601- if (path.length < 2) {
602- return Path.DIR_SEPARATOR_S;
603- }
604- StringBuilder sb = new StringBuilder (path);
605- if (path.has_suffix (Path.DIR_SEPARATOR_S)) {
606- sb.erase (sb.str.length - 1,-1);
607- }
608- int last_separator = sb.str.last_index_of (Path.DIR_SEPARATOR_S);
609- if (last_separator < 0) {
610- last_separator = 0;
611- }
612- sb.erase (last_separator, -1);
613- string parent_path = sb.str + Path.DIR_SEPARATOR_S;
614- return sanitize_path (parent_path);
615- }
616-
617- public bool path_has_parent (string new_path) {
618- var file = File.new_for_commandline_arg (new_path);
619- return file.get_parent () != null;
620- }
621-
622- /** Produce a valid unescaped path **/
623- public string sanitize_path (string? p, string? cp = null) {
624- string path = "";
625- string scheme = "";
626- string? current_path = null;
627- string? current_scheme = null;
628-
629- if (p == null || p == "") {
630- return cp ?? "";
631- }
632- string? unescaped_p = Uri.unescape_string (p, null);
633- if (unescaped_p == null) {
634- unescaped_p = p;
635- }
636-
637- split_protocol_from_path (unescaped_p, out scheme, out path);
638- path = path.strip ().replace ("//", "/");
639- StringBuilder sb = new StringBuilder (path);
640- if (cp != null) {
641- split_protocol_from_path (cp, out current_scheme, out current_path);
642- /* current_path is assumed already sanitized */
643- if (scheme == "" && path.has_prefix ("/./")) {
644- sb.erase (0, 2);
645- sb.prepend (cp);
646- split_protocol_from_path (sb.str , out scheme, out path);
647- sb.assign (path);
648- } else if (path.has_prefix ("/../")) {
649- sb.erase (0, 3);
650- sb.prepend (get_parent_path_from_path (current_path));
651- sb.prepend (current_scheme);
652- split_protocol_from_path (sb.str , out scheme, out path);
653- sb.assign (path);
654- }
655- }
656-
657- if (path.length > 0) {
658- if (scheme == "" && path.has_prefix ("/~/")) {
659- sb.erase (0, 2);
660- sb.prepend (Environment.get_home_dir ());
661- }
662- }
663-
664- path = sb.str;
665- do {
666- path = path.replace ("//", "/");
667- } while (path.contains ("//"));
668-
669- string new_path = (scheme + path).replace("////", "///");
670-
671- if (new_path.length > 0) {
672- if (scheme != Marlin.ROOT_FS_URI && path != "/") {
673- new_path = new_path.replace ("///", "//");
674- }
675- new_path = new_path.replace("ssh:", "sftp:");
676- }
677-
678- return new_path;
679- }
680-
681- /** Splits the path into a protocol ending in '://" (unless it is file:// which is replaced by "")
682- * and a path beginning "/".
683- **/
684- public void split_protocol_from_path (string path, out string protocol, out string new_path) {
685- protocol = "";
686- new_path = path.dup ();
687-
688- string[] explode_protocol = new_path.split ("://");
689- if (explode_protocol.length > 2) {
690- new_path = "";
691- return;
692- }
693- if (explode_protocol.length > 1) {
694- if (explode_protocol[0] == "mtp") {
695- string[] explode_path = explode_protocol[1].split ("]", 2);
696- if (explode_path[0] != null && explode_path[0].has_prefix ("[")) {
697- protocol = (explode_protocol[0] + "://" + explode_path[0] + "]").replace ("///", "//");
698- /* If path is being manually edited there may not be "]" so explode_path[1] may be null*/
699- new_path = explode_path [1] ?? "";
700- } else {
701- warning ("Invalid mtp path");
702- protocol = new_path.dup ();
703- new_path = "/";
704- }
705- } else {
706- protocol = explode_protocol[0] + "://";
707- new_path = explode_protocol[1] ?? "";
708- }
709- } else {
710- protocol = Marlin.ROOT_FS_URI;
711- }
712-
713- if (Marlin.ROOT_FS_URI.has_prefix (protocol)) {
714- protocol = "";
715- }
716- if (!new_path.has_prefix (Path.DIR_SEPARATOR_S)) {
717- new_path = Path.DIR_SEPARATOR_S + new_path;
718- }
719- }
720-
721- private bool valid_mtp_uri (string uri) {
722- if (!uri.contains (Marlin.MTP_URI)) {
723- return false;
724- }
725- string[] explode_protocol = uri.split ("://",2);
726- if (explode_protocol.length != 2 ||
727- !explode_protocol[1].has_prefix ("[") ||
728- !explode_protocol[1].contains ("]")) {
729- return false;
730- }
731- return true;
732- }
733-}
734
735=== modified file 'libwidgets/Resources.vala'
736--- libwidgets/Resources.vala 2015-12-17 11:20:35 +0000
737+++ libwidgets/Resources.vala 2016-02-14 12:51:24 +0000
738@@ -75,18 +75,6 @@
739 public const string ICON_PATHBAR_SECONDARY_NAVIGATE_SYMBOLIC = "go-jump-symbolic";
740 public const string ICON_PATHBAR_SECONDARY_REFRESH_SYMBOLIC = "view-refresh-symbolic";
741
742- public const string ROOT_FS_URI = "file://";
743- public const string TRASH_URI = "trash:///";
744- public const string NETWORK_URI = "network:///";
745- public const string RECENT_URI = "recent:///";
746- public const string AFP_URI = "afp://";
747- public const string DAV_URI = "dav://";
748- public const string DAVS_URI = "davs://";
749- public const string SFTP_URI = "sftp://";
750- public const string FTP_URI = "ftp://";
751- public const string SMB_URI = "smb://";
752- public const string MTP_URI = "mtp://";
753-
754 public const string OPEN_IN_TERMINAL_DESKTOP_ID = "open-pantheon-terminal-here.desktop";
755
756 public const string PROTOCOL_NAME_AFP = _("AFP");
757@@ -165,23 +153,6 @@
758 }
759 }
760
761- public string get_smb_share_from_uri (string uri) {
762- if (!(Uri.parse_scheme (uri) == "smb"))
763- return (uri);
764-
765- string [] uri_parts = uri.split (Path.DIR_SEPARATOR_S);
766-
767- if (uri_parts.length < 4)
768- return uri;
769- else {
770- var sb = new StringBuilder ();
771- for (int i = 0; i < 4; i++)
772- sb.append (uri_parts [i] + Path.DIR_SEPARATOR_S);
773-
774- return sb.str;
775- }
776- }
777-
778 public string sanitize_protocol (string p) {
779 string pname = Marlin.protocol_to_name (p);
780 return Marlin.name_to_protocol_uri (pname);
781
782=== modified file 'src/AbstractEditableLabel.vala'
783--- src/AbstractEditableLabel.vala 2015-05-18 17:16:42 +0000
784+++ src/AbstractEditableLabel.vala 2016-02-14 12:51:24 +0000
785@@ -26,7 +26,7 @@
786 public string original_name;
787 public bool draw_outline {get; set;}
788
789- public Gtk.Widget editable_widget;
790+ private Gtk.Widget editable_widget;
791
792 public AbstractEditableLabel () {
793 editable_widget = create_editable_widget ();
794@@ -41,28 +41,25 @@
795 case Gdk.Key.Return:
796 case Gdk.Key.KP_Enter:
797 editing_canceled = false;
798- editing_done ();
799- remove_widget ();
800- break;
801+ remove_widget (); /* also causes edited signal to be emitted by CellRenderer */
802+ return true;
803
804 case Gdk.Key.Escape:
805 editing_canceled = true;
806- editing_done ();
807- remove_widget ();
808- break;
809+ remove_widget (); /* also causes edited signal to be emitted by CellRenderer */
810+ return true;
811
812 case Gdk.Key.z:
813- if (control_pressed)
814+ if (control_pressed) {
815 set_text (original_name);
816- else
817- return false;
818-
819+ return true;
820+ }
821 break;
822
823 default:
824- return false;
825+ break;
826 }
827- return true;
828+ return false;
829 }
830
831
832@@ -89,7 +86,6 @@
833
834
835 /** CellEditable interface */
836- /* modified gtk+-3.0.vapi required */
837- public virtual void start_editing (Gdk.Event? event) {}
838+ public virtual void start_editing (Gdk.Event event) {}
839 }
840 }
841
842=== modified file 'src/CMakeLists.txt'
843--- src/CMakeLists.txt 2015-12-02 14:34:10 +0000
844+++ src/CMakeLists.txt 2016-02-14 12:51:24 +0000
845@@ -20,7 +20,7 @@
846 gio-2.0
847 gio-unix-2.0
848 pango>=1.1.2
849- gtk+-3.0>=3.10
850+ gtk+-3.0>=3.14
851 gmodule-2.0
852 gail-3.0
853 gee-0.8
854
855=== modified file 'src/TextRenderer.vala'
856--- src/TextRenderer.vala 2016-01-15 19:53:37 +0000
857+++ src/TextRenderer.vala 2016-02-14 12:51:24 +0000
858@@ -34,7 +34,7 @@
859 int focus_border_width;
860 Pango.Layout layout;
861 Gtk.Widget widget;
862- Marlin.AbstractEditableLabel? entry = null;
863+ public Marlin.AbstractEditableLabel entry;
864
865 public TextRenderer (Marlin.ViewMode viewmode) {
866 this.mode = Gtk.CellRendererMode.EDITABLE;
867@@ -132,13 +132,12 @@
868 text_height = height;
869 }
870
871- /* Needs patched gtk+-3.0.vapi file - incorrect function signature up to version 0.25.4 */
872- public override unowned Gtk.CellEditable? start_editing (Gdk.Event? event,
873- Gtk.Widget widget,
874- string path,
875- Gdk.Rectangle background_area,
876- Gdk.Rectangle cell_area,
877- Gtk.CellRendererState flags) {
878+ public new unowned Gtk.CellEditable? start_editing (Gdk.Event event,
879+ Gtk.Widget widget,
880+ string path,
881+ Gdk.Rectangle background_area,
882+ Gdk.Rectangle cell_area,
883+ Gtk.CellRendererState flags) {
884
885 if (!visible || mode != Gtk.CellRendererMode.EDITABLE)
886 return null;
887
888=== modified file 'src/View/AbstractDirectoryView.vala'
889--- src/View/AbstractDirectoryView.vala 2016-02-10 12:28:03 +0000
890+++ src/View/AbstractDirectoryView.vala 2016-02-14 12:51:24 +0000
891@@ -170,7 +170,6 @@
892
893 /* Rename support */
894 protected Marlin.TextRenderer? name_renderer = null;
895- unowned Marlin.AbstractEditableLabel? editable_widget = null;
896 public string original_name = "";
897 public string proposed_name = "";
898
899@@ -374,7 +373,6 @@
900 if (selected_files == null)
901 set_cursor (new Gtk.TreePath.from_indices (0), false, true, true);
902 }
903-
904 public void select_glib_files (GLib.List<GLib.File> location_list, GLib.File? focus_location) {
905 unselect_all ();
906 GLib.List<GOF.File>? file_list = null;
907@@ -437,6 +435,7 @@
908 clipboard.changed.disconnect (on_clipboard_changed);
909 view.enter_notify_event.disconnect (on_enter_notify_event);
910 view.key_press_event.disconnect (on_view_key_press_event);
911+ slot.directory.block_monitor ();
912 }
913
914 protected void unfreeze_updates () {
915@@ -447,6 +446,7 @@
916 clipboard.changed.connect (on_clipboard_changed);
917 view.enter_notify_event.connect (on_enter_notify_event);
918 view.key_press_event.connect (on_view_key_press_event);
919+ slot.directory.unblock_monitor ();
920 }
921
922 public new void grab_focus () {
923@@ -566,6 +566,15 @@
924 set_cursor (path, false, true, false);
925 }
926
927+ protected void select_and_scroll_to_gof_file (GOF.File file) {
928+ var iter = Gtk.TreeIter ();
929+ if (!model.get_first_iter_for_file (file, out iter))
930+ return; /* file not in model */
931+
932+ var path = model.get_path (iter);
933+ set_cursor (path, false, true, true);
934+ }
935+
936 protected void add_gof_file_to_selection (GOF.File file) {
937 var iter = Gtk.TreeIter ();
938
939@@ -875,30 +884,27 @@
940 Marlin.FileOperations.new_folder (null, null, slot.location, (Marlin.CreateCallback?) create_file_done, this);
941 }
942
943+ private void after_new_file_added (GOF.File? file) {
944+ slot.directory.file_added.disconnect (after_new_file_added);
945+ if (file != null) {
946+ rename_file (file);
947+ }
948+ }
949+
950 protected void rename_file (GOF.File file_to_rename) {
951- var iter = Gtk.TreeIter ();
952- uint count = 0;
953- /* Allow time for the file to appear in the tree model before renaming
954- */
955- GLib.Timeout.add (10, () => {
956- if (model.get_first_iter_for_file (file_to_rename, out iter)) {
957- /* Assume writability on remote locations */
958- /**TODO** Reliably determine writability with various remote protocols.*/
959- if (is_writable || !slot.directory.is_local)
960- start_renaming_file (file_to_rename, false);
961- else
962- warning ("You do not have permission to rename this file");
963- } else if (count < 100) {
964- /* Guard against possible infinite loop */
965- count++;
966- return true;
967- }
968-
969- return false;
970- });
971+ if (renaming) {
972+ warning ("already renaming %s", file_to_rename.basename);
973+ return;
974+ }
975+ /* Assume writability on remote locations */
976+ /**TODO** Reliably determine writability with various remote protocols.*/
977+ if (is_writable || !slot.directory.is_local) {
978+ start_renaming_file (file_to_rename);
979+ } else {
980+ warning ("You do not have permission to rename this file");
981+ }
982 }
983
984-
985 /** File operation callbacks */
986 static void create_file_done (GLib.File? new_file, void* data) {
987 var view = data as FM.AbstractDirectoryView;
988@@ -912,9 +918,8 @@
989 warning ("View invalid after creating file");
990 return;
991 }
992-
993- var file_to_rename = GOF.File.@get (new_file);
994- view.rename_file (file_to_rename); /* will wait for file to appear in model */
995+ /* Start to rename the file once we get signal that it has been added to model */
996+ view.slot.directory.file_added.connect_after (view.after_new_file_added);
997 }
998
999 /** Must pass a pointer to an instance of FM.AbstractDirectoryView as 3rd parameter when
1000@@ -1243,8 +1248,10 @@
1001 }
1002 }
1003
1004- private void on_directory_file_added (GOF.Directory.Async dir, GOF.File file) {
1005- add_file (file, dir);
1006+ private void on_directory_file_added (GOF.Directory.Async dir, GOF.File? file) {
1007+ if (file != null) {
1008+ add_file (file, dir);
1009+ }
1010 }
1011
1012 private void on_directory_file_loaded (GOF.Directory.Async dir, GOF.File file) {
1013@@ -2391,12 +2398,10 @@
1014
1015 protected void block_model () {
1016 model.row_deleted.disconnect (on_row_deleted);
1017- updates_frozen = true;
1018 }
1019
1020 protected void unblock_model () {
1021 model.row_deleted.connect (on_row_deleted);
1022- updates_frozen = false;
1023 }
1024
1025 private void load_thumbnails (GOF.Directory.Async dir, Marlin.ZoomLevel zoom) {
1026@@ -2813,30 +2818,48 @@
1027 }
1028
1029 /** name renderer signals */
1030- protected void on_name_editing_started (Gtk.CellEditable? editable, string path) {
1031- if (renaming)
1032+ protected void on_name_editing_started (Gtk.CellEditable? editable, string path_string) {
1033+ if (renaming) {
1034+ warning ("on_name_edited re-entered");
1035 return;
1036-
1037+ }
1038 renaming = true;
1039- freeze_updates ();
1040- editable_widget = editable as Marlin.AbstractEditableLabel;
1041- original_name = editable_widget.get_text ().dup ();
1042+
1043+ var editable_widget = editable as Gtk.Editable?;
1044+ if (editable_widget != null) {
1045+ original_name = editable_widget.get_chars (0, -1);
1046+ var path = new Gtk.TreePath.from_string (path_string);
1047+ Gtk.TreeIter? iter = null;
1048+ model.get_iter (out iter, path);
1049+ GOF.File? file = null;
1050+ model.@get (iter, FM.ListModel.ColumnID.FILE_COLUMN, out file);
1051+ int start_offset= 0, end_offset = -1;
1052+ /* Select whole name if the file is a folder, otherwise do not select the extension */
1053+ if (!file.is_folder ()) {
1054+ Marlin.get_rename_region (original_name, out start_offset, out end_offset, false);
1055+ }
1056+ editable_widget.select_region (start_offset, end_offset);
1057+ } else {
1058+ warning ("Editable widget is null");
1059+ on_name_editing_canceled ();
1060+ }
1061 }
1062
1063 protected void on_name_editing_canceled () {
1064- if (!renaming)
1065- return;
1066-
1067 renaming = false;
1068 name_renderer.editable = false;
1069+ proposed_name = "";
1070 unfreeze_updates ();
1071 grab_focus ();
1072 }
1073
1074 protected void on_name_edited (string path_string, string new_name) {
1075- if (!renaming)
1076+ /* Must not re-enter */
1077+ if (!renaming || proposed_name == new_name) {
1078+ warning ("on_name_edited re-entered");
1079 return;
1080-
1081+ }
1082+ proposed_name = "";
1083 if (new_name != "") {
1084 var path = new Gtk.TreePath.from_string (path_string);
1085 Gtk.TreeIter? iter = null;
1086@@ -2846,51 +2869,40 @@
1087 model.@get (iter, FM.ListModel.ColumnID.FILE_COLUMN, out file);
1088
1089 /* Only rename if name actually changed */
1090- original_name = file.info.get_name ();
1091+ /* Because GOF.File.rename does not work correctly for remote files we handle ourselves */
1092+
1093 if (new_name != original_name) {
1094 proposed_name = new_name;
1095- file.rename (new_name, (GOF.FileOperationCallback)rename_callback, (void*)this);
1096+ set_file_display_name (file.location, new_name, after_rename);
1097+ } else {
1098+ warning ("Name unchanged");
1099+ on_name_editing_canceled ();
1100 }
1101+ } else {
1102+ warning ("No new name");
1103+ on_name_editing_canceled ();
1104 }
1105-
1106+ /* do not cancel editing here - will be cancelled in rename callback */
1107+ }
1108+
1109+ public void set_file_display_name (GLib.File old_location, string new_name, PF.FileUtils.RenameCallbackFunc? f) {
1110+ /* Wait for the file to be added to the model before trying to select and scroll to it */
1111+ slot.directory.file_added.connect_after (after_renamed_file_added);
1112+ PF.FileUtils.set_file_display_name (old_location, new_name, f);
1113+ }
1114+
1115+ public void after_rename (GLib.File file, GLib.File? result_location, GLib.Error? e) {
1116 on_name_editing_canceled ();
1117- }
1118-
1119-
1120- public static void rename_callback (GOF.File file, GLib.File? result_location, GLib.Error error, void* data) {
1121- FM.AbstractDirectoryView? view = null;
1122- Marlin.View.PropertiesWindow? pw = null;
1123-
1124- var object = (GLib.Object)data;
1125-
1126- if (object is FM.AbstractDirectoryView)
1127- view = (FM.AbstractDirectoryView)data;
1128- else if (object is Marlin.View.PropertiesWindow) {
1129- pw = (Marlin.View.PropertiesWindow)object;
1130- view = pw.view;
1131- }
1132-
1133- assert (view != null);
1134-
1135- if (error != null) {
1136- Eel.show_error_dialog (_("Could not rename to '%s'").printf (view.proposed_name),
1137- error.message,
1138- view.window as Gtk.Window);
1139- } else {
1140- Marlin.UndoManager.instance ().add_rename_action (file.location,
1141- view.original_name);
1142-
1143- view.select_gof_file (file); /* Select and scroll to show renamed file */
1144- }
1145-
1146- if (pw != null) {
1147- if (error == null)
1148- pw.reset_entry_text (file.info.get_name ());
1149- else
1150- pw.reset_entry_text (); //resets entry to old name
1151- }
1152 }
1153
1154+ private void after_renamed_file_added (GOF.File? new_file) {
1155+ slot.directory.file_added.disconnect (after_renamed_file_added);
1156+ /* new_file will be null if rename failed */
1157+ if (new_file != null) {
1158+ select_and_scroll_to_gof_file (new_file);
1159+ }
1160+ }
1161+
1162 public virtual bool on_view_draw (Cairo.Context cr) {
1163 /* If folder is empty, draw the empty message in the middle of the view
1164 * otherwise pass on event */
1165@@ -3158,11 +3170,11 @@
1166 view.style_updated ();
1167 }
1168
1169- private void start_renaming_file (GOF.File file, bool preselect_whole_name) {
1170- /* Select whole name if we are in renaming mode already */
1171- if (renaming)
1172+ private void start_renaming_file (GOF.File file) {
1173+ if (updates_frozen) {
1174+ warning ("Trying to rename when frozen");
1175 return;
1176-
1177+ }
1178 Gtk.TreeIter? iter = null;
1179 if (!model.get_first_iter_for_file (file, out iter)) {
1180 critical ("Failed to find rename file in model");
1181@@ -3171,17 +3183,14 @@
1182
1183 /* Freeze updates to the view to prevent losing rename focus when the tree view updates */
1184 freeze_updates ();
1185-
1186 Gtk.TreePath path = model.get_path (iter);
1187
1188+ uint count = 0;
1189+ bool ok_next_time = false;
1190+ Gtk.TreePath? start_path = null;
1191 /* Scroll to row to be renamed and then start renaming after a delay
1192 * so that file to be renamed is on screen. This avoids the renaming being
1193 * cancelled */
1194- set_cursor (path, false, true, false);
1195- uint count = 0;
1196- Gtk.TreePath? start_path = null;
1197- bool ok_next_time = false;
1198-
1199 GLib.Timeout.add (50, () => {
1200 /* Wait until view stops scrolling before starting to rename (up to 1 second)
1201 * Scrolling is deemed to have stopped when the starting visible path is stable
1202@@ -3200,20 +3209,9 @@
1203 return true;
1204 }
1205
1206- /* set cursor_on_cell also triggers editing-started, where we save the editable widget */
1207+ /* set cursor_on_cell also triggers editing-started */
1208 name_renderer.editable = true;
1209 set_cursor_on_cell (path, name_renderer as Gtk.CellRenderer, true, false);
1210-
1211- if (editable_widget != null) {
1212- int start_offset= 0, end_offset = -1;
1213- if (!file.is_folder ())
1214- Marlin.get_rename_region (original_name, out start_offset, out end_offset, preselect_whole_name);
1215-
1216- editable_widget.select_region (start_offset, end_offset);
1217- } else {
1218- warning ("Editable widget is null");
1219- on_name_editing_canceled ();
1220- }
1221 return false;
1222 });
1223
1224
1225=== modified file 'src/View/IconView.vala'
1226--- src/View/IconView.vala 2016-02-06 15:43:35 +0000
1227+++ src/View/IconView.vala 2016-02-14 12:51:24 +0000
1228@@ -121,15 +121,7 @@
1229 }
1230
1231 public override Gtk.TreePath? get_path_at_pos (int x, int y) {
1232- unowned Gtk.TreePath? path = null;
1233- Gtk.IconViewDropPosition? pos = null;
1234-
1235- /* The next line needs a patched gtk+-3.0.vapi file in order to compile as of valac version 0.25.4
1236- * - the fourth parameter should be an 'out' parameter */
1237- if (x >= 0 && y >= 0 && tree.get_dest_item_at_pos (x, y, out path, out pos))
1238- return path;
1239- else
1240- return null;
1241+ return tree.get_path_at_pos (x, y);
1242 }
1243
1244 public override void select_all () {
1245
1246=== modified file 'src/View/PropertiesWindow.vala'
1247--- src/View/PropertiesWindow.vala 2015-12-05 11:53:34 +0000
1248+++ src/View/PropertiesWindow.vala 2016-02-14 12:51:24 +0000
1249@@ -216,7 +216,7 @@
1250
1251 private uint count;
1252 private GLib.List<GOF.File> files;
1253- private unowned GOF.File goffile;
1254+ private GOF.File goffile;
1255
1256 public FM.AbstractDirectoryView view {get; private set;}
1257 public Gtk.Entry entry {get; private set;}
1258@@ -278,7 +278,7 @@
1259
1260 private uint file_count;
1261
1262- public PropertiesWindow (GLib.List<unowned GOF.File> _files, FM.AbstractDirectoryView _view, Gtk.Window parent) {
1263+ public PropertiesWindow (GLib.List<GOF.File> _files, FM.AbstractDirectoryView _view, Gtk.Window parent) {
1264 base (_("Properties"), parent);
1265
1266 if (_files == null) {
1267@@ -299,7 +299,7 @@
1268 GLib.List.copy() would not guarantee valid references: because it
1269 does a shallow copy (copying the pointer values only) the objects'
1270 memory may be freed even while this code is using it. */
1271- foreach (unowned GOF.File file in _files)
1272+ foreach (GOF.File file in _files)
1273 /* prepend(G) is declared "owned G", so ref() will be called once
1274 on the unowned foreach value. */
1275 files.prepend (file);
1276@@ -489,14 +489,22 @@
1277 if (new_name != "") {
1278 if (new_name != original_name) {
1279 proposed_name = new_name;
1280- file.rename (new_name,
1281- (GOF.FileOperationCallback)(FM.AbstractDirectoryView.rename_callback),
1282- (void*)this);
1283+ view.set_file_display_name (file.location, new_name, after_rename);
1284 }
1285 } else
1286 reset_entry_text ();
1287 }
1288
1289+ private void after_rename (GLib.File original_file, GLib.File? new_location) {
1290+ if (new_location != null) {
1291+ reset_entry_text (new_location.get_basename ());
1292+ goffile = GOF.File.@get (new_location);
1293+ files.first ().data = goffile;
1294+ } else {
1295+ reset_entry_text (); //resets entry to old name
1296+ }
1297+ }
1298+
1299 public void reset_entry_text (string? new_name = null) {
1300 if (new_name != null)
1301 original_name = new_name;
1302
1303=== modified file 'src/View/Sidebar.vala'
1304--- src/View/Sidebar.vala 2015-11-28 09:09:30 +0000
1305+++ src/View/Sidebar.vala 2016-02-14 12:51:24 +0000
1306@@ -160,14 +160,14 @@
1307
1308 var crt = new Gtk.CellRendererText ();
1309 this.indent_renderer = crt;
1310- cab.pack_start(crt, false, false, false);
1311+ cab.pack_start(crt, false);
1312 col.set_cell_data_func (crt, indent_cell_data_func);
1313
1314 var crpb = new Gtk.CellRendererPixbuf ();
1315 this.icon_cell_renderer = crpb;
1316 crpb.follow_state = true;
1317 crpb.stock_size = Gtk.IconSize.MENU;
1318- cab.pack_start(crpb, false, false, false);
1319+ cab.pack_start(crpb, false);
1320 col.set_attributes (crpb, "gicon", Column.ICON);
1321 col.set_cell_data_func (crpb, icon_cell_data_func);
1322
1323@@ -175,7 +175,7 @@
1324 crd.ellipsize = Pango.EllipsizeMode.END;
1325 crd.ellipsize_set = true;
1326 crd.rpad = 12;
1327- cab.pack_start (crd, true, false, false);
1328+ cab.pack_start (crd, true);
1329 col.set_attributes (crd,
1330 "text", Column.NAME,
1331 "visible", Column.EJECT,
1332@@ -188,7 +188,7 @@
1333 crs.icon_size = Gtk.IconSize.MENU;
1334 crs.xpad = 0;
1335 crs.xalign = (float)1.0;
1336- cab.pack_start (crs, false, false, false);
1337+ cab.pack_start (crs, false);
1338 col.set_attributes (crs,
1339 "gicon", Column.EJECT_ICON,
1340 "visible", Column.EJECT,
1341@@ -202,7 +202,7 @@
1342 name_renderer.ellipsize_set = true;
1343 name_renderer.edited.connect (edited);
1344 name_renderer.editing_canceled.connect (editing_canceled);
1345- cab.pack_start (name_renderer,true, false, false);
1346+ cab.pack_start (name_renderer,true);
1347 col.set_attributes (name_renderer,
1348 "text", Column.NAME,
1349 "visible", Column.NO_EJECT,
1350@@ -217,13 +217,13 @@
1351 int exp_size = cre.get_arrow_size (tree_view);
1352 Gtk.icon_size_lookup (Gtk.IconSize.MENU, out eject_button_size, null);
1353 cre.xpad = int.max ((eject_button_size - exp_size)/2, 0);
1354- cab.pack_start (cre, false, false, false);
1355+ cab.pack_start (cre, false);
1356 col.set_cell_data_func (cre, expander_cell_data_func);
1357
1358 crt = new Gtk.CellRendererText ();
1359 crt.xpad = EJECT_BUTTON_XPAD;
1360 crt.xalign = (float)1.0;
1361- cab.pack_start(crt, false, false, false);
1362+ cab.pack_start(crt, false);
1363
1364 tree_view.append_column (col);
1365 tree_view.tooltip_column = Column.TOOLTIP;
1366@@ -646,7 +646,7 @@
1367 * does not return the true root location of the share but the location used
1368 * when creating the mount.
1369 */
1370- string uri = Marlin.get_smb_share_from_uri (root.get_uri ());
1371+ string uri = PF.FileUtils.get_smb_share_from_uri (root.get_uri ());
1372
1373 add_place (Marlin.PlaceType.BUILT_IN,
1374 iter,
1375
1376=== modified file 'src/View/Slot.vala'
1377--- src/View/Slot.vala 2016-01-17 18:04:27 +0000
1378+++ src/View/Slot.vala 2016-02-14 12:51:24 +0000
1379@@ -24,6 +24,9 @@
1380 private int preferred_column_width;
1381 private FM.AbstractDirectoryView? dir_view = null;
1382
1383+ private uint reload_timeout_id = 0;
1384+ private uint path_change_timeout_id = 0;
1385+
1386 protected bool updates_frozen = false;
1387 protected bool original_reload_request = false;
1388 public bool has_autosized = false;
1389@@ -143,14 +146,29 @@
1390 /* ViewContainer listens to this signal takes care of updating appearance
1391 * If allow_mode_change is false View Container will not automagically
1392 * switch to icon view for icon folders (needed for Miller View) */
1393+
1394 dir_view.clear (); /* clear model but do not change directory */
1395+
1396 /* Only need to initialise directory once - the slot that originally received the
1397 * reload request does this */
1398 if (original_reload_request) {
1399+ schedule_reload ();
1400+ original_reload_request = false;
1401+ }
1402+ }
1403+ }
1404+
1405+ private void schedule_reload () {
1406+ /* Allow time for other slots showing this directory to prepare for reload */
1407+ if (reload_timeout_id > 0) {
1408+ warning ("Path change request received too rapidly");
1409+ return;
1410+ }
1411+ reload_timeout_id = Timeout.add (50, ()=> {
1412 directory.reload ();
1413- original_reload_request = false;
1414- }
1415- }
1416+ reload_timeout_id = 0;
1417+ return false;
1418+ });
1419 }
1420
1421 private void set_up_directory (GLib.File loc) {
1422@@ -169,8 +187,13 @@
1423 }
1424
1425 private void schedule_path_change_request (GLib.File loc, int flag, bool make_root) {
1426- GLib.Timeout.add (20, () => {
1427+ if (path_change_timeout_id > 0) {
1428+ warning ("Path change request received too rapidly");
1429+ return;
1430+ }
1431+ path_change_timeout_id = GLib.Timeout.add (20, () => {
1432 on_path_change_request (loc, flag, make_root);
1433+ path_change_timeout_id = 0;
1434 return false;
1435 });
1436 }
1437@@ -343,6 +366,8 @@
1438 }
1439
1440 public override void cancel () {
1441+ cancel_timeouts ();
1442+
1443 if (directory != null)
1444 directory.cancel ();
1445
1446@@ -381,5 +406,17 @@
1447 return null;
1448 }
1449 }
1450+
1451+ private void cancel_timeouts () {
1452+ cancel_timeout (ref reload_timeout_id);
1453+ cancel_timeout (ref path_change_timeout_id);
1454+ }
1455+
1456+ private void cancel_timeout (ref uint id) {
1457+ if (id > 0) {
1458+ Source.remove (id);
1459+ id = 0;
1460+ }
1461+ }
1462 }
1463 }
1464
1465=== modified file 'src/View/Window.vala'
1466--- src/View/Window.vala 2016-02-11 11:12:03 +0000
1467+++ src/View/Window.vala 2016-02-14 12:51:24 +0000
1468@@ -500,9 +500,10 @@
1469
1470 private void action_reload () {
1471 /* avoid spawning reload when key kept pressed */
1472- if (tabs.current.working)
1473+ if (tabs.current.working) {
1474+ warning ("Too rapid reloading suppressed");
1475 return;
1476-
1477+ }
1478 current_tab.reload ();
1479 sidebar.reload ();
1480 }
1481@@ -636,7 +637,7 @@
1482
1483 public static void after_undo_redo (void *data) {
1484 var window = data as Marlin.View.Window;
1485- if (!window.current_tab.slot.directory.is_local || window.current_tab.slot.directory.is_recent)
1486+ if (window.current_tab.slot.directory.is_recent)
1487 window.current_tab.reload ();
1488 }
1489
1490@@ -716,7 +717,7 @@
1491 return (Marlin.ViewMode)(Preferences.settings.get_enum ("default-viewmode"));
1492 }
1493
1494- public GLib.SimpleActionGroup get_action_group () {
1495+ public new GLib.SimpleActionGroup get_action_group () {
1496 return this.win_actions;
1497 }
1498
1499
1500=== removed file 'src/gtk+-3.0.deps'
1501--- src/gtk+-3.0.deps 2014-09-11 17:01:07 +0000
1502+++ src/gtk+-3.0.deps 1970-01-01 00:00:00 +0000
1503@@ -1,7 +0,0 @@
1504-gio-2.0
1505-atk
1506-cairo
1507-gdk-pixbuf-2.0
1508-gdk-3.0
1509-pango
1510-x11
1511
1512=== removed file 'src/gtk+-3.0.vapi'
1513--- src/gtk+-3.0.vapi 2014-12-23 19:22:59 +0000
1514+++ src/gtk+-3.0.vapi 1970-01-01 00:00:00 +0000
1515@@ -1,9713 +0,0 @@
1516-/* gtk+-3.0.vapi generated by vapigen, do not modify. */
1517-
1518-[CCode (cprefix = "Gtk", gir_namespace = "Gtk", gir_version = "3.0", lower_case_cprefix = "gtk_")]
1519-namespace Gtk {
1520- [Deprecated (since = "3.10")]
1521- namespace Stock {
1522- [CCode (cheader_filename = "gtk/gtk.h")]
1523- public const string ABOUT;
1524- [CCode (cheader_filename = "gtk/gtk.h")]
1525- public const string ADD;
1526- [CCode (cheader_filename = "gtk/gtk.h")]
1527- public const string APPLY;
1528- [CCode (cheader_filename = "gtk/gtk.h")]
1529- public const string BOLD;
1530- [CCode (cheader_filename = "gtk/gtk.h")]
1531- public const string CANCEL;
1532- [CCode (cheader_filename = "gtk/gtk.h")]
1533- public const string CAPS_LOCK_WARNING;
1534- [CCode (cheader_filename = "gtk/gtk.h")]
1535- public const string CDROM;
1536- [CCode (cheader_filename = "gtk/gtk.h")]
1537- public const string CLEAR;
1538- [CCode (cheader_filename = "gtk/gtk.h")]
1539- public const string CLOSE;
1540- [CCode (cheader_filename = "gtk/gtk.h")]
1541- public const string COLOR_PICKER;
1542- [CCode (cheader_filename = "gtk/gtk.h")]
1543- public const string CONNECT;
1544- [CCode (cheader_filename = "gtk/gtk.h")]
1545- public const string CONVERT;
1546- [CCode (cheader_filename = "gtk/gtk.h")]
1547- public const string COPY;
1548- [CCode (cheader_filename = "gtk/gtk.h")]
1549- public const string CUT;
1550- [CCode (cheader_filename = "gtk/gtk.h")]
1551- public const string DELETE;
1552- [CCode (cheader_filename = "gtk/gtk.h")]
1553- public const string DIALOG_AUTHENTICATION;
1554- [CCode (cheader_filename = "gtk/gtk.h")]
1555- public const string DIALOG_ERROR;
1556- [CCode (cheader_filename = "gtk/gtk.h")]
1557- public const string DIALOG_INFO;
1558- [CCode (cheader_filename = "gtk/gtk.h")]
1559- public const string DIALOG_QUESTION;
1560- [CCode (cheader_filename = "gtk/gtk.h")]
1561- public const string DIALOG_WARNING;
1562- [CCode (cheader_filename = "gtk/gtk.h")]
1563- public const string DIRECTORY;
1564- [CCode (cheader_filename = "gtk/gtk.h")]
1565- public const string DISCARD;
1566- [CCode (cheader_filename = "gtk/gtk.h")]
1567- public const string DISCONNECT;
1568- [CCode (cheader_filename = "gtk/gtk.h")]
1569- public const string DND;
1570- [CCode (cheader_filename = "gtk/gtk.h")]
1571- public const string DND_MULTIPLE;
1572- [CCode (cheader_filename = "gtk/gtk.h")]
1573- public const string EDIT;
1574- [CCode (cheader_filename = "gtk/gtk.h")]
1575- public const string EXECUTE;
1576- [CCode (cheader_filename = "gtk/gtk.h")]
1577- public const string FILE;
1578- [CCode (cheader_filename = "gtk/gtk.h")]
1579- public const string FIND;
1580- [CCode (cheader_filename = "gtk/gtk.h")]
1581- public const string FIND_AND_REPLACE;
1582- [CCode (cheader_filename = "gtk/gtk.h")]
1583- public const string FLOPPY;
1584- [CCode (cheader_filename = "gtk/gtk.h")]
1585- public const string FULLSCREEN;
1586- [CCode (cheader_filename = "gtk/gtk.h")]
1587- public const string GOTO_BOTTOM;
1588- [CCode (cheader_filename = "gtk/gtk.h")]
1589- public const string GOTO_FIRST;
1590- [CCode (cheader_filename = "gtk/gtk.h")]
1591- public const string GOTO_LAST;
1592- [CCode (cheader_filename = "gtk/gtk.h")]
1593- public const string GOTO_TOP;
1594- [CCode (cheader_filename = "gtk/gtk.h")]
1595- public const string GO_BACK;
1596- [CCode (cheader_filename = "gtk/gtk.h")]
1597- public const string GO_DOWN;
1598- [CCode (cheader_filename = "gtk/gtk.h")]
1599- public const string GO_FORWARD;
1600- [CCode (cheader_filename = "gtk/gtk.h")]
1601- public const string GO_UP;
1602- [CCode (cheader_filename = "gtk/gtk.h")]
1603- public const string HARDDISK;
1604- [CCode (cheader_filename = "gtk/gtk.h")]
1605- public const string HELP;
1606- [CCode (cheader_filename = "gtk/gtk.h")]
1607- public const string HOME;
1608- [CCode (cheader_filename = "gtk/gtk.h")]
1609- public const string INDENT;
1610- [CCode (cheader_filename = "gtk/gtk.h")]
1611- public const string INDEX;
1612- [CCode (cheader_filename = "gtk/gtk.h")]
1613- public const string INFO;
1614- [CCode (cheader_filename = "gtk/gtk.h")]
1615- public const string ITALIC;
1616- [CCode (cheader_filename = "gtk/gtk.h")]
1617- public const string JUMP_TO;
1618- [CCode (cheader_filename = "gtk/gtk.h")]
1619- public const string JUSTIFY_CENTER;
1620- [CCode (cheader_filename = "gtk/gtk.h")]
1621- public const string JUSTIFY_FILL;
1622- [CCode (cheader_filename = "gtk/gtk.h")]
1623- public const string JUSTIFY_LEFT;
1624- [CCode (cheader_filename = "gtk/gtk.h")]
1625- public const string JUSTIFY_RIGHT;
1626- [CCode (cheader_filename = "gtk/gtk.h")]
1627- public const string LEAVE_FULLSCREEN;
1628- [CCode (cheader_filename = "gtk/gtk.h")]
1629- public const string MEDIA_FORWARD;
1630- [CCode (cheader_filename = "gtk/gtk.h")]
1631- public const string MEDIA_NEXT;
1632- [CCode (cheader_filename = "gtk/gtk.h")]
1633- public const string MEDIA_PAUSE;
1634- [CCode (cheader_filename = "gtk/gtk.h")]
1635- public const string MEDIA_PLAY;
1636- [CCode (cheader_filename = "gtk/gtk.h")]
1637- public const string MEDIA_PREVIOUS;
1638- [CCode (cheader_filename = "gtk/gtk.h")]
1639- public const string MEDIA_RECORD;
1640- [CCode (cheader_filename = "gtk/gtk.h")]
1641- public const string MEDIA_REWIND;
1642- [CCode (cheader_filename = "gtk/gtk.h")]
1643- public const string MEDIA_STOP;
1644- [CCode (cheader_filename = "gtk/gtk.h")]
1645- public const string MISSING_IMAGE;
1646- [CCode (cheader_filename = "gtk/gtk.h")]
1647- public const string NETWORK;
1648- [CCode (cheader_filename = "gtk/gtk.h")]
1649- public const string NEW;
1650- [CCode (cheader_filename = "gtk/gtk.h")]
1651- public const string NO;
1652- [CCode (cheader_filename = "gtk/gtk.h")]
1653- public const string OK;
1654- [CCode (cheader_filename = "gtk/gtk.h")]
1655- public const string OPEN;
1656- [CCode (cheader_filename = "gtk/gtk.h")]
1657- public const string ORIENTATION_LANDSCAPE;
1658- [CCode (cheader_filename = "gtk/gtk.h")]
1659- public const string ORIENTATION_PORTRAIT;
1660- [CCode (cheader_filename = "gtk/gtk.h")]
1661- public const string ORIENTATION_REVERSE_LANDSCAPE;
1662- [CCode (cheader_filename = "gtk/gtk.h")]
1663- public const string ORIENTATION_REVERSE_PORTRAIT;
1664- [CCode (cheader_filename = "gtk/gtk.h")]
1665- public const string PAGE_SETUP;
1666- [CCode (cheader_filename = "gtk/gtk.h")]
1667- public const string PASTE;
1668- [CCode (cheader_filename = "gtk/gtk.h")]
1669- public const string PREFERENCES;
1670- [CCode (cheader_filename = "gtk/gtk.h")]
1671- public const string PRINT;
1672- [CCode (cheader_filename = "gtk/gtk.h")]
1673- public const string PRINT_ERROR;
1674- [CCode (cheader_filename = "gtk/gtk.h")]
1675- public const string PRINT_PAUSED;
1676- [CCode (cheader_filename = "gtk/gtk.h")]
1677- public const string PRINT_PREVIEW;
1678- [CCode (cheader_filename = "gtk/gtk.h")]
1679- public const string PRINT_REPORT;
1680- [CCode (cheader_filename = "gtk/gtk.h")]
1681- public const string PRINT_WARNING;
1682- [CCode (cheader_filename = "gtk/gtk.h")]
1683- public const string PROPERTIES;
1684- [CCode (cheader_filename = "gtk/gtk.h")]
1685- public const string QUIT;
1686- [CCode (cheader_filename = "gtk/gtk.h")]
1687- public const string REDO;
1688- [CCode (cheader_filename = "gtk/gtk.h")]
1689- public const string REFRESH;
1690- [CCode (cheader_filename = "gtk/gtk.h")]
1691- public const string REMOVE;
1692- [CCode (cheader_filename = "gtk/gtk.h")]
1693- public const string REVERT_TO_SAVED;
1694- [CCode (cheader_filename = "gtk/gtk.h")]
1695- public const string SAVE;
1696- [CCode (cheader_filename = "gtk/gtk.h")]
1697- public const string SAVE_AS;
1698- [CCode (cheader_filename = "gtk/gtk.h")]
1699- public const string SELECT_ALL;
1700- [CCode (cheader_filename = "gtk/gtk.h")]
1701- public const string SELECT_COLOR;
1702- [CCode (cheader_filename = "gtk/gtk.h")]
1703- public const string SELECT_FONT;
1704- [CCode (cheader_filename = "gtk/gtk.h")]
1705- public const string SORT_ASCENDING;
1706- [CCode (cheader_filename = "gtk/gtk.h")]
1707- public const string SORT_DESCENDING;
1708- [CCode (cheader_filename = "gtk/gtk.h")]
1709- public const string SPELL_CHECK;
1710- [CCode (cheader_filename = "gtk/gtk.h")]
1711- public const string STOP;
1712- [CCode (cheader_filename = "gtk/gtk.h")]
1713- public const string STRIKETHROUGH;
1714- [CCode (cheader_filename = "gtk/gtk.h")]
1715- public const string UNDELETE;
1716- [CCode (cheader_filename = "gtk/gtk.h")]
1717- public const string UNDERLINE;
1718- [CCode (cheader_filename = "gtk/gtk.h")]
1719- public const string UNDO;
1720- [CCode (cheader_filename = "gtk/gtk.h")]
1721- public const string UNINDENT;
1722- [CCode (cheader_filename = "gtk/gtk.h")]
1723- public const string YES;
1724- [CCode (cheader_filename = "gtk/gtk.h")]
1725- public const string ZOOM_100;
1726- [CCode (cheader_filename = "gtk/gtk.h")]
1727- public const string ZOOM_FIT;
1728- [CCode (cheader_filename = "gtk/gtk.h")]
1729- public const string ZOOM_IN;
1730- [CCode (cheader_filename = "gtk/gtk.h")]
1731- public const string ZOOM_OUT;
1732- [CCode (cheader_filename = "gtk/gtk.h")]
1733- public static void add (Gtk.StockItem[] items);
1734- [CCode (cheader_filename = "gtk/gtk.h")]
1735- public static void add_static (Gtk.StockItem[] items);
1736- [CCode (cheader_filename = "gtk/gtk.h")]
1737- public static GLib.SList<string> list_ids ();
1738- [CCode (cheader_filename = "gtk/gtk.h")]
1739- public static bool lookup (string stock_id, out Gtk.StockItem item);
1740- [CCode (cheader_filename = "gtk/gtk.h")]
1741- public static void set_translate_func (string domain, owned Gtk.TranslateFunc func);
1742- }
1743- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_about_dialog_get_type ()")]
1744- public class AboutDialog : Gtk.Dialog, Atk.Implementor, Gtk.Buildable {
1745- [CCode (has_construct_function = false, type = "GtkWidget*")]
1746- public AboutDialog ();
1747- public void add_credit_section (string section_name, [CCode (array_length = false, array_null_terminated = true)] string[] people);
1748- [CCode (array_length = false, array_null_terminated = true)]
1749- public unowned string[] get_artists ();
1750- [CCode (array_length = false, array_null_terminated = true)]
1751- public unowned string[] get_authors ();
1752- public unowned string get_comments ();
1753- public unowned string get_copyright ();
1754- [CCode (array_length = false, array_null_terminated = true)]
1755- public unowned string[] get_documenters ();
1756- public unowned string get_license ();
1757- public Gtk.License get_license_type ();
1758- public unowned Gdk.Pixbuf get_logo ();
1759- public unowned string get_logo_icon_name ();
1760- public unowned string get_program_name ();
1761- public unowned string get_translator_credits ();
1762- public unowned string get_version ();
1763- public unowned string get_website ();
1764- public unowned string get_website_label ();
1765- public bool get_wrap_license ();
1766- public void set_artists ([CCode (array_length = false, array_null_terminated = true)] string[] artists);
1767- public void set_authors ([CCode (array_length = false, array_null_terminated = true)] string[] authors);
1768- public void set_comments (string comments);
1769- public void set_copyright (string copyright);
1770- public void set_documenters ([CCode (array_length = false, array_null_terminated = true)] string[] documenters);
1771- public void set_license (string license);
1772- public void set_license_type (Gtk.License license_type);
1773- public void set_logo (Gdk.Pixbuf logo);
1774- public void set_logo_icon_name (string icon_name);
1775- public void set_program_name (string name);
1776- public void set_translator_credits (string translator_credits);
1777- public void set_version (string version);
1778- public void set_website (string website);
1779- public void set_website_label (string website_label);
1780- public void set_wrap_license (bool wrap_license);
1781- [CCode (array_length = false, array_null_terminated = true)]
1782- public string[] artists { get; set; }
1783- [CCode (array_length = false, array_null_terminated = true)]
1784- public string[] authors { get; set; }
1785- public string comments { get; set; }
1786- public string copyright { get; set; }
1787- [CCode (array_length = false, array_null_terminated = true)]
1788- public string[] documenters { get; set; }
1789- public string license { get; set; }
1790- public Gtk.License license_type { get; set; }
1791- public Gdk.Pixbuf logo { get; set; }
1792- public string logo_icon_name { get; set; }
1793- public string program_name { get; set; }
1794- public string translator_credits { get; set; }
1795- public string version { get; set; }
1796- public string website { get; set; }
1797- public string website_label { get; set; }
1798- public bool wrap_license { get; set; }
1799- public virtual signal bool activate_link (string uri);
1800- }
1801- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_accel_group_get_type ()")]
1802- public class AccelGroup : GLib.Object {
1803- [CCode (has_construct_function = false)]
1804- public AccelGroup ();
1805- public bool activate (GLib.Quark accel_quark, GLib.Object acceleratable, uint accel_key, Gdk.ModifierType accel_mods);
1806- public void connect (uint accel_key, Gdk.ModifierType accel_mods, Gtk.AccelFlags accel_flags, [CCode (type = "GClosure*")] owned Gtk.AccelGroupActivate closure);
1807- public void connect_by_path (string accel_path, [CCode (type = "GClosure*")] owned Gtk.AccelGroupActivate closure);
1808- public bool disconnect (GLib.Closure closure);
1809- public bool disconnect_key (uint accel_key, Gdk.ModifierType accel_mods);
1810- public Gtk.AccelKey* find (Gtk.AccelGroupFindFunc find_func);
1811- public static unowned Gtk.AccelGroup from_accel_closure (GLib.Closure closure);
1812- public bool get_is_locked ();
1813- public Gdk.ModifierType get_modifier_mask ();
1814- public void @lock ();
1815- [CCode (array_length_type = "guint")]
1816- public unowned Gtk.AccelGroupEntry[] query (uint accel_key, Gdk.ModifierType accel_mods);
1817- public void unlock ();
1818- public bool is_locked { get; }
1819- public Gdk.ModifierType modifier_mask { get; }
1820- public virtual signal bool accel_activate (GLib.Object p0, uint p1, Gdk.ModifierType p2);
1821- public virtual signal void accel_changed (uint keyval, Gdk.ModifierType modifier, GLib.Closure accel_closure);
1822- }
1823- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_accel_label_get_type ()")]
1824- public class AccelLabel : Gtk.Label, Atk.Implementor, Gtk.Buildable {
1825- [CCode (has_construct_function = false, type = "GtkWidget*")]
1826- public AccelLabel (string str);
1827- public void get_accel (out uint accelerator_key, out Gdk.ModifierType accelerator_mods);
1828- public unowned Gtk.Widget get_accel_widget ();
1829- public uint get_accel_width ();
1830- public bool refetch ();
1831- public void set_accel (uint accelerator_key, Gdk.ModifierType accelerator_mods);
1832- public void set_accel_closure ([CCode (type = "GClosure*")] owned Gtk.AccelGroupActivate accel_closure);
1833- public void set_accel_widget (Gtk.Widget accel_widget);
1834- [NoAccessorMethod]
1835- public GLib.Closure accel_closure { owned get; set; }
1836- public Gtk.Widget accel_widget { get; set; }
1837- }
1838- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_accel_map_get_type ()")]
1839- public class AccelMap : GLib.Object {
1840- [CCode (has_construct_function = false)]
1841- protected AccelMap ();
1842- public static void add_entry (string accel_path, uint accel_key, Gdk.ModifierType accel_mods);
1843- public static void add_filter (string filter_pattern);
1844- public static bool change_entry (string accel_path, uint accel_key, Gdk.ModifierType accel_mods, bool replace);
1845- public static void @foreach (void* data, Gtk.AccelMapForeach foreach_func);
1846- public static void foreach_unfiltered (void* data, Gtk.AccelMapForeach foreach_func);
1847- public static unowned Gtk.AccelMap @get ();
1848- public static void load (string file_name);
1849- public static void load_fd (int fd);
1850- public static void load_scanner (GLib.Scanner scanner);
1851- public static void lock_path (string accel_path);
1852- public static bool lookup_entry (string accel_path, out Gtk.AccelKey key);
1853- public static void save (string file_name);
1854- public static void save_fd (int fd);
1855- public static void unlock_path (string accel_path);
1856- public virtual signal void changed (string p0, uint p1, Gdk.ModifierType p2);
1857- }
1858- [CCode (cheader_filename = "gtk/gtk.h")]
1859- [Compact]
1860- public class AccelMapClass {
1861- }
1862- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_accessible_get_type ()")]
1863- public class Accessible : Atk.Object {
1864- [CCode (has_construct_function = false)]
1865- protected Accessible ();
1866- [Deprecated (replacement = "Accessible.set_widget", since = "3.4")]
1867- public virtual void connect_widget_destroyed ();
1868- public unowned Gtk.Widget get_widget ();
1869- public void set_widget (Gtk.Widget widget);
1870- [NoWrapper]
1871- public virtual void widget_set ();
1872- [NoWrapper]
1873- public virtual void widget_unset ();
1874- public Gtk.Widget widget { get; set; }
1875- }
1876- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_action_get_type ()")]
1877- [Deprecated (replacement = "GLib.Action", since = "3.10")]
1878- public class Action : GLib.Object, Gtk.Buildable {
1879- [CCode (has_construct_function = false)]
1880- public Action (string name, string? label, string? tooltip, string? stock_id);
1881- public void block_activate ();
1882- public void connect_accelerator ();
1883- [NoWrapper]
1884- public virtual void connect_proxy (Gtk.Widget proxy);
1885- public unowned Gtk.Widget create_icon (Gtk.IconSize icon_size);
1886- public virtual unowned Gtk.Widget create_menu ();
1887- public virtual unowned Gtk.Widget create_menu_item ();
1888- public virtual unowned Gtk.Widget create_tool_item ();
1889- public void disconnect_accelerator ();
1890- [NoWrapper]
1891- public virtual void disconnect_proxy (Gtk.Widget proxy);
1892- public unowned GLib.Closure get_accel_closure ();
1893- public unowned string get_accel_path ();
1894- public bool get_always_show_image ();
1895- public unowned GLib.Icon get_gicon ();
1896- public unowned string get_icon_name ();
1897- public bool get_is_important ();
1898- public unowned string get_label ();
1899- public unowned GLib.SList<Gtk.Widget> get_proxies ();
1900- public bool get_sensitive ();
1901- public unowned string get_short_label ();
1902- public unowned string get_stock_id ();
1903- public unowned string get_tooltip ();
1904- public bool get_visible ();
1905- public bool get_visible_horizontal ();
1906- public bool get_visible_vertical ();
1907- public bool is_sensitive ();
1908- public bool is_visible ();
1909- public void set_accel_group (Gtk.AccelGroup accel_group);
1910- public void set_accel_path (string accel_path);
1911- public void set_always_show_image (bool always_show);
1912- public void set_gicon (GLib.Icon icon);
1913- public void set_icon_name (string icon_name);
1914- public void set_is_important (bool is_important);
1915- public void set_label (string label);
1916- public void set_sensitive (bool sensitive);
1917- public void set_short_label (string short_label);
1918- public void set_stock_id (string stock_id);
1919- public void set_tooltip (string tooltip);
1920- public void set_visible (bool visible);
1921- public void set_visible_horizontal (bool visible_horizontal);
1922- public void set_visible_vertical (bool visible_vertical);
1923- public void unblock_activate ();
1924- [NoAccessorMethod]
1925- public Gtk.ActionGroup action_group { owned get; set; }
1926- public bool always_show_image { get; set construct; }
1927- public GLib.Icon gicon { get; set; }
1928- [NoAccessorMethod]
1929- public bool hide_if_empty { get; set; }
1930- public string icon_name { get; set; }
1931- public bool is_important { get; set; }
1932- public string label { get; set; }
1933- public string name { get; construct; }
1934- public bool sensitive { get; set; }
1935- public string short_label { get; set; }
1936- public string stock_id { get; set; }
1937- public string tooltip { get; set; }
1938- public bool visible { get; set; }
1939- public bool visible_horizontal { get; set; }
1940- [NoAccessorMethod]
1941- public bool visible_overflown { get; set; }
1942- public bool visible_vertical { get; set; }
1943- [HasEmitter]
1944- public virtual signal void activate ();
1945- }
1946- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_action_bar_get_type ()")]
1947- public class ActionBar : Gtk.Bin, Atk.Implementor, Gtk.Buildable {
1948- [CCode (has_construct_function = false, type = "GtkWidget*")]
1949- public ActionBar ();
1950- public unowned Gtk.Widget get_center_widget ();
1951- public void pack_end (Gtk.Widget child);
1952- public void pack_start (Gtk.Widget child);
1953- public void set_center_widget (Gtk.Widget? center_widget);
1954- }
1955- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_action_group_get_type ()")]
1956- [Deprecated (since = "3.10")]
1957- public class ActionGroup : GLib.Object, Gtk.Buildable {
1958- [CCode (has_construct_function = false)]
1959- public ActionGroup (string name);
1960- public void add_action (Gtk.Action action);
1961- public void add_action_with_accel (Gtk.Action action, string? accelerator);
1962- public void add_actions (Gtk.ActionEntry[] entries, void* user_data);
1963- public void add_actions_full (Gtk.ActionEntry[] entries, void* user_data, GLib.DestroyNotify? destroy);
1964- public void add_radio_actions (Gtk.RadioActionEntry[] entries, int value, [CCode (type = "GCallback")] Gtk.RadioActionCallback on_change);
1965- public void add_radio_actions_full (Gtk.RadioActionEntry[] entries, int value, [CCode (type = "GCallback")] Gtk.RadioActionCallback on_change, GLib.DestroyNotify? destroy);
1966- public void add_toggle_actions (Gtk.ToggleActionEntry[] entries, void* user_data);
1967- public void add_toggle_actions_full (Gtk.ToggleActionEntry[] entries, void* user_data, GLib.DestroyNotify? destroy);
1968- public unowned Gtk.AccelGroup get_accel_group ();
1969- public virtual unowned Gtk.Action get_action (string action_name);
1970- public bool get_sensitive ();
1971- public bool get_visible ();
1972- public GLib.List<weak Gtk.Action> list_actions ();
1973- public void remove_action (Gtk.Action action);
1974- public void set_accel_group (Gtk.AccelGroup accel_group);
1975- public void set_sensitive (bool sensitive);
1976- public void set_translate_func (owned Gtk.TranslateFunc func);
1977- public void set_translation_domain (string domain);
1978- public void set_visible (bool visible);
1979- public unowned string translate_string (string str);
1980- public Gtk.AccelGroup accel_group { get; set; }
1981- public string name { get; construct; }
1982- public bool sensitive { get; set; }
1983- public bool visible { get; set; }
1984- public virtual signal void connect_proxy (Gtk.Action p0, Gtk.Widget p1);
1985- public virtual signal void disconnect_proxy (Gtk.Action p0, Gtk.Widget p1);
1986- public virtual signal void post_activate (Gtk.Action p0);
1987- public virtual signal void pre_activate (Gtk.Action p0);
1988- }
1989- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_adjustment_get_type ()")]
1990- public class Adjustment : GLib.InitiallyUnowned {
1991- [CCode (has_construct_function = false)]
1992- public Adjustment (double value, double lower, double upper, double step_increment, double page_increment, double page_size);
1993- public void clamp_page (double lower, double upper);
1994- public void configure (double value, double lower, double upper, double step_increment, double page_increment, double page_size);
1995- public double get_lower ();
1996- public double get_minimum_increment ();
1997- public double get_page_increment ();
1998- public double get_page_size ();
1999- public double get_step_increment ();
2000- public double get_upper ();
2001- public double get_value ();
2002- public void set_lower (double lower);
2003- public void set_page_increment (double page_increment);
2004- public void set_page_size (double page_size);
2005- public void set_step_increment (double step_increment);
2006- public void set_upper (double upper);
2007- public void set_value (double value);
2008- public double lower { get; set; }
2009- public double page_increment { get; set; }
2010- public double page_size { get; set; }
2011- public double step_increment { get; set; }
2012- public double upper { get; set; }
2013- public double value { get; set; }
2014- [HasEmitter]
2015- public virtual signal void changed ();
2016- [HasEmitter]
2017- public virtual signal void value_changed ();
2018- }
2019- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_alignment_get_type ()")]
2020- public class Alignment : Gtk.Bin, Atk.Implementor, Gtk.Buildable {
2021- [CCode (has_construct_function = false, type = "GtkWidget*")]
2022- public Alignment (float xalign, float yalign, float xscale, float yscale);
2023- public void get_padding (out uint padding_top, out uint padding_bottom, out uint padding_left, out uint padding_right);
2024- public void @set (float xalign, float yalign, float xscale, float yscale);
2025- public void set_padding (uint padding_top, uint padding_bottom, uint padding_left, uint padding_right);
2026- [NoAccessorMethod]
2027- public uint bottom_padding { get; set; }
2028- [NoAccessorMethod]
2029- public uint left_padding { get; set; }
2030- [NoAccessorMethod]
2031- public uint right_padding { get; set; }
2032- [NoAccessorMethod]
2033- public uint top_padding { get; set; }
2034- [NoAccessorMethod]
2035- public float xalign { get; set; }
2036- [NoAccessorMethod]
2037- public float xscale { get; set; }
2038- [NoAccessorMethod]
2039- public float yalign { get; set; }
2040- [NoAccessorMethod]
2041- public float yscale { get; set; }
2042- }
2043- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_app_chooser_button_get_type ()")]
2044- public class AppChooserButton : Gtk.ComboBox, Atk.Implementor, Gtk.Buildable, Gtk.CellLayout, Gtk.CellEditable, Gtk.AppChooser {
2045- [CCode (has_construct_function = false, type = "GtkWidget*")]
2046- public AppChooserButton (string content_type);
2047- public void append_custom_item (string name, string label, GLib.Icon icon);
2048- public void append_separator ();
2049- public unowned string get_heading ();
2050- public bool get_show_default_item ();
2051- public bool get_show_dialog_item ();
2052- public void set_active_custom_item (string name);
2053- public void set_heading (string heading);
2054- public void set_show_default_item (bool setting);
2055- public void set_show_dialog_item (bool setting);
2056- public string heading { get; set; }
2057- public bool show_default_item { get; set construct; }
2058- public bool show_dialog_item { get; set construct; }
2059- public virtual signal void custom_item_activated (string item_name);
2060- }
2061- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_app_chooser_dialog_get_type ()")]
2062- public class AppChooserDialog : Gtk.Dialog, Atk.Implementor, Gtk.Buildable, Gtk.AppChooser {
2063- [CCode (has_construct_function = false, type = "GtkWidget*")]
2064- public AppChooserDialog (Gtk.Window parent, Gtk.DialogFlags flags, GLib.File file);
2065- [CCode (has_construct_function = false, type = "GtkWidget*")]
2066- public AppChooserDialog.for_content_type (Gtk.Window parent, Gtk.DialogFlags flags, string content_type);
2067- public unowned string get_heading ();
2068- public unowned Gtk.Widget get_widget ();
2069- public void set_heading (string heading);
2070- [NoAccessorMethod]
2071- public GLib.File gfile { owned get; construct; }
2072- public string heading { get; set; }
2073- }
2074- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_app_chooser_widget_get_type ()")]
2075- public class AppChooserWidget : Gtk.Box, Atk.Implementor, Gtk.Buildable, Gtk.Orientable, Gtk.AppChooser {
2076- [CCode (has_construct_function = false, type = "GtkWidget*")]
2077- public AppChooserWidget (string content_type);
2078- public unowned string get_default_text ();
2079- public bool get_show_all ();
2080- public bool get_show_default ();
2081- public bool get_show_fallback ();
2082- public bool get_show_other ();
2083- public bool get_show_recommended ();
2084- public void set_default_text (string text);
2085- public void set_show_all (bool setting);
2086- public void set_show_default (bool setting);
2087- public void set_show_fallback (bool setting);
2088- public void set_show_other (bool setting);
2089- public void set_show_recommended (bool setting);
2090- public string default_text { get; set; }
2091- public bool show_all { get; set construct; }
2092- public bool show_default { get; set construct; }
2093- public bool show_fallback { get; set construct; }
2094- public bool show_other { get; set construct; }
2095- public bool show_recommended { get; set construct; }
2096- public virtual signal void application_activated (GLib.AppInfo app_info);
2097- public virtual signal void application_selected (GLib.AppInfo app_info);
2098- public virtual signal void populate_popup (Gtk.Menu menu, GLib.AppInfo app_info);
2099- }
2100- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_application_get_type ()")]
2101- public class Application : GLib.Application, GLib.ActionGroup, GLib.ActionMap {
2102- [CCode (has_construct_function = false)]
2103- public Application (string application_id, GLib.ApplicationFlags flags);
2104- public void add_accelerator (string accelerator, string action_name, GLib.Variant? parameter);
2105- public void add_window (Gtk.Window window);
2106- [CCode (array_length = false, array_null_terminated = true)]
2107- public string[] get_accels_for_action (string detailed_action_name);
2108- [CCode (array_length = false, array_null_terminated = true)]
2109- public string[] get_actions_for_accel (string accel);
2110- public unowned Gtk.Window get_active_window ();
2111- public unowned GLib.MenuModel get_app_menu ();
2112- public unowned GLib.Menu get_menu_by_id (string id);
2113- public unowned GLib.MenuModel get_menubar ();
2114- public unowned Gtk.Window get_window_by_id (uint id);
2115- public unowned GLib.List<weak Gtk.Window> get_windows ();
2116- public uint inhibit (Gtk.Window? window, Gtk.ApplicationInhibitFlags flags, string? reason);
2117- public bool is_inhibited (Gtk.ApplicationInhibitFlags flags);
2118- [CCode (array_length = false, array_null_terminated = true)]
2119- public string[] list_action_descriptions ();
2120- public bool prefers_app_menu ();
2121- public void remove_accelerator (string action_name, GLib.Variant? parameter);
2122- public void remove_window (Gtk.Window window);
2123- public void set_accels_for_action (string detailed_action_name, [CCode (array_length = false, array_null_terminated = true)] string[] accels);
2124- public void set_app_menu (GLib.MenuModel app_menu);
2125- public void set_menubar (GLib.MenuModel menubar);
2126- public void uninhibit (uint cookie);
2127- public Gtk.Window active_window { get; }
2128- public GLib.MenuModel app_menu { get; set; }
2129- public GLib.MenuModel menubar { get; set; }
2130- [NoAccessorMethod]
2131- public bool register_session { get; set; }
2132- public virtual signal void window_added (Gtk.Window window);
2133- public virtual signal void window_removed (Gtk.Window window);
2134- }
2135- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_application_window_get_type ()")]
2136- public class ApplicationWindow : Gtk.Window, Atk.Implementor, Gtk.Buildable, GLib.ActionGroup, GLib.ActionMap {
2137- [CCode (has_construct_function = false, type = "GtkWidget*")]
2138- public ApplicationWindow (Gtk.Application application);
2139- public uint get_id ();
2140- public bool get_show_menubar ();
2141- public void set_show_menubar (bool show_menubar);
2142- public bool show_menubar { get; set construct; }
2143- }
2144- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_arrow_get_type ()")]
2145- public class Arrow : Gtk.Misc, Atk.Implementor, Gtk.Buildable {
2146- [CCode (has_construct_function = false, type = "GtkWidget*")]
2147- public Arrow (Gtk.ArrowType arrow_type, Gtk.ShadowType shadow_type);
2148- public void @set (Gtk.ArrowType arrow_type, Gtk.ShadowType shadow_type);
2149- [NoAccessorMethod]
2150- public Gtk.ArrowType arrow_type { get; set; }
2151- [NoAccessorMethod]
2152- public Gtk.ShadowType shadow_type { get; set; }
2153- }
2154- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_arrow_accessible_get_type ()")]
2155- public class ArrowAccessible : Gtk.WidgetAccessible, Atk.Component, Atk.Image {
2156- [CCode (has_construct_function = false)]
2157- protected ArrowAccessible ();
2158- }
2159- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_aspect_frame_get_type ()")]
2160- public class AspectFrame : Gtk.Frame, Atk.Implementor, Gtk.Buildable {
2161- [CCode (has_construct_function = false, type = "GtkWidget*")]
2162- public AspectFrame (string? label, float xalign, float yalign, float ratio, bool obey_child);
2163- public void @set (float xalign, float yalign, float ratio, bool obey_child);
2164- [NoAccessorMethod]
2165- public bool obey_child { get; set; }
2166- [NoAccessorMethod]
2167- public float ratio { get; set; }
2168- [NoAccessorMethod]
2169- public float xalign { get; set; }
2170- [NoAccessorMethod]
2171- public float yalign { get; set; }
2172- }
2173- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_assistant_get_type ()")]
2174- public class Assistant : Gtk.Window, Atk.Implementor, Gtk.Buildable {
2175- [CCode (has_construct_function = false, type = "GtkWidget*")]
2176- public Assistant ();
2177- public void add_action_widget (Gtk.Widget child);
2178- public int append_page (Gtk.Widget page);
2179- public void commit ();
2180- public int get_current_page ();
2181- public int get_n_pages ();
2182- public unowned Gtk.Widget get_nth_page (int page_num);
2183- public bool get_page_complete (Gtk.Widget page);
2184- [Deprecated (since = "3.2")]
2185- public unowned Gdk.Pixbuf get_page_header_image (Gtk.Widget page);
2186- [Deprecated (since = "3.2")]
2187- public unowned Gdk.Pixbuf get_page_side_image (Gtk.Widget page);
2188- public unowned string get_page_title (Gtk.Widget page);
2189- public Gtk.AssistantPageType get_page_type (Gtk.Widget page);
2190- public int insert_page (Gtk.Widget page, int position);
2191- public void next_page ();
2192- public int prepend_page (Gtk.Widget page);
2193- public void previous_page ();
2194- public void remove_action_widget (Gtk.Widget child);
2195- public void remove_page (int page_num);
2196- public void set_current_page (int page_num);
2197- public void set_forward_page_func (owned Gtk.AssistantPageFunc page_func);
2198- public void set_page_complete (Gtk.Widget page, bool complete);
2199- [Deprecated (since = "3.2")]
2200- public void set_page_header_image (Gtk.Widget page, Gdk.Pixbuf pixbuf);
2201- [Deprecated (since = "3.2")]
2202- public void set_page_side_image (Gtk.Widget page, Gdk.Pixbuf pixbuf);
2203- public void set_page_title (Gtk.Widget page, string title);
2204- public void set_page_type (Gtk.Widget page, Gtk.AssistantPageType type);
2205- public void update_buttons_state ();
2206- [NoAccessorMethod]
2207- public int use_header_bar { get; construct; }
2208- public virtual signal void apply ();
2209- public virtual signal void cancel ();
2210- public virtual signal void close ();
2211- public virtual signal void escape ();
2212- public virtual signal void prepare (Gtk.Widget page);
2213- }
2214- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_bin_get_type ()")]
2215- public abstract class Bin : Gtk.Container, Atk.Implementor, Gtk.Buildable {
2216- [CCode (has_construct_function = false)]
2217- protected Bin ();
2218- public unowned Gtk.Widget get_child ();
2219- }
2220- [CCode (cheader_filename = "gtk/gtk.h")]
2221- [Compact]
2222- public class BindingEntry {
2223- public weak Gtk.BindingSet binding_set;
2224- public uint destroyed;
2225- public weak Gtk.BindingEntry hash_next;
2226- public uint in_emission;
2227- public uint keyval;
2228- public uint marks_unbound;
2229- public Gdk.ModifierType modifiers;
2230- public weak Gtk.BindingEntry set_next;
2231- public weak Gtk.BindingSignal signals;
2232- public static void add_signal (Gtk.BindingSet binding_set, uint keyval, Gdk.ModifierType modifiers, string signal_name, uint n_args, ...);
2233- public static GLib.TokenType add_signal_from_string (Gtk.BindingSet binding_set, string signal_desc);
2234- public static void add_signall (Gtk.BindingSet binding_set, uint keyval, Gdk.ModifierType modifiers, string signal_name, GLib.SList<Gtk.BindingArg?> binding_args);
2235- public static void remove (Gtk.BindingSet binding_set, uint keyval, Gdk.ModifierType modifiers);
2236- public static void skip (Gtk.BindingSet binding_set, uint keyval, Gdk.ModifierType modifiers);
2237- }
2238- [CCode (cheader_filename = "gtk/gtk.h")]
2239- [Compact]
2240- public class BindingSet {
2241- public weak Gtk.BindingEntry current;
2242- public weak Gtk.BindingEntry entries;
2243- public uint parsed;
2244- public int priority;
2245- public weak string set_name;
2246- public bool activate (uint keyval, Gdk.ModifierType modifiers, GLib.Object object);
2247- [Deprecated (since = "3.0")]
2248- public void add_path (Gtk.PathType path_type, string path_pattern, Gtk.PathPriorityType priority);
2249- public static unowned Gtk.BindingSet by_class (GLib.ObjectClass object_class);
2250- public static unowned Gtk.BindingSet find (string set_name);
2251- public static unowned Gtk.BindingSet @new (string name);
2252- }
2253- [CCode (cheader_filename = "gtk/gtk.h")]
2254- [Compact]
2255- public class BindingSignal {
2256- [CCode (array_length_cname = "n_args")]
2257- public weak Gtk.BindingArg[] args;
2258- public uint n_args;
2259- public weak Gtk.BindingSignal next;
2260- public weak string signal_name;
2261- }
2262- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_boolean_cell_accessible_get_type ()")]
2263- public class BooleanCellAccessible : Gtk.RendererCellAccessible, Atk.Action, Atk.Component {
2264- [CCode (has_construct_function = false)]
2265- protected BooleanCellAccessible ();
2266- }
2267- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_box_get_type ()")]
2268- public class Box : Gtk.Container, Atk.Implementor, Gtk.Buildable, Gtk.Orientable {
2269- [CCode (has_construct_function = false, type = "GtkWidget*")]
2270- public Box (Gtk.Orientation orientation, int spacing);
2271- public Gtk.BaselinePosition get_baseline_position ();
2272- public unowned Gtk.Widget get_center_widget ();
2273- public bool get_homogeneous ();
2274- public int get_spacing ();
2275- public void pack_end (Gtk.Widget child, bool expand = true, bool fill = true, uint padding = 0);
2276- public void pack_start (Gtk.Widget child, bool expand = true, bool fill = true, uint padding = 0);
2277- public void query_child_packing (Gtk.Widget child, out bool expand, out bool fill, out uint padding, out Gtk.PackType pack_type);
2278- public void reorder_child (Gtk.Widget child, int position);
2279- public void set_baseline_position (Gtk.BaselinePosition position);
2280- public void set_center_widget (Gtk.Widget widget);
2281- public void set_child_packing (Gtk.Widget child, bool expand, bool fill, uint padding, Gtk.PackType pack_type);
2282- public void set_homogeneous (bool homogeneous);
2283- public void set_spacing (int spacing);
2284- public Gtk.BaselinePosition baseline_position { get; set; }
2285- public bool homogeneous { get; set; }
2286- public int spacing { get; set; }
2287- }
2288- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_builder_get_type ()")]
2289- public class Builder : GLib.Object {
2290- [CCode (has_construct_function = false)]
2291- public Builder ();
2292- public void add_callback_symbol (string callback_name, GLib.Callback callback_symbol);
2293- public void add_callback_symbols (string first_callback_name, ...);
2294- public uint add_from_file (string filename) throws GLib.Error;
2295- public uint add_from_resource (string resource_path) throws GLib.Error;
2296- public uint add_from_string (string buffer, size_t length) throws GLib.Error;
2297- public uint add_objects_from_file (string filename, [CCode (array_length = false, array_null_terminated = true)] string[] object_ids) throws GLib.Error;
2298- public uint add_objects_from_resource (string resource_path, [CCode (array_length = false, array_null_terminated = true)] string[] object_ids) throws GLib.Error;
2299- public uint add_objects_from_string (string buffer, size_t length, [CCode (array_length = false, array_null_terminated = true)] string[] object_ids) throws GLib.Error;
2300- public void connect_signals (void* user_data);
2301- public void connect_signals_full (Gtk.BuilderConnectFunc func);
2302- public static GLib.Quark error_quark ();
2303- public void expose_object (string name, GLib.Object object);
2304- [CCode (has_construct_function = false)]
2305- public Builder.from_file (string filename);
2306- [CCode (has_construct_function = false)]
2307- public Builder.from_resource (string resource_path);
2308- [CCode (has_construct_function = false)]
2309- public Builder.from_string (string str, ssize_t length);
2310- public unowned Gtk.Application get_application ();
2311- public unowned GLib.Object get_object (string name);
2312- public GLib.SList<weak GLib.Object> get_objects ();
2313- public unowned string get_translation_domain ();
2314- public virtual GLib.Type get_type_from_name (string type_name);
2315- public unowned GLib.Callback lookup_callback_symbol (string callback_name);
2316- public void set_application (Gtk.Application application);
2317- public void set_translation_domain (string domain);
2318- public bool value_from_string (GLib.ParamSpec pspec, string str, out GLib.Value value) throws GLib.Error;
2319- public bool value_from_string_type (GLib.Type type, string str, out GLib.Value value) throws GLib.Error;
2320- public string translation_domain { get; set; }
2321- }
2322- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_button_get_type ()")]
2323- public class Button : Gtk.Bin, Atk.Implementor, Gtk.Buildable, Gtk.Actionable, Gtk.Activatable {
2324- [CCode (has_construct_function = false, type = "GtkWidget*")]
2325- public Button ();
2326- [CCode (has_construct_function = false, type = "GtkWidget*")]
2327- public Button.from_icon_name (string icon_name, Gtk.IconSize size);
2328- [CCode (has_construct_function = false, type = "GtkWidget*")]
2329- public Button.from_stock (string stock_id);
2330- public void get_alignment (out float xalign, out float yalign);
2331- public bool get_always_show_image ();
2332- public unowned Gdk.Window get_event_window ();
2333- public bool get_focus_on_click ();
2334- public unowned Gtk.Widget get_image ();
2335- public Gtk.PositionType get_image_position ();
2336- public unowned string get_label ();
2337- public Gtk.ReliefStyle get_relief ();
2338- public bool get_use_stock ();
2339- public bool get_use_underline ();
2340- public void set_alignment (float xalign, float yalign);
2341- public void set_always_show_image (bool always_show);
2342- public void set_focus_on_click (bool focus_on_click);
2343- public void set_image (Gtk.Widget image);
2344- public void set_image_position (Gtk.PositionType position);
2345- public void set_label (string? label);
2346- public void set_relief (Gtk.ReliefStyle relief);
2347- public void set_use_stock (bool use_stock);
2348- public void set_use_underline (bool use_underline);
2349- [CCode (has_construct_function = false, type = "GtkWidget*")]
2350- public Button.with_label (string label);
2351- [CCode (has_construct_function = false, type = "GtkWidget*")]
2352- public Button.with_mnemonic (string label);
2353- public bool always_show_image { get; set construct; }
2354- public bool focus_on_click { get; set; }
2355- public Gtk.Widget image { get; set; }
2356- public Gtk.PositionType image_position { get; set; }
2357- public string label { get; set construct; }
2358- public Gtk.ReliefStyle relief { get; set; }
2359- public bool use_stock { get; set construct; }
2360- public bool use_underline { get; set construct; }
2361- [NoAccessorMethod]
2362- public float xalign { get; set; }
2363- [NoAccessorMethod]
2364- public float yalign { get; set; }
2365- public virtual signal void activate ();
2366- [HasEmitter]
2367- public virtual signal void clicked ();
2368- [Deprecated (replacement = "Gtk.Widget.enter_notify_event", since = "2.8")]
2369- [HasEmitter]
2370- public virtual signal void enter ();
2371- [Deprecated (replacement = "Gtk.Widget.leave_notify_event", since = "2.8")]
2372- [HasEmitter]
2373- public virtual signal void leave ();
2374- [Deprecated (replacement = "Gtk.Widget.button_press_event", since = "2.8")]
2375- [HasEmitter]
2376- public virtual signal void pressed ();
2377- [Deprecated (replacement = "Gtk.Widget.button_release_event", since = "2.8")]
2378- [HasEmitter]
2379- public virtual signal void released ();
2380- }
2381- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_button_accessible_get_type ()")]
2382- public class ButtonAccessible : Gtk.ContainerAccessible, Atk.Component, Atk.Action, Atk.Image {
2383- [CCode (has_construct_function = false)]
2384- protected ButtonAccessible ();
2385- }
2386- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_button_box_get_type ()")]
2387- public class ButtonBox : Gtk.Box, Atk.Implementor, Gtk.Buildable, Gtk.Orientable {
2388- [CCode (has_construct_function = false, type = "GtkWidget*")]
2389- public ButtonBox (Gtk.Orientation orientation);
2390- public bool get_child_non_homogeneous (Gtk.Widget child);
2391- public bool get_child_secondary (Gtk.Widget child);
2392- public Gtk.ButtonBoxStyle get_layout ();
2393- public void set_child_non_homogeneous (Gtk.Widget child, bool non_homogeneous);
2394- public void set_child_secondary (Gtk.Widget child, bool is_secondary);
2395- public void set_layout (Gtk.ButtonBoxStyle layout_style);
2396- [NoAccessorMethod]
2397- public Gtk.ButtonBoxStyle layout_style { get; set; }
2398- }
2399- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_calendar_get_type ()")]
2400- public class Calendar : Gtk.Widget, Atk.Implementor, Gtk.Buildable {
2401- [CCode (has_construct_function = false, type = "GtkWidget*")]
2402- public Calendar ();
2403- public void clear_marks ();
2404- public void get_date (out uint year, out uint month, out uint day);
2405- public bool get_day_is_marked (uint day);
2406- public int get_detail_height_rows ();
2407- public int get_detail_width_chars ();
2408- public Gtk.CalendarDisplayOptions get_display_options ();
2409- public void mark_day (uint day);
2410- public void select_day (uint day);
2411- public void select_month (uint month, uint year);
2412- public void set_detail_func (owned Gtk.CalendarDetailFunc func);
2413- public void set_detail_height_rows (int rows);
2414- public void set_detail_width_chars (int chars);
2415- public void set_display_options (Gtk.CalendarDisplayOptions flags);
2416- public void unmark_day (uint day);
2417- [NoAccessorMethod]
2418- public int day { get; set; }
2419- public int detail_height_rows { get; set; }
2420- public int detail_width_chars { get; set; }
2421- [NoAccessorMethod]
2422- public int month { get; set; }
2423- [NoAccessorMethod]
2424- public bool no_month_change { get; set; }
2425- [NoAccessorMethod]
2426- public bool show_day_names { get; set; }
2427- [NoAccessorMethod]
2428- public bool show_details { get; set; }
2429- [NoAccessorMethod]
2430- public bool show_heading { get; set; }
2431- [NoAccessorMethod]
2432- public bool show_week_numbers { get; set; }
2433- [NoAccessorMethod]
2434- public int year { get; set; }
2435- public virtual signal void day_selected ();
2436- public virtual signal void day_selected_double_click ();
2437- public virtual signal void month_changed ();
2438- public virtual signal void next_month ();
2439- public virtual signal void next_year ();
2440- public virtual signal void prev_month ();
2441- public virtual signal void prev_year ();
2442- }
2443- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_cell_accessible_get_type ()")]
2444- public class CellAccessible : Gtk.Accessible, Atk.Action, Atk.Component {
2445- [CCode (has_construct_function = false)]
2446- protected CellAccessible ();
2447- [NoWrapper]
2448- public virtual void update_cache ();
2449- }
2450- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_cell_area_get_type ()")]
2451- public abstract class CellArea : GLib.InitiallyUnowned, Gtk.CellLayout, Gtk.Buildable {
2452- [CCode (has_construct_function = false)]
2453- protected CellArea ();
2454- public virtual bool activate (Gtk.CellAreaContext context, Gtk.Widget widget, Gdk.Rectangle cell_area, Gtk.CellRendererState flags, bool edit_only);
2455- public bool activate_cell (Gtk.Widget widget, Gtk.CellRenderer renderer, Gdk.Event event, Gdk.Rectangle cell_area, Gtk.CellRendererState flags);
2456- public virtual void add (Gtk.CellRenderer renderer);
2457- public void add_focus_sibling (Gtk.CellRenderer renderer, Gtk.CellRenderer sibling);
2458- public void add_with_properties (Gtk.CellRenderer renderer, ...);
2459- public void attribute_connect (Gtk.CellRenderer renderer, string attribute, int column);
2460- public void attribute_disconnect (Gtk.CellRenderer renderer, string attribute);
2461- public int attribute_get_column (Gtk.CellRenderer renderer, string attribute);
2462- public void cell_get (Gtk.CellRenderer renderer, ...);
2463- public void cell_get_property (Gtk.CellRenderer renderer, string property_name, GLib.Value value);
2464- public void cell_get_valist (Gtk.CellRenderer renderer, string first_property_name, va_list var_args);
2465- public void cell_set (Gtk.CellRenderer renderer, ...);
2466- public void cell_set_property (Gtk.CellRenderer renderer, string property_name, GLib.Value value);
2467- public void cell_set_valist (Gtk.CellRenderer renderer, string first_property_name, va_list var_args);
2468- public virtual Gtk.CellAreaContext copy_context (Gtk.CellAreaContext context);
2469- public virtual Gtk.CellAreaContext create_context ();
2470- public virtual int event (Gtk.CellAreaContext context, Gtk.Widget widget, Gdk.Event event, Gdk.Rectangle cell_area, Gtk.CellRendererState flags);
2471- [CCode (cname = "gtk_cell_area_class_find_cell_property")]
2472- public class unowned GLib.ParamSpec find_cell_property (string property_name);
2473- public virtual bool focus (Gtk.DirectionType direction);
2474- public virtual void @foreach (Gtk.CellCallback callback);
2475- public virtual void foreach_alloc (Gtk.CellAreaContext context, Gtk.Widget widget, Gdk.Rectangle cell_area, Gdk.Rectangle background_area, Gtk.CellAllocCallback callback);
2476- public Gdk.Rectangle get_cell_allocation (Gtk.CellAreaContext context, Gtk.Widget widget, Gtk.CellRenderer renderer, Gdk.Rectangle cell_area);
2477- public unowned Gtk.CellRenderer get_cell_at_position (Gtk.CellAreaContext context, Gtk.Widget widget, Gdk.Rectangle cell_area, int x, int y, out Gdk.Rectangle alloc_area);
2478- [NoWrapper]
2479- public virtual void get_cell_property (Gtk.CellRenderer renderer, uint property_id, GLib.Value value, GLib.ParamSpec pspec);
2480- public unowned string get_current_path_string ();
2481- public unowned Gtk.CellEditable get_edit_widget ();
2482- public unowned Gtk.CellRenderer get_edited_cell ();
2483- public unowned Gtk.CellRenderer get_focus_cell ();
2484- public unowned Gtk.CellRenderer get_focus_from_sibling (Gtk.CellRenderer renderer);
2485- public unowned GLib.List<Gtk.CellRenderer> get_focus_siblings (Gtk.CellRenderer renderer);
2486- public virtual void get_preferred_height (Gtk.CellAreaContext context, Gtk.Widget widget, out int minimum_height, out int natural_height);
2487- public virtual void get_preferred_height_for_width (Gtk.CellAreaContext context, Gtk.Widget widget, int width, out int minimum_height, out int natural_height);
2488- public virtual void get_preferred_width (Gtk.CellAreaContext context, Gtk.Widget widget, out int minimum_width, out int natural_width);
2489- public virtual void get_preferred_width_for_height (Gtk.CellAreaContext context, Gtk.Widget widget, int height, out int minimum_width, out int natural_width);
2490- public virtual Gtk.SizeRequestMode get_request_mode ();
2491- public bool has_renderer (Gtk.CellRenderer renderer);
2492- public Gdk.Rectangle inner_cell_area (Gtk.Widget widget, Gdk.Rectangle cell_area);
2493- [CCode (cname = "gtk_cell_area_class_install_cell_property")]
2494- public class void install_cell_property (uint property_id, GLib.ParamSpec pspec);
2495- public virtual bool is_activatable ();
2496- public bool is_focus_sibling (Gtk.CellRenderer renderer, Gtk.CellRenderer sibling);
2497- [CCode (cname = "gtk_cell_area_class_list_cell_properties")]
2498- public class unowned GLib.ParamSpec list_cell_properties (uint n_properties);
2499- public virtual void remove (Gtk.CellRenderer renderer);
2500- public void remove_focus_sibling (Gtk.CellRenderer renderer, Gtk.CellRenderer sibling);
2501- public virtual void render (Gtk.CellAreaContext context, Gtk.Widget widget, Cairo.Context cr, Gdk.Rectangle background_area, Gdk.Rectangle cell_area, Gtk.CellRendererState flags, bool paint_focus);
2502- public void request_renderer (Gtk.CellRenderer renderer, Gtk.Orientation orientation, Gtk.Widget widget, int for_size, out int minimum_size, out int natural_size);
2503- [NoWrapper]
2504- public virtual void set_cell_property (Gtk.CellRenderer renderer, uint property_id, GLib.Value value, GLib.ParamSpec pspec);
2505- public void set_focus_cell (Gtk.CellRenderer renderer);
2506- public void stop_editing (bool canceled);
2507- public Gtk.CellEditable edit_widget { get; }
2508- public Gtk.CellRenderer edited_cell { get; }
2509- public Gtk.CellRenderer focus_cell { get; set; }
2510- public virtual signal void add_editable (Gtk.CellRenderer p0, Gtk.CellEditable p1, Gdk.Rectangle p2, string p3);
2511- [HasEmitter]
2512- public virtual signal void apply_attributes (Gtk.TreeModel tree_model, Gtk.TreeIter iter, bool is_expander, bool is_expanded);
2513- public virtual signal void focus_changed (Gtk.CellRenderer p0, string p1);
2514- public virtual signal void remove_editable (Gtk.CellRenderer p0, Gtk.CellEditable p1);
2515- }
2516- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_cell_area_box_get_type ()")]
2517- /* We have to remove the reference to the Gtk.CellLayout interface in order to use the new pack_
2518- * start and pack_end functions of Gtk.CellAreaBox, which have a different signature.
2519- * Instead we add the other CellLayout methods explicitly */
2520- //public class CellAreaBox : Gtk.CellArea, Gtk.CellLayout, Gtk.Buildable, Gtk.Orientable {
2521- public class CellAreaBox : Gtk.CellArea, Gtk.Buildable, Gtk.Orientable {
2522- [CCode (has_construct_function = false, type = "GtkCellArea*")]
2523- public CellAreaBox ();
2524- public int get_spacing ();
2525- public void set_spacing (int spacing);
2526- public int spacing { get; set; }
2527- public void pack_start (Gtk.CellRenderer renderer, bool expand, bool align, bool fixed);
2528- public void pack_end (Gtk.CellRenderer renderer, bool expand, bool align, bool fixed);
2529- public void add_attribute (Gtk.CellRenderer cell, string attribute, int column);
2530- public void clear ();
2531- public void clear_attributes (Gtk.CellRenderer cell);
2532- public unowned Gtk.CellArea get_area ();
2533- public GLib.List<weak Gtk.CellRenderer> get_cells ();
2534- public void reorder (Gtk.CellRenderer cell, int position);
2535- public void set_attributes (Gtk.CellRenderer cell, ...);
2536- public void set_cell_data_func (Gtk.CellRenderer cell, owned Gtk.CellLayoutDataFunc func);
2537- }
2538-
2539- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_cell_area_context_get_type ()")]
2540- public class CellAreaContext : GLib.Object {
2541- [CCode (has_construct_function = false)]
2542- protected CellAreaContext ();
2543- public virtual void allocate (int width, int height);
2544- public void get_allocation (out int width, out int height);
2545- public unowned Gtk.CellArea get_area ();
2546- public void get_preferred_height (out int minimum_height, out int natural_height);
2547- public virtual void get_preferred_height_for_width (int width, out int minimum_height, out int natural_height);
2548- public void get_preferred_width (out int minimum_width, out int natural_width);
2549- public virtual void get_preferred_width_for_height (int height, out int minimum_width, out int natural_width);
2550- public void push_preferred_height (int minimum_height, int natural_height);
2551- public void push_preferred_width (int minimum_width, int natural_width);
2552- public virtual void reset ();
2553- public Gtk.CellArea area { get; construct; }
2554- [NoAccessorMethod]
2555- public int minimum_height { get; }
2556- [NoAccessorMethod]
2557- public int minimum_width { get; }
2558- [NoAccessorMethod]
2559- public int natural_height { get; }
2560- [NoAccessorMethod]
2561- public int natural_width { get; }
2562- }
2563- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_cell_renderer_get_type ()")]
2564- public abstract class CellRenderer : GLib.InitiallyUnowned {
2565- [CCode (has_construct_function = false)]
2566- protected CellRenderer ();
2567- public virtual bool activate (Gdk.Event event, Gtk.Widget widget, string path, Gdk.Rectangle background_area, Gdk.Rectangle cell_area, Gtk.CellRendererState flags);
2568- public virtual Gdk.Rectangle get_aligned_area (Gtk.Widget widget, Gtk.CellRendererState flags, Gdk.Rectangle cell_area);
2569- public void get_alignment (out float xalign, out float yalign);
2570- public void get_fixed_size (out int width, out int height);
2571- public void get_padding (out int xpad, out int ypad);
2572- public virtual void get_preferred_height (Gtk.Widget widget, out int minimum_size, out int natural_size);
2573- public virtual void get_preferred_height_for_width (Gtk.Widget widget, int width, out int minimum_height, out int natural_height);
2574- public void get_preferred_size (Gtk.Widget widget, out Gtk.Requisition minimum_size, out Gtk.Requisition natural_size);
2575- public virtual void get_preferred_width (Gtk.Widget widget, out int minimum_size, out int natural_size);
2576- public virtual void get_preferred_width_for_height (Gtk.Widget widget, int height, out int minimum_width, out int natural_width);
2577- public virtual Gtk.SizeRequestMode get_request_mode ();
2578- public bool get_sensitive ();
2579- [Deprecated (replacement = "get_preferred_size", since = "3.0")]
2580- public abstract void get_size (Gtk.Widget widget, Gdk.Rectangle? cell_area, out int x_offset, out int y_offset, out int width, out int height);
2581- public Gtk.StateFlags get_state (Gtk.Widget widget, Gtk.CellRendererState cell_state);
2582- public bool get_visible ();
2583- public bool is_activatable ();
2584- public abstract void render (Cairo.Context cr, Gtk.Widget widget, Gdk.Rectangle background_area, Gdk.Rectangle cell_area, Gtk.CellRendererState flags);
2585- [CCode (cname = "gtk_cell_renderer_class_set_accessible_type")]
2586- public class void set_accessible_type (GLib.Type type);
2587- public void set_alignment (float xalign, float yalign);
2588- public void set_fixed_size (int width, int height);
2589- public void set_padding (int xpad, int ypad);
2590- public void set_sensitive (bool sensitive);
2591- public void set_visible (bool visible);
2592- public virtual unowned Gtk.CellEditable? start_editing (Gdk.Event? event, Gtk.Widget widget, string path, Gdk.Rectangle background_area, Gdk.Rectangle cell_area, Gtk.CellRendererState flags);
2593- public void stop_editing (bool canceled);
2594- [NoAccessorMethod]
2595- public string cell_background { set; }
2596- [Deprecated (replacement = "Gtk.CellRenderer.cell_background_rgba", since = "3.4")]
2597- [NoAccessorMethod]
2598- public Gdk.Color cell_background_gdk { get; set; }
2599- [NoAccessorMethod]
2600- public Gdk.RGBA cell_background_rgba { get; set; }
2601- [NoAccessorMethod]
2602- public bool cell_background_set { get; set; }
2603- [NoAccessorMethod]
2604- public bool editing { get; }
2605- [NoAccessorMethod]
2606- public int height { get; set; }
2607- [NoAccessorMethod]
2608- public bool is_expanded { get; set; }
2609- [NoAccessorMethod]
2610- public bool is_expander { get; set; }
2611- [NoAccessorMethod]
2612- public Gtk.CellRendererMode mode { get; set; }
2613- public bool sensitive { get; set; }
2614- public bool visible { get; set; }
2615- [NoAccessorMethod]
2616- public int width { get; set; }
2617- [NoAccessorMethod]
2618- public float xalign { get; set; }
2619- [NoAccessorMethod]
2620- public uint xpad { get; set; }
2621- [NoAccessorMethod]
2622- public float yalign { get; set; }
2623- [NoAccessorMethod]
2624- public uint ypad { get; set; }
2625- [HasEmitter]
2626- public virtual signal void editing_canceled ();
2627- public virtual signal void editing_started (Gtk.CellEditable editable, string path);
2628- }
2629- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_cell_renderer_accel_get_type ()")]
2630- public class CellRendererAccel : Gtk.CellRendererText {
2631- [CCode (has_construct_function = false, type = "GtkCellRenderer*")]
2632- public CellRendererAccel ();
2633- [NoAccessorMethod]
2634- public uint accel_key { get; set; }
2635- [NoAccessorMethod]
2636- public Gtk.CellRendererAccelMode accel_mode { get; set; }
2637- [NoAccessorMethod]
2638- public Gdk.ModifierType accel_mods { get; set; }
2639- [NoAccessorMethod]
2640- public uint keycode { get; set; }
2641- public virtual signal void accel_cleared (string path_string);
2642- public virtual signal void accel_edited (string path_string, uint accel_key, Gdk.ModifierType accel_mods, uint hardware_keycode);
2643- }
2644- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_cell_renderer_combo_get_type ()")]
2645- public class CellRendererCombo : Gtk.CellRendererText {
2646- [CCode (has_construct_function = false, type = "GtkCellRenderer*")]
2647- public CellRendererCombo ();
2648- [NoAccessorMethod]
2649- public bool has_entry { get; set; }
2650- [NoAccessorMethod]
2651- public Gtk.TreeModel model { owned get; set; }
2652- [NoAccessorMethod]
2653- public int text_column { get; set; }
2654- public virtual signal void changed (string p0, Gtk.TreeIter p1);
2655- }
2656- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_cell_renderer_pixbuf_get_type ()")]
2657- public class CellRendererPixbuf : Gtk.CellRenderer {
2658- [CCode (has_construct_function = false, type = "GtkCellRenderer*")]
2659- public CellRendererPixbuf ();
2660- [NoAccessorMethod]
2661- public bool follow_state { get; set; }
2662- [NoAccessorMethod]
2663- public GLib.Icon gicon { owned get; set; }
2664- [NoAccessorMethod]
2665- public string icon_name { owned get; set; }
2666- [NoAccessorMethod]
2667- public Gdk.Pixbuf pixbuf { owned get; set; }
2668- [NoAccessorMethod]
2669- public Gdk.Pixbuf pixbuf_expander_closed { owned get; set; }
2670- [NoAccessorMethod]
2671- public Gdk.Pixbuf pixbuf_expander_open { owned get; set; }
2672- [NoAccessorMethod]
2673- public string stock_detail { owned get; set; }
2674- [NoAccessorMethod]
2675- public string stock_id { owned get; set; }
2676- [NoAccessorMethod]
2677- public uint stock_size { get; set; }
2678- [NoAccessorMethod]
2679- public Cairo.Surface surface { owned get; set; }
2680- }
2681- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_cell_renderer_progress_get_type ()")]
2682- public class CellRendererProgress : Gtk.CellRenderer, Gtk.Orientable {
2683- [CCode (has_construct_function = false, type = "GtkCellRenderer*")]
2684- public CellRendererProgress ();
2685- [NoAccessorMethod]
2686- public bool inverted { get; set; }
2687- [NoAccessorMethod]
2688- public int pulse { get; set; }
2689- [NoAccessorMethod]
2690- public string text { owned get; set; }
2691- [NoAccessorMethod]
2692- public float text_xalign { get; set; }
2693- [NoAccessorMethod]
2694- public float text_yalign { get; set; }
2695- [NoAccessorMethod]
2696- public int value { get; set; }
2697- }
2698- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_cell_renderer_spin_get_type ()")]
2699- public class CellRendererSpin : Gtk.CellRendererText {
2700- [CCode (has_construct_function = false, type = "GtkCellRenderer*")]
2701- public CellRendererSpin ();
2702- [NoAccessorMethod]
2703- public Gtk.Adjustment adjustment { owned get; set; }
2704- [NoAccessorMethod]
2705- public double climb_rate { get; set; }
2706- [NoAccessorMethod]
2707- public uint digits { get; set; }
2708- }
2709- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_cell_renderer_spinner_get_type ()")]
2710- public class CellRendererSpinner : Gtk.CellRenderer {
2711- [CCode (has_construct_function = false, type = "GtkCellRenderer*")]
2712- public CellRendererSpinner ();
2713- [NoAccessorMethod]
2714- public bool active { get; set; }
2715- [NoAccessorMethod]
2716- public uint pulse { get; set; }
2717- [NoAccessorMethod]
2718- public Gtk.IconSize size { get; set; }
2719- }
2720- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_cell_renderer_text_get_type ()")]
2721- public class CellRendererText : Gtk.CellRenderer {
2722- [CCode (has_construct_function = false, type = "GtkCellRenderer*")]
2723- public CellRendererText ();
2724- public void set_fixed_height_from_font (int number_of_rows);
2725- [NoAccessorMethod]
2726- public bool align_set { get; set; }
2727- [NoAccessorMethod]
2728- public Pango.Alignment alignment { get; set; }
2729- [NoAccessorMethod]
2730- public Pango.AttrList attributes { owned get; set; }
2731- [NoAccessorMethod]
2732- public string background { set; }
2733- [Deprecated (replacement = "background_rgba", since = "3.4")]
2734- [NoAccessorMethod]
2735- public Gdk.Color background_gdk { get; set; }
2736- [NoAccessorMethod]
2737- public Gdk.RGBA background_rgba { get; set; }
2738- [NoAccessorMethod]
2739- public bool background_set { get; set; }
2740- [NoAccessorMethod]
2741- public bool editable { get; set; }
2742- [NoAccessorMethod]
2743- public bool editable_set { get; set; }
2744- [NoAccessorMethod]
2745- public Pango.EllipsizeMode ellipsize { get; set; }
2746- [NoAccessorMethod]
2747- public bool ellipsize_set { get; set; }
2748- [NoAccessorMethod]
2749- public string family { owned get; set; }
2750- [NoAccessorMethod]
2751- public bool family_set { get; set; }
2752- [NoAccessorMethod]
2753- public string font { owned get; set; }
2754- [NoAccessorMethod]
2755- public Pango.FontDescription font_desc { owned get; set; }
2756- [NoAccessorMethod]
2757- public string foreground { set; }
2758- [Deprecated (replacement = "foreground_rgba", since = "3.4")]
2759- [NoAccessorMethod]
2760- public Gdk.Color foreground_gdk { get; set; }
2761- [NoAccessorMethod]
2762- public Gdk.RGBA foreground_rgba { get; set; }
2763- [NoAccessorMethod]
2764- public bool foreground_set { get; set; }
2765- [NoAccessorMethod]
2766- public string language { owned get; set; }
2767- [NoAccessorMethod]
2768- public bool language_set { get; set; }
2769- [NoAccessorMethod]
2770- public string markup { set; }
2771- [NoAccessorMethod]
2772- public int max_width_chars { get; set; }
2773- [NoAccessorMethod]
2774- public string placeholder_text { owned get; set; }
2775- [NoAccessorMethod]
2776- public int rise { get; set; }
2777- [NoAccessorMethod]
2778- public bool rise_set { get; set; }
2779- [NoAccessorMethod]
2780- public double scale { get; set; }
2781- [NoAccessorMethod]
2782- public bool scale_set { get; set; }
2783- [NoAccessorMethod]
2784- public bool single_paragraph_mode { get; set; }
2785- [NoAccessorMethod]
2786- public int size { get; set; }
2787- [NoAccessorMethod]
2788- public double size_points { get; set; }
2789- [NoAccessorMethod]
2790- public bool size_set { get; set; }
2791- [NoAccessorMethod]
2792- public Pango.Stretch stretch { get; set; }
2793- [NoAccessorMethod]
2794- public bool stretch_set { get; set; }
2795- [NoAccessorMethod]
2796- public bool strikethrough { get; set; }
2797- [NoAccessorMethod]
2798- public bool strikethrough_set { get; set; }
2799- [NoAccessorMethod]
2800- public Pango.Style style { get; set; }
2801- [NoAccessorMethod]
2802- public bool style_set { get; set; }
2803- [NoAccessorMethod]
2804- public string text { owned get; set; }
2805- [NoAccessorMethod]
2806- public Pango.Underline underline { get; set; }
2807- [NoAccessorMethod]
2808- public bool underline_set { get; set; }
2809- [NoAccessorMethod]
2810- public Pango.Variant variant { get; set; }
2811- [NoAccessorMethod]
2812- public bool variant_set { get; set; }
2813- [NoAccessorMethod]
2814- public int weight { get; set; }
2815- [NoAccessorMethod]
2816- public bool weight_set { get; set; }
2817- [NoAccessorMethod]
2818- public int width_chars { get; set; }
2819- [NoAccessorMethod]
2820- public Pango.WrapMode wrap_mode { get; set; }
2821- [NoAccessorMethod]
2822- public int wrap_width { get; set; }
2823- public virtual signal void edited (string path, string new_text);
2824- }
2825- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_cell_renderer_toggle_get_type ()")]
2826- public class CellRendererToggle : Gtk.CellRenderer {
2827- [CCode (has_construct_function = false, type = "GtkCellRenderer*")]
2828- public CellRendererToggle ();
2829- public bool get_activatable ();
2830- public bool get_active ();
2831- public bool get_radio ();
2832- public void set_activatable (bool setting);
2833- public void set_active (bool setting);
2834- public void set_radio (bool radio);
2835- public bool activatable { get; set; }
2836- public bool active { get; set; }
2837- [NoAccessorMethod]
2838- public bool inconsistent { get; set; }
2839- [NoAccessorMethod]
2840- public int indicator_size { get; set; }
2841- public bool radio { get; set; }
2842- public virtual signal void toggled (string path);
2843- }
2844- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_cell_view_get_type ()")]
2845- public class CellView : Gtk.Widget, Atk.Implementor, Gtk.Buildable, Gtk.CellLayout, Gtk.Orientable {
2846- [CCode (has_construct_function = false, type = "GtkWidget*")]
2847- public CellView ();
2848- public Gtk.TreePath get_displayed_row ();
2849- public bool get_draw_sensitive ();
2850- public bool get_fit_model ();
2851- public unowned Gtk.TreeModel get_model ();
2852- public bool get_size_of_row (Gtk.TreePath path, out Gtk.Requisition requisition);
2853- [Deprecated (replacement = "set_background_rgba", since = "3.4")]
2854- public void set_background_color (Gdk.Color color);
2855- public void set_background_rgba (Gdk.RGBA rgba);
2856- public void set_displayed_row (Gtk.TreePath path);
2857- public void set_draw_sensitive (bool draw_sensitive);
2858- public void set_fit_model (bool fit_model);
2859- public void set_model (Gtk.TreeModel? model);
2860- [CCode (has_construct_function = false, type = "GtkWidget*")]
2861- public CellView.with_context (Gtk.CellArea area, Gtk.CellAreaContext context);
2862- [CCode (has_construct_function = false, type = "GtkWidget*")]
2863- public CellView.with_markup (string markup);
2864- [CCode (has_construct_function = false, type = "GtkWidget*")]
2865- public CellView.with_pixbuf (Gdk.Pixbuf pixbuf);
2866- [CCode (has_construct_function = false, type = "GtkWidget*")]
2867- public CellView.with_text (string text);
2868- [NoAccessorMethod]
2869- public string background { set; }
2870- [Deprecated (replacement = "background_rgba", since = "3.4")]
2871- [NoAccessorMethod]
2872- public Gdk.Color background_gdk { get; set; }
2873- [NoAccessorMethod]
2874- public Gdk.RGBA background_rgba { get; set; }
2875- [NoAccessorMethod]
2876- public bool background_set { get; set; }
2877- [NoAccessorMethod]
2878- public Gtk.CellArea cell_area { owned get; construct; }
2879- [NoAccessorMethod]
2880- public Gtk.CellAreaContext cell_area_context { owned get; construct; }
2881- public bool draw_sensitive { get; set; }
2882- public bool fit_model { get; set; }
2883- public Gtk.TreeModel model { get; set; }
2884- }
2885- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_check_button_get_type ()")]
2886- public class CheckButton : Gtk.ToggleButton, Atk.Implementor, Gtk.Buildable, Gtk.Actionable, Gtk.Activatable {
2887- [CCode (has_construct_function = false, type = "GtkWidget*")]
2888- public CheckButton ();
2889- [NoWrapper]
2890- public virtual void draw_indicator (Cairo.Context cr);
2891- [CCode (has_construct_function = false, type = "GtkWidget*")]
2892- public CheckButton.with_label (string label);
2893- [CCode (has_construct_function = false, type = "GtkWidget*")]
2894- public CheckButton.with_mnemonic (string label);
2895- }
2896- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_check_menu_item_get_type ()")]
2897- public class CheckMenuItem : Gtk.MenuItem, Atk.Implementor, Gtk.Buildable, Gtk.Activatable, Gtk.Actionable {
2898- [CCode (has_construct_function = false, type = "GtkWidget*")]
2899- public CheckMenuItem ();
2900- [NoWrapper]
2901- public virtual void draw_indicator (Cairo.Context cr);
2902- public bool get_active ();
2903- public bool get_draw_as_radio ();
2904- public bool get_inconsistent ();
2905- public void set_active (bool is_active);
2906- public void set_draw_as_radio (bool draw_as_radio);
2907- public void set_inconsistent (bool setting);
2908- [CCode (has_construct_function = false, type = "GtkWidget*")]
2909- public CheckMenuItem.with_label (string label);
2910- [CCode (has_construct_function = false, type = "GtkWidget*")]
2911- public CheckMenuItem.with_mnemonic (string label);
2912- public bool active { get; set; }
2913- public bool draw_as_radio { get; set; }
2914- public bool inconsistent { get; set; }
2915- [HasEmitter]
2916- public virtual signal void toggled ();
2917- }
2918- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_check_menu_item_accessible_get_type ()")]
2919- public class CheckMenuItemAccessible : Gtk.MenuItemAccessible, Atk.Component, Atk.Action, Atk.Selection {
2920- [CCode (has_construct_function = false)]
2921- protected CheckMenuItemAccessible ();
2922- }
2923- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_clipboard_get_type ()")]
2924- public class Clipboard : GLib.Object {
2925- [CCode (has_construct_function = false)]
2926- protected Clipboard ();
2927- public void clear ();
2928- public static unowned Gtk.Clipboard @get (Gdk.Atom selection);
2929- public unowned Gdk.Display get_display ();
2930- public static unowned Gtk.Clipboard get_for_display (Gdk.Display display, Gdk.Atom selection);
2931- public unowned GLib.Object get_owner ();
2932- public void request_contents (Gdk.Atom target, Gtk.ClipboardReceivedFunc callback);
2933- public void request_image (Gtk.ClipboardImageReceivedFunc callback);
2934- public void request_rich_text (Gtk.TextBuffer buffer, Gtk.ClipboardRichTextReceivedFunc callback);
2935- public void request_targets (Gtk.ClipboardTargetsReceivedFunc callback);
2936- public void request_text (Gtk.ClipboardTextReceivedFunc callback);
2937- public void request_uris (Gtk.ClipboardURIReceivedFunc callback);
2938- public void set_can_store (Gtk.TargetEntry[] targets);
2939- public void set_image (Gdk.Pixbuf pixbuf);
2940- public void set_text (string text, int len);
2941- public bool set_with_data (Gtk.TargetEntry[] targets, Gtk.ClipboardGetFunc get_func, Gtk.ClipboardClearFunc clear_func);
2942- public bool set_with_owner (Gtk.TargetEntry[] targets, Gtk.ClipboardGetFunc get_func, Gtk.ClipboardClearFunc clear_func, GLib.Object owner);
2943- public void store ();
2944- public Gtk.SelectionData? wait_for_contents (Gdk.Atom target);
2945- public Gdk.Pixbuf? wait_for_image ();
2946- [CCode (array_length_type = "gsize")]
2947- public uint8[]? wait_for_rich_text (Gtk.TextBuffer buffer, out Gdk.Atom format);
2948- public bool wait_for_targets (out Gdk.Atom[] targets);
2949- public string? wait_for_text ();
2950- [CCode (array_length = false, array_null_terminated = true)]
2951- public string[]? wait_for_uris ();
2952- public bool wait_is_image_available ();
2953- public bool wait_is_rich_text_available (Gtk.TextBuffer buffer);
2954- public bool wait_is_target_available (Gdk.Atom target);
2955- public bool wait_is_text_available ();
2956- public bool wait_is_uris_available ();
2957- public virtual signal void owner_change (Gdk.Event p0);
2958- }
2959- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_color_button_get_type ()")]
2960- public class ColorButton : Gtk.Button, Atk.Implementor, Gtk.Buildable, Gtk.Actionable, Gtk.Activatable, Gtk.ColorChooser {
2961- [CCode (has_construct_function = false, type = "GtkWidget*")]
2962- public ColorButton ();
2963- public uint16 get_alpha ();
2964- public void get_color (out Gdk.Color color);
2965- public unowned string get_title ();
2966- public bool get_use_alpha ();
2967- public void set_alpha (uint16 alpha);
2968- public void set_color (Gdk.Color color);
2969- public void set_title (string title);
2970- public void set_use_alpha (bool use_alpha);
2971- [CCode (has_construct_function = false, type = "GtkWidget*")]
2972- public ColorButton.with_color (Gdk.Color color);
2973- [CCode (has_construct_function = false, type = "GtkWidget*")]
2974- public ColorButton.with_rgba (Gdk.RGBA rgba);
2975- public uint alpha { get; set; }
2976- [Deprecated (replacement = "rgba", since = "3.4")]
2977- public Gdk.Color color { get; set; }
2978- public Gdk.RGBA rgba { get; set; }
2979- public string title { get; set; }
2980- public bool use_alpha { get; set; }
2981- public virtual signal void color_set ();
2982- }
2983- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_color_chooser_dialog_get_type ()")]
2984- public class ColorChooserDialog : Gtk.Dialog, Atk.Implementor, Gtk.Buildable, Gtk.ColorChooser {
2985- [CCode (has_construct_function = false, type = "GtkWidget*")]
2986- public ColorChooserDialog (string? title, Gtk.Window? parent);
2987- [NoAccessorMethod]
2988- public bool show_editor { get; set; }
2989- }
2990- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_color_chooser_widget_get_type ()")]
2991- public class ColorChooserWidget : Gtk.Box, Atk.Implementor, Gtk.Buildable, Gtk.Orientable, Gtk.ColorChooser {
2992- [CCode (has_construct_function = false, type = "GtkWidget*")]
2993- public ColorChooserWidget ();
2994- [NoAccessorMethod]
2995- public bool show_editor { get; set; }
2996- }
2997- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_color_selection_get_type ()")]
2998- public class ColorSelection : Gtk.Box, Atk.Implementor, Gtk.Buildable, Gtk.Orientable {
2999- [CCode (has_construct_function = false, type = "GtkWidget*")]
3000- public ColorSelection ();
3001- public uint16 get_current_alpha ();
3002- [Deprecated (replacement = "get_current_rgba", since = "3.4")]
3003- public void get_current_color (out Gdk.Color color);
3004- public Gdk.RGBA get_current_rgba ();
3005- public bool get_has_opacity_control ();
3006- public bool get_has_palette ();
3007- public uint16 get_previous_alpha ();
3008- public void get_previous_color (out Gdk.Color color);
3009- public Gdk.RGBA get_previous_rgba ();
3010- public bool is_adjusting ();
3011- public static bool palette_from_string (string str, out Gdk.Color[] colors);
3012- public static string palette_to_string (Gdk.Color[] colors);
3013- public static unowned Gtk.ColorSelectionChangePaletteWithScreenFunc set_change_palette_with_screen_hook (Gtk.ColorSelectionChangePaletteWithScreenFunc func);
3014- public void set_current_alpha (uint16 alpha);
3015- [Deprecated (replacement = "set_current_rgba", since = "3.4")]
3016- public void set_current_color (Gdk.Color color);
3017- public void set_current_rgba (Gdk.RGBA rgba);
3018- public void set_has_opacity_control (bool has_opacity);
3019- public void set_has_palette (bool has_palette);
3020- public void set_previous_alpha (uint16 alpha);
3021- public void set_previous_color (Gdk.Color color);
3022- public void set_previous_rgba (Gdk.RGBA rgba);
3023- public uint current_alpha { get; set; }
3024- [Deprecated (replacement = "current_rgba", since = "3.4")]
3025- public Gdk.Color current_color { get; set; }
3026- public Gdk.RGBA current_rgba { get; set; }
3027- public bool has_opacity_control { get; set; }
3028- public bool has_palette { get; set; }
3029- public virtual signal void color_changed ();
3030- }
3031- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_color_selection_dialog_get_type ()")]
3032- public class ColorSelectionDialog : Gtk.Dialog, Atk.Implementor, Gtk.Buildable {
3033- [CCode (has_construct_function = false, type = "GtkWidget*")]
3034- public ColorSelectionDialog (string title);
3035- public unowned Gtk.ColorSelection get_color_selection ();
3036- [NoAccessorMethod]
3037- public Gtk.Widget cancel_button { owned get; }
3038- public Gtk.Widget color_selection { get; }
3039- [NoAccessorMethod]
3040- public Gtk.Widget help_button { owned get; }
3041- [NoAccessorMethod]
3042- public Gtk.Widget ok_button { owned get; }
3043- }
3044- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_combo_box_get_type ()")]
3045- public class ComboBox : Gtk.Bin, Atk.Implementor, Gtk.Buildable, Gtk.CellLayout, Gtk.CellEditable {
3046- [CCode (has_construct_function = false, type = "GtkWidget*")]
3047- public ComboBox ();
3048- public int get_active ();
3049- public unowned string get_active_id ();
3050- public bool get_active_iter (out Gtk.TreeIter iter);
3051- public bool get_add_tearoffs ();
3052- public Gtk.SensitivityType get_button_sensitivity ();
3053- public int get_column_span_column ();
3054- public int get_entry_text_column ();
3055- public bool get_focus_on_click ();
3056- public bool get_has_entry ();
3057- public int get_id_column ();
3058- public unowned Gtk.TreeModel get_model ();
3059- public unowned Atk.Object get_popup_accessible ();
3060- public bool get_popup_fixed_width ();
3061- public unowned Gtk.TreeViewRowSeparatorFunc get_row_separator_func ();
3062- public int get_row_span_column ();
3063- public unowned string get_title ();
3064- public int get_wrap_width ();
3065- public void popup_for_device (Gdk.Device device);
3066- public void set_active (int index_);
3067- public bool set_active_id (string active_id);
3068- public void set_active_iter (Gtk.TreeIter? iter);
3069- public void set_add_tearoffs (bool add_tearoffs);
3070- public void set_button_sensitivity (Gtk.SensitivityType sensitivity);
3071- public void set_column_span_column (int column_span);
3072- public void set_entry_text_column (int text_column);
3073- public void set_focus_on_click (bool focus_on_click);
3074- public void set_id_column (int id_column);
3075- public void set_model (Gtk.TreeModel? model);
3076- public void set_popup_fixed_width (bool fixed);
3077- public void set_row_separator_func (owned Gtk.TreeViewRowSeparatorFunc func);
3078- public void set_row_span_column (int row_span);
3079- public void set_title (string title);
3080- public void set_wrap_width (int width);
3081- [CCode (has_construct_function = false, type = "GtkWidget*")]
3082- public ComboBox.with_area (Gtk.CellArea area);
3083- [CCode (has_construct_function = false, type = "GtkWidget*")]
3084- public ComboBox.with_area_and_entry (Gtk.CellArea area);
3085- [CCode (has_construct_function = false, type = "GtkWidget*")]
3086- public ComboBox.with_entry ();
3087- [CCode (has_construct_function = false, type = "GtkWidget*")]
3088- public ComboBox.with_model (Gtk.TreeModel model);
3089- [CCode (has_construct_function = false, type = "GtkWidget*")]
3090- public ComboBox.with_model_and_entry (Gtk.TreeModel model);
3091- public int active { get; set; }
3092- public string active_id { get; set; }
3093- public bool add_tearoffs { get; set; }
3094- public Gtk.SensitivityType button_sensitivity { get; set; }
3095- [NoAccessorMethod]
3096- public Gtk.CellArea cell_area { owned get; construct; }
3097- public int column_span_column { get; set; }
3098- public int entry_text_column { get; set; }
3099- public bool focus_on_click { get; set; }
3100- public bool has_entry { get; construct; }
3101- [NoAccessorMethod]
3102- public bool has_frame { get; set; }
3103- public int id_column { get; set; }
3104- public Gtk.TreeModel model { get; set; }
3105- public bool popup_fixed_width { get; set; }
3106- [NoAccessorMethod]
3107- public bool popup_shown { get; }
3108- public int row_span_column { get; set; }
3109- [NoAccessorMethod]
3110- public string tearoff_title { owned get; set; }
3111- public int wrap_width { get; set; }
3112- public virtual signal void changed ();
3113- public virtual signal string format_entry_text (string path);
3114- public virtual signal void move_active (Gtk.ScrollType p0);
3115- [HasEmitter]
3116- public virtual signal bool popdown ();
3117- [HasEmitter]
3118- public virtual signal void popup ();
3119- }
3120- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_combo_box_accessible_get_type ()")]
3121- public class ComboBoxAccessible : Gtk.ContainerAccessible, Atk.Component, Atk.Action, Atk.Selection {
3122- [CCode (has_construct_function = false)]
3123- protected ComboBoxAccessible ();
3124- }
3125- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_combo_box_text_get_type ()")]
3126- public class ComboBoxText : Gtk.ComboBox, Atk.Implementor, Gtk.Buildable, Gtk.CellLayout, Gtk.CellEditable {
3127- [CCode (has_construct_function = false, type = "GtkWidget*")]
3128- public ComboBoxText ();
3129- public void append (string id, string text);
3130- public void append_text (string text);
3131- public string get_active_text ();
3132- public void insert (int position, string id, string text);
3133- public void insert_text (int position, string text);
3134- public void prepend (string id, string text);
3135- public void prepend_text (string text);
3136- public void remove (int position);
3137- public void remove_all ();
3138- [CCode (has_construct_function = false, type = "GtkWidget*")]
3139- public ComboBoxText.with_entry ();
3140- }
3141- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_container_get_type ()")]
3142- public abstract class Container : Gtk.Widget, Atk.Implementor, Gtk.Buildable {
3143- [CCode (has_construct_function = false)]
3144- protected Container ();
3145- public void add_with_properties (Gtk.Widget widget, ...);
3146- public void child_get (Gtk.Widget child, ...);
3147- public void child_get_property (Gtk.Widget child, string property_name, GLib.Value value);
3148- public void child_get_valist (Gtk.Widget child, string first_property_name, va_list var_args);
3149- public void child_notify (Gtk.Widget child, string child_property);
3150- public void child_set (Gtk.Widget child, ...);
3151- public void child_set_property (Gtk.Widget child, string property_name, GLib.Value value);
3152- public void child_set_valist (Gtk.Widget child, string first_property_name, va_list var_args);
3153- public virtual GLib.Type child_type ();
3154- public static unowned GLib.ParamSpec class_find_child_property (GLib.ObjectClass cclass, string property_name);
3155- public static unowned GLib.ParamSpec class_list_child_properties (GLib.ObjectClass cclass, uint n_properties);
3156- [NoWrapper]
3157- public virtual unowned string composite_name (Gtk.Widget child);
3158- public void forall (Gtk.Callback callback);
3159- [CCode (vfunc_name = "forall")]
3160- [NoWrapper]
3161- public virtual void forall_internal (bool include_internal, Gtk.Callback callback);
3162- public void @foreach (Gtk.Callback callback);
3163- public uint get_border_width ();
3164- [NoWrapper]
3165- public virtual void get_child_property (Gtk.Widget child, uint property_id, GLib.Value value, GLib.ParamSpec pspec);
3166- public GLib.List<weak Gtk.Widget> get_children ();
3167- public bool get_focus_chain (out GLib.List<weak Gtk.Widget> focusable_widgets);
3168- public unowned Gtk.Widget get_focus_child ();
3169- public unowned Gtk.Adjustment get_focus_hadjustment ();
3170- public unowned Gtk.Adjustment get_focus_vadjustment ();
3171- public virtual Gtk.WidgetPath get_path_for_child (Gtk.Widget child);
3172- public Gtk.ResizeMode get_resize_mode ();
3173- [CCode (cname = "gtk_container_class_handle_border_width")]
3174- public class void handle_border_width ();
3175- [CCode (cname = "gtk_container_class_install_child_property")]
3176- public class void install_child_property (uint property_id, GLib.ParamSpec pspec);
3177- public void propagate_draw (Gtk.Widget child, Cairo.Context cr);
3178- public void resize_children ();
3179- public void set_border_width (uint border_width);
3180- [NoWrapper]
3181- public virtual void set_child_property (Gtk.Widget child, uint property_id, GLib.Value value, GLib.ParamSpec pspec);
3182- public void set_focus_chain (GLib.List<Gtk.Widget> focusable_widgets);
3183- public void set_focus_hadjustment (Gtk.Adjustment adjustment);
3184- public void set_focus_vadjustment (Gtk.Adjustment adjustment);
3185- public void set_reallocate_redraws (bool needs_redraws);
3186- public void set_resize_mode (Gtk.ResizeMode resize_mode);
3187- public void unset_focus_chain ();
3188- public uint border_width { get; set; }
3189- [NoAccessorMethod]
3190- public Gtk.Widget child { set; }
3191- public Gtk.ResizeMode resize_mode { get; set; }
3192- [HasEmitter]
3193- public virtual signal void add (Gtk.Widget widget);
3194- [HasEmitter]
3195- public virtual signal void check_resize ();
3196- [HasEmitter]
3197- public virtual signal void remove (Gtk.Widget widget);
3198- [HasEmitter]
3199- public virtual signal void set_focus_child (Gtk.Widget? child);
3200- }
3201- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_container_accessible_get_type ()")]
3202- public class ContainerAccessible : Gtk.WidgetAccessible, Atk.Component {
3203- [CCode (has_construct_function = false)]
3204- protected ContainerAccessible ();
3205- [NoWrapper]
3206- public virtual int add_gtk (Gtk.Container container, Gtk.Widget widget, void* data);
3207- [NoWrapper]
3208- public virtual int remove_gtk (Gtk.Container container, Gtk.Widget widget, void* data);
3209- }
3210- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_container_cell_accessible_get_type ()")]
3211- public class ContainerCellAccessible : Gtk.CellAccessible, Atk.Action, Atk.Component {
3212- [CCode (has_construct_function = false)]
3213- public ContainerCellAccessible ();
3214- public void add_child (Gtk.CellAccessible child);
3215- public unowned GLib.List<Gtk.CellAccessible> get_children ();
3216- public void remove_child (Gtk.CellAccessible child);
3217- }
3218- [CCode (cheader_filename = "gtk/gtk.h")]
3219- public class CssProvider : GLib.Object, Gtk.StyleProvider {
3220- [CCode (has_construct_function = false)]
3221- public CssProvider ();
3222- public static GLib.Quark error_quark ();
3223- public static unowned Gtk.CssProvider get_default ();
3224- public static unowned Gtk.CssProvider get_named (string name, string? variant);
3225- public bool load_from_data (string data, ssize_t length) throws GLib.Error;
3226- public bool load_from_file (GLib.File file) throws GLib.Error;
3227- public bool load_from_path (string path) throws GLib.Error;
3228- public string to_string ();
3229- public virtual signal void parsing_error (Gtk.CssSection section, GLib.Error error);
3230- }
3231- [CCode (cheader_filename = "gtk/gtk.h", ref_function = "gtk_css_section_ref", type_id = "gtk_css_section_get_type ()", unref_function = "gtk_css_section_unref")]
3232- [Compact]
3233- public class CssSection {
3234- public uint get_end_line ();
3235- public uint get_end_position ();
3236- public unowned GLib.File get_file ();
3237- public unowned Gtk.CssSection get_parent ();
3238- public Gtk.CssSectionType get_section_type ();
3239- public uint get_start_line ();
3240- public uint get_start_position ();
3241- }
3242- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_dialog_get_type ()")]
3243- public class Dialog : Gtk.Window, Atk.Implementor, Gtk.Buildable {
3244- [CCode (has_construct_function = false, type = "GtkWidget*")]
3245- public Dialog ();
3246- public void add_action_widget (Gtk.Widget child, int response_id);
3247- public unowned Gtk.Widget add_button (string button_text, int response_id);
3248- public void add_buttons (...);
3249- public unowned Gtk.Widget get_action_area ();
3250- [CCode (type = "GtkWidget*")]
3251- public unowned Gtk.Box get_content_area ();
3252- public unowned Gtk.Widget get_header_bar ();
3253- public int get_response_for_widget (Gtk.Widget widget);
3254- public unowned Gtk.Widget get_widget_for_response (int response_id);
3255- public int run ();
3256- [CCode (sentinel = "-1")]
3257- public void set_alternative_button_order (...);
3258- public void set_alternative_button_order_from_array ([CCode (array_length_pos = 0.5)] int[] new_order);
3259- public void set_default_response (int response_id);
3260- public void set_response_sensitive (int response_id, bool setting);
3261- [CCode (has_construct_function = false, type = "GtkWidget*")]
3262- public Dialog.with_buttons (string? title, Gtk.Window? parent, Gtk.DialogFlags flags, ...);
3263- [NoAccessorMethod]
3264- public int use_header_bar { get; construct; }
3265- public virtual signal void close ();
3266- [HasEmitter]
3267- public virtual signal void response (int response_id);
3268- }
3269- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_drawing_area_get_type ()")]
3270- public class DrawingArea : Gtk.Widget, Atk.Implementor, Gtk.Buildable {
3271- [CCode (has_construct_function = false, type = "GtkWidget*")]
3272- public DrawingArea ();
3273- }
3274- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_entry_get_type ()")]
3275- public class Entry : Gtk.Widget, Atk.Implementor, Gtk.Buildable, Gtk.Editable, Gtk.CellEditable {
3276- [CCode (has_construct_function = false, type = "GtkWidget*")]
3277- public Entry ();
3278- public bool get_activates_default ();
3279- public float get_alignment ();
3280- public unowned Pango.AttrList get_attributes ();
3281- public unowned Gtk.EntryBuffer get_buffer ();
3282- public unowned Gtk.EntryCompletion get_completion ();
3283- public int get_current_icon_drag_source ();
3284- public unowned Gtk.Adjustment get_cursor_hadjustment ();
3285- [NoWrapper]
3286- public virtual void get_frame_size (int x, int y, int width, int height);
3287- public bool get_has_frame ();
3288- public bool get_icon_activatable (Gtk.EntryIconPosition icon_pos);
3289- public Gdk.Rectangle get_icon_area (Gtk.EntryIconPosition icon_pos);
3290- public int get_icon_at_pos (int x, int y);
3291- public unowned GLib.Icon get_icon_gicon (Gtk.EntryIconPosition icon_pos);
3292- public unowned string get_icon_name (Gtk.EntryIconPosition icon_pos);
3293- public unowned Gdk.Pixbuf get_icon_pixbuf (Gtk.EntryIconPosition icon_pos);
3294- public bool get_icon_sensitive (Gtk.EntryIconPosition icon_pos);
3295- public unowned string get_icon_stock (Gtk.EntryIconPosition icon_pos);
3296- public Gtk.ImageType get_icon_storage_type (Gtk.EntryIconPosition icon_pos);
3297- public string? get_icon_tooltip_markup (Gtk.EntryIconPosition icon_pos);
3298- public string? get_icon_tooltip_text (Gtk.EntryIconPosition icon_pos);
3299- public unowned Gtk.Border? get_inner_border ();
3300- public Gtk.InputHints get_input_hints ();
3301- public Gtk.InputPurpose get_input_purpose ();
3302- public unichar get_invisible_char ();
3303- public unowned Pango.Layout get_layout ();
3304- public void get_layout_offsets (out int x, out int y);
3305- public int get_max_length ();
3306- public int get_max_width_chars ();
3307- public bool get_overwrite_mode ();
3308- public unowned string get_placeholder_text ();
3309- public double get_progress_fraction ();
3310- public double get_progress_pulse_step ();
3311- public unowned Pango.TabArray? get_tabs ();
3312- public unowned string get_text ();
3313- public void get_text_area (out Gdk.Rectangle text_area);
3314- [NoWrapper]
3315- public virtual void get_text_area_size (out int x, out int y, out int width, out int height);
3316- public uint16 get_text_length ();
3317- public bool get_visibility ();
3318- public int get_width_chars ();
3319- public bool im_context_filter_keypress (Gdk.EventKey event);
3320- public int layout_index_to_text_index (int layout_index);
3321- public void progress_pulse ();
3322- public void reset_im_context ();
3323- public void set_activates_default (bool setting);
3324- public void set_alignment (float xalign);
3325- public void set_attributes (Pango.AttrList attrs);
3326- public void set_buffer (Gtk.EntryBuffer buffer);
3327- public void set_completion (Gtk.EntryCompletion completion);
3328- public void set_cursor_hadjustment (Gtk.Adjustment adjustment);
3329- public void set_has_frame (bool setting);
3330- public void set_icon_activatable (Gtk.EntryIconPosition icon_pos, bool activatable);
3331- public void set_icon_drag_source (Gtk.EntryIconPosition icon_pos, Gtk.TargetList target_list, Gdk.DragAction actions);
3332- public void set_icon_from_gicon (Gtk.EntryIconPosition icon_pos, GLib.Icon? icon);
3333- public void set_icon_from_icon_name (Gtk.EntryIconPosition icon_pos, string? icon_name);
3334- public void set_icon_from_pixbuf (Gtk.EntryIconPosition icon_pos, Gdk.Pixbuf? pixbuf);
3335- public void set_icon_from_stock (Gtk.EntryIconPosition icon_pos, string? stock_id);
3336- public void set_icon_sensitive (Gtk.EntryIconPosition icon_pos, bool sensitive);
3337- public void set_icon_tooltip_markup (Gtk.EntryIconPosition icon_pos, string? tooltip);
3338- public void set_icon_tooltip_text (Gtk.EntryIconPosition icon_pos, string? tooltip);
3339- [Deprecated (since = "3.4")]
3340- public void set_inner_border (Gtk.Border border);
3341- public void set_input_hints (Gtk.InputHints hints);
3342- public void set_input_purpose (Gtk.InputPurpose purpose);
3343- public void set_invisible_char (unichar ch);
3344- public void set_max_length (int max);
3345- public void set_max_width_chars (int n_chars);
3346- public void set_overwrite_mode (bool overwrite);
3347- public void set_placeholder_text (string text);
3348- public void set_progress_fraction (double fraction);
3349- public void set_progress_pulse_step (double fraction);
3350- public void set_tabs (Pango.TabArray tabs);
3351- public void set_text (string text);
3352- public void set_visibility (bool visible);
3353- public void set_width_chars (int n_chars);
3354- public int text_index_to_layout_index (int text_index);
3355- public void unset_invisible_char ();
3356- [CCode (has_construct_function = false, type = "GtkWidget*")]
3357- public Entry.with_buffer (Gtk.EntryBuffer buffer);
3358- public bool activates_default { get; set; }
3359- public Pango.AttrList attributes { get; set; }
3360- public Gtk.EntryBuffer buffer { get; set construct; }
3361- [NoAccessorMethod]
3362- public bool caps_lock_warning { get; set; }
3363- public Gtk.EntryCompletion completion { get; set; }
3364- [NoAccessorMethod]
3365- public int cursor_position { get; }
3366- [NoAccessorMethod]
3367- public bool editable { get; set; }
3368- public bool has_frame { get; set; }
3369- [NoAccessorMethod]
3370- public string im_module { owned get; set; }
3371- [Deprecated (since = "3.4")]
3372- public Gtk.Border inner_border { get; set; }
3373- public Gtk.InputHints input_hints { get; set; }
3374- public Gtk.InputPurpose input_purpose { get; set; }
3375- public uint invisible_char { get; set; }
3376- [NoAccessorMethod]
3377- public bool invisible_char_set { get; set; }
3378- public int max_length { get; set; }
3379- public int max_width_chars { get; set; }
3380- public bool overwrite_mode { get; set; }
3381- public string placeholder_text { get; set; }
3382- [NoAccessorMethod]
3383- public bool populate_all { get; set; }
3384- [NoAccessorMethod]
3385- public bool primary_icon_activatable { get; set; }
3386- [NoAccessorMethod]
3387- public GLib.Icon primary_icon_gicon { owned get; set; }
3388- [NoAccessorMethod]
3389- public string primary_icon_name { owned get; set; }
3390- [NoAccessorMethod]
3391- public Gdk.Pixbuf primary_icon_pixbuf { owned get; set; }
3392- [NoAccessorMethod]
3393- public bool primary_icon_sensitive { get; set; }
3394- [NoAccessorMethod]
3395- public string primary_icon_stock { owned get; set; }
3396- [NoAccessorMethod]
3397- public Gtk.ImageType primary_icon_storage_type { get; }
3398- [NoAccessorMethod]
3399- public string primary_icon_tooltip_markup { owned get; set; }
3400- [NoAccessorMethod]
3401- public string primary_icon_tooltip_text { owned get; set; }
3402- public double progress_fraction { get; set; }
3403- public double progress_pulse_step { get; set; }
3404- [NoAccessorMethod]
3405- public int scroll_offset { get; }
3406- [NoAccessorMethod]
3407- public bool secondary_icon_activatable { get; set; }
3408- [NoAccessorMethod]
3409- public GLib.Icon secondary_icon_gicon { owned get; set; }
3410- [NoAccessorMethod]
3411- public string secondary_icon_name { owned get; set; }
3412- [NoAccessorMethod]
3413- public Gdk.Pixbuf secondary_icon_pixbuf { owned get; set; }
3414- [NoAccessorMethod]
3415- public bool secondary_icon_sensitive { get; set; }
3416- [NoAccessorMethod]
3417- public string secondary_icon_stock { owned get; set; }
3418- [NoAccessorMethod]
3419- public Gtk.ImageType secondary_icon_storage_type { get; }
3420- [NoAccessorMethod]
3421- public string secondary_icon_tooltip_markup { owned get; set; }
3422- [NoAccessorMethod]
3423- public string secondary_icon_tooltip_text { owned get; set; }
3424- [NoAccessorMethod]
3425- public int selection_bound { get; }
3426- [NoAccessorMethod]
3427- public Gtk.ShadowType shadow_type { get; set; }
3428- public Pango.TabArray tabs { get; set; }
3429- public string text { get; set; }
3430- public uint text_length { get; }
3431- [NoAccessorMethod]
3432- public bool truncate_multiline { get; set; }
3433- public bool visibility { get; set; }
3434- public int width_chars { get; set; }
3435- [NoAccessorMethod]
3436- public float xalign { get; set; }
3437- public virtual signal void activate ();
3438- public virtual signal void backspace ();
3439- public virtual signal void copy_clipboard ();
3440- public virtual signal void cut_clipboard ();
3441- public virtual signal void delete_from_cursor (Gtk.DeleteType type, int count);
3442- public virtual signal void icon_press (Gtk.EntryIconPosition p0, Gdk.Event p1);
3443- public virtual signal void icon_release (Gtk.EntryIconPosition p0, Gdk.Event p1);
3444- public virtual signal void insert_at_cursor (string str);
3445- public virtual signal void move_cursor (Gtk.MovementStep step, int count, bool extend_selection);
3446- public virtual signal void paste_clipboard ();
3447- public virtual signal void populate_popup (Gtk.Menu popup);
3448- public virtual signal void preedit_changed (string p0);
3449- public virtual signal void toggle_overwrite ();
3450- }
3451- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_entry_accessible_get_type ()")]
3452- public class EntryAccessible : Gtk.WidgetAccessible, Atk.Component, Atk.EditableText, Atk.Text, Atk.Action {
3453- [CCode (has_construct_function = false)]
3454- protected EntryAccessible ();
3455- }
3456- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_entry_buffer_get_type ()")]
3457- public class EntryBuffer : GLib.Object {
3458- [CCode (has_construct_function = false)]
3459- public EntryBuffer (uint8[] initial_chars);
3460- public virtual uint delete_text (uint position, int n_chars);
3461- public void emit_deleted_text (uint position, uint n_chars);
3462- public void emit_inserted_text (uint position, uint8[] chars);
3463- public size_t get_bytes ();
3464- public virtual uint get_length ();
3465- public int get_max_length ();
3466- public virtual unowned string get_text ();
3467- public virtual uint insert_text (uint position, uint8[] chars);
3468- public void set_max_length (int max_length);
3469- public void set_text (uint8[] chars);
3470- public uint length { get; }
3471- public int max_length { get; set; }
3472- public string text { get; set; }
3473- public virtual signal void deleted_text (uint position, uint n_chars);
3474- public virtual signal void inserted_text (uint position, string chars, uint n_chars);
3475- }
3476- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_entry_completion_get_type ()")]
3477- public class EntryCompletion : GLib.Object, Gtk.CellLayout, Gtk.Buildable {
3478- [CCode (has_construct_function = false)]
3479- public EntryCompletion ();
3480- public void complete ();
3481- public string compute_prefix (string key);
3482- public void delete_action (int index_);
3483- public unowned string get_completion_prefix ();
3484- public unowned Gtk.Widget get_entry ();
3485- public bool get_inline_completion ();
3486- public bool get_inline_selection ();
3487- public int get_minimum_key_length ();
3488- public unowned Gtk.TreeModel get_model ();
3489- public bool get_popup_completion ();
3490- public bool get_popup_set_width ();
3491- public bool get_popup_single_match ();
3492- public int get_text_column ();
3493- public void insert_action_markup (int index_, string markup);
3494- public void insert_action_text (int index_, string text);
3495- public void set_inline_completion (bool inline_completion);
3496- public void set_inline_selection (bool inline_selection);
3497- public void set_match_func (owned Gtk.EntryCompletionMatchFunc func);
3498- public void set_minimum_key_length (int length);
3499- public void set_model (Gtk.TreeModel? model);
3500- public void set_popup_completion (bool popup_completion);
3501- public void set_popup_set_width (bool popup_set_width);
3502- public void set_popup_single_match (bool popup_single_match);
3503- public void set_text_column (int column);
3504- [CCode (has_construct_function = false)]
3505- public EntryCompletion.with_area (Gtk.CellArea area);
3506- [NoAccessorMethod]
3507- public Gtk.CellArea cell_area { owned get; construct; }
3508- public bool inline_completion { get; set; }
3509- public bool inline_selection { get; set; }
3510- public int minimum_key_length { get; set; }
3511- public Gtk.TreeModel model { get; set; }
3512- public bool popup_completion { get; set; }
3513- public bool popup_set_width { get; set; }
3514- public bool popup_single_match { get; set; }
3515- public int text_column { get; set; }
3516- public virtual signal void action_activated (int index_);
3517- public virtual signal bool cursor_on_match (Gtk.TreeModel model, Gtk.TreeIter iter);
3518- [HasEmitter]
3519- public virtual signal bool insert_prefix (string prefix);
3520- public virtual signal bool match_selected (Gtk.TreeModel model, Gtk.TreeIter iter);
3521- public virtual signal void no_matches ();
3522- }
3523- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_entry_icon_accessible_get_type ()")]
3524- public class EntryIconAccessible : Atk.Object, Atk.Action, Atk.Component {
3525- [CCode (has_construct_function = false)]
3526- protected EntryIconAccessible ();
3527- }
3528- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_event_box_get_type ()")]
3529- public class EventBox : Gtk.Bin, Atk.Implementor, Gtk.Buildable {
3530- [CCode (has_construct_function = false, type = "GtkWidget*")]
3531- public EventBox ();
3532- public bool get_above_child ();
3533- public bool get_visible_window ();
3534- public void set_above_child (bool above_child);
3535- public void set_visible_window (bool visible_window);
3536- public bool above_child { get; set; }
3537- public bool visible_window { get; set; }
3538- }
3539- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_event_controller_get_type ()")]
3540- public abstract class EventController : GLib.Object {
3541- [CCode (has_construct_function = false)]
3542- protected EventController ();
3543- public Gtk.PropagationPhase get_propagation_phase ();
3544- public unowned Gtk.Widget get_widget ();
3545- public bool handle_event (Gdk.Event event);
3546- public void reset ();
3547- public void set_propagation_phase (Gtk.PropagationPhase phase);
3548- public Gtk.PropagationPhase propagation_phase { get; set; }
3549- public Gtk.Widget widget { get; construct; }
3550- }
3551- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_expander_get_type ()")]
3552- public class Expander : Gtk.Bin, Atk.Implementor, Gtk.Buildable {
3553- [CCode (has_construct_function = false, type = "GtkWidget*")]
3554- public Expander (string label);
3555- public bool get_expanded ();
3556- public unowned string get_label ();
3557- public bool get_label_fill ();
3558- public unowned Gtk.Widget get_label_widget ();
3559- public bool get_resize_toplevel ();
3560- public int get_spacing ();
3561- public bool get_use_markup ();
3562- public bool get_use_underline ();
3563- public void set_expanded (bool expanded);
3564- public void set_label (string label);
3565- public void set_label_fill (bool label_fill);
3566- public void set_label_widget (Gtk.Widget label_widget);
3567- public void set_resize_toplevel (bool resize_toplevel);
3568- public void set_spacing (int spacing);
3569- public void set_use_markup (bool use_markup);
3570- public void set_use_underline (bool use_underline);
3571- [CCode (has_construct_function = false, type = "GtkWidget*")]
3572- public Expander.with_mnemonic (string label);
3573- public bool expanded { get; set construct; }
3574- public string label { get; set construct; }
3575- public bool label_fill { get; set construct; }
3576- public Gtk.Widget label_widget { get; set; }
3577- public bool resize_toplevel { get; set; }
3578- public int spacing { get; set; }
3579- public bool use_markup { get; set construct; }
3580- public bool use_underline { get; set construct; }
3581- public virtual signal void activate ();
3582- }
3583- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_expander_accessible_get_type ()")]
3584- public class ExpanderAccessible : Gtk.ContainerAccessible, Atk.Component, Atk.Action {
3585- [CCode (has_construct_function = false)]
3586- protected ExpanderAccessible ();
3587- }
3588- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_file_chooser_button_get_type ()")]
3589- public class FileChooserButton : Gtk.Box, Atk.Implementor, Gtk.Buildable, Gtk.Orientable, Gtk.FileChooser {
3590- [CCode (has_construct_function = false, type = "GtkWidget*")]
3591- public FileChooserButton (string title, Gtk.FileChooserAction action);
3592- public bool get_focus_on_click ();
3593- public unowned string get_title ();
3594- public int get_width_chars ();
3595- public void set_focus_on_click (bool focus_on_click);
3596- public void set_title (string title);
3597- public void set_width_chars (int n_chars);
3598- [CCode (has_construct_function = false, type = "GtkWidget*")]
3599- public FileChooserButton.with_dialog (Gtk.Dialog dialog);
3600- public Gtk.FileChooser dialog { construct; }
3601- public bool focus_on_click { get; set; }
3602- public string title { get; set; }
3603- public int width_chars { get; set; }
3604- public virtual signal void file_set ();
3605- }
3606- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_file_chooser_dialog_get_type ()")]
3607- public class FileChooserDialog : Gtk.Dialog, Atk.Implementor, Gtk.Buildable, Gtk.FileChooser {
3608- [CCode (has_construct_function = false, type = "GtkWidget*")]
3609- public FileChooserDialog (string? title, Gtk.Window? parent, Gtk.FileChooserAction action, ...);
3610- }
3611- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_file_chooser_widget_get_type ()")]
3612- public class FileChooserWidget : Gtk.Box, Atk.Implementor, Gtk.Buildable, Gtk.Orientable, Gtk.FileChooser, Gtk.FileChooserEmbed {
3613- [CCode (has_construct_function = false, type = "GtkWidget*")]
3614- public FileChooserWidget (Gtk.FileChooserAction action);
3615- public virtual signal void desktop_folder ();
3616- public virtual signal void down_folder ();
3617- public virtual signal void home_folder ();
3618- public virtual signal void location_popup (string p0);
3619- public virtual signal void location_popup_on_paste ();
3620- public virtual signal void location_toggle_popup ();
3621- public virtual signal void quick_bookmark (int p0);
3622- public virtual signal void recent_shortcut ();
3623- public virtual signal void search_shortcut ();
3624- public virtual signal void show_hidden ();
3625- public virtual signal void up_folder ();
3626- }
3627- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_file_filter_get_type ()")]
3628- public class FileFilter : GLib.InitiallyUnowned, Gtk.Buildable {
3629- [CCode (has_construct_function = false)]
3630- public FileFilter ();
3631- public void add_custom (Gtk.FileFilterFlags needed, owned Gtk.FileFilterFunc func);
3632- public void add_mime_type (string mime_type);
3633- public void add_pattern (string pattern);
3634- public void add_pixbuf_formats ();
3635- public bool filter (Gtk.FileFilterInfo filter_info);
3636- [CCode (cname = "gtk_file_filter_get_name")]
3637- public unowned string get_filter_name ();
3638- public Gtk.FileFilterFlags get_needed ();
3639- [CCode (cname = "gtk_file_filter_set_name")]
3640- public void set_filter_name (string name);
3641- }
3642- [CCode (cheader_filename = "gtk/gtk.h")]
3643- [Compact]
3644- public class FileFilterInfo {
3645- public Gtk.FileFilterFlags contains;
3646- public weak string display_name;
3647- public weak string filename;
3648- public weak string mime_type;
3649- public weak string uri;
3650- }
3651- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_fixed_get_type ()")]
3652- public class Fixed : Gtk.Container, Atk.Implementor, Gtk.Buildable {
3653- [CCode (has_construct_function = false, type = "GtkWidget*")]
3654- public Fixed ();
3655- public void move (Gtk.Widget widget, int x, int y);
3656- public void put (Gtk.Widget widget, int x, int y);
3657- }
3658- [CCode (cheader_filename = "gtk/gtk.h")]
3659- [Compact]
3660- public class FixedChild {
3661- public weak Gtk.Widget widget;
3662- public int x;
3663- public int y;
3664- }
3665- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_flow_box_get_type ()")]
3666- public class FlowBox : Gtk.Container, Atk.Implementor, Gtk.Buildable, Gtk.Orientable {
3667- [CCode (has_construct_function = false, type = "GtkWidget*")]
3668- public FlowBox ();
3669- public bool get_activate_on_single_click ();
3670- public unowned Gtk.FlowBoxChild get_child_at_index (int idx);
3671- public uint get_column_spacing ();
3672- public bool get_homogeneous ();
3673- public uint get_max_children_per_line ();
3674- public uint get_min_children_per_line ();
3675- public uint get_row_spacing ();
3676- public GLib.List<weak Gtk.FlowBoxChild> get_selected_children ();
3677- public Gtk.SelectionMode get_selection_mode ();
3678- public void insert (Gtk.Widget widget, int position);
3679- public void invalidate_filter ();
3680- public void invalidate_sort ();
3681- public void select_child (Gtk.FlowBoxChild child);
3682- public void selected_foreach (Gtk.FlowBoxForeachFunc func);
3683- public void set_activate_on_single_click (bool single);
3684- public void set_column_spacing (uint spacing);
3685- public void set_filter_func (owned Gtk.FlowBoxFilterFunc? filter_func);
3686- public void set_hadjustment (Gtk.Adjustment adjustment);
3687- public void set_homogeneous (bool homogeneous);
3688- public void set_max_children_per_line (uint n_children);
3689- public void set_min_children_per_line (uint n_children);
3690- public void set_row_spacing (uint spacing);
3691- public void set_selection_mode (Gtk.SelectionMode mode);
3692- public void set_sort_func (owned Gtk.FlowBoxSortFunc? sort_func);
3693- public void set_vadjustment (Gtk.Adjustment adjustment);
3694- public void unselect_child (Gtk.FlowBoxChild child);
3695- public bool activate_on_single_click { get; set; }
3696- public uint column_spacing { get; set; }
3697- public bool homogeneous { get; set; }
3698- public uint max_children_per_line { get; set; }
3699- public uint min_children_per_line { get; set; }
3700- public uint row_spacing { get; set; }
3701- public Gtk.SelectionMode selection_mode { get; set; }
3702- public virtual signal void activate_cursor_child ();
3703- public virtual signal void child_activated (Gtk.FlowBoxChild child);
3704- public virtual signal void move_cursor (Gtk.MovementStep step, int count);
3705- [HasEmitter]
3706- public virtual signal void select_all ();
3707- public virtual signal void selected_children_changed ();
3708- public virtual signal void toggle_cursor_child ();
3709- [HasEmitter]
3710- public virtual signal void unselect_all ();
3711- }
3712- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_flow_box_accessible_get_type ()")]
3713- public class FlowBoxAccessible : Gtk.ContainerAccessible, Atk.Component, Atk.Selection {
3714- [CCode (has_construct_function = false)]
3715- protected FlowBoxAccessible ();
3716- }
3717- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_flow_box_child_get_type ()")]
3718- public class FlowBoxChild : Gtk.Bin, Atk.Implementor, Gtk.Buildable {
3719- [CCode (has_construct_function = false, type = "GtkWidget*")]
3720- public FlowBoxChild ();
3721- public void changed ();
3722- public int get_index ();
3723- public bool is_selected ();
3724- public virtual signal void activate ();
3725- }
3726- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_flow_box_child_accessible_get_type ()")]
3727- public class FlowBoxChildAccessible : Gtk.ContainerAccessible, Atk.Component {
3728- [CCode (has_construct_function = false)]
3729- protected FlowBoxChildAccessible ();
3730- }
3731- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_font_button_get_type ()")]
3732- public class FontButton : Gtk.Button, Atk.Implementor, Gtk.Buildable, Gtk.Actionable, Gtk.Activatable, Gtk.FontChooser {
3733- [CCode (has_construct_function = false, type = "GtkWidget*")]
3734- public FontButton ();
3735- public unowned string get_font_name ();
3736- public bool get_show_size ();
3737- public bool get_show_style ();
3738- public unowned string get_title ();
3739- public bool get_use_font ();
3740- public bool get_use_size ();
3741- public bool set_font_name (string fontname);
3742- public void set_show_size (bool show_size);
3743- public void set_show_style (bool show_style);
3744- public void set_title (string title);
3745- public void set_use_font (bool use_font);
3746- public void set_use_size (bool use_size);
3747- [CCode (has_construct_function = false, type = "GtkWidget*")]
3748- public FontButton.with_font (string fontname);
3749- public string font_name { get; set; }
3750- public bool show_size { get; set; }
3751- public bool show_style { get; set; }
3752- public string title { get; set; }
3753- public bool use_font { get; set; }
3754- public bool use_size { get; set; }
3755- public virtual signal void font_set ();
3756- }
3757- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_font_chooser_dialog_get_type ()")]
3758- public class FontChooserDialog : Gtk.Dialog, Atk.Implementor, Gtk.Buildable, Gtk.FontChooser {
3759- [CCode (has_construct_function = false, type = "GtkWidget*")]
3760- public FontChooserDialog (string? title, Gtk.Window? parent);
3761- }
3762- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_font_chooser_widget_get_type ()")]
3763- public class FontChooserWidget : Gtk.Box, Atk.Implementor, Gtk.Buildable, Gtk.Orientable, Gtk.FontChooser {
3764- [CCode (has_construct_function = false, type = "GtkWidget*")]
3765- public FontChooserWidget ();
3766- }
3767- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_font_selection_get_type ()")]
3768- public class FontSelection : Gtk.Box, Atk.Implementor, Gtk.Buildable, Gtk.Orientable {
3769- [CCode (has_construct_function = false, type = "GtkWidget*")]
3770- public FontSelection ();
3771- public unowned Pango.FontFace get_face ();
3772- public unowned Gtk.Widget get_face_list ();
3773- public unowned Pango.FontFamily get_family ();
3774- public unowned Gtk.Widget get_family_list ();
3775- public string get_font_name ();
3776- public unowned Gtk.Widget get_preview_entry ();
3777- public unowned string get_preview_text ();
3778- public int get_size ();
3779- public unowned Gtk.Widget get_size_entry ();
3780- public unowned Gtk.Widget get_size_list ();
3781- public bool set_font_name (string fontname);
3782- public void set_preview_text (string text);
3783- public string font_name { owned get; set; }
3784- public string preview_text { get; set; }
3785- }
3786- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_font_selection_dialog_get_type ()")]
3787- [Deprecated (replacement = "FontChooserDialog", since = "3.2")]
3788- public class FontSelectionDialog : Gtk.Dialog, Atk.Implementor, Gtk.Buildable {
3789- [CCode (has_construct_function = false, type = "GtkWidget*")]
3790- public FontSelectionDialog (string title);
3791- public unowned Gtk.Widget get_cancel_button ();
3792- public string get_font_name ();
3793- public unowned Gtk.Widget get_font_selection ();
3794- public unowned Gtk.Widget get_ok_button ();
3795- public unowned string get_preview_text ();
3796- public bool set_font_name (string fontname);
3797- public void set_preview_text (string text);
3798- }
3799- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_frame_get_type ()")]
3800- public class Frame : Gtk.Bin, Atk.Implementor, Gtk.Buildable {
3801- [CCode (has_construct_function = false, type = "GtkWidget*")]
3802- public Frame (string? label);
3803- [NoWrapper]
3804- public virtual void compute_child_allocation (Gtk.Allocation allocation);
3805- public unowned string get_label ();
3806- public void get_label_align (out float xalign, out float yalign);
3807- public unowned Gtk.Widget? get_label_widget ();
3808- public Gtk.ShadowType get_shadow_type ();
3809- public void set_label (string? label);
3810- public void set_label_align (float xalign, float yalign);
3811- public void set_label_widget (Gtk.Widget? label_widget);
3812- public void set_shadow_type (Gtk.ShadowType type);
3813- public string label { get; set; }
3814- public Gtk.Widget label_widget { get; set; }
3815- [NoAccessorMethod]
3816- public float label_xalign { get; set; }
3817- [NoAccessorMethod]
3818- public float label_yalign { get; set; }
3819- public Gtk.ShadowType shadow_type { get; set; }
3820- }
3821- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_frame_accessible_get_type ()")]
3822- public class FrameAccessible : Gtk.ContainerAccessible, Atk.Component {
3823- [CCode (has_construct_function = false)]
3824- protected FrameAccessible ();
3825- }
3826- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_gesture_get_type ()")]
3827- public abstract class Gesture : Gtk.EventController {
3828- [CCode (has_construct_function = false)]
3829- protected Gesture ();
3830- public bool get_bounding_box (out Gdk.Rectangle rect);
3831- public bool get_bounding_box_center (out double x, out double y);
3832- public unowned Gdk.Device? get_device ();
3833- public GLib.List<weak Gtk.Gesture> get_group ();
3834- public unowned Gdk.Event get_last_event (Gdk.EventSequence sequence);
3835- public unowned Gdk.EventSequence get_last_updated_sequence ();
3836- public bool get_point (Gdk.EventSequence? sequence, out double? x = null, out double? y = null);
3837- public Gtk.EventSequenceState get_sequence_state (Gdk.EventSequence sequence);
3838- public GLib.List<weak Gdk.EventSequence> get_sequences ();
3839- public unowned Gdk.Window? get_window ();
3840- public void group (Gtk.Gesture gesture);
3841- public bool handles_sequence (Gdk.EventSequence sequence);
3842- public bool is_active ();
3843- public bool is_grouped_with (Gtk.Gesture other);
3844- public bool is_recognized ();
3845- public bool set_sequence_state (Gdk.EventSequence sequence, Gtk.EventSequenceState state);
3846- public bool set_state (Gtk.EventSequenceState state);
3847- public void set_window (Gdk.Window? window);
3848- public void ungroup ();
3849- [NoAccessorMethod]
3850- public uint n_points { get; construct; }
3851- public Gdk.Window window { get; set; }
3852- public virtual signal void begin (Gdk.EventSequence p0);
3853- public virtual signal void cancel (Gdk.EventSequence p0);
3854- public virtual signal void end (Gdk.EventSequence p0);
3855- public virtual signal void sequence_state_changed (Gdk.EventSequence p0, Gtk.EventSequenceState p1);
3856- public virtual signal void update (Gdk.EventSequence p0);
3857- }
3858- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_gesture_drag_get_type ()")]
3859- public class GestureDrag : Gtk.GestureSingle {
3860- [CCode (has_construct_function = false, type = "GtkGesture*")]
3861- public GestureDrag (Gtk.Widget widget);
3862- public bool get_offset (out double x, out double y);
3863- public bool get_start_point (out double x, out double y);
3864- public virtual signal void drag_begin (double p0, double p1);
3865- public virtual signal void drag_end (double p0, double p1);
3866- public virtual signal void drag_update (double p0, double p1);
3867- }
3868- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_gesture_long_press_get_type ()")]
3869- public class GestureLongPress : Gtk.GestureSingle {
3870- [CCode (has_construct_function = false, type = "GtkGesture*")]
3871- public GestureLongPress (Gtk.Widget widget);
3872- public virtual signal void cancelled ();
3873- public virtual signal void pressed (double p0, double p1);
3874- }
3875- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_gesture_multi_press_get_type ()")]
3876- public class GestureMultiPress : Gtk.GestureSingle {
3877- [CCode (has_construct_function = false, type = "GtkGesture*")]
3878- public GestureMultiPress (Gtk.Widget widget);
3879- public bool get_area (out Gdk.Rectangle rect);
3880- public void set_area (Gdk.Rectangle rect);
3881- public virtual signal void pressed (int p0, double p1, double p2);
3882- public virtual signal void released (int p0, double p1, double p2);
3883- public virtual signal void stopped ();
3884- }
3885- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_gesture_pan_get_type ()")]
3886- public class GesturePan : Gtk.GestureDrag {
3887- [CCode (has_construct_function = false, type = "GtkGesture*")]
3888- public GesturePan (Gtk.Widget widget, Gtk.Orientation orientation);
3889- public Gtk.Orientation get_orientation ();
3890- public void set_orientation (Gtk.Orientation orientation);
3891- public Gtk.Orientation orientation { get; set; }
3892- public virtual signal void pan (Gtk.PanDirection p0, double p1);
3893- }
3894- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_gesture_rotate_get_type ()")]
3895- public class GestureRotate : Gtk.Gesture {
3896- [CCode (has_construct_function = false, type = "GtkGesture*")]
3897- public GestureRotate (Gtk.Widget widget);
3898- public double get_angle_delta ();
3899- public virtual signal void angle_changed (double p0, double p1);
3900- }
3901- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_gesture_single_get_type ()")]
3902- public class GestureSingle : Gtk.Gesture {
3903- [CCode (has_construct_function = false)]
3904- protected GestureSingle ();
3905- public uint get_button ();
3906- public uint get_current_button ();
3907- public Gdk.EventSequence get_current_sequence ();
3908- public bool get_exclusive ();
3909- public bool get_touch_only ();
3910- public void set_button (uint button);
3911- public void set_exclusive (bool exclusive);
3912- public void set_touch_only (bool touch_only);
3913- public uint button { get; set; }
3914- public bool exclusive { get; set; }
3915- public bool touch_only { get; set; }
3916- }
3917- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_gesture_swipe_get_type ()")]
3918- public class GestureSwipe : Gtk.GestureSingle {
3919- [CCode (has_construct_function = false, type = "GtkGesture*")]
3920- public GestureSwipe (Gtk.Widget widget);
3921- public bool get_velocity (out double velocity_x, out double velocity_y);
3922- public virtual signal void swipe (double p0, double p1);
3923- }
3924- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_gesture_zoom_get_type ()")]
3925- public class GestureZoom : Gtk.Gesture {
3926- [CCode (has_construct_function = false, type = "GtkGesture*")]
3927- public GestureZoom (Gtk.Widget widget);
3928- public double get_scale_delta ();
3929- public virtual signal void scale_changed (double p0);
3930- }
3931- [CCode (cheader_filename = "gtk/gtk.h", ref_function = "gtk_gradient_ref", type_id = "gtk_gradient_get_type ()", unref_function = "gtk_gradient_unref")]
3932- [Compact]
3933- public class Gradient {
3934- public void add_color_stop (double offset, Gtk.SymbolicColor color);
3935- [CCode (has_construct_function = false)]
3936- public Gradient.linear (double x0, double y0, double x1, double y1);
3937- [CCode (has_construct_function = false)]
3938- public Gradient.radial (double x0, double y0, double radius0, double x1, double y1, double radius1);
3939- public bool resolve (Gtk.StyleProperties props, out Cairo.Pattern resolved_gradient);
3940- public Cairo.Pattern resolve_for_context (Gtk.StyleContext context);
3941- public string to_string ();
3942- }
3943- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_grid_get_type ()")]
3944- public class Grid : Gtk.Container, Atk.Implementor, Gtk.Buildable, Gtk.Orientable {
3945- [CCode (has_construct_function = false, type = "GtkWidget*")]
3946- public Grid ();
3947- public void attach (Gtk.Widget child, int left, int top, int width, int height);
3948- public void attach_next_to (Gtk.Widget child, Gtk.Widget? sibling, Gtk.PositionType side, int width, int height);
3949- public int get_baseline_row ();
3950- public unowned Gtk.Widget get_child_at (int left, int top);
3951- public bool get_column_homogeneous ();
3952- public uint get_column_spacing ();
3953- public Gtk.BaselinePosition get_row_baseline_position (int row);
3954- public bool get_row_homogeneous ();
3955- public uint get_row_spacing ();
3956- public void insert_column (int position);
3957- public void insert_next_to (Gtk.Widget sibling, Gtk.PositionType side);
3958- public void insert_row (int position);
3959- public void remove_column (int position);
3960- public void remove_row (int position);
3961- public void set_baseline_row (int row);
3962- public void set_column_homogeneous (bool homogeneous);
3963- public void set_column_spacing (uint spacing);
3964- public void set_row_baseline_position (int row, Gtk.BaselinePosition pos);
3965- public void set_row_homogeneous (bool homogeneous);
3966- public void set_row_spacing (uint spacing);
3967- public int baseline_row { get; set; }
3968- public bool column_homogeneous { get; set; }
3969- public int column_spacing { get; set; }
3970- public bool row_homogeneous { get; set; }
3971- public int row_spacing { get; set; }
3972- }
3973- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_hbox_get_type ()")]
3974- [Deprecated (replacement = "Grid", since = "3.2")]
3975- public class HBox : Gtk.Box, Atk.Implementor, Gtk.Buildable, Gtk.Orientable {
3976- [CCode (has_construct_function = false, type = "GtkWidget*")]
3977- public HBox (bool homogeneous, int spacing);
3978- }
3979- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_hbutton_box_get_type ()")]
3980- public class HButtonBox : Gtk.ButtonBox, Atk.Implementor, Gtk.Buildable, Gtk.Orientable {
3981- [CCode (has_construct_function = false, type = "GtkWidget*")]
3982- public HButtonBox ();
3983- }
3984- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_hpaned_get_type ()")]
3985- [Deprecated (replacement = "Paned", since = "3.2")]
3986- public class HPaned : Gtk.Paned, Atk.Implementor, Gtk.Buildable, Gtk.Orientable {
3987- [CCode (has_construct_function = false, type = "GtkWidget*")]
3988- public HPaned ();
3989- }
3990- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_hsv_get_type ()")]
3991- public class HSV : Gtk.Widget, Atk.Implementor, Gtk.Buildable {
3992- [CCode (has_construct_function = false, type = "GtkWidget*")]
3993- public HSV ();
3994- public void get_color (out double h, out double s, out double v);
3995- public void get_metrics (out int size, out int ring_width);
3996- public bool is_adjusting ();
3997- public void set_color (double h, double s, double v);
3998- public void set_metrics (int size, int ring_width);
3999- public static void to_rgb (double h, double s, double v, out double r, out double g, out double b);
4000- public virtual signal void changed ();
4001- public virtual signal void move (Gtk.DirectionType type);
4002- }
4003- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_hscale_get_type ()")]
4004- [Deprecated (since = "3.2")]
4005- public class HScale : Gtk.Scale, Atk.Implementor, Gtk.Buildable, Gtk.Orientable {
4006- [CCode (has_construct_function = false, type = "GtkWidget*")]
4007- public HScale (Gtk.Adjustment? adjustment);
4008- [CCode (has_construct_function = false, type = "GtkWidget*")]
4009- public HScale.with_range (double min, double max, double step);
4010- }
4011- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_hscrollbar_get_type ()")]
4012- [Deprecated (since = "3.2")]
4013- public class HScrollbar : Gtk.Scrollbar, Atk.Implementor, Gtk.Buildable, Gtk.Orientable {
4014- [CCode (has_construct_function = false, type = "GtkWidget*")]
4015- public HScrollbar (Gtk.Adjustment? adjustment);
4016- }
4017- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_hseparator_get_type ()")]
4018- [Deprecated (replacement = "Separator", since = "3.2")]
4019- public class HSeparator : Gtk.Separator, Atk.Implementor, Gtk.Buildable, Gtk.Orientable {
4020- [CCode (has_construct_function = false, type = "GtkWidget*")]
4021- public HSeparator ();
4022- }
4023- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_handle_box_get_type ()")]
4024- [Deprecated (since = "3.4")]
4025- public class HandleBox : Gtk.Bin, Atk.Implementor, Gtk.Buildable {
4026- [CCode (has_construct_function = false, type = "GtkWidget*")]
4027- public HandleBox ();
4028- public bool get_child_detached ();
4029- public Gtk.PositionType get_handle_position ();
4030- public Gtk.ShadowType get_shadow_type ();
4031- public Gtk.PositionType get_snap_edge ();
4032- public void set_handle_position (Gtk.PositionType position);
4033- public void set_shadow_type (Gtk.ShadowType type);
4034- public void set_snap_edge (Gtk.PositionType edge);
4035- public bool child_detached { get; }
4036- public Gtk.PositionType handle_position { get; set; }
4037- public Gtk.ShadowType shadow_type { get; set; }
4038- public Gtk.PositionType snap_edge { get; set; }
4039- [NoAccessorMethod]
4040- public bool snap_edge_set { get; set; }
4041- public virtual signal void child_attached (Gtk.Widget child);
4042- }
4043- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_header_bar_get_type ()")]
4044- public class HeaderBar : Gtk.Container, Atk.Implementor, Gtk.Buildable {
4045- [CCode (has_construct_function = false, type = "GtkWidget*")]
4046- public HeaderBar ();
4047- public unowned Gtk.Widget get_custom_title ();
4048- public unowned string get_decoration_layout ();
4049- public bool get_has_subtitle ();
4050- public bool get_show_close_button ();
4051- public unowned string get_subtitle ();
4052- public unowned string get_title ();
4053- public void pack_end (Gtk.Widget child);
4054- public void pack_start (Gtk.Widget child);
4055- public void set_custom_title (Gtk.Widget title_widget);
4056- public void set_decoration_layout (string layout);
4057- public void set_has_subtitle (bool setting);
4058- public void set_show_close_button (bool setting);
4059- public void set_subtitle (string? subtitle);
4060- public void set_title (string title);
4061- public Gtk.Widget custom_title { get; set construct; }
4062- public string decoration_layout { get; set; }
4063- [NoAccessorMethod]
4064- public bool decoration_layout_set { get; set; }
4065- public bool has_subtitle { get; set; }
4066- public bool show_close_button { get; set; }
4067- [NoAccessorMethod]
4068- public int spacing { get; set; }
4069- public string subtitle { get; set; }
4070- public string title { get; set; }
4071- }
4072- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_im_context_get_type ()")]
4073- public abstract class IMContext : GLib.Object {
4074- [CCode (has_construct_function = false)]
4075- protected IMContext ();
4076- public virtual bool filter_keypress (Gdk.EventKey event);
4077- public virtual void focus_in ();
4078- public virtual void focus_out ();
4079- public virtual void get_preedit_string (out string str, out Pango.AttrList attrs, out int cursor_pos);
4080- public virtual bool get_surrounding (out string text, out int cursor_index);
4081- public virtual void reset ();
4082- public virtual void set_client_window (Gdk.Window window);
4083- public virtual void set_cursor_location (Gdk.Rectangle area);
4084- public virtual void set_surrounding (string text, int len, int cursor_index);
4085- public virtual void set_use_preedit (bool use_preedit);
4086- [NoAccessorMethod]
4087- public Gtk.InputHints input_hints { get; set; }
4088- [NoAccessorMethod]
4089- public Gtk.InputPurpose input_purpose { get; set; }
4090- public virtual signal void commit (string str);
4091- [HasEmitter]
4092- public virtual signal bool delete_surrounding (int offset, int n_chars);
4093- public virtual signal void preedit_changed ();
4094- public virtual signal void preedit_end ();
4095- public virtual signal void preedit_start ();
4096- public virtual signal bool retrieve_surrounding ();
4097- }
4098- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_im_context_simple_get_type ()")]
4099- public class IMContextSimple : Gtk.IMContext {
4100- [CCode (has_construct_function = false, type = "GtkIMContext*")]
4101- public IMContextSimple ();
4102- public void add_table ([CCode (array_length = false)] uint16[] data, int max_seq_len, int n_seqs);
4103- }
4104- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_im_multicontext_get_type ()")]
4105- public class IMMulticontext : Gtk.IMContext {
4106- [CCode (has_construct_function = false, type = "GtkIMContext*")]
4107- public IMMulticontext ();
4108- public void append_menuitems (Gtk.MenuShell menushell);
4109- public unowned string get_context_id ();
4110- public void set_context_id (string context_id);
4111- }
4112- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_icon_factory_get_type ()")]
4113- [Deprecated (replacement = "Gtk.IconTheme", since = "3.10")]
4114- public class IconFactory : GLib.Object, Gtk.Buildable {
4115- [CCode (has_construct_function = false)]
4116- public IconFactory ();
4117- public void add (string stock_id, Gtk.IconSet icon_set);
4118- public void add_default ();
4119- public unowned Gtk.IconSet lookup (string stock_id);
4120- public static unowned Gtk.IconSet lookup_default (string stock_id);
4121- public void remove_default ();
4122- }
4123- [CCode (cheader_filename = "gtk/gtk.h", copy_function = "gtk_icon_info_copy", free_function = "gtk_icon_info_free", type_id = "gtk_icon_info_get_type ()")]
4124- [Compact]
4125- public class IconInfo {
4126- [CCode (has_construct_function = false)]
4127- protected IconInfo ();
4128- public Gtk.IconInfo copy ();
4129- [CCode (has_construct_function = false)]
4130- public IconInfo.for_pixbuf (Gtk.IconTheme icon_theme, Gdk.Pixbuf pixbuf);
4131- public void free ();
4132- public bool get_attach_points (out Gdk.Point[] points);
4133- public int get_base_scale ();
4134- public int get_base_size ();
4135- public unowned Gdk.Pixbuf get_builtin_pixbuf ();
4136- public unowned string get_display_name ();
4137- public bool get_embedded_rect (out Gdk.Rectangle rectangle);
4138- public unowned string get_filename ();
4139- public bool is_symbolic ();
4140- public Gdk.Pixbuf load_icon () throws GLib.Error;
4141- public async Gdk.Pixbuf load_icon_async (GLib.Cancellable? cancellable = null) throws GLib.Error;
4142- public Cairo.Surface load_surface (Gdk.Window for_window) throws GLib.Error;
4143- public Gdk.Pixbuf load_symbolic (Gdk.RGBA fg, Gdk.RGBA? success_color = null, Gdk.RGBA? warning_color = null, Gdk.RGBA? error_color = null, out bool was_symbolic = null) throws GLib.Error;
4144- public async Gdk.Pixbuf load_symbolic_async (Gdk.RGBA fg, Gdk.RGBA? success_color = null, Gdk.RGBA? warning_color = null, Gdk.RGBA? error_color = null, GLib.Cancellable? cancellable = null) throws GLib.Error;
4145- public Gdk.Pixbuf load_symbolic_for_context (Gtk.StyleContext context, out bool was_symbolic = null) throws GLib.Error;
4146- public async Gdk.Pixbuf load_symbolic_for_context_async (Gtk.StyleContext context, GLib.Cancellable? cancellable = null) throws GLib.Error;
4147- [Deprecated (replacement = "load_symbolic_for_context", since = "3.0")]
4148- public Gdk.Pixbuf load_symbolic_for_style (Gtk.Style style, Gtk.StateType state, out bool was_symbolic = null) throws GLib.Error;
4149- public void set_raw_coordinates (bool raw_coordinates);
4150- }
4151- [CCode (cheader_filename = "gtk/gtk.h")]
4152- [Compact]
4153- public class IconInfoClass {
4154- }
4155- [CCode (cheader_filename = "gtk/gtk.h", ref_function = "gtk_icon_set_ref", type_id = "gtk_icon_set_get_type ()", unref_function = "gtk_icon_set_unref")]
4156- [Compact]
4157- [Deprecated (replacement = "Gtk.IconTheme", since = "3.10")]
4158- public class IconSet {
4159- [CCode (has_construct_function = false)]
4160- public IconSet ();
4161- public void add_source (Gtk.IconSource source);
4162- public Gtk.IconSet copy ();
4163- [CCode (has_construct_function = false)]
4164- public IconSet.from_pixbuf (Gdk.Pixbuf pixbuf);
4165- public void get_sizes (out Gtk.IconSize[] sizes);
4166- [Deprecated (replacement = "set_render_icon_pixbuf", since = "3.0")]
4167- public Gdk.Pixbuf render_icon (Gtk.Style style, Gtk.TextDirection direction, Gtk.StateType state, Gtk.IconSize size, Gtk.Widget widget, string detail);
4168- [Deprecated (since = "3.10")]
4169- public Gdk.Pixbuf render_icon_pixbuf (Gtk.StyleContext context, Gtk.IconSize size);
4170- [Deprecated (since = "3.10")]
4171- public Cairo.Surface render_icon_surface (Gtk.StyleContext context, Gtk.IconSize size, int scale, Gdk.Window for_window);
4172- }
4173- [CCode (cheader_filename = "gtk/gtk.h", copy_function = "gtk_icon_source_copy", type_id = "gtk_icon_source_get_type ()")]
4174- [Compact]
4175- [Deprecated (replacement = "Gtk.IconTheme", since = "3.10")]
4176- public class IconSource {
4177- [CCode (has_construct_function = false)]
4178- public IconSource ();
4179- public Gtk.IconSource copy ();
4180- public Gtk.TextDirection get_direction ();
4181- public bool get_direction_wildcarded ();
4182- public unowned string get_filename ();
4183- public unowned string get_icon_name ();
4184- public unowned Gdk.Pixbuf get_pixbuf ();
4185- public Gtk.IconSize get_size ();
4186- public bool get_size_wildcarded ();
4187- public Gtk.StateType get_state ();
4188- public bool get_state_wildcarded ();
4189- public void set_direction (Gtk.TextDirection direction);
4190- public void set_direction_wildcarded (bool setting);
4191- public void set_filename (string filename);
4192- public void set_icon_name (string icon_name);
4193- public void set_pixbuf (Gdk.Pixbuf pixbuf);
4194- public void set_size (Gtk.IconSize size);
4195- public void set_size_wildcarded (bool setting);
4196- public void set_state (Gtk.StateType state);
4197- public void set_state_wildcarded (bool setting);
4198- }
4199- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_icon_theme_get_type ()")]
4200- public class IconTheme : GLib.Object {
4201- [CCode (has_construct_function = false)]
4202- public IconTheme ();
4203- public static void add_builtin_icon (string icon_name, int size, Gdk.Pixbuf pixbuf);
4204- public void add_resource_path (string path);
4205- public void append_search_path (string path);
4206- public Gtk.IconInfo? choose_icon ([CCode (array_length = false, array_null_terminated = true)] string[] icon_names, int size, Gtk.IconLookupFlags flags);
4207- public Gtk.IconInfo? choose_icon_for_scale (string[] icon_names, int size, int scale, Gtk.IconLookupFlags flags);
4208- public static GLib.Quark error_quark ();
4209- public static unowned Gtk.IconTheme get_default ();
4210- public string? get_example_icon_name ();
4211- public static unowned Gtk.IconTheme get_for_screen (Gdk.Screen screen);
4212- [CCode (array_length = false, array_null_terminated = true)]
4213- public int[] get_icon_sizes (string icon_name);
4214- public void get_search_path (out string[] path);
4215- public bool has_icon (string icon_name);
4216- public GLib.List<string> list_contexts ();
4217- public GLib.List<string> list_icons (string? context);
4218- public Gdk.Pixbuf? load_icon (string icon_name, int size, Gtk.IconLookupFlags flags) throws GLib.Error;
4219- public Gdk.Pixbuf? load_icon_for_scale (string icon_name, int size, int scale, Gtk.IconLookupFlags flags) throws GLib.Error;
4220- public Cairo.Surface? load_surface (string icon_name, int size, int scale, Gdk.Window for_window, Gtk.IconLookupFlags flags) throws GLib.Error;
4221- public Gtk.IconInfo? lookup_by_gicon (GLib.Icon icon, int size, Gtk.IconLookupFlags flags);
4222- public Gtk.IconInfo? lookup_by_gicon_for_scale (GLib.Icon icon, int size, int scale, Gtk.IconLookupFlags flags);
4223- public Gtk.IconInfo? lookup_icon (string icon_name, int size, Gtk.IconLookupFlags flags);
4224- public Gtk.IconInfo? lookup_icon_for_scale (string icon_name, int size, int scale, Gtk.IconLookupFlags flags);
4225- public void prepend_search_path (string path);
4226- public bool rescan_if_needed ();
4227- public void set_custom_theme (string theme_name);
4228- public void set_screen (Gdk.Screen screen);
4229- public void set_search_path (string[] path);
4230- public virtual signal void changed ();
4231- }
4232- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_icon_view_get_type ()")]
4233- public class IconView : Gtk.Container, Atk.Implementor, Gtk.Buildable, Gtk.CellLayout, Gtk.Scrollable {
4234- [CCode (has_construct_function = false, type = "GtkWidget*")]
4235- public IconView ();
4236- public void convert_widget_to_bin_window_coords (int wx, int wy, out int bx, out int by);
4237- public Cairo.Surface create_drag_icon (Gtk.TreePath path);
4238- public void enable_model_drag_dest (Gtk.TargetEntry[] targets, Gdk.DragAction actions);
4239- public void enable_model_drag_source (Gdk.ModifierType start_button_mask, Gtk.TargetEntry[] targets, Gdk.DragAction actions);
4240- public bool get_activate_on_single_click ();
4241- public bool get_cell_rect (Gtk.TreePath path, Gtk.CellRenderer? cell, out Gdk.Rectangle rect);
4242- public int get_column_spacing ();
4243- public int get_columns ();
4244- public bool get_cursor (out Gtk.TreePath path, out unowned Gtk.CellRenderer cell);
4245- public bool get_dest_item_at_pos (int drag_x, int drag_y, out unowned Gtk.TreePath path, out Gtk.IconViewDropPosition pos);
4246- public void get_drag_dest_item (out unowned Gtk.TreePath path, Gtk.IconViewDropPosition pos);
4247- public bool get_item_at_pos (int x, int y, out unowned Gtk.TreePath path, out unowned Gtk.CellRenderer cell);
4248- public int get_item_column (Gtk.TreePath path);
4249- public Gtk.Orientation get_item_orientation ();
4250- public int get_item_padding ();
4251- public int get_item_row (Gtk.TreePath path);
4252- public int get_item_width ();
4253- public int get_margin ();
4254- public int get_markup_column ();
4255- public unowned Gtk.TreeModel get_model ();
4256- public Gtk.TreePath get_path_at_pos (int x, int y);
4257- public int get_pixbuf_column ();
4258- public bool get_reorderable ();
4259- public int get_row_spacing ();
4260- public GLib.List<Gtk.TreePath> get_selected_items ();
4261- public Gtk.SelectionMode get_selection_mode ();
4262- public int get_spacing ();
4263- public int get_text_column ();
4264- public int get_tooltip_column ();
4265- public bool get_tooltip_context (out int x, out int y, bool keyboard_tip, out unowned Gtk.TreeModel model, out unowned Gtk.TreePath path, out Gtk.TreeIter iter);
4266- public bool get_visible_range (out Gtk.TreePath start_path, out Gtk.TreePath end_path);
4267- public bool path_is_selected (Gtk.TreePath path);
4268- public void scroll_to_path (Gtk.TreePath path, bool use_align, float row_align, float col_align);
4269- public void select_path (Gtk.TreePath path);
4270- public void selected_foreach (Gtk.IconViewForeachFunc func);
4271- public void set_activate_on_single_click (bool single);
4272- public void set_column_spacing (int column_spacing);
4273- public void set_columns (int columns);
4274- public void set_cursor (Gtk.TreePath path, Gtk.CellRenderer? cell, bool start_editing);
4275- public void set_drag_dest_item (Gtk.TreePath path, Gtk.IconViewDropPosition pos);
4276- public void set_item_orientation (Gtk.Orientation orientation);
4277- public void set_item_padding (int item_padding);
4278- public void set_item_width (int item_width);
4279- public void set_margin (int margin);
4280- public void set_markup_column (int column);
4281- public void set_model (Gtk.TreeModel? model);
4282- public void set_pixbuf_column (int column);
4283- public void set_reorderable (bool reorderable);
4284- public void set_row_spacing (int row_spacing);
4285- public void set_selection_mode (Gtk.SelectionMode mode);
4286- public void set_spacing (int spacing);
4287- public void set_text_column (int column);
4288- public void set_tooltip_cell (Gtk.Tooltip tooltip, Gtk.TreePath path, Gtk.CellRenderer cell);
4289- public void set_tooltip_column (int column);
4290- public void set_tooltip_item (Gtk.Tooltip tooltip, Gtk.TreePath path);
4291- public void unselect_path (Gtk.TreePath path);
4292- public void unset_model_drag_dest ();
4293- public void unset_model_drag_source ();
4294- [CCode (has_construct_function = false, type = "GtkWidget*")]
4295- public IconView.with_area (Gtk.CellArea area);
4296- [CCode (has_construct_function = false, type = "GtkWidget*")]
4297- public IconView.with_model (Gtk.TreeModel model);
4298- public bool activate_on_single_click { get; set; }
4299- [NoAccessorMethod]
4300- public Gtk.CellArea cell_area { owned get; construct; }
4301- public int column_spacing { get; set; }
4302- public int columns { get; set; }
4303- public Gtk.Orientation item_orientation { get; set; }
4304- public int item_padding { get; set; }
4305- public int item_width { get; set; }
4306- public int margin { get; set; }
4307- public int markup_column { get; set; }
4308- public Gtk.TreeModel model { get; set; }
4309- public int pixbuf_column { get; set; }
4310- public bool reorderable { get; set; }
4311- public int row_spacing { get; set; }
4312- public Gtk.SelectionMode selection_mode { get; set; }
4313- public int spacing { get; set; }
4314- public int text_column { get; set; }
4315- public int tooltip_column { get; set; }
4316- public virtual signal bool activate_cursor_item ();
4317- [HasEmitter]
4318- public virtual signal void item_activated (Gtk.TreePath path);
4319- public virtual signal bool move_cursor (Gtk.MovementStep step, int count);
4320- public virtual signal void select_all ();
4321- public virtual signal void select_cursor_item ();
4322- public virtual signal void selection_changed ();
4323- public virtual signal void toggle_cursor_item ();
4324- public virtual signal void unselect_all ();
4325- }
4326- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_icon_view_accessible_get_type ()")]
4327- public class IconViewAccessible : Gtk.ContainerAccessible, Atk.Component, Atk.Selection {
4328- [CCode (has_construct_function = false)]
4329- protected IconViewAccessible ();
4330- }
4331- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_image_get_type ()")]
4332- public class Image : Gtk.Misc, Atk.Implementor, Gtk.Buildable {
4333- [CCode (has_construct_function = false, type = "GtkWidget*")]
4334- public Image ();
4335- public void clear ();
4336- [CCode (has_construct_function = false, type = "GtkWidget*")]
4337- public Image.from_animation (Gdk.PixbufAnimation animation);
4338- [CCode (has_construct_function = false, type = "GtkWidget*")]
4339- public Image.from_file (string filename);
4340- [CCode (has_construct_function = false, type = "GtkWidget*")]
4341- public Image.from_gicon (GLib.Icon icon, Gtk.IconSize size);
4342- [CCode (has_construct_function = false, type = "GtkWidget*")]
4343- public Image.from_icon_name (string icon_name, Gtk.IconSize size);
4344- [CCode (has_construct_function = false, type = "GtkWidget*")]
4345- public Image.from_icon_set (Gtk.IconSet icon_set, Gtk.IconSize size);
4346- [CCode (has_construct_function = false, type = "GtkWidget*")]
4347- public Image.from_pixbuf (Gdk.Pixbuf pixbuf);
4348- [CCode (has_construct_function = false, type = "GtkWidget*")]
4349- public Image.from_resource (string resource_path);
4350- [CCode (has_construct_function = false, type = "GtkWidget*")]
4351- public Image.from_stock (string stock_id, Gtk.IconSize size);
4352- [CCode (has_construct_function = false, type = "GtkWidget*")]
4353- public Image.from_surface (Cairo.Surface surface);
4354- public unowned Gdk.PixbufAnimation get_animation ();
4355- public void get_gicon (out unowned GLib.Icon gicon, Gtk.IconSize size);
4356- public void get_icon_name (out unowned string icon_name, out Gtk.IconSize size);
4357- public void get_icon_set (out unowned Gtk.IconSet icon_set, out Gtk.IconSize size);
4358- public unowned Gdk.Pixbuf get_pixbuf ();
4359- public int get_pixel_size ();
4360- public void get_stock (out string stock_id, out Gtk.IconSize size);
4361- public Gtk.ImageType get_storage_type ();
4362- public void set_from_animation (Gdk.PixbufAnimation animation);
4363- public void set_from_file (string filename);
4364- public void set_from_gicon (GLib.Icon icon, Gtk.IconSize size);
4365- public void set_from_icon_name (string icon_name, Gtk.IconSize size);
4366- public void set_from_icon_set (Gtk.IconSet icon_set, Gtk.IconSize size);
4367- public void set_from_pixbuf (Gdk.Pixbuf pixbuf);
4368- public void set_from_resource (string resource_path);
4369- public void set_from_stock (string stock_id, Gtk.IconSize size);
4370- public void set_from_surface (Cairo.Surface surface);
4371- public void set_pixel_size (int pixel_size);
4372- [NoAccessorMethod]
4373- public string file { owned get; set; }
4374- [NoAccessorMethod]
4375- public GLib.Icon gicon { owned get; set; }
4376- [NoAccessorMethod]
4377- public string icon_name { owned get; set; }
4378- [NoAccessorMethod]
4379- public Gtk.IconSet icon_set { owned get; set; }
4380- [NoAccessorMethod]
4381- public int icon_size { get; set; }
4382- [NoAccessorMethod]
4383- public Gdk.Pixbuf pixbuf { owned get; set; }
4384- [NoAccessorMethod]
4385- public Gdk.PixbufAnimation pixbuf_animation { owned get; set; }
4386- public int pixel_size { get; set; }
4387- [NoAccessorMethod]
4388- public string resource { owned get; set; }
4389- [NoAccessorMethod]
4390- public string stock { owned get; set; }
4391- public Gtk.ImageType storage_type { get; }
4392- [NoAccessorMethod]
4393- public Cairo.Surface surface { owned get; set; }
4394- [NoAccessorMethod]
4395- public bool use_fallback { get; set; }
4396- }
4397- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_image_accessible_get_type ()")]
4398- public class ImageAccessible : Gtk.WidgetAccessible, Atk.Component, Atk.Image {
4399- [CCode (has_construct_function = false)]
4400- protected ImageAccessible ();
4401- }
4402- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_image_cell_accessible_get_type ()")]
4403- public class ImageCellAccessible : Gtk.RendererCellAccessible, Atk.Action, Atk.Component, Atk.Image {
4404- [CCode (has_construct_function = false)]
4405- protected ImageCellAccessible ();
4406- }
4407- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_image_menu_item_get_type ()")]
4408- public class ImageMenuItem : Gtk.MenuItem, Atk.Implementor, Gtk.Buildable, Gtk.Activatable, Gtk.Actionable {
4409- [CCode (has_construct_function = false, type = "GtkWidget*")]
4410- public ImageMenuItem ();
4411- [CCode (has_construct_function = false, type = "GtkWidget*")]
4412- public ImageMenuItem.from_stock (string stock_id, Gtk.AccelGroup? accel_group);
4413- public bool get_always_show_image ();
4414- public unowned Gtk.Widget get_image ();
4415- public bool get_use_stock ();
4416- public void set_accel_group (Gtk.AccelGroup accel_group);
4417- public void set_always_show_image (bool always_show);
4418- public void set_image (Gtk.Widget image);
4419- public void set_use_stock (bool use_stock);
4420- [CCode (has_construct_function = false, type = "GtkWidget*")]
4421- public ImageMenuItem.with_label (string label);
4422- [CCode (has_construct_function = false, type = "GtkWidget*")]
4423- public ImageMenuItem.with_mnemonic (string label);
4424- public Gtk.AccelGroup accel_group { set; }
4425- public bool always_show_image { get; set construct; }
4426- public Gtk.Widget image { get; set; }
4427- public bool use_stock { get; set construct; }
4428- }
4429- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_info_bar_get_type ()")]
4430- public class InfoBar : Gtk.Box, Atk.Implementor, Gtk.Buildable, Gtk.Orientable {
4431- [CCode (has_construct_function = false, type = "GtkWidget*")]
4432- public InfoBar ();
4433- public void add_action_widget (Gtk.Widget child, int response_id);
4434- public unowned Gtk.Button add_button (string button_text, int response_id);
4435- public void add_buttons (...);
4436- public unowned Gtk.Widget get_action_area ();
4437- public unowned Gtk.Container get_content_area ();
4438- public Gtk.MessageType get_message_type ();
4439- public bool get_show_close_button ();
4440- public void set_default_response (int response_id);
4441- public void set_message_type (Gtk.MessageType message_type);
4442- public void set_response_sensitive (int response_id, bool setting);
4443- public void set_show_close_button (bool setting);
4444- [CCode (has_construct_function = false, type = "GtkWidget*")]
4445- public InfoBar.with_buttons (...);
4446- public Gtk.MessageType message_type { get; set construct; }
4447- public bool show_close_button { get; set construct; }
4448- public virtual signal void close ();
4449- [HasEmitter]
4450- public virtual signal void response (int response_id);
4451- }
4452- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_invisible_get_type ()")]
4453- public class Invisible : Gtk.Widget, Atk.Implementor, Gtk.Buildable {
4454- [CCode (has_construct_function = false, type = "GtkWidget*")]
4455- public Invisible ();
4456- [CCode (has_construct_function = false, type = "GtkWidget*")]
4457- public Invisible.for_screen (Gdk.Screen screen);
4458- public unowned Gdk.Screen get_screen ();
4459- public void set_screen (Gdk.Screen screen);
4460- public Gdk.Screen screen { get; set; }
4461- }
4462- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_label_get_type ()")]
4463- public class Label : Gtk.Misc, Atk.Implementor, Gtk.Buildable {
4464- [CCode (has_construct_function = false, type = "GtkWidget*")]
4465- public Label (string? str);
4466- public double get_angle ();
4467- public unowned Pango.AttrList get_attributes ();
4468- public unowned string get_current_uri ();
4469- public Pango.EllipsizeMode get_ellipsize ();
4470- public Gtk.Justification get_justify ();
4471- public unowned string get_label ();
4472- public unowned Pango.Layout get_layout ();
4473- public void get_layout_offsets (out int x, out int y);
4474- public bool get_line_wrap ();
4475- public Pango.WrapMode get_line_wrap_mode ();
4476- public int get_lines ();
4477- public int get_max_width_chars ();
4478- public uint get_mnemonic_keyval ();
4479- public unowned Gtk.Widget get_mnemonic_widget ();
4480- public bool get_selectable ();
4481- public bool get_selection_bounds (out int start, out int end);
4482- public bool get_single_line_mode ();
4483- public unowned string get_text ();
4484- public bool get_track_visited_links ();
4485- public bool get_use_markup ();
4486- public bool get_use_underline ();
4487- public int get_width_chars ();
4488- public void select_region (int start_offset, int end_offset);
4489- public void set_angle (double angle);
4490- public void set_attributes (Pango.AttrList attrs);
4491- public void set_ellipsize (Pango.EllipsizeMode mode);
4492- public void set_justify (Gtk.Justification jtype);
4493- public void set_label (string str);
4494- public void set_line_wrap (bool wrap);
4495- public void set_line_wrap_mode (Pango.WrapMode wrap_mode);
4496- public void set_lines (int lines);
4497- public void set_markup (string str);
4498- public void set_markup_with_mnemonic (string str);
4499- public void set_max_width_chars (int n_chars);
4500- public void set_mnemonic_widget (Gtk.Widget widget);
4501- public void set_pattern (string pattern);
4502- public void set_selectable (bool setting);
4503- public void set_single_line_mode (bool single_line_mode);
4504- public void set_text (string str);
4505- public void set_text_with_mnemonic (string str);
4506- public void set_track_visited_links (bool track_links);
4507- public void set_use_markup (bool setting);
4508- public void set_use_underline (bool setting);
4509- public void set_width_chars (int n_chars);
4510- [CCode (has_construct_function = false, type = "GtkWidget*")]
4511- public Label.with_mnemonic (string str);
4512- public double angle { get; set; }
4513- public Pango.AttrList attributes { get; set; }
4514- [NoAccessorMethod]
4515- public int cursor_position { get; }
4516- public Pango.EllipsizeMode ellipsize { get; set; }
4517- public Gtk.Justification justify { get; set; }
4518- public string label { get; set; }
4519- public int lines { get; set; }
4520- public int max_width_chars { get; set; }
4521- public uint mnemonic_keyval { get; }
4522- public Gtk.Widget mnemonic_widget { get; set; }
4523- public string pattern { set; }
4524- public bool selectable { get; set; }
4525- [NoAccessorMethod]
4526- public int selection_bound { get; }
4527- public bool single_line_mode { get; set; }
4528- public bool track_visited_links { get; set; }
4529- public bool use_markup { get; set; }
4530- public bool use_underline { get; set; }
4531- public int width_chars { get; set; }
4532- [NoAccessorMethod]
4533- public bool wrap { get; set; }
4534- [NoAccessorMethod]
4535- public Pango.WrapMode wrap_mode { get; set; }
4536- public virtual signal void activate_current_link ();
4537- public virtual signal bool activate_link (string uri);
4538- public virtual signal void copy_clipboard ();
4539- public virtual signal void move_cursor (Gtk.MovementStep step, int count, bool extend_selection);
4540- public virtual signal void populate_popup (Gtk.Menu menu);
4541- }
4542- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_label_accessible_get_type ()")]
4543- public class LabelAccessible : Gtk.WidgetAccessible, Atk.Component, Atk.Text, Atk.Hypertext {
4544- [CCode (has_construct_function = false)]
4545- protected LabelAccessible ();
4546- }
4547- [CCode (cheader_filename = "gtk/gtk.h")]
4548- [Compact]
4549- public class LabelSelectionInfo {
4550- }
4551- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_layout_get_type ()")]
4552- public class Layout : Gtk.Container, Atk.Implementor, Gtk.Buildable, Gtk.Scrollable {
4553- [CCode (has_construct_function = false, type = "GtkWidget*")]
4554- public Layout (Gtk.Adjustment? hadjustment = null, Gtk.Adjustment? vadjustment = null);
4555- public unowned Gdk.Window get_bin_window ();
4556- public unowned Gtk.Adjustment get_hadjustment ();
4557- public void get_size (out uint width, out uint height);
4558- public unowned Gtk.Adjustment get_vadjustment ();
4559- public void move (Gtk.Widget child_widget, int x, int y);
4560- public void put (Gtk.Widget child_widget, int x, int y);
4561- public void set_hadjustment (Gtk.Adjustment adjustment);
4562- public void set_size (uint width, uint height);
4563- public void set_vadjustment (Gtk.Adjustment adjustment);
4564- [NoAccessorMethod]
4565- public uint height { get; set; }
4566- [NoAccessorMethod]
4567- public uint width { get; set; }
4568- }
4569- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_level_bar_get_type ()")]
4570- public class LevelBar : Gtk.Widget, Atk.Implementor, Gtk.Buildable, Gtk.Orientable {
4571- [CCode (has_construct_function = false, type = "GtkWidget*")]
4572- public LevelBar ();
4573- public void add_offset_value (string name, double value);
4574- [CCode (has_construct_function = false, type = "GtkWidget*")]
4575- public LevelBar.for_interval (double min_value, double max_value);
4576- public bool get_inverted ();
4577- public double get_max_value ();
4578- public double get_min_value ();
4579- public Gtk.LevelBarMode get_mode ();
4580- public bool get_offset_value (string name, double value);
4581- public double get_value ();
4582- public void remove_offset_value (string name);
4583- public void set_inverted (bool inverted);
4584- public void set_max_value (double value);
4585- public void set_min_value (double value);
4586- public void set_mode (Gtk.LevelBarMode mode);
4587- public void set_value (double value);
4588- public bool inverted { get; set; }
4589- public double max_value { get; set; }
4590- public double min_value { get; set; }
4591- public Gtk.LevelBarMode mode { get; set; }
4592- public double value { get; set; }
4593- public virtual signal void offset_changed (string name);
4594- }
4595- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_level_bar_accessible_get_type ()")]
4596- public class LevelBarAccessible : Gtk.WidgetAccessible, Atk.Component, Atk.Value {
4597- [CCode (has_construct_function = false)]
4598- protected LevelBarAccessible ();
4599- }
4600- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_link_button_get_type ()")]
4601- public class LinkButton : Gtk.Button, Atk.Implementor, Gtk.Buildable, Gtk.Actionable, Gtk.Activatable {
4602- [CCode (has_construct_function = false, type = "GtkWidget*")]
4603- public LinkButton (string uri);
4604- public unowned string get_uri ();
4605- public bool get_visited ();
4606- public void set_uri (string uri);
4607- public void set_visited (bool visited);
4608- [CCode (has_construct_function = false, type = "GtkWidget*")]
4609- public LinkButton.with_label (string uri, string label);
4610- public string uri { get; set; }
4611- public bool visited { get; set; }
4612- public virtual signal bool activate_link ();
4613- }
4614- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_link_button_accessible_get_type ()")]
4615- public class LinkButtonAccessible : Gtk.ButtonAccessible, Atk.Component, Atk.Action, Atk.Image, Atk.HyperlinkImpl {
4616- [CCode (has_construct_function = false)]
4617- protected LinkButtonAccessible ();
4618- }
4619- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_list_box_get_type ()")]
4620- public class ListBox : Gtk.Container, Atk.Implementor, Gtk.Buildable {
4621- [CCode (has_construct_function = false, type = "GtkWidget*")]
4622- public ListBox ();
4623- public void drag_highlight_row (Gtk.ListBoxRow row);
4624- public void drag_unhighlight_row ();
4625- public bool get_activate_on_single_click ();
4626- public unowned Gtk.Adjustment get_adjustment ();
4627- public unowned Gtk.ListBoxRow get_row_at_index (int index_);
4628- public unowned Gtk.ListBoxRow get_row_at_y (int y);
4629- public unowned Gtk.ListBoxRow get_selected_row ();
4630- public GLib.List<weak Gtk.ListBoxRow> get_selected_rows ();
4631- public Gtk.SelectionMode get_selection_mode ();
4632- public void insert (Gtk.Widget child, int position);
4633- public void invalidate_filter ();
4634- public void invalidate_headers ();
4635- public void invalidate_sort ();
4636- public void prepend (Gtk.Widget child);
4637- public void select_row (Gtk.ListBoxRow? row);
4638- public void selected_foreach (Gtk.ListBoxForeachFunc func);
4639- public void set_activate_on_single_click (bool single);
4640- public void set_adjustment (Gtk.Adjustment? adjustment);
4641- public void set_filter_func (owned Gtk.ListBoxFilterFunc? filter_func);
4642- public void set_header_func (owned Gtk.ListBoxUpdateHeaderFunc? update_header);
4643- public void set_placeholder (Gtk.Widget? placeholder);
4644- public void set_selection_mode (Gtk.SelectionMode mode);
4645- public void set_sort_func (owned Gtk.ListBoxSortFunc? sort_func);
4646- public void unselect_row (Gtk.ListBoxRow row);
4647- public bool activate_on_single_click { get; set; }
4648- public Gtk.SelectionMode selection_mode { get; set; }
4649- public virtual signal void activate_cursor_row ();
4650- public virtual signal void move_cursor (Gtk.MovementStep step, int count);
4651- public virtual signal void row_activated (Gtk.ListBoxRow row);
4652- public virtual signal void row_selected (Gtk.ListBoxRow? row);
4653- [HasEmitter]
4654- public virtual signal void select_all ();
4655- public virtual signal void selected_rows_changed ();
4656- public virtual signal void toggle_cursor_row ();
4657- [HasEmitter]
4658- public virtual signal void unselect_all ();
4659- }
4660- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_list_box_accessible_get_type ()")]
4661- public class ListBoxAccessible : Gtk.ContainerAccessible, Atk.Component, Atk.Selection {
4662- [CCode (has_construct_function = false)]
4663- protected ListBoxAccessible ();
4664- }
4665- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_list_box_row_get_type ()")]
4666- public class ListBoxRow : Gtk.Bin, Atk.Implementor, Gtk.Buildable {
4667- [CCode (has_construct_function = false, type = "GtkWidget*")]
4668- public ListBoxRow ();
4669- public void changed ();
4670- public bool get_activatable ();
4671- public unowned Gtk.Widget get_header ();
4672- public int get_index ();
4673- public bool get_selectable ();
4674- public bool is_selected ();
4675- public void set_activatable (bool activatable);
4676- public void set_header (Gtk.Widget? header);
4677- public void set_selectable (bool selectable);
4678- public bool activatable { get; set; }
4679- public bool selectable { get; set; }
4680- public virtual signal void activate ();
4681- }
4682- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_list_box_row_accessible_get_type ()")]
4683- public class ListBoxRowAccessible : Gtk.ContainerAccessible, Atk.Component {
4684- [CCode (has_construct_function = false)]
4685- protected ListBoxRowAccessible ();
4686- }
4687- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_list_store_get_type ()")]
4688- public class ListStore : GLib.Object, Gtk.TreeModel, Gtk.TreeDragSource, Gtk.TreeDragDest, Gtk.TreeSortable, Gtk.Buildable {
4689- [CCode (has_construct_function = false, sentinel = "-1")]
4690- public ListStore (int n_columns, ...);
4691- public void append (out Gtk.TreeIter iter);
4692- public void clear ();
4693- public void insert (out Gtk.TreeIter iter, int position);
4694- public void insert_after (out Gtk.TreeIter iter, Gtk.TreeIter? sibling);
4695- public void insert_before (out Gtk.TreeIter iter, Gtk.TreeIter? sibling);
4696- [CCode (sentinel = "-1")]
4697- public void insert_with_values (out Gtk.TreeIter iter, int position, ...);
4698- public void insert_with_valuesv (out Gtk.TreeIter iter, int position, [CCode (array_length_pos = 4.1)] int[] columns, [CCode (array_length_pos = 4.1)] GLib.Value[] values);
4699- public bool iter_is_valid (Gtk.TreeIter iter);
4700- public void move_after (ref Gtk.TreeIter iter, Gtk.TreeIter? position);
4701- public void move_before (ref Gtk.TreeIter iter, Gtk.TreeIter? position);
4702- [CCode (cname = "gtk_list_store_newv", has_construct_function = false)]
4703- public ListStore.newv ([CCode (array_length_pos = 0.9)] GLib.Type[] types);
4704- public void prepend (out Gtk.TreeIter iter);
4705- public bool remove (Gtk.TreeIter iter);
4706- public void reorder ([CCode (array_length = false, array_null_terminated = true)] int[] new_order);
4707- [CCode (sentinel = "-1")]
4708- public void @set (Gtk.TreeIter iter, ...);
4709- public void set_column_types ([CCode (array_length_pos = 0.9)] GLib.Type[] types);
4710- public void set_valist (Gtk.TreeIter iter, va_list var_args);
4711- public void set_value (Gtk.TreeIter iter, int column, GLib.Value value);
4712- public void set_valuesv (Gtk.TreeIter iter, [CCode (array_length_pos = 3.1)] int[] columns, [CCode (array_length_pos = 3.1)] GLib.Value[] values);
4713- public void swap (Gtk.TreeIter a, Gtk.TreeIter b);
4714- }
4715- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_lock_button_get_type ()")]
4716- public class LockButton : Gtk.Button, Atk.Implementor, Gtk.Buildable, Gtk.Actionable, Gtk.Activatable {
4717- [CCode (has_construct_function = false, type = "GtkWidget*")]
4718- public LockButton (GLib.Permission permission);
4719- public unowned GLib.Permission get_permission ();
4720- public void set_permission (GLib.Permission permission);
4721- public GLib.Permission permission { get; set; }
4722- [NoAccessorMethod]
4723- public string text_lock { owned get; set construct; }
4724- [NoAccessorMethod]
4725- public string text_unlock { owned get; set construct; }
4726- [NoAccessorMethod]
4727- public string tooltip_lock { owned get; set construct; }
4728- [NoAccessorMethod]
4729- public string tooltip_not_authorized { owned get; set construct; }
4730- [NoAccessorMethod]
4731- public string tooltip_unlock { owned get; set construct; }
4732- }
4733- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_lock_button_accessible_get_type ()")]
4734- public class LockButtonAccessible : Gtk.ButtonAccessible, Atk.Component, Atk.Action, Atk.Image {
4735- [CCode (has_construct_function = false)]
4736- protected LockButtonAccessible ();
4737- }
4738- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_menu_get_type ()")]
4739- public class Menu : Gtk.MenuShell, Atk.Implementor, Gtk.Buildable {
4740- [CCode (has_construct_function = false, type = "GtkWidget*")]
4741- public Menu ();
4742- public void attach (Gtk.Widget child, uint left_attach, uint right_attach, uint top_attach, uint bottom_attach);
4743- public void attach_to_widget (Gtk.Widget attach_widget, Gtk.MenuDetachFunc? detacher);
4744- public void detach ();
4745- [CCode (has_construct_function = false, type = "GtkWidget*")]
4746- public Menu.from_model (GLib.MenuModel model);
4747- public unowned Gtk.AccelGroup get_accel_group ();
4748- public unowned string get_accel_path ();
4749- public unowned Gtk.Widget get_active ();
4750- public unowned Gtk.Widget get_attach_widget ();
4751- public static unowned GLib.List<Gtk.Menu> get_for_attach_widget (Gtk.Widget widget);
4752- public int get_monitor ();
4753- public bool get_reserve_toggle_size ();
4754- public bool get_tearoff_state ();
4755- public unowned string get_title ();
4756- public void popdown ();
4757- public void popup (Gtk.Widget? parent_menu_shell, Gtk.Widget? parent_menu_item, Gtk.MenuPositionFunc? func, uint button, uint32 activate_time);
4758- public void popup_for_device (Gdk.Device device, Gtk.Widget parent_menu_shell, Gtk.Widget parent_menu_item, Gtk.MenuPositionFunc func, void* data, GLib.DestroyNotify destroy, uint button, uint32 activate_time);
4759- public void reorder_child (Gtk.Widget child, int position);
4760- public void reposition ();
4761- public void set_accel_group (Gtk.AccelGroup accel_group);
4762- public void set_accel_path (string accel_path);
4763- public void set_active (uint index);
4764- public void set_monitor (int monitor_num);
4765- public void set_reserve_toggle_size (bool reserve_toggle_size);
4766- public void set_screen (Gdk.Screen? screen);
4767- public void set_tearoff_state (bool torn_off);
4768- public void set_title (string title);
4769- public Gtk.AccelGroup accel_group { get; set; }
4770- public string accel_path { get; set; }
4771- public int active { get; set; }
4772- [NoAccessorMethod]
4773- public Gtk.Widget attach_widget { owned get; set; }
4774- public int monitor { get; set; }
4775- public bool reserve_toggle_size { get; set; }
4776- public bool tearoff_state { get; set; }
4777- [NoAccessorMethod]
4778- public string tearoff_title { owned get; set; }
4779- public virtual signal void move_scroll (Gtk.ScrollType p0);
4780- }
4781- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_menu_accessible_get_type ()")]
4782- public class MenuAccessible : Gtk.MenuShellAccessible, Atk.Component, Atk.Selection {
4783- [CCode (has_construct_function = false)]
4784- protected MenuAccessible ();
4785- }
4786- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_menu_bar_get_type ()")]
4787- public class MenuBar : Gtk.MenuShell, Atk.Implementor, Gtk.Buildable {
4788- [CCode (has_construct_function = false, type = "GtkWidget*")]
4789- public MenuBar ();
4790- [CCode (has_construct_function = false, type = "GtkWidget*")]
4791- public MenuBar.from_model (GLib.MenuModel model);
4792- public Gtk.PackDirection get_child_pack_direction ();
4793- public Gtk.PackDirection get_pack_direction ();
4794- public void set_child_pack_direction (Gtk.PackDirection child_pack_dir);
4795- public void set_pack_direction (Gtk.PackDirection pack_dir);
4796- public Gtk.PackDirection child_pack_direction { get; set; }
4797- public Gtk.PackDirection pack_direction { get; set; }
4798- }
4799- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_menu_button_get_type ()")]
4800- public class MenuButton : Gtk.ToggleButton, Atk.Implementor, Gtk.Buildable, Gtk.Actionable, Gtk.Activatable {
4801- [CCode (has_construct_function = false, type = "GtkWidget*")]
4802- public MenuButton ();
4803- public unowned Gtk.Widget get_align_widget ();
4804- public Gtk.ArrowType get_direction ();
4805- public unowned GLib.MenuModel get_menu_model ();
4806- public unowned Gtk.Popover get_popover ();
4807- public unowned Gtk.Menu get_popup ();
4808- public bool get_use_popover ();
4809- public void set_align_widget (Gtk.Widget align_widget);
4810- public void set_direction (Gtk.ArrowType direction);
4811- public void set_menu_model (GLib.MenuModel menu_model);
4812- public void set_popover (Gtk.Widget popover);
4813- public void set_popup (Gtk.Widget menu);
4814- public void set_use_popover (bool use_popover);
4815- public Gtk.Container align_widget { get; set; }
4816- public Gtk.ArrowType direction { get; set; }
4817- public GLib.MenuModel menu_model { get; set; }
4818- public Gtk.Popover popover { get; set; }
4819- public Gtk.Menu popup { get; set; }
4820- public bool use_popover { get; set; }
4821- }
4822- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_menu_button_accessible_get_type ()")]
4823- public class MenuButtonAccessible : Gtk.ToggleButtonAccessible, Atk.Component, Atk.Action, Atk.Image {
4824- [CCode (has_construct_function = false)]
4825- protected MenuButtonAccessible ();
4826- }
4827- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_menu_item_get_type ()")]
4828- public class MenuItem : Gtk.Bin, Atk.Implementor, Gtk.Buildable, Gtk.Activatable, Gtk.Actionable {
4829- [CCode (has_construct_function = false, type = "GtkWidget*")]
4830- public MenuItem ();
4831- public unowned string get_accel_path ();
4832- public virtual unowned string get_label ();
4833- public bool get_reserve_indicator ();
4834- [Deprecated (replacement = "Widget.get_hexpand and Widget.get_halign", since = "3.2")]
4835- public bool get_right_justified ();
4836- public unowned Gtk.Widget get_submenu ();
4837- public bool get_use_underline ();
4838- public void set_accel_path (string accel_path);
4839- public virtual void set_label (string label);
4840- public void set_reserve_indicator (bool reserve);
4841- [Deprecated (replacement = "Widget.set_hexpand and Widget.set_halign", since = "3.2")]
4842- public void set_right_justified (bool right_justified);
4843- public void set_submenu (Gtk.Widget submenu);
4844- public void set_use_underline (bool setting);
4845- [CCode (has_construct_function = false, type = "GtkWidget*")]
4846- public MenuItem.with_label (string label);
4847- [CCode (has_construct_function = false, type = "GtkWidget*")]
4848- public MenuItem.with_mnemonic (string label);
4849- public string accel_path { get; set; }
4850- public string label { get; set; }
4851- public bool right_justified { get; set; }
4852- public Gtk.Menu submenu { get; set; }
4853- public bool use_underline { get; set; }
4854- [HasEmitter]
4855- public virtual signal void activate ();
4856- public virtual signal void activate_item ();
4857- public virtual signal void deselect ();
4858- public virtual signal void select ();
4859- [HasEmitter]
4860- public virtual signal void toggle_size_allocate (int allocation);
4861- [HasEmitter]
4862- public virtual signal void toggle_size_request (void* requisition);
4863- }
4864- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_menu_item_accessible_get_type ()")]
4865- public class MenuItemAccessible : Gtk.ContainerAccessible, Atk.Component, Atk.Action, Atk.Selection {
4866- [CCode (has_construct_function = false)]
4867- protected MenuItemAccessible ();
4868- }
4869- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_menu_shell_get_type ()")]
4870- public abstract class MenuShell : Gtk.Container, Atk.Implementor, Gtk.Buildable {
4871- [CCode (has_construct_function = false)]
4872- protected MenuShell ();
4873- public void activate_item (Gtk.Widget menu_item, bool force_deactivate);
4874- public void append ([CCode (type = "GtkWidget*")] Gtk.MenuItem child);
4875- public void bind_model (GLib.MenuModel model, string action_namespace, bool with_separators);
4876- public void deselect ();
4877- public unowned Gtk.Widget get_parent_shell ();
4878- [NoWrapper]
4879- public virtual int get_popup_delay ();
4880- public unowned Gtk.Widget get_selected_item ();
4881- public bool get_take_focus ();
4882- public void prepend (Gtk.Widget child);
4883- public void select_first (bool search_sensitive);
4884- public virtual void select_item (Gtk.Widget menu_item);
4885- public void set_take_focus (bool take_focus);
4886- public bool take_focus { get; set; }
4887- public virtual signal void activate_current (bool force_hide);
4888- [HasEmitter]
4889- public virtual signal void cancel ();
4890- public virtual signal void cycle_focus (Gtk.DirectionType p0);
4891- [HasEmitter]
4892- public virtual signal void deactivate ();
4893- [HasEmitter]
4894- public virtual signal void insert (Gtk.Widget child, int position);
4895- public virtual signal void move_current (Gtk.MenuDirectionType direction);
4896- public virtual signal bool move_selected (int distance);
4897- public virtual signal void selection_done ();
4898- }
4899- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_menu_shell_accessible_get_type ()")]
4900- public class MenuShellAccessible : Gtk.ContainerAccessible, Atk.Component, Atk.Selection {
4901- [CCode (has_construct_function = false)]
4902- protected MenuShellAccessible ();
4903- }
4904- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_menu_tool_button_get_type ()")]
4905- public class MenuToolButton : Gtk.ToolButton, Atk.Implementor, Gtk.Buildable, Gtk.Activatable, Gtk.Actionable {
4906- [CCode (has_construct_function = false, type = "GtkToolItem*")]
4907- public MenuToolButton (Gtk.Widget? icon_widget, string? label);
4908- [CCode (has_construct_function = false, type = "GtkToolItem*")]
4909- public MenuToolButton.from_stock (string stock_id);
4910- public unowned Gtk.Widget get_menu ();
4911- public void set_arrow_tooltip_markup (string markup);
4912- public void set_arrow_tooltip_text (string text);
4913- public void set_menu (Gtk.Widget menu);
4914- public Gtk.Menu menu { get; set; }
4915- public virtual signal void show_menu ();
4916- }
4917- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_message_dialog_get_type ()")]
4918- public class MessageDialog : Gtk.Dialog, Atk.Implementor, Gtk.Buildable {
4919- [CCode (has_construct_function = false, type = "GtkWidget*")]
4920- [PrintfFormat]
4921- public MessageDialog (Gtk.Window? parent, Gtk.DialogFlags flags, Gtk.MessageType type, Gtk.ButtonsType buttons, string message_format, ...);
4922- [PrintfFormat]
4923- public void format_secondary_markup (string message_format, ...);
4924- [PrintfFormat]
4925- public void format_secondary_text (string message_format, ...);
4926- public unowned Gtk.Widget get_image ();
4927- public unowned Gtk.Widget get_message_area ();
4928- public void set_image (Gtk.Widget image);
4929- public void set_markup (string str);
4930- [CCode (has_construct_function = false, type = "GtkWidget*")]
4931- [PrintfFormat]
4932- public MessageDialog.with_markup (Gtk.Window? parent, Gtk.DialogFlags flags, Gtk.MessageType type, Gtk.ButtonsType buttons, string message_format, ...);
4933- [NoAccessorMethod]
4934- public Gtk.ButtonsType buttons { construct; }
4935- public Gtk.Widget image { get; set; }
4936- public Gtk.Widget message_area { get; }
4937- [NoAccessorMethod]
4938- public Gtk.MessageType message_type { get; set construct; }
4939- [NoAccessorMethod]
4940- public string secondary_text { owned get; set; }
4941- [NoAccessorMethod]
4942- public bool secondary_use_markup { get; set; }
4943- [NoAccessorMethod]
4944- public string text { owned get; set; }
4945- [NoAccessorMethod]
4946- public bool use_markup { get; set; }
4947- }
4948- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_misc_get_type ()")]
4949- public abstract class Misc : Gtk.Widget, Atk.Implementor, Gtk.Buildable {
4950- [CCode (has_construct_function = false)]
4951- protected Misc ();
4952- public void get_alignment (out float xalign, out float yalign);
4953- public void get_padding (out int xpad, out int ypad);
4954- public void set_alignment (float xalign, float yalign);
4955- public void set_padding (int xpad, int ypad);
4956- [NoAccessorMethod]
4957- public float xalign { get; set; }
4958- [NoAccessorMethod]
4959- public int xpad { get; set; }
4960- [NoAccessorMethod]
4961- public float yalign { get; set; }
4962- [NoAccessorMethod]
4963- public int ypad { get; set; }
4964- }
4965- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_mount_operation_get_type ()")]
4966- public class MountOperation : GLib.MountOperation {
4967- [CCode (has_construct_function = false, type = "GMountOperation*")]
4968- public MountOperation (Gtk.Window? parent);
4969- public unowned Gtk.Window get_parent ();
4970- public unowned Gdk.Screen get_screen ();
4971- public void set_parent (Gtk.Window parent);
4972- public void set_screen (Gdk.Screen screen);
4973- [NoAccessorMethod]
4974- public bool is_showing { get; }
4975- public Gtk.Window parent { get; set; }
4976- public Gdk.Screen screen { get; set; }
4977- }
4978- [CCode (cheader_filename = "gtk/gtk.h", type_id = "gtk_notebook_get_type ()")]
4979- public class Notebook : Gtk.Container, Atk.Implementor, Gtk.Buildable {
4980- [CCode (has_construct_function = false, type = "GtkWidget*")]
4981- public Notebook ();
4982- public int append_page (Gtk.Widget child, Gtk.Widget? tab_label = null);
4983- public int append_page_menu (Gtk.Widget child, Gtk.Widget? tab_label, Gtk.Widget? menu_label);
4984- public unowned Gtk.Widget get_action_widget (Gtk.PackType pack_type);
4985- public int get_current_page ();
4986- public unowned string get_group_name ();
4987- public unowned Gtk.Widget get_menu_label (Gtk.Widget child);
4988- public unowned string get_menu_label_text (Gtk.Widget child);
4989- public int get_n_pages ();
4990- public unowned Gtk.Widget get_nth_page (int page_num);
4991- public bool get_scrollable ();
4992- public bool get_show_border ();
4993- public bool get_show_tabs ();
4994- public bool get_tab_detachable (Gtk.Widget child);
4995- [Deprecated (since = "3.4")]
4996- public uint16 get_tab_hborder ();
4997- public unowned Gtk.Widget get_tab_label (Gtk.Widget child);
4998- public unowned string get_tab_label_text (Gtk.Widget child);
4999- public Gtk.PositionType get_tab_pos ();
5000- public bool get_tab_reorderable (Gtk.Widget child);
The diff has been truncated for viewing.

Subscribers

People subscribed via source and target branches

to all changes: