This file is indexed.

/usr/share/vala/vapi/granite.vapi is in libgranite-dev 0.3.0-2~experimental1ubuntu2.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
/* granite.vapi generated by valac 0.28.1, do not modify. */

namespace Granite {
	namespace DateTime {
		[CCode (cheader_filename = "granite.h")]
		public static string get_default_date_format (bool with_weekday = false, bool with_day = true, bool with_year = false);
		[CCode (cheader_filename = "granite.h")]
		public static string get_default_time_format (bool is_12h = false, bool with_second = false);
	}
	namespace Drawing {
		[CCode (cheader_filename = "granite.h")]
		public class BufferSurface : GLib.Object {
			public BufferSurface (int width, int height);
			public Granite.Drawing.Color average_color ();
			public void clear ();
			public void exponential_blur (int radius);
			public void fast_blur (int radius, int process_count = 1);
			public void gaussian_blur (int radius);
			public Gdk.Pixbuf load_to_pixbuf ();
			public BufferSurface.with_buffer_surface (int width, int height, Granite.Drawing.BufferSurface model);
			public BufferSurface.with_surface (int width, int height, Cairo.Surface model);
			public Cairo.Context context { get; }
			public int height { get; private set; }
			public Cairo.Surface surface { get; private set; }
			public int width { get; private set; }
		}
		[CCode (cheader_filename = "granite.h")]
		public class Color : GLib.Object, Granite.Services.SettingsSerializable {
			public double A;
			public double B;
			public double G;
			public double R;
			public Color (double R, double G, double B, double A);
			public Granite.Drawing.Color add_hue (double val);
			public Granite.Drawing.Color brighten_val (double amount);
			public Granite.Drawing.Color darken_by_sat (double amount);
			public Granite.Drawing.Color darken_val (double amount);
			public Color.from_gdk (Gdk.Color color);
			public double get_hue ();
			public double get_sat ();
			public double get_val ();
			public Granite.Drawing.Color multiply_sat (double amount);
			public Granite.Drawing.Color set_alpha (double alpha);
			public Granite.Drawing.Color set_hue (double hue);
			public Granite.Drawing.Color set_max_sat (double sat);
			public Granite.Drawing.Color set_max_val (double val);
			public Granite.Drawing.Color set_min_sat (double sat);
			public Granite.Drawing.Color set_min_value (double val);
			public Granite.Drawing.Color set_sat (double sat);
			public Granite.Drawing.Color set_val (double val);
		}
		[CCode (cheader_filename = "granite.h")]
		public class Utilities : GLib.Object {
			public Utilities ();
			public static Granite.Drawing.Color average_color (Gdk.Pixbuf source);
			public static void cairo_rounded_rectangle (Cairo.Context cr, double x, double y, double width, double height, double radius);
		}
	}
	namespace GtkPatch {
		[CCode (cheader_filename = "granite.h")]
		public class AboutDialog : Gtk.Dialog {
			public AboutDialog ();
			public string[] artists { get; set; }
			public string[] authors { get; set; }
			public string comments { get; set; }
			public string copyright { get; set; }
			public string[] documenters { get; set; }
			public string license { get; set; }
			public Gtk.License license_type { get; set; }
			public Gdk.Pixbuf logo { get; set; }
			public string logo_icon_name { get; set; }
			public string program_name { get; set; }
			public string translator_credits { get; set; }
			public string version { get; set; }
			public string website { get; set; }
			public string website_label { get; set; }
			public virtual signal bool activate_link (string uri);
		}
	}
	namespace Services {
		[CCode (cheader_filename = "granite.h")]
		[Deprecated (replacement = "Granite.Services.ContractorProxy", since = "0.2")]
		public class Contractor : GLib.Object {
			public Contractor ();
			public static GLib.HashTable<string,string>[] get_contract (string uri, string mime);
			public static GLib.HashTable<string,string>[] get_selection_contracts (GLib.HashTable<string,string>[] locations);
		}
		[CCode (cheader_filename = "granite.h")]
		public class ContractorProxy : GLib.Object {
			public static Gee.List<Granite.Services.Contract> get_all_contracts () throws GLib.Error;
			public static Gee.List<Granite.Services.Contract> get_contracts_by_mime (string mime_type) throws GLib.Error;
			public static Gee.List<Granite.Services.Contract> get_contracts_by_mimelist (string[] mime_types) throws GLib.Error;
			public static Gee.List<Granite.Services.Contract> get_contracts_for_file (GLib.File file) throws GLib.Error;
			public static Gee.List<Granite.Services.Contract> get_contracts_for_files (GLib.File[] files) throws GLib.Error;
			public static Granite.Services.ContractorProxy get_instance () throws GLib.Error;
			public signal void contracts_changed ();
		}
		[CCode (cheader_filename = "granite.h")]
		public class IconFactory : GLib.Object {
			public IconFactory ();
			public static Granite.Services.IconFactory get_default ();
			public Gdk.Pixbuf? load_symbolic_icon (Gtk.StyleContext style, string iconname, int size);
			public Gdk.Pixbuf? load_symbolic_icon_from_gicon (Gtk.StyleContext style, GLib.Icon gicon, int size);
		}
		[CCode (cheader_filename = "granite.h")]
		public class Logger : GLib.Object {
			public Logger ();
			public static void initialize (string app_name);
			public static void notification (string msg);
			public static Granite.Services.LogLevel DisplayLevel { get; set; }
		}
		[CCode (cheader_filename = "granite.h")]
		public class Paths : GLib.Object {
			public Paths ();
			public static bool ensure_directory_exists (GLib.File dir);
			public static void initialize (string app_name, string data_folder_path);
			public static GLib.File data_folder { get; protected set; }
			public static GLib.File home_folder { get; protected set; }
			public static GLib.File user_cache_folder { get; protected set; }
			public static GLib.File user_config_folder { get; protected set; }
			public static GLib.File user_data_folder { get; protected set; }
			public static GLib.File xdg_cache_home_folder { get; protected set; }
			public static GLib.File xdg_config_home_folder { get; protected set; }
			public static GLib.List<GLib.File> xdg_data_dir_folders { get; protected owned set; }
			public static GLib.File xdg_data_home_folder { get; protected set; }
		}
		[CCode (cheader_filename = "granite.h")]
		public abstract class Settings : GLib.Object {
			public Settings (string schema);
			protected virtual void verify (string key);
			public Settings.with_backend (string schema, GLib.SettingsBackend backend);
			public Settings.with_backend_and_path (string schema, GLib.SettingsBackend backend, string path);
			public Settings.with_path (string schema, string path);
			public GLib.Settings schema { get; construct; }
			[Signal (action = true, detailed = true, no_hooks = true, no_recurse = true, run = "first")]
			public signal void changed ();
		}
		[CCode (cheader_filename = "granite.h")]
		public class SimpleCommand : GLib.Object {
			public string error_output_str;
			public string output_str;
			public string standard_output_str;
			public SimpleCommand (string dir, string command);
			public void run ();
			public signal void done (int exit);
			public signal void error_changed (string text);
			public signal void output_changed (string text);
			public signal void standard_changed (string text);
		}
		[CCode (cheader_filename = "granite.h")]
		public class System : GLib.Object {
			public System ();
			public static bool execute_command (string command);
			public static void launch (GLib.File app);
			public static void launch_with_files (GLib.File? app, GLib.File[] files);
			public static void open (GLib.File file);
			public static void open_files (GLib.File[] files);
			public static void open_uri (string uri);
		}
		[CCode (cheader_filename = "granite.h")]
		public interface Contract : GLib.Object {
			public abstract void execute_with_file (GLib.File file) throws GLib.Error;
			public abstract void execute_with_files (GLib.File[] files) throws GLib.Error;
			public abstract string get_description ();
			public abstract string get_display_name ();
			public abstract GLib.Icon get_icon ();
		}
		[CCode (cheader_filename = "granite.h")]
		public interface SettingsSerializable : GLib.Object {
			public abstract void settings_deserialize (string s);
			public abstract string settings_serialize ();
		}
		[CCode (cheader_filename = "granite.h")]
		public enum LogLevel {
			DEBUG,
			INFO,
			NOTIFY,
			WARN,
			ERROR,
			FATAL
		}
		[CCode (cheader_filename = "granite.h")]
		public errordomain ContractorError {
			SERVICE_NOT_AVAILABLE
		}
		[CCode (cheader_filename = "granite.h")]
		public static Granite.Services.IconFactory? icon_factory;
	}
	namespace StyleClass {
		[CCode (cheader_filename = "granite.h")]
		public const string BADGE;
		[CCode (cheader_filename = "granite.h")]
		public const string CATEGORY_EXPANDER;
		[CCode (cheader_filename = "granite.h")]
		public const string COMPOSITED;
		[CCode (cheader_filename = "granite.h")]
		public const string CONTENT_VIEW;
		[CCode (cheader_filename = "granite.h")]
		public const string CONTENT_VIEW_WINDOW;
		[CCode (cheader_filename = "granite.h")]
		public const string DECORATED_WINDOW;
		[CCode (cheader_filename = "granite.h")]
		public const string H1_TEXT;
		[CCode (cheader_filename = "granite.h")]
		public const string H2_TEXT;
		[CCode (cheader_filename = "granite.h")]
		public const string H3_TEXT;
		[CCode (cheader_filename = "granite.h")]
		public const string HELP_BUTTON;
		[CCode (cheader_filename = "granite.h")]
		public const string OVERLAY_BAR;
		[CCode (cheader_filename = "granite.h")]
		public const string POPOVER;
		[CCode (cheader_filename = "granite.h")]
		public const string POPOVER_BG;
		[CCode (cheader_filename = "granite.h")]
		public const string SOURCE_LIST;
		[CCode (cheader_filename = "granite.h")]
		public const string THIN_PANE_SEPARATOR;
		[CCode (cheader_filename = "granite.h")]
		public const string TITLE_TEXT;
	}
	namespace Widgets {
		namespace Utils {
			[CCode (cheader_filename = "granite.h")]
			public static void apply_text_style_to_label (Granite.TextStyle text_style, Gtk.Label label);
			[CCode (cheader_filename = "granite.h")]
			public static string? get_button_layout_schema ();
			[CCode (cheader_filename = "granite.h", cname = "get_close_pixbuf")]
			public static Gdk.Pixbuf get_close_pixbuf ();
			[CCode (cheader_filename = "granite.h")]
			public static Gtk.CssProvider? get_css_provider (string stylesheet);
			[CCode (cheader_filename = "granite.h")]
			public static bool get_default_close_button_position (out Granite.CloseButtonPosition position);
			[CCode (cheader_filename = "granite.h")]
			public static Gtk.CssProvider? set_theming (Gtk.Widget widget, string stylesheet, string? class_name, int priority);
			[CCode (cheader_filename = "granite.h")]
			public static Gtk.CssProvider? set_theming_for_screen (Gdk.Screen screen, string stylesheet, int priority);
		}
		[CCode (cheader_filename = "granite.h")]
		public class AboutDialog : Granite.GtkPatch.AboutDialog {
			public AboutDialog ();
			public string bug { get; set; }
			public string help { get; set; }
			public string translate { get; set; }
		}
		[CCode (cheader_filename = "granite.h")]
		public class AppMenu : Granite.Widgets.ToolButtonWithMenu {
			public Gtk.MenuItem about_item;
			public AppMenu (Gtk.Menu menu);
			public void add_items (Gtk.Menu menu);
			public AppMenu.with_app (Granite.Application? application, Gtk.Menu menu);
			[Deprecated (since = "granite-0.1")]
			public AppMenu.with_urls (Gtk.Menu menu, string help_url, string translate_url, string bug_url);
			public signal void show_about (Gtk.Widget w);
		}
		[CCode (cheader_filename = "granite.h")]
		public class CellRendererBadge : Gtk.CellRenderer {
			public CellRendererBadge ();
			public override void get_preferred_height_for_width (Gtk.Widget widget, int width, out int minimum_height, out int natural_height);
			public override void get_preferred_width (Gtk.Widget widget, out int minimum_size, out int natural_size);
			public override Gtk.SizeRequestMode get_request_mode ();
			[Deprecated (replacement = "Gtk.CellRenderer.get_preferred_size", since = "")]
			public override void get_size (Gtk.Widget widget, Gdk.Rectangle? cell_area, out int x_offset, out int y_offset, out int width, out int height);
			public override void render (Cairo.Context context, Gtk.Widget widget, Gdk.Rectangle bg_area, Gdk.Rectangle cell_area, Gtk.CellRendererState flags);
			public string text { get; set; }
		}
		[CCode (cheader_filename = "granite.h")]
		public class CellRendererExpander : Gtk.CellRenderer {
			public CellRendererExpander ();
			public virtual int get_arrow_size (Gtk.Widget widget);
			public override void get_preferred_height_for_width (Gtk.Widget widget, int width, out int minimum_height, out int natural_height);
			public override void get_preferred_width (Gtk.Widget widget, out int minimum_size, out int natural_size);
			public override Gtk.SizeRequestMode get_request_mode ();
			[Deprecated (replacement = "Gtk.CellRenderer.get_preferred_size", since = "")]
			public override void get_size (Gtk.Widget widget, Gdk.Rectangle? cell_area, out int x_offset, out int y_offset, out int width, out int height);
			public override void render (Cairo.Context context, Gtk.Widget widget, Gdk.Rectangle bg_area, Gdk.Rectangle cell_area, Gtk.CellRendererState flags);
			public bool is_category_expander { get; set; }
		}
		[CCode (cheader_filename = "granite.h")]
		public class CollapsiblePaned : Gtk.Paned {
			public CollapsiblePaned (Gtk.Orientation orientation);
			public Granite.CollapseMode collapse_mode { get; set; }
		}
		[CCode (cheader_filename = "granite.h")]
		public class CompositedWindow : Gtk.Window, Gtk.Buildable {
			public CompositedWindow ();
		}
		[CCode (cheader_filename = "granite.h")]
		[Deprecated (since = "0.2")]
		public class ContractorMenu : Gtk.Menu {
			public delegate void ContractCallback ();
			public ContractorMenu (string filename, string mime);
			public void add_item (string name, string icon_name, int position, Granite.Widgets.ContractorMenu.ContractCallback method, bool use_stock = true);
			public void name_blacklist (string[] names);
			public void update (string? filename, string? mime);
			public signal void contract_activated (string contract_name);
		}
		[CCode (cheader_filename = "granite.h")]
		[Deprecated (since = "0.2")]
		public class ContractorView : Gtk.TreeView {
			public delegate void ContractCallback ();
			public bool contractor_available;
			public ContractorView (string filename, string mime, int icon_size = 32, bool show_contract_name = true);
			public void add_item (string name, string desc, string icon_name, int icon_size, int position, Granite.Widgets.ContractorView.ContractCallback method);
			public void name_blacklist (string[] names);
			public void run_selected ();
			public int selected { get; set; }
			public signal void executed ();
		}
		[CCode (cheader_filename = "granite.h")]
		public class DatePicker : Gtk.Entry, Gtk.Buildable {
			protected Gtk.Calendar calendar;
			protected Gtk.EventBox dropdown;
			public DatePicker ();
			protected virtual void position_dropdown (out Gdk.Rectangle rect);
			public DatePicker.with_format (string format);
			public GLib.DateTime date { get; set; }
			public string format { get; construct; }
		}
		[CCode (cheader_filename = "granite.h")]
		[Deprecated (replacement = "Gtk.Dialog", since = "0.3")]
		public class DecoratedWindow : Granite.Widgets.CompositedWindow {
			protected Gdk.Pixbuf close_img;
			public DecoratedWindow (string title = "", string? window_style = null, string? content_style = null);
			public new void add (Gtk.Widget w);
			public override bool button_press_event (Gdk.EventButton e);
			public override bool button_release_event (Gdk.EventButton e);
			public override bool key_press_event (Gdk.EventKey event);
			public new void remove (Gtk.Widget w);
			public static void set_default_theming (Gtk.Window ref_window);
			protected Gtk.Box box { get; private set; }
			protected Gtk.Window draw_ref { get; private set; }
			public bool show_title { get; set; }
		}
		[CCode (cheader_filename = "granite.h")]
		public class DynamicNotebook : Gtk.EventBox {
			public enum TabBarBehavior {
				ALWAYS,
				SINGLE,
				NEVER
			}
			public DynamicNotebook ();
			public new GLib.List<Gtk.Widget> get_children ();
			public Gtk.Widget get_nth_page (int index);
			public Granite.Widgets.Tab? get_tab_by_index (int index);
			public Granite.Widgets.Tab? get_tab_by_widget (Gtk.Widget widget);
			public int get_tab_position (Granite.Widgets.Tab tab);
			public uint insert_tab (Granite.Widgets.Tab tab, int index);
			public void next_page ();
			public void previous_page ();
			public void remove_tab (Granite.Widgets.Tab tab);
			public void set_tab_position (Granite.Widgets.Tab tab, int position);
			public override void show ();
			public string add_button_tooltip { get; set; }
			public bool add_button_visible { get; set; }
			public bool allow_drag { get; set; }
			public bool allow_duplication { get; set; }
			public bool allow_new_window { get; set; }
			public bool allow_pinning { get; set; }
			public bool allow_restoring { get; set; }
			public Granite.Widgets.Tab current { get; set; }
			public bool force_left { get; set; }
			public string group_name { get; set; }
			public int max_restorable_tabs { get; set; }
			public Gtk.Menu menu { get; private set; }
			public int n_tabs { get; }
			public bool show_icons { get; set; }
			public bool show_tabs { get; set; }
			public Granite.Widgets.DynamicNotebook.TabBarBehavior tab_bar_behavior { get; set; }
			public GLib.List<Granite.Widgets.Tab> tabs { get; }
			public bool tabs_closable { get; set; }
			public signal bool close_tab_requested (Granite.Widgets.Tab tab);
			public signal void new_tab_requested ();
			public signal void tab_added (Granite.Widgets.Tab tab);
			public signal void tab_duplicated (Granite.Widgets.Tab duplicated_tab);
			public signal void tab_moved (Granite.Widgets.Tab tab, int x, int y);
			public signal void tab_removed (Granite.Widgets.Tab tab);
			public signal void tab_reordered (Granite.Widgets.Tab tab, int new_pos);
			public signal void tab_restored (string label, string data, GLib.Icon? icon);
			public signal void tab_switched (Granite.Widgets.Tab? old_tab, Granite.Widgets.Tab new_tab);
		}
		[CCode (cheader_filename = "granite.h")]
		[Deprecated (replacement = "Granite.Widgets.CollapsiblePaned", since = "granite-0.2")]
		public class HCollapsablePaned : Granite.Widgets.CollapsiblePaned {
			public HCollapsablePaned ();
		}
		[CCode (cheader_filename = "granite.h")]
		[Deprecated (replacement = "Gtk.Entry.placeholder_text", since = "0.3")]
		public class HintedEntry : Gtk.Entry {
			public HintedEntry (string hint_string);
			[Deprecated (replacement = "Gtk.Entry.get_text", since = "0.2")]
			public new string get_text ();
			[Deprecated (since = "0.2")]
			protected void hint ();
			[Deprecated (replacement = "Gtk.Entry.set_text", since = "0.2")]
			public new void set_text (string text);
			[Deprecated (since = "0.2")]
			protected void unhint ();
			public bool has_clear_icon { get; set; }
			public string hint_string { get; set; }
		}
		[CCode (cheader_filename = "granite.h")]
		[Deprecated (replacement = "Gtk.Dialog", since = "0.3")]
		public class LightWindow : Granite.Widgets.DecoratedWindow {
			public LightWindow (string title = "");
		}
		[CCode (cheader_filename = "granite.h")]
		public class ModeButton : Gtk.Box {
			public ModeButton ();
			public int append (Gtk.Widget w);
			public int append_icon (string icon_name, Gtk.IconSize size);
			public int append_pixbuf (Gdk.Pixbuf pixbuf);
			public int append_text (string text);
			public void clear_children ();
			public new void remove (int index);
			public void set_active (int new_active_index);
			public void set_item_visible (int index, bool val);
			public uint n_items { get; }
			public int selected { get; set; }
			public signal void mode_added (int index, Gtk.Widget widget);
			public signal void mode_changed (Gtk.Widget widget);
			public signal void mode_removed (int index, Gtk.Widget widget);
		}
		[CCode (cheader_filename = "granite.h")]
		public class OverlayBar : Gtk.EventBox {
			public OverlayBar (Gtk.Overlay overlay);
			public override bool draw (Cairo.Context cr);
			public override void get_preferred_height_for_width (int width, out int minimum_height, out int natural_height);
			public override void get_preferred_width (out int minimum_width, out int natural_width);
			public override Gtk.SizeRequestMode get_request_mode ();
			public override void parent_set (Gtk.Widget? old_parent);
			public string status { get; set; }
		}
		[CCode (cheader_filename = "granite.h")]
		public class PopOver : Gtk.Dialog {
			public enum PopPosition {
				NONE,
				TOPLEFT,
				TOPRIGHT,
				BOTTOMLEFT,
				BOTTOMRIGHT
			}
			protected int ARROW_HEIGHT;
			protected int ARROW_WIDTH;
			protected int BORDER_RADIUS;
			protected int BORDER_WIDTH;
			protected Gtk.Border PADDINGS;
			protected int SHADOW_SIZE;
			protected double arrow_offset;
			protected bool arrow_up;
			protected Granite.Drawing.BufferSurface? main_buffer;
			public PopOver ();
			public override bool button_press_event (Gdk.EventButton event);
			public override bool button_release_event (Gdk.EventButton event);
			protected void cairo_popover (Cairo.Context cr, double x, double y, double width, double height, double border_radius);
			public override bool draw (Cairo.Context cr);
			public override void hide ();
			public override bool map_event (Gdk.EventAny event);
			public void move_to_coords (int x, int y, bool show = true);
			public void move_to_rect (Gdk.Rectangle rect, bool show = true);
			public void move_to_widget (Gtk.Widget w, bool show = true);
			public void move_to_window (Gdk.Window window);
			protected void reset_buffers ();
			public void set_parent_pop (Gtk.Window win);
			public override void show ();
		}
		[CCode (cheader_filename = "granite.h")]
		[Deprecated (replacement = "Gtk.SearchEntry", since = "0.3")]
		public class SearchBar : Granite.Widgets.HintedEntry {
			public SearchBar (string hint_string);
			public int pause_delay { get; set; }
			public signal void search_icon_release ();
			public signal void text_changed_pause (string text);
		}
		[CCode (cheader_filename = "granite.h")]
		[Deprecated (replacement = "Granite.Widgets.ThinPaned", since = "granite-0.2")]
		public class SidebarPaned : Granite.Widgets.ThinPaned {
			public SidebarPaned ();
		}
		[CCode (cheader_filename = "granite.h")]
		public class SourceList : Gtk.ScrolledWindow {
			public class ExpandableItem : Granite.Widgets.SourceList.Item {
				public ExpandableItem (string name = "");
				public void add (Granite.Widgets.SourceList.Item item);
				public void clear ();
				public void collapse_all (bool inclusive = true, bool recursive = true);
				public void collapse_with_parents ();
				public virtual int compare (Granite.Widgets.SourceList.Item a, Granite.Widgets.SourceList.Item b);
				public bool contains (Granite.Widgets.SourceList.Item item);
				public void expand_all (bool inclusive = true, bool recursive = true);
				public void expand_with_parents ();
				public void remove (Granite.Widgets.SourceList.Item item);
				public Gee.Collection<Granite.Widgets.SourceList.Item> children { owned get; }
				public bool collapsible { get; set; }
				public bool expanded { get; set; }
				public uint n_children { get; }
				public signal void child_added (Granite.Widgets.SourceList.Item item);
				public signal void child_removed (Granite.Widgets.SourceList.Item item);
				public virtual signal void toggled ();
			}
			public class Item : GLib.Object {
				public Item (string name = "");
				public virtual Gtk.Menu? get_context_menu ();
				public GLib.Icon activatable { get; set; }
				public string badge { get; set; }
				public bool editable { get; set; }
				public GLib.Icon icon { get; set; }
				public string name { get; set; }
				public Granite.Widgets.SourceList.ExpandableItem parent { get; internal set; }
				public bool selectable { get; set; }
				public bool visible { get; set; }
				public virtual signal void action_activated ();
				public virtual signal void activated ();
				public virtual signal void edited (string new_name);
			}
			[Deprecated (replacement = "ExpandableItem.compare", since = "0.2")]
			public delegate int SortFunc (Granite.Widgets.SourceList.Item a, Granite.Widgets.SourceList.Item b);
			public delegate bool VisibleFunc (Granite.Widgets.SourceList.Item item);
			public SourceList (Granite.Widgets.SourceList.ExpandableItem root = new Granite.Widgets.SourceList.ExpandableItem (""));
			public Granite.Widgets.SourceList.Item? get_first_child (Granite.Widgets.SourceList.ExpandableItem parent);
			public Granite.Widgets.SourceList.Item? get_last_child (Granite.Widgets.SourceList.ExpandableItem parent);
			public uint get_n_visible_children (Granite.Widgets.SourceList.ExpandableItem parent);
			public Granite.Widgets.SourceList.Item? get_next_item (Granite.Widgets.SourceList.Item reference);
			public Granite.Widgets.SourceList.Item? get_previous_item (Granite.Widgets.SourceList.Item reference);
			public bool has_item (Granite.Widgets.SourceList.Item item);
			public bool is_item_expanded (Granite.Widgets.SourceList.Item item);
			public void refilter ();
			public bool scroll_to_item (Granite.Widgets.SourceList.Item item, bool expand_parents = true, bool use_align = false, float row_align = 0);
			public void set_filter_func (Granite.Widgets.SourceList.VisibleFunc? visible_func, bool refilter);
			[Deprecated (replacement = "ExpandableItem.compare", since = "0.2")]
			public void set_sort_func (owned Granite.Widgets.SourceList.SortFunc? sort_func);
			public bool start_editing_item (Granite.Widgets.SourceList.Item item);
			public void stop_editing ();
			public bool editing { get; }
			public Pango.EllipsizeMode ellipsize_mode { get; set; }
			public Granite.Widgets.SourceList.ExpandableItem root { get; set; }
			public Granite.Widgets.SourceList.Item? selected { get; set; }
			public Gtk.SortType sort_direction { get; set; }
			public virtual signal void item_selected (Granite.Widgets.SourceList.Item? item);
		}
		[CCode (cheader_filename = "granite.h")]
		[Deprecated (replacement = "Gtk.Stack", since = "0.3")]
		public class StaticNotebook : Gtk.Box {
			public StaticNotebook (bool show_separator = true);
			public int append_page (Gtk.Widget widget, Gtk.Label label);
			public void remove_page (int number);
			public void set_switcher_visible (bool val);
			public int page { get; set; }
			public signal void page_changed (int index);
		}
		[CCode (cheader_filename = "granite.h")]
		[Deprecated (replacement = "Gtk.ActionBar", since = "0.3")]
		public class StatusBar : Gtk.Toolbar {
			public StatusBar ();
			public void insert_widget (Gtk.Widget widget, bool use_left_side = false);
			public void set_text (string text);
		}
		[CCode (cheader_filename = "granite.h")]
		public class Tab : Gtk.EventBox {
			public Granite.Widgets.DroppedDelegate dropped_callback;
			public Tab (string label = "", GLib.Icon? icon = null, Gtk.Widget? page = null);
			public void close ();
			public Pango.EllipsizeMode ellipsize_mode { get; set; }
			[Deprecated (since = 0.3)]
			public bool fixed { get; set; }
			public GLib.Icon? icon { owned get; set; }
			public string label { get; set; }
			public Gtk.Menu menu { get; set; }
			public Gtk.Widget page { get; set; }
			public bool pinnable { get; set; }
			public bool pinned { get; set; }
			public string restore_data { get; set; }
			public bool working { get; set; }
		}
		[CCode (cheader_filename = "granite.h")]
		public class ThinPaned : Gtk.Paned {
			public ThinPaned (Gtk.Orientation orientation = Gtk.Orientation.HORIZONTAL);
			public override bool button_press_event (Gdk.EventButton event);
			public override bool button_release_event (Gdk.EventButton event);
			public override bool draw (Cairo.Context ctx);
			public unowned Gdk.Window get_overlay_handle_window ();
			public override bool grab_broken_event (Gdk.EventGrabBroken event);
			public override void map ();
			public override bool motion_notify_event (Gdk.EventMotion event);
			public override void realize ();
			public override void size_allocate (Gtk.Allocation allocation);
			public override void state_flags_changed (Gtk.StateFlags previous_state);
			public override void unmap ();
			public override void unrealize ();
		}
		[CCode (cheader_filename = "granite.h")]
		public class TimePicker : Gtk.Entry {
			public TimePicker ();
			protected virtual void position_dropdown (out int x, out int y);
			public TimePicker.with_format (string format_12, string format_24);
			public string format_12 { get; construct; }
			public string format_24 { get; construct; }
			public GLib.DateTime time { get; set; }
			public signal void time_changed ();
		}
		[CCode (cheader_filename = "granite.h")]
		[Deprecated (replacement = "Gtk.MenuButton", since = "0.3")]
		public class ToolButtonWithMenu : Gtk.ToggleToolButton {
			public enum HMenuPosition {
				LEFT,
				CENTER,
				RIGHT,
				INSIDE_WINDOW
			}
			public enum VMenuPosition {
				TOP,
				BOTTOM
			}
			public delegate Gtk.Menu MenuFetcher ();
			public Gtk.Action? myaction;
			public ulong toggled_sig_id;
			public ToolButtonWithMenu (Gtk.Image image, string label, Gtk.Menu menu);
			public ToolButtonWithMenu.from_action (Gtk.Action action);
			public ToolButtonWithMenu.from_stock (string stock_image, Gtk.IconSize size, string label, Gtk.Menu menu);
			protected void popdown_menu ();
			protected new void popup_menu (Gdk.EventButton? ev = null);
			public override void show_all ();
			public Granite.Widgets.ToolButtonWithMenu.MenuFetcher fetcher { get; set; }
			public Granite.Widgets.ToolButtonWithMenu.HMenuPosition horizontal_menu_position { get; set; }
			public Gtk.Menu menu { get; set; }
			public Granite.Widgets.ToolButtonWithMenu.VMenuPosition vertical_menu_position { get; set; }
			public signal void right_click (Gdk.EventButton ev);
		}
		[CCode (cheader_filename = "granite.h")]
		[Deprecated (replacement = "Granite.Widgets.CollapsiblePaned", since = "granite-0.2")]
		public class VCollapsablePaned : Granite.Widgets.CollapsiblePaned {
			public VCollapsablePaned ();
		}
		[CCode (cheader_filename = "granite.h")]
		public class Welcome : Gtk.EventBox {
			protected GLib.List<Gtk.Button> children;
			protected Gtk.Box options;
			public Welcome (string title_text, string subtitle_text);
			public int append (string icon_name, string option_text, string description_text);
			public int append_with_image (Gtk.Image? image, string option_text, string description_text);
			public int append_with_pixbuf (Gdk.Pixbuf? pixbuf, string option_text, string description_text);
			public void remove_item (uint index);
			public void set_item_sensitivity (uint index, bool val);
			public void set_item_visible (uint index, bool val);
			public string subtitle { get; set; }
			public string title { get; set; }
			public signal void activated (int index);
		}
		[CCode (cheader_filename = "granite.h")]
		public class WrapLabel : Gtk.Label {
			public int m_wrap_height;
			public int m_wrap_width;
			public WrapLabel (string? str = null);
			public override void get_preferred_width (out int minimum_width, out int natural_width);
			public override void size_allocate (Gtk.Allocation alloc);
		}
		[CCode (cheader_filename = "granite.h")]
		public delegate void DroppedDelegate ();
		[CCode (cheader_filename = "granite.h")]
		public static void show_about_dialog (Gtk.Window* parent, string first, ...);
	}
	[CCode (cheader_filename = "granite.h")]
	public abstract class Application : Gtk.Application {
		protected static bool ABOUT;
		protected static bool DEBUG;
		public string[] about_artists;
		public string[] about_authors;
		public string about_comments;
		protected Granite.Widgets.AboutDialog about_dlg;
		public string[] about_documenters;
		public string about_license;
		public Gtk.License about_license_type;
		public string about_translators;
		public string app_copyright;
		public string app_icon;
		public string app_launcher;
		public string app_years;
		public string bug_url;
		public string build_data_dir;
		public string build_pkg_data_dir;
		public string build_release_name;
		public string build_version;
		public string build_version_info;
		public string exec_name;
		public string help_url;
		public string main_url;
		public string program_name;
		public string translate_url;
		protected const GLib.OptionEntry[] options;
		public Application ();
		public Granite.Widgets.AppMenu create_appmenu (Gtk.Menu menu);
		[CCode (cheader_filename = "sys/prctl.h", cname = "prctl")]
		protected static int prctl (int option, string arg2, ulong arg3, ulong arg4, ulong arg5);
		public new int run (string[] args);
		protected virtual void set_options ();
		public virtual void show_about (Gtk.Widget parent);
	}
	[CCode (cheader_filename = "granite.h")]
	public enum CloseButtonPosition {
		LEFT,
		RIGHT
	}
	[CCode (cheader_filename = "granite.h")]
	public enum CollapseMode {
		NONE,
		LEFT,
		TOP,
		FIRST,
		RIGHT,
		BOTTOM,
		LAST
	}
	[CCode (cheader_filename = "granite.h")]
	public enum TextStyle {
		TITLE,
		H1,
		H2,
		H3;
		public string get_stylesheet (out string style_class = null);
	}
	[CCode (cheader_filename = "granite.h")]
	[Deprecated (since = "granite-0.1")]
	public static Granite.Application app;
}