1 /* 2 * This file is part of gtkD. 3 * 4 * gtkD is free software; you can redistribute it and/or modify 5 * it under the terms of the GNU Lesser General Public License 6 * as published by the Free Software Foundation; either version 3 7 * of the License, or (at your option) any later version, with 8 * some exceptions, please read the COPYING file. 9 * 10 * gtkD is distributed in the hope that it will be useful, 11 * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 * GNU Lesser General Public License for more details. 14 * 15 * You should have received a copy of the GNU Lesser General Public License 16 * along with gtkD; if not, write to the Free Software 17 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110, USA 18 */ 19 20 // generated automatically - do not change 21 // find conversion definition on APILookup.txt 22 // implement new conversion functionalities on the wrap.utils pakage 23 24 25 module gtk.c.types; 26 27 public import cairo.c.types; 28 public import gdk.c.types; 29 public import gdkpixbuf.c.types; 30 public import gio.c.types; 31 public import glib.c.types; 32 public import gobject.c.types; 33 public import graphene.c.types; 34 public import gsk.c.types; 35 public import pango.c.types; 36 37 38 /** 39 * The rectangle representing the area allocated for a widget by its parent. 40 */ 41 public alias GdkRectangle GtkAllocation; 42 43 /** 44 * The possible values for the %GTK_ACCESSIBLE_PROPERTY_AUTOCOMPLETE 45 * accessible property. 46 */ 47 public enum GtkAccessibleAutocomplete 48 { 49 /** 50 * Automatic suggestions are not displayed. 51 */ 52 NONE = 0, 53 /** 54 * When a user is providing input, text 55 * suggesting one way to complete the provided input may be dynamically 56 * inserted after the caret. 57 */ 58 INLINE = 1, 59 /** 60 * When a user is providing input, an element 61 * containing a collection of values that could complete the provided input 62 * may be displayed. 63 */ 64 LIST = 2, 65 /** 66 * When a user is providing input, an element 67 * containing a collection of values that could complete the provided input 68 * may be displayed. If displayed, one value in the collection is automatically 69 * selected, and the text needed to complete the automatically selected value 70 * appears after the caret in the input. 71 */ 72 BOTH = 3, 73 } 74 alias GtkAccessibleAutocomplete AccessibleAutocomplete; 75 76 /** 77 * The possible values for the %GTK_ACCESSIBLE_STATE_INVALID 78 * accessible state. 79 * 80 * Note that the %GTK_ACCESSIBLE_INVALID_FALSE and 81 * %GTK_ACCESSIBLE_INVALID_TRUE have the same values 82 * as %FALSE and %TRUE. 83 */ 84 public enum GtkAccessibleInvalidState 85 { 86 /** 87 * There are no detected errors in the value 88 */ 89 FALSE = 0, 90 /** 91 * The value entered by the user has failed validation 92 */ 93 TRUE = 1, 94 /** 95 * A grammatical error was detected 96 */ 97 GRAMMAR = 2, 98 /** 99 * A spelling error was detected 100 */ 101 SPELLING = 3, 102 } 103 alias GtkAccessibleInvalidState AccessibleInvalidState; 104 105 /** 106 * The possible accessible properties of a `GtkAccessible`. 107 */ 108 public enum GtkAccessibleProperty 109 { 110 /** 111 * Indicates whether inputting text 112 * could trigger display of one or more predictions of the user's intended 113 * value for a combobox, searchbox, or textbox and specifies how predictions 114 * would be presented if they were made. Value type: #GtkAccessibleAutocomplete 115 */ 116 AUTOCOMPLETE = 0, 117 /** 118 * Defines a string value that describes 119 * or annotates the current element. Value type: string 120 */ 121 DESCRIPTION = 1, 122 /** 123 * Indicates the availability and type of 124 * interactive popup element, such as menu or dialog, that can be triggered 125 * by an element. 126 */ 127 HAS_POPUP = 2, 128 /** 129 * Indicates keyboard shortcuts that an 130 * author has implemented to activate or give focus to an element. Value type: 131 * string 132 */ 133 KEY_SHORTCUTS = 3, 134 /** 135 * Defines a string value that labels the current 136 * element. Value type: string 137 */ 138 LABEL = 4, 139 /** 140 * Defines the hierarchical level of an element 141 * within a structure. Value type: integer 142 */ 143 LEVEL = 5, 144 /** 145 * Indicates whether an element is modal when 146 * displayed. Value type: boolean 147 */ 148 MODAL = 6, 149 /** 150 * Indicates whether a text box accepts 151 * multiple lines of input or only a single line. Value type: boolean 152 */ 153 MULTI_LINE = 7, 154 /** 155 * Indicates that the user may select 156 * more than one item from the current selectable descendants. Value type: 157 * boolean 158 */ 159 MULTI_SELECTABLE = 8, 160 /** 161 * Indicates whether the element's 162 * orientation is horizontal, vertical, or unknown/ambiguous. Value type: 163 * #GtkOrientation 164 */ 165 ORIENTATION = 9, 166 /** 167 * Defines a short hint (a word or short 168 * phrase) intended to aid the user with data entry when the control has no 169 * value. A hint could be a sample value or a brief description of the expected 170 * format. Value type: string 171 */ 172 PLACEHOLDER = 10, 173 /** 174 * Indicates that the element is not editable, 175 * but is otherwise operable. Value type: boolean 176 */ 177 READ_ONLY = 11, 178 /** 179 * Indicates that user input is required on 180 * the element before a form may be submitted. Value type: boolean 181 */ 182 REQUIRED = 12, 183 /** 184 * Defines a human-readable, 185 * author-localized description for the role of an element. Value type: string 186 */ 187 ROLE_DESCRIPTION = 13, 188 /** 189 * Indicates if items in a table or grid are 190 * sorted in ascending or descending order. Possible property values are in 191 * the #GtkAccessibleSort enumeration. Value type: #GtkAccessibleSort 192 */ 193 SORT = 14, 194 /** 195 * Defines the maximum allowed value for a 196 * range widget. Value type: double 197 */ 198 VALUE_MAX = 15, 199 /** 200 * Defines the minimum allowed value for a 201 * range widget. Value type: double 202 */ 203 VALUE_MIN = 16, 204 /** 205 * Defines the current value for a range widget. 206 * Value type: double 207 */ 208 VALUE_NOW = 17, 209 /** 210 * Defines the human readable text alternative 211 * of aria-valuenow for a range widget. Value type: string 212 */ 213 VALUE_TEXT = 18, 214 } 215 alias GtkAccessibleProperty AccessibleProperty; 216 217 /** 218 * The possible accessible relations of a `GtkAccessible`. 219 * 220 * Accessible relations can be references to other widgets, 221 * integers or strings. 222 */ 223 public enum GtkAccessibleRelation 224 { 225 /** 226 * Identifies the currently active 227 * element when focus is on a composite widget, combobox, textbox, group, 228 * or application. Value type: reference 229 */ 230 ACTIVE_DESCENDANT = 0, 231 /** 232 * Defines the total number of columns 233 * in a table, grid, or treegrid. Value type: integer 234 */ 235 COL_COUNT = 1, 236 /** 237 * Defines an element's column index or 238 * position with respect to the total number of columns within a table, 239 * grid, or treegrid. Value type: integer 240 */ 241 COL_INDEX = 2, 242 /** 243 * Defines a human readable text 244 * alternative of %GTK_ACCESSIBLE_RELATION_COL_INDEX. Value type: string 245 */ 246 COL_INDEX_TEXT = 3, 247 /** 248 * Defines the number of columns spanned 249 * by a cell or gridcell within a table, grid, or treegrid. Value type: integer 250 */ 251 COL_SPAN = 4, 252 /** 253 * Identifies the element (or elements) whose 254 * contents or presence are controlled by the current element. Value type: reference 255 */ 256 CONTROLS = 5, 257 /** 258 * Identifies the element (or elements) 259 * that describes the object. Value type: reference 260 */ 261 DESCRIBED_BY = 6, 262 /** 263 * Identifies the element (or elements) that 264 * provide additional information related to the object. Value type: reference 265 */ 266 DETAILS = 7, 267 /** 268 * Identifies the element that provides 269 * an error message for an object. Value type: reference 270 */ 271 ERROR_MESSAGE = 8, 272 /** 273 * Identifies the next element (or elements) 274 * in an alternate reading order of content which, at the user's discretion, 275 * allows assistive technology to override the general default of reading in 276 * document source order. Value type: reference 277 */ 278 FLOW_TO = 9, 279 /** 280 * Identifies the element (or elements) 281 * that labels the current element. Value type: reference 282 */ 283 LABELLED_BY = 10, 284 /** 285 * Identifies an element (or elements) in order 286 * to define a visual, functional, or contextual parent/child relationship 287 * between elements where the widget hierarchy cannot be used to represent 288 * the relationship. Value type: reference 289 */ 290 OWNS = 11, 291 /** 292 * Defines an element's number or position 293 * in the current set of listitems or treeitems. Value type: integer 294 */ 295 POS_IN_SET = 12, 296 /** 297 * Defines the total number of rows in a table, 298 * grid, or treegrid. Value type: integer 299 */ 300 ROW_COUNT = 13, 301 /** 302 * Defines an element's row index or position 303 * with respect to the total number of rows within a table, grid, or treegrid. 304 * Value type: integer 305 */ 306 ROW_INDEX = 14, 307 /** 308 * Defines a human readable text 309 * alternative of aria-rowindex. Value type: string 310 */ 311 ROW_INDEX_TEXT = 15, 312 /** 313 * Defines the number of rows spanned by a 314 * cell or gridcell within a table, grid, or treegrid. Value type: integer 315 */ 316 ROW_SPAN = 16, 317 /** 318 * Defines the number of items in the current 319 * set of listitems or treeitems. Value type: integer 320 */ 321 SET_SIZE = 17, 322 } 323 alias GtkAccessibleRelation AccessibleRelation; 324 325 /** 326 * The accessible role for a `GtkAccessible` implementation. 327 * 328 * Abstract roles are only used as part of the ontology; application 329 * developers must not use abstract roles in their code. 330 */ 331 public enum GtkAccessibleRole 332 { 333 /** 334 * An element with important, and usually 335 * time-sensitive, information 336 */ 337 ALERT = 0, 338 /** 339 * A type of dialog that contains an 340 * alert message 341 */ 342 ALERT_DIALOG = 1, 343 /** 344 * Unused 345 */ 346 BANNER = 2, 347 /** 348 * An input element that allows for 349 * user-triggered actions when clicked or pressed 350 */ 351 BUTTON = 3, 352 /** 353 * Unused 354 */ 355 CAPTION = 4, 356 /** 357 * Unused 358 */ 359 CELL = 5, 360 /** 361 * A checkable input element that has 362 * three possible values: `true`, `false`, or `mixed` 363 */ 364 CHECKBOX = 6, 365 /** 366 * A header in a columned list. 367 */ 368 COLUMN_HEADER = 7, 369 /** 370 * An input that controls another element, 371 * such as a list or a grid, that can dynamically pop up to help the user 372 * set the value of the input 373 */ 374 COMBO_BOX = 8, 375 /** 376 * Abstract role. 377 */ 378 COMMAND = 9, 379 /** 380 * Abstract role. 381 */ 382 COMPOSITE = 10, 383 /** 384 * A dialog is a window that is designed to interrupt 385 * the current processing of an application in order to prompt the user to enter 386 * information or require a response. 387 */ 388 DIALOG = 11, 389 /** 390 * Unused 391 */ 392 DOCUMENT = 12, 393 /** 394 * Unused 395 */ 396 FEED = 13, 397 /** 398 * Unused 399 */ 400 FORM = 14, 401 /** 402 * Unused 403 */ 404 GENERIC = 15, 405 /** 406 * A grid of items. 407 */ 408 GRID = 16, 409 /** 410 * An item in a grid or tree grid. 411 */ 412 GRID_CELL = 17, 413 /** 414 * An element that groups multiple widgets. GTK uses 415 * this role for various containers, like #GtkBox, #GtkViewport, and #GtkHeaderBar. 416 */ 417 GROUP = 18, 418 /** 419 * Unused 420 */ 421 HEADING = 19, 422 /** 423 * An image. 424 */ 425 IMG = 20, 426 /** 427 * Abstract role. 428 */ 429 INPUT = 21, 430 /** 431 * A visible name or caption for a user interface component. 432 */ 433 LABEL = 22, 434 /** 435 * Abstract role. 436 */ 437 LANDMARK = 23, 438 /** 439 * Unused 440 */ 441 LEGEND = 24, 442 /** 443 * A clickable link. 444 */ 445 LINK = 25, 446 /** 447 * A list of items. 448 */ 449 LIST = 26, 450 /** 451 * Unused. 452 */ 453 LIST_BOX = 27, 454 /** 455 * An item in a list. 456 */ 457 LIST_ITEM = 28, 458 /** 459 * Unused 460 */ 461 LOG = 29, 462 /** 463 * Unused 464 */ 465 MAIN = 30, 466 /** 467 * Unused 468 */ 469 MARQUEE = 31, 470 /** 471 * Unused 472 */ 473 MATH = 32, 474 /** 475 * An element that represents a value within a known range. 476 */ 477 METER = 33, 478 /** 479 * A menu. 480 */ 481 MENU = 34, 482 /** 483 * A menubar. 484 */ 485 MENU_BAR = 35, 486 /** 487 * An item in a menu. 488 */ 489 MENU_ITEM = 36, 490 /** 491 * A check item in a menu. 492 */ 493 MENU_ITEM_CHECKBOX = 37, 494 /** 495 * A radio item in a menu. 496 */ 497 MENU_ITEM_RADIO = 38, 498 /** 499 * Unused 500 */ 501 NAVIGATION = 39, 502 /** 503 * An element that is not represented to accessibility technologies. 504 */ 505 NONE = 40, 506 /** 507 * Unused 508 */ 509 NOTE = 41, 510 /** 511 * Unused 512 */ 513 OPTION = 42, 514 /** 515 * An element that is not represented to accessibility technologies. 516 */ 517 PRESENTATION = 43, 518 /** 519 * An element that displays the progress 520 * status for tasks that take a long time. 521 */ 522 PROGRESS_BAR = 44, 523 /** 524 * A checkable input in a group of radio roles, 525 * only one of which can be checked at a time. 526 */ 527 RADIO = 45, 528 /** 529 * Unused 530 */ 531 RADIO_GROUP = 46, 532 /** 533 * Abstract role. 534 */ 535 RANGE = 47, 536 /** 537 * Unused 538 */ 539 REGION = 48, 540 /** 541 * A row in a columned list. 542 */ 543 ROW = 49, 544 /** 545 * Unused 546 */ 547 ROW_GROUP = 50, 548 /** 549 * Unused 550 */ 551 ROW_HEADER = 51, 552 /** 553 * A graphical object that controls the scrolling 554 * of content within a viewing area, regardless of whether the content is fully 555 * displayed within the viewing area. 556 */ 557 SCROLLBAR = 52, 558 /** 559 * Unused 560 */ 561 SEARCH = 53, 562 /** 563 * A type of textbox intended for specifying 564 * search criteria. 565 */ 566 SEARCH_BOX = 54, 567 /** 568 * Abstract role. 569 */ 570 SECTION = 55, 571 /** 572 * Abstract role. 573 */ 574 SECTION_HEAD = 56, 575 /** 576 * Abstract role. 577 */ 578 SELECT = 57, 579 /** 580 * A divider that separates and distinguishes 581 * sections of content or groups of menuitems. 582 */ 583 SEPARATOR = 58, 584 /** 585 * A user input where the user selects a value 586 * from within a given range. 587 */ 588 SLIDER = 59, 589 /** 590 * A form of range that expects the user to 591 * select from among discrete choices. 592 */ 593 SPIN_BUTTON = 60, 594 /** 595 * Unused 596 */ 597 STATUS = 61, 598 /** 599 * Abstract role. 600 */ 601 STRUCTURE = 62, 602 /** 603 * A type of checkbox that represents on/off values, 604 * as opposed to checked/unchecked values. 605 */ 606 SWITCH = 63, 607 /** 608 * An item in a list of tab used for switching pages. 609 */ 610 TAB = 64, 611 /** 612 * Unused 613 */ 614 TABLE = 65, 615 /** 616 * A list of tabs for switching pages. 617 */ 618 TAB_LIST = 66, 619 /** 620 * A page in a notebook or stack. 621 */ 622 TAB_PANEL = 67, 623 /** 624 * A type of input that allows free-form text 625 * as its value. 626 */ 627 TEXT_BOX = 68, 628 /** 629 * Unused 630 */ 631 TIME = 69, 632 /** 633 * Unused 634 */ 635 TIMER = 70, 636 /** 637 * Unused 638 */ 639 TOOLBAR = 71, 640 /** 641 * Unused 642 */ 643 TOOLTIP = 72, 644 /** 645 * Unused 646 */ 647 TREE = 73, 648 /** 649 * A treeview-like, columned list. 650 */ 651 TREE_GRID = 74, 652 /** 653 * Unused 654 */ 655 TREE_ITEM = 75, 656 /** 657 * An interactive component of a graphical user 658 * interface. This is the role that GTK uses by default for widgets. 659 */ 660 WIDGET = 76, 661 /** 662 * An application window. 663 */ 664 WINDOW = 77, 665 } 666 alias GtkAccessibleRole AccessibleRole; 667 668 /** 669 * The possible values for the %GTK_ACCESSIBLE_PROPERTY_SORT 670 * accessible property. 671 */ 672 public enum GtkAccessibleSort 673 { 674 /** 675 * There is no defined sort applied to the column. 676 */ 677 NONE = 0, 678 /** 679 * Items are sorted in ascending order by this column. 680 */ 681 ASCENDING = 1, 682 /** 683 * Items are sorted in descending order by this column. 684 */ 685 DESCENDING = 2, 686 /** 687 * A sort algorithm other than ascending or 688 * descending has been applied. 689 */ 690 OTHER = 3, 691 } 692 alias GtkAccessibleSort AccessibleSort; 693 694 /** 695 * The possible accessible states of a `GtkAccessible`. 696 */ 697 public enum GtkAccessibleState 698 { 699 /** 700 * A “busy” state. This state has boolean values 701 */ 702 BUSY = 0, 703 /** 704 * A “checked” state; indicates the current 705 * state of a #GtkCheckButton. Value type: #GtkAccessibleTristate 706 */ 707 CHECKED = 1, 708 /** 709 * A “disabled” state; corresponds to the 710 * #GtkWidget:sensitive property on #GtkWidget. It indicates a UI element 711 * that is perceivable, but not editable or operable. Value type: boolean 712 */ 713 DISABLED = 2, 714 /** 715 * An “expanded” state; corresponds to the 716 * #GtkExpander:expanded property on #GtkExpander. Value type: boolean 717 * or undefined 718 */ 719 EXPANDED = 3, 720 /** 721 * A “hidden” state; corresponds to the 722 * #GtkWidget:visible property on #GtkWidget. You can use this state 723 * explicitly on UI elements that should not be exposed to an assistive 724 * technology. Value type: boolean 725 * See also: %GTK_ACCESSIBLE_STATE_DISABLED 726 */ 727 HIDDEN = 4, 728 /** 729 * An “invalid” state; set when a widget 730 * is showing an error. Value type: #GtkAccessibleInvalidState 731 */ 732 INVALID = 5, 733 /** 734 * A “pressed” state; indicates the current 735 * state of a #GtkToggleButton. Value type: #GtkAccessibleTristate 736 * enumeration 737 */ 738 PRESSED = 6, 739 /** 740 * A “selected” state; set when a widget 741 * is selected. Value type: boolean or undefined 742 */ 743 SELECTED = 7, 744 } 745 alias GtkAccessibleState AccessibleState; 746 747 /** 748 * The possible values for the %GTK_ACCESSIBLE_STATE_PRESSED 749 * accessible state. 750 * 751 * Note that the %GTK_ACCESSIBLE_TRISTATE_FALSE and 752 * %GTK_ACCESSIBLE_TRISTATE_TRUE have the same values 753 * as %FALSE and %TRUE. 754 */ 755 public enum GtkAccessibleTristate 756 { 757 /** 758 * The state is `false` 759 */ 760 FALSE = 0, 761 /** 762 * The state is `true` 763 */ 764 TRUE = 1, 765 /** 766 * The state is `mixed` 767 */ 768 MIXED = 2, 769 } 770 alias GtkAccessibleTristate AccessibleTristate; 771 772 /** 773 * Controls how a widget deals with extra space in a single dimension. 774 * 775 * Alignment only matters if the widget receives a “too large” allocation, 776 * for example if you packed the widget with the [property@Gtk.Widget:hexpand] 777 * property inside a `GtkBox`, then the widget might get extra space. 778 * If you have for example a 16x16 icon inside a 32x32 space, the icon 779 * could be scaled and stretched, it could be centered, or it could be 780 * positioned to one side of the space. 781 * 782 * Note that in horizontal context %GTK_ALIGN_START and %GTK_ALIGN_END 783 * are interpreted relative to text direction. 784 * 785 * %GTK_ALIGN_BASELINE support is optional for containers and widgets, and 786 * it is only supported for vertical alignment. When it's not supported by 787 * a child or a container it is treated as %GTK_ALIGN_FILL. 788 */ 789 public enum GtkAlign 790 { 791 /** 792 * stretch to fill all space if possible, center if 793 * no meaningful way to stretch 794 */ 795 FILL = 0, 796 /** 797 * snap to left or top side, leaving space on right 798 * or bottom 799 */ 800 START = 1, 801 /** 802 * snap to right or bottom side, leaving space on left 803 * or top 804 */ 805 END = 2, 806 /** 807 * center natural width of widget inside the 808 * allocation 809 */ 810 CENTER = 3, 811 /** 812 * align the widget according to the baseline. See 813 * #GtkWidget 814 */ 815 BASELINE = 4, 816 } 817 alias GtkAlign Align; 818 819 /** 820 * Types of user actions that may be blocked by `GtkApplication`. 821 * 822 * See [method@Gtk.Application.inhibit]. 823 */ 824 public enum GtkApplicationInhibitFlags 825 { 826 /** 827 * Inhibit ending the user session 828 * by logging out or by shutting down the computer 829 */ 830 LOGOUT = 1, 831 /** 832 * Inhibit user switching 833 */ 834 SWITCH = 2, 835 /** 836 * Inhibit suspending the 837 * session or computer 838 */ 839 SUSPEND = 4, 840 /** 841 * Inhibit the session being 842 * marked as idle (and possibly locked) 843 */ 844 IDLE = 8, 845 } 846 alias GtkApplicationInhibitFlags ApplicationInhibitFlags; 847 848 /** 849 * Used to indicate the direction in which an arrow should point. 850 */ 851 public enum GtkArrowType 852 { 853 /** 854 * Represents an upward pointing arrow. 855 */ 856 UP = 0, 857 /** 858 * Represents a downward pointing arrow. 859 */ 860 DOWN = 1, 861 /** 862 * Represents a left pointing arrow. 863 */ 864 LEFT = 2, 865 /** 866 * Represents a right pointing arrow. 867 */ 868 RIGHT = 3, 869 /** 870 * No arrow. 871 */ 872 NONE = 4, 873 } 874 alias GtkArrowType ArrowType; 875 876 /** 877 * Determines the page role inside a `GtkAssistant`. 878 * 879 * The role is used to handle buttons sensitivity and visibility. 880 * 881 * Note that an assistant needs to end its page flow with a page of type 882 * %GTK_ASSISTANT_PAGE_CONFIRM, %GTK_ASSISTANT_PAGE_SUMMARY or 883 * %GTK_ASSISTANT_PAGE_PROGRESS to be correct. 884 * 885 * The Cancel button will only be shown if the page isn’t “committed”. 886 * See gtk_assistant_commit() for details. 887 */ 888 public enum GtkAssistantPageType 889 { 890 /** 891 * The page has regular contents. Both the 892 * Back and forward buttons will be shown. 893 */ 894 CONTENT = 0, 895 /** 896 * The page contains an introduction to the 897 * assistant task. Only the Forward button will be shown if there is a 898 * next page. 899 */ 900 INTRO = 1, 901 /** 902 * The page lets the user confirm or deny the 903 * changes. The Back and Apply buttons will be shown. 904 */ 905 CONFIRM = 2, 906 /** 907 * The page informs the user of the changes 908 * done. Only the Close button will be shown. 909 */ 910 SUMMARY = 3, 911 /** 912 * Used for tasks that take a long time to 913 * complete, blocks the assistant until the page is marked as complete. 914 * Only the back button will be shown. 915 */ 916 PROGRESS = 4, 917 /** 918 * Used for when other page types are not 919 * appropriate. No buttons will be shown, and the application must 920 * add its own buttons through gtk_assistant_add_action_widget(). 921 */ 922 CUSTOM = 5, 923 } 924 alias GtkAssistantPageType AssistantPageType; 925 926 /** 927 * Baseline position in a row of widgets. 928 * 929 * Whenever a container has some form of natural row it may align 930 * children in that row along a common typographical baseline. If 931 * the amount of vertical space in the row is taller than the total 932 * requested height of the baseline-aligned children then it can use a 933 * `GtkBaselinePosition` to select where to put the baseline inside the 934 * extra available space. 935 */ 936 public enum GtkBaselinePosition 937 { 938 /** 939 * Align the baseline at the top 940 */ 941 TOP = 0, 942 /** 943 * Center the baseline 944 */ 945 CENTER = 1, 946 /** 947 * Align the baseline at the bottom 948 */ 949 BOTTOM = 2, 950 } 951 alias GtkBaselinePosition BaselinePosition; 952 953 /** 954 * Describes how the border of a UI element should be rendered. 955 */ 956 public enum GtkBorderStyle 957 { 958 /** 959 * No visible border 960 */ 961 NONE = 0, 962 /** 963 * Same as %GTK_BORDER_STYLE_NONE 964 */ 965 HIDDEN = 1, 966 /** 967 * A single line segment 968 */ 969 SOLID = 2, 970 /** 971 * Looks as if the content is sunken into the canvas 972 */ 973 INSET = 3, 974 /** 975 * Looks as if the content is coming out of the canvas 976 */ 977 OUTSET = 4, 978 /** 979 * A series of round dots 980 */ 981 DOTTED = 5, 982 /** 983 * A series of square-ended dashes 984 */ 985 DASHED = 6, 986 /** 987 * Two parallel lines with some space between them 988 */ 989 DOUBLE = 7, 990 /** 991 * Looks as if it were carved in the canvas 992 */ 993 GROOVE = 8, 994 /** 995 * Looks as if it were coming out of the canvas 996 */ 997 RIDGE = 9, 998 } 999 alias GtkBorderStyle BorderStyle; 1000 1001 /** 1002 * The list of flags that can be passed to gtk_builder_create_closure(). 1003 * 1004 * New values may be added in the future for new features, so external 1005 * implementations of [interface@Gtk.BuilderScope] should test the flags 1006 * for unknown values and raise a %GTK_BUILDER_ERROR_INVALID_ATTRIBUTE error 1007 * when they encounter one. 1008 */ 1009 public enum GtkBuilderClosureFlags 1010 { 1011 /** 1012 * The closure should be created swapped. See 1013 * g_cclosure_new_swap() for details. 1014 */ 1015 SWAPPED = 1, 1016 } 1017 alias GtkBuilderClosureFlags BuilderClosureFlags; 1018 1019 /** 1020 * Error codes that identify various errors that can occur while using 1021 * #GtkBuilder. 1022 */ 1023 public enum GtkBuilderError 1024 { 1025 /** 1026 * A type-func attribute didn’t name 1027 * a function that returns a #GType. 1028 */ 1029 INVALID_TYPE_FUNCTION = 0, 1030 /** 1031 * The input contained a tag that #GtkBuilder 1032 * can’t handle. 1033 */ 1034 UNHANDLED_TAG = 1, 1035 /** 1036 * An attribute that is required by 1037 * #GtkBuilder was missing. 1038 */ 1039 MISSING_ATTRIBUTE = 2, 1040 /** 1041 * #GtkBuilder found an attribute that 1042 * it doesn’t understand. 1043 */ 1044 INVALID_ATTRIBUTE = 3, 1045 /** 1046 * #GtkBuilder found a tag that 1047 * it doesn’t understand. 1048 */ 1049 INVALID_TAG = 4, 1050 /** 1051 * A required property value was 1052 * missing. 1053 */ 1054 MISSING_PROPERTY_VALUE = 5, 1055 /** 1056 * #GtkBuilder couldn’t parse 1057 * some attribute value. 1058 */ 1059 INVALID_VALUE = 6, 1060 /** 1061 * The input file requires a newer version 1062 * of GTK. 1063 */ 1064 VERSION_MISMATCH = 7, 1065 /** 1066 * An object id occurred twice. 1067 */ 1068 DUPLICATE_ID = 8, 1069 /** 1070 * A specified object type is of the same type or 1071 * derived from the type of the composite class being extended with builder XML. 1072 */ 1073 OBJECT_TYPE_REFUSED = 9, 1074 /** 1075 * The wrong type was specified in a composite class’s template XML 1076 */ 1077 TEMPLATE_MISMATCH = 10, 1078 /** 1079 * The specified property is unknown for the object class. 1080 */ 1081 INVALID_PROPERTY = 11, 1082 /** 1083 * The specified signal is unknown for the object class. 1084 */ 1085 INVALID_SIGNAL = 12, 1086 /** 1087 * An object id is unknown. 1088 */ 1089 INVALID_ID = 13, 1090 /** 1091 * A function could not be found. This often happens 1092 * when symbols are set to be kept private. Compiling code with -rdynamic or using the 1093 * `gmodule-export-2.0` pkgconfig module can fix this problem. 1094 */ 1095 INVALID_FUNCTION = 14, 1096 } 1097 alias GtkBuilderError BuilderError; 1098 1099 /** 1100 * Prebuilt sets of buttons for `GtkDialog`. 1101 * 1102 * If none of these choices are appropriate, simply use 1103 * %GTK_BUTTONS_NONE and call [method@Gtk.Dialog.add_buttons]. 1104 * 1105 * > Please note that %GTK_BUTTONS_OK, %GTK_BUTTONS_YES_NO 1106 * > and %GTK_BUTTONS_OK_CANCEL are discouraged by the 1107 * > [GNOME Human Interface Guidelines](http://library.gnome.org/devel/hig-book/stable/). 1108 */ 1109 public enum GtkButtonsType 1110 { 1111 /** 1112 * no buttons at all 1113 */ 1114 NONE = 0, 1115 /** 1116 * an OK button 1117 */ 1118 OK = 1, 1119 /** 1120 * a Close button 1121 */ 1122 CLOSE = 2, 1123 /** 1124 * a Cancel button 1125 */ 1126 CANCEL = 3, 1127 /** 1128 * Yes and No buttons 1129 */ 1130 YES_NO = 4, 1131 /** 1132 * OK and Cancel buttons 1133 */ 1134 OK_CANCEL = 5, 1135 } 1136 alias GtkButtonsType ButtonsType; 1137 1138 /** 1139 * Determines if the edited accelerators are GTK accelerators. If 1140 * they are, consumed modifiers are suppressed, only accelerators 1141 * accepted by GTK are allowed, and the accelerators are rendered 1142 * in the same way as they are in menus. 1143 */ 1144 public enum GtkCellRendererAccelMode 1145 { 1146 /** 1147 * GTK accelerators mode 1148 */ 1149 GTK = 0, 1150 /** 1151 * Other accelerator mode 1152 */ 1153 OTHER = 1, 1154 } 1155 alias GtkCellRendererAccelMode CellRendererAccelMode; 1156 1157 /** 1158 * Identifies how the user can interact with a particular cell. 1159 */ 1160 public enum GtkCellRendererMode 1161 { 1162 /** 1163 * The cell is just for display 1164 * and cannot be interacted with. Note that this doesn’t mean that eg. the 1165 * row being drawn can’t be selected -- just that a particular element of 1166 * it cannot be individually modified. 1167 */ 1168 INERT = 0, 1169 /** 1170 * The cell can be clicked. 1171 */ 1172 ACTIVATABLE = 1, 1173 /** 1174 * The cell can be edited or otherwise modified. 1175 */ 1176 EDITABLE = 2, 1177 } 1178 alias GtkCellRendererMode CellRendererMode; 1179 1180 /** 1181 * Tells how a cell is to be rendered. 1182 */ 1183 public enum GtkCellRendererState 1184 { 1185 /** 1186 * The cell is currently selected, and 1187 * probably has a selection colored background to render to. 1188 */ 1189 SELECTED = 1, 1190 /** 1191 * The mouse is hovering over the cell. 1192 */ 1193 PRELIT = 2, 1194 /** 1195 * The cell is drawn in an insensitive manner 1196 */ 1197 INSENSITIVE = 4, 1198 /** 1199 * The cell is in a sorted row 1200 */ 1201 SORTED = 8, 1202 /** 1203 * The cell is in the focus row. 1204 */ 1205 FOCUSED = 16, 1206 /** 1207 * The cell is in a row that can be expanded 1208 */ 1209 EXPANDABLE = 32, 1210 /** 1211 * The cell is in a row that is expanded 1212 */ 1213 EXPANDED = 64, 1214 } 1215 alias GtkCellRendererState CellRendererState; 1216 1217 /** 1218 * The widget attributes that can be used when creating a `GtkConstraint`. 1219 */ 1220 public enum GtkConstraintAttribute 1221 { 1222 /** 1223 * No attribute, used for constant 1224 * relations 1225 */ 1226 NONE = 0, 1227 /** 1228 * The left edge of a widget, regardless of 1229 * text direction 1230 */ 1231 LEFT = 1, 1232 /** 1233 * The right edge of a widget, regardless 1234 * of text direction 1235 */ 1236 RIGHT = 2, 1237 /** 1238 * The top edge of a widget 1239 */ 1240 TOP = 3, 1241 /** 1242 * The bottom edge of a widget 1243 */ 1244 BOTTOM = 4, 1245 /** 1246 * The leading edge of a widget, depending 1247 * on text direction; equivalent to %GTK_CONSTRAINT_ATTRIBUTE_LEFT for LTR 1248 * languages, and %GTK_CONSTRAINT_ATTRIBUTE_RIGHT for RTL ones 1249 */ 1250 START = 5, 1251 /** 1252 * The trailing edge of a widget, depending 1253 * on text direction; equivalent to %GTK_CONSTRAINT_ATTRIBUTE_RIGHT for LTR 1254 * languages, and %GTK_CONSTRAINT_ATTRIBUTE_LEFT for RTL ones 1255 */ 1256 END = 6, 1257 /** 1258 * The width of a widget 1259 */ 1260 WIDTH = 7, 1261 /** 1262 * The height of a widget 1263 */ 1264 HEIGHT = 8, 1265 /** 1266 * The center of a widget, on the 1267 * horizontal axis 1268 */ 1269 CENTER_X = 9, 1270 /** 1271 * The center of a widget, on the 1272 * vertical axis 1273 */ 1274 CENTER_Y = 10, 1275 /** 1276 * The baseline of a widget 1277 */ 1278 BASELINE = 11, 1279 } 1280 alias GtkConstraintAttribute ConstraintAttribute; 1281 1282 /** 1283 * The relation between two terms of a constraint. 1284 */ 1285 public enum GtkConstraintRelation 1286 { 1287 /** 1288 * Less than, or equal 1289 */ 1290 LE = -1, 1291 /** 1292 * Equal 1293 */ 1294 EQ = 0, 1295 /** 1296 * Greater than, or equal 1297 */ 1298 GE = 1, 1299 } 1300 alias GtkConstraintRelation ConstraintRelation; 1301 1302 /** 1303 * The strength of a constraint, expressed as a symbolic constant. 1304 * 1305 * The strength of a #GtkConstraint can be expressed with any positive 1306 * integer; the values of this enumeration can be used for readability. 1307 */ 1308 public enum GtkConstraintStrength 1309 { 1310 /** 1311 * The constraint is required towards solving the layout 1312 */ 1313 REQUIRED = 1001001000, 1314 /** 1315 * A strong constraint 1316 */ 1317 STRONG = 1000000000, 1318 /** 1319 * A medium constraint 1320 */ 1321 MEDIUM = 1000, 1322 /** 1323 * A weak constraint 1324 */ 1325 WEAK = 1, 1326 } 1327 alias GtkConstraintStrength ConstraintStrength; 1328 1329 /** 1330 * Domain for VFL parsing errors. 1331 */ 1332 public enum GtkConstraintVflParserError 1333 { 1334 /** 1335 * Invalid or unknown symbol 1336 */ 1337 SYMBOL = 0, 1338 /** 1339 * Invalid or unknown attribute 1340 */ 1341 ATTRIBUTE = 1, 1342 /** 1343 * Invalid or unknown view 1344 */ 1345 VIEW = 2, 1346 /** 1347 * Invalid or unknown metric 1348 */ 1349 METRIC = 3, 1350 /** 1351 * Invalid or unknown priority 1352 */ 1353 PRIORITY = 4, 1354 /** 1355 * Invalid or unknown relation 1356 */ 1357 RELATION = 5, 1358 } 1359 alias GtkConstraintVflParserError ConstraintVflParserError; 1360 1361 /** 1362 * Specifies which corner a child widget should be placed in when packed into 1363 * a `GtkScrolledWindow.` 1364 * 1365 * This is effectively the opposite of where the scroll bars are placed. 1366 */ 1367 public enum GtkCornerType 1368 { 1369 /** 1370 * Place the scrollbars on the right and bottom of the 1371 * widget (default behaviour). 1372 */ 1373 TOP_LEFT = 0, 1374 /** 1375 * Place the scrollbars on the top and right of the 1376 * widget. 1377 */ 1378 BOTTOM_LEFT = 1, 1379 /** 1380 * Place the scrollbars on the left and bottom of the 1381 * widget. 1382 */ 1383 TOP_RIGHT = 2, 1384 /** 1385 * Place the scrollbars on the top and left of the 1386 * widget. 1387 */ 1388 BOTTOM_RIGHT = 3, 1389 } 1390 alias GtkCornerType CornerType; 1391 1392 /** 1393 * Errors that can occur while parsing CSS. 1394 * 1395 * These errors are unexpected and will cause parts of the given CSS 1396 * to be ignored. 1397 */ 1398 public enum GtkCssParserError 1399 { 1400 /** 1401 * Unknown failure. 1402 */ 1403 FAILED = 0, 1404 /** 1405 * The given text does not form valid 1406 * syntax 1407 */ 1408 SYNTAX = 1, 1409 /** 1410 * Failed to import a resource 1411 */ 1412 IMPORT = 2, 1413 /** 1414 * The given name has not been defined 1415 */ 1416 NAME = 3, 1417 /** 1418 * The given value is not 1419 * correct 1420 */ 1421 UNKNOWN_VALUE = 4, 1422 } 1423 alias GtkCssParserError CssParserError; 1424 1425 /** 1426 * Warnings that can occur while parsing CSS. 1427 * 1428 * Unlike #GtkCssParserErrors, warnings do not cause the parser to 1429 * skip any input, but they indicate issues that should be fixed. 1430 */ 1431 public enum GtkCssParserWarning 1432 { 1433 /** 1434 * The given construct is 1435 * deprecated and will be removed in a future version 1436 */ 1437 DEPRECATED = 0, 1438 /** 1439 * A syntax construct was used 1440 * that should be avoided 1441 */ 1442 SYNTAX = 1, 1443 /** 1444 * A feature is not 1445 * implemented 1446 */ 1447 UNIMPLEMENTED = 2, 1448 } 1449 alias GtkCssParserWarning CssParserWarning; 1450 1451 public enum GtkDebugFlags 1452 { 1453 TEXT = 1, 1454 TREE = 2, 1455 KEYBINDINGS = 4, 1456 MODULES = 8, 1457 GEOMETRY = 16, 1458 ICONTHEME = 32, 1459 PRINTING = 64, 1460 BUILDER = 128, 1461 SIZE_REQUEST = 256, 1462 NO_CSS_CACHE = 512, 1463 INTERACTIVE = 1024, 1464 TOUCHSCREEN = 2048, 1465 ACTIONS = 4096, 1466 LAYOUT = 8192, 1467 SNAPSHOT = 16384, 1468 CONSTRAINTS = 32768, 1469 BUILDER_OBJECTS = 65536, 1470 A11Y = 131072, 1471 ICONFALLBACK = 262144, 1472 } 1473 alias GtkDebugFlags DebugFlags; 1474 1475 /** 1476 * Passed to various keybinding signals for deleting text. 1477 */ 1478 public enum GtkDeleteType 1479 { 1480 /** 1481 * Delete characters. 1482 */ 1483 CHARS = 0, 1484 /** 1485 * Delete only the portion of the word to the 1486 * left/right of cursor if we’re in the middle of a word. 1487 */ 1488 WORD_ENDS = 1, 1489 /** 1490 * Delete words. 1491 */ 1492 WORDS = 2, 1493 /** 1494 * Delete display-lines. Display-lines 1495 * refers to the visible lines, with respect to the current line 1496 * breaks. As opposed to paragraphs, which are defined by line 1497 * breaks in the input. 1498 */ 1499 DISPLAY_LINES = 3, 1500 /** 1501 * Delete only the portion of the 1502 * display-line to the left/right of cursor. 1503 */ 1504 DISPLAY_LINE_ENDS = 4, 1505 /** 1506 * Delete to the end of the 1507 * paragraph. Like C-k in Emacs (or its reverse). 1508 */ 1509 PARAGRAPH_ENDS = 5, 1510 /** 1511 * Delete entire line. Like C-k in pico. 1512 */ 1513 PARAGRAPHS = 6, 1514 /** 1515 * Delete only whitespace. Like M-\ in Emacs. 1516 */ 1517 WHITESPACE = 7, 1518 } 1519 alias GtkDeleteType DeleteType; 1520 1521 /** 1522 * Flags used to influence dialog construction. 1523 */ 1524 public enum GtkDialogFlags 1525 { 1526 /** 1527 * Make the constructed dialog modal 1528 */ 1529 MODAL = 1, 1530 /** 1531 * Destroy the dialog when its parent is destroyed 1532 */ 1533 DESTROY_WITH_PARENT = 2, 1534 /** 1535 * Create dialog with actions in header 1536 * bar instead of action area 1537 */ 1538 USE_HEADER_BAR = 4, 1539 } 1540 alias GtkDialogFlags DialogFlags; 1541 1542 /** 1543 * Focus movement types. 1544 */ 1545 public enum GtkDirectionType 1546 { 1547 /** 1548 * Move forward. 1549 */ 1550 TAB_FORWARD = 0, 1551 /** 1552 * Move backward. 1553 */ 1554 TAB_BACKWARD = 1, 1555 /** 1556 * Move up. 1557 */ 1558 UP = 2, 1559 /** 1560 * Move down. 1561 */ 1562 DOWN = 3, 1563 /** 1564 * Move left. 1565 */ 1566 LEFT = 4, 1567 /** 1568 * Move right. 1569 */ 1570 RIGHT = 5, 1571 } 1572 alias GtkDirectionType DirectionType; 1573 1574 public enum GtkEditableProperties 1575 { 1576 PROP_TEXT = 0, 1577 PROP_CURSOR_POSITION = 1, 1578 PROP_SELECTION_BOUND = 2, 1579 PROP_EDITABLE = 3, 1580 PROP_WIDTH_CHARS = 4, 1581 PROP_MAX_WIDTH_CHARS = 5, 1582 PROP_XALIGN = 6, 1583 PROP_ENABLE_UNDO = 7, 1584 NUM_PROPERTIES = 8, 1585 } 1586 alias GtkEditableProperties EditableProperties; 1587 1588 /** 1589 * Specifies the side of the entry at which an icon is placed. 1590 */ 1591 public enum GtkEntryIconPosition 1592 { 1593 /** 1594 * At the beginning of the entry (depending on the text direction). 1595 */ 1596 PRIMARY = 0, 1597 /** 1598 * At the end of the entry (depending on the text direction). 1599 */ 1600 SECONDARY = 1, 1601 } 1602 alias GtkEntryIconPosition EntryIconPosition; 1603 1604 /** 1605 * Describes the behavior of a `GtkEventControllerScroll`. 1606 */ 1607 public enum GtkEventControllerScrollFlags 1608 { 1609 /** 1610 * Don't emit scroll. 1611 */ 1612 NONE = 0, 1613 /** 1614 * Emit scroll with vertical deltas. 1615 */ 1616 VERTICAL = 1, 1617 /** 1618 * Emit scroll with horizontal deltas. 1619 */ 1620 HORIZONTAL = 2, 1621 /** 1622 * Only emit deltas that are multiples of 1. 1623 */ 1624 DISCRETE = 4, 1625 /** 1626 * Emit ::decelerate after continuous scroll finishes. 1627 */ 1628 KINETIC = 8, 1629 /** 1630 * Emit scroll on both axes. 1631 */ 1632 BOTH_AXES = 3, 1633 } 1634 alias GtkEventControllerScrollFlags EventControllerScrollFlags; 1635 1636 /** 1637 * Describes the state of a `GdkEventSequence` in a `GtkGesture`. 1638 */ 1639 public enum GtkEventSequenceState 1640 { 1641 /** 1642 * The sequence is handled, but not grabbed. 1643 */ 1644 NONE = 0, 1645 /** 1646 * The sequence is handled and grabbed. 1647 */ 1648 CLAIMED = 1, 1649 /** 1650 * The sequence is denied. 1651 */ 1652 DENIED = 2, 1653 } 1654 alias GtkEventSequenceState EventSequenceState; 1655 1656 /** 1657 * Describes whether a `GtkFileChooser` is being used to open existing files 1658 * or to save to a possibly new file. 1659 */ 1660 public enum GtkFileChooserAction 1661 { 1662 /** 1663 * Indicates open mode. The file chooser 1664 * will only let the user pick an existing file. 1665 */ 1666 OPEN = 0, 1667 /** 1668 * Indicates save mode. The file chooser 1669 * will let the user pick an existing file, or type in a new 1670 * filename. 1671 */ 1672 SAVE = 1, 1673 /** 1674 * Indicates an Open mode for 1675 * selecting folders. The file chooser will let the user pick an 1676 * existing folder. 1677 */ 1678 SELECT_FOLDER = 2, 1679 } 1680 alias GtkFileChooserAction FileChooserAction; 1681 1682 /** 1683 * These identify the various errors that can occur while calling 1684 * `GtkFileChooser` functions. 1685 */ 1686 public enum GtkFileChooserError 1687 { 1688 /** 1689 * Indicates that a file does not exist. 1690 */ 1691 NONEXISTENT = 0, 1692 /** 1693 * Indicates a malformed filename. 1694 */ 1695 BAD_FILENAME = 1, 1696 /** 1697 * Indicates a duplicate path (e.g. when 1698 * adding a bookmark). 1699 */ 1700 ALREADY_EXISTS = 2, 1701 /** 1702 * Indicates an incomplete hostname 1703 * (e.g. "http://foo" without a slash after that). 1704 */ 1705 INCOMPLETE_HOSTNAME = 3, 1706 } 1707 alias GtkFileChooserError FileChooserError; 1708 1709 /** 1710 * Describes changes in a filter in more detail and allows objects 1711 * using the filter to optimize refiltering items. 1712 * 1713 * If you are writing an implementation and are not sure which 1714 * value to pass, %GTK_FILTER_CHANGE_DIFFERENT is always a correct 1715 * choice. 1716 */ 1717 public enum GtkFilterChange 1718 { 1719 /** 1720 * The filter change cannot be 1721 * described with any of the other enumeration values. 1722 */ 1723 DIFFERENT = 0, 1724 /** 1725 * The filter is less strict than 1726 * it was before: All items that it used to return %TRUE for 1727 * still return %TRUE, others now may, too. 1728 */ 1729 LESS_STRICT = 1, 1730 /** 1731 * The filter is more strict than 1732 * it was before: All items that it used to return %FALSE for 1733 * still return %FALSE, others now may, too. 1734 */ 1735 MORE_STRICT = 2, 1736 } 1737 alias GtkFilterChange FilterChange; 1738 1739 /** 1740 * Describes the known strictness of a filter. 1741 * 1742 * Note that for filters where the strictness is not known, 1743 * %GTK_FILTER_MATCH_SOME is always an acceptable value, 1744 * even if a filter does match all or no items. 1745 */ 1746 public enum GtkFilterMatch 1747 { 1748 /** 1749 * The filter matches some items, 1750 * gtk_filter_match() may return %TRUE or %FALSE 1751 */ 1752 SOME = 0, 1753 /** 1754 * The filter does not match any item, 1755 * gtk_filter_match() will always return %FALSE. 1756 */ 1757 NONE = 1, 1758 /** 1759 * The filter matches all items, 1760 * gtk_filter_match() will alays return %TRUE. 1761 */ 1762 ALL = 2, 1763 } 1764 alias GtkFilterMatch FilterMatch; 1765 1766 /** 1767 * Specifies the granularity of font selection 1768 * that is desired in a `GtkFontChooser`. 1769 * 1770 * This enumeration may be extended in the future; applications should 1771 * ignore unknown values. 1772 */ 1773 public enum GtkFontChooserLevel 1774 { 1775 /** 1776 * Allow selecting a font family 1777 */ 1778 FAMILY = 0, 1779 /** 1780 * Allow selecting a specific font face 1781 */ 1782 STYLE = 1, 1783 /** 1784 * Allow selecting a specific font size 1785 */ 1786 SIZE = 2, 1787 /** 1788 * Allow changing OpenType font variation axes 1789 */ 1790 VARIATIONS = 4, 1791 /** 1792 * Allow selecting specific OpenType font features 1793 */ 1794 FEATURES = 8, 1795 } 1796 alias GtkFontChooserLevel FontChooserLevel; 1797 1798 /** 1799 * Used to specify options for gtk_icon_theme_lookup_icon(). 1800 */ 1801 public enum GtkIconLookupFlags 1802 { 1803 /** 1804 * Try to always load regular icons, even 1805 * when symbolic icon names are given 1806 */ 1807 FORCE_REGULAR = 1, 1808 /** 1809 * Try to always load symbolic icons, even 1810 * when regular icon names are given 1811 */ 1812 FORCE_SYMBOLIC = 2, 1813 /** 1814 * Starts loading the texture in the background 1815 * so it is ready when later needed. 1816 */ 1817 PRELOAD = 4, 1818 } 1819 alias GtkIconLookupFlags IconLookupFlags; 1820 1821 /** 1822 * Built-in icon sizes. 1823 * 1824 * Icon sizes default to being inherited. Where they cannot be 1825 * inherited, text size is the default. 1826 * 1827 * All widgets which use `GtkIconSize` set the normal-icons or 1828 * large-icons style classes correspondingly, and let themes 1829 * determine the actual size to be used with the 1830 * `-gtk-icon-size` CSS property. 1831 */ 1832 public enum GtkIconSize 1833 { 1834 /** 1835 * Keep the size of the parent element 1836 */ 1837 INHERIT = 0, 1838 /** 1839 * Size similar to text size 1840 */ 1841 NORMAL = 1, 1842 /** 1843 * Large size, for example in an icon view 1844 */ 1845 LARGE = 2, 1846 } 1847 alias GtkIconSize IconSize; 1848 1849 /** 1850 * Error codes for `GtkIconTheme` operations. 1851 */ 1852 public enum GtkIconThemeError 1853 { 1854 /** 1855 * The icon specified does not exist in the theme 1856 */ 1857 NOT_FOUND = 0, 1858 /** 1859 * An unspecified error occurred. 1860 */ 1861 FAILED = 1, 1862 } 1863 alias GtkIconThemeError IconThemeError; 1864 1865 /** 1866 * An enum for determining where a dropped item goes. 1867 */ 1868 public enum GtkIconViewDropPosition 1869 { 1870 /** 1871 * no drop possible 1872 */ 1873 NO_DROP = 0, 1874 /** 1875 * dropped item replaces the item 1876 */ 1877 DROP_INTO = 1, 1878 /** 1879 * dropped item is inserted to the left 1880 */ 1881 DROP_LEFT = 2, 1882 /** 1883 * dropped item is inserted to the right 1884 */ 1885 DROP_RIGHT = 3, 1886 /** 1887 * dropped item is inserted above 1888 */ 1889 DROP_ABOVE = 4, 1890 /** 1891 * dropped item is inserted below 1892 */ 1893 DROP_BELOW = 5, 1894 } 1895 alias GtkIconViewDropPosition IconViewDropPosition; 1896 1897 /** 1898 * Describes the image data representation used by a [class@Gtk.Image]. 1899 * 1900 * If you want to get the image from the widget, you can only get the 1901 * currently-stored representation; for instance, if the gtk_image_get_storage_type() 1902 * returns %GTK_IMAGE_PAINTABLE, then you can call gtk_image_get_paintable(). 1903 * 1904 * For empty images, you can request any storage type (call any of the "get" 1905 * functions), but they will all return %NULL values. 1906 */ 1907 public enum GtkImageType 1908 { 1909 /** 1910 * there is no image displayed by the widget 1911 */ 1912 EMPTY = 0, 1913 /** 1914 * the widget contains a named icon 1915 */ 1916 ICON_NAME = 1, 1917 /** 1918 * the widget contains a #GIcon 1919 */ 1920 GICON = 2, 1921 /** 1922 * the widget contains a #GdkPaintable 1923 */ 1924 PAINTABLE = 3, 1925 } 1926 alias GtkImageType ImageType; 1927 1928 /** 1929 * Describes hints that might be taken into account by input methods 1930 * or applications. 1931 * 1932 * Note that input methods may already tailor their behaviour according 1933 * to the `GtkInputPurpose` of the entry. 1934 * 1935 * Some common sense is expected when using these flags - mixing 1936 * %GTK_INPUT_HINT_LOWERCASE with any of the uppercase hints makes no sense. 1937 * 1938 * This enumeration may be extended in the future; input methods should 1939 * ignore unknown values. 1940 */ 1941 public enum GtkInputHints 1942 { 1943 /** 1944 * No special behaviour suggested 1945 */ 1946 NONE = 0, 1947 /** 1948 * Suggest checking for typos 1949 */ 1950 SPELLCHECK = 1, 1951 /** 1952 * Suggest not checking for typos 1953 */ 1954 NO_SPELLCHECK = 2, 1955 /** 1956 * Suggest word completion 1957 */ 1958 WORD_COMPLETION = 4, 1959 /** 1960 * Suggest to convert all text to lowercase 1961 */ 1962 LOWERCASE = 8, 1963 /** 1964 * Suggest to capitalize all text 1965 */ 1966 UPPERCASE_CHARS = 16, 1967 /** 1968 * Suggest to capitalize the first 1969 * character of each word 1970 */ 1971 UPPERCASE_WORDS = 32, 1972 /** 1973 * Suggest to capitalize the 1974 * first word of each sentence 1975 */ 1976 UPPERCASE_SENTENCES = 64, 1977 /** 1978 * Suggest to not show an onscreen keyboard 1979 * (e.g for a calculator that already has all the keys). 1980 */ 1981 INHIBIT_OSK = 128, 1982 /** 1983 * The text is vertical 1984 */ 1985 VERTICAL_WRITING = 256, 1986 /** 1987 * Suggest offering Emoji support 1988 */ 1989 EMOJI = 512, 1990 /** 1991 * Suggest not offering Emoji support 1992 */ 1993 NO_EMOJI = 1024, 1994 /** 1995 * Request that the input method should not 1996 * update personalized data (like typing history) 1997 */ 1998 PRIVATE = 2048, 1999 } 2000 alias GtkInputHints InputHints; 2001 2002 /** 2003 * Describes primary purpose of the input widget. 2004 * 2005 * This information is useful for on-screen keyboards and similar input 2006 * methods to decide which keys should be presented to the user. 2007 * 2008 * Note that the purpose is not meant to impose a totally strict rule 2009 * about allowed characters, and does not replace input validation. 2010 * It is fine for an on-screen keyboard to let the user override the 2011 * character set restriction that is expressed by the purpose. The 2012 * application is expected to validate the entry contents, even if 2013 * it specified a purpose. 2014 * 2015 * The difference between %GTK_INPUT_PURPOSE_DIGITS and 2016 * %GTK_INPUT_PURPOSE_NUMBER is that the former accepts only digits 2017 * while the latter also some punctuation (like commas or points, plus, 2018 * minus) and “e” or “E” as in 3.14E+000. 2019 * 2020 * This enumeration may be extended in the future; input methods should 2021 * interpret unknown values as “free form”. 2022 */ 2023 public enum GtkInputPurpose 2024 { 2025 /** 2026 * Allow any character 2027 */ 2028 FREE_FORM = 0, 2029 /** 2030 * Allow only alphabetic characters 2031 */ 2032 ALPHA = 1, 2033 /** 2034 * Allow only digits 2035 */ 2036 DIGITS = 2, 2037 /** 2038 * Edited field expects numbers 2039 */ 2040 NUMBER = 3, 2041 /** 2042 * Edited field expects phone number 2043 */ 2044 PHONE = 4, 2045 /** 2046 * Edited field expects URL 2047 */ 2048 URL = 5, 2049 /** 2050 * Edited field expects email address 2051 */ 2052 EMAIL = 6, 2053 /** 2054 * Edited field expects the name of a person 2055 */ 2056 NAME = 7, 2057 /** 2058 * Like %GTK_INPUT_PURPOSE_FREE_FORM, but characters are hidden 2059 */ 2060 PASSWORD = 8, 2061 /** 2062 * Like %GTK_INPUT_PURPOSE_DIGITS, but characters are hidden 2063 */ 2064 PIN = 9, 2065 /** 2066 * Allow any character, in addition to control codes 2067 */ 2068 TERMINAL = 10, 2069 } 2070 alias GtkInputPurpose InputPurpose; 2071 2072 /** 2073 * Used for justifying the text inside a `GtkLabel` widget. 2074 */ 2075 public enum GtkJustification 2076 { 2077 /** 2078 * The text is placed at the left edge of the label. 2079 */ 2080 LEFT = 0, 2081 /** 2082 * The text is placed at the right edge of the label. 2083 */ 2084 RIGHT = 1, 2085 /** 2086 * The text is placed in the center of the label. 2087 */ 2088 CENTER = 2, 2089 /** 2090 * The text is placed is distributed across the label. 2091 */ 2092 FILL = 3, 2093 } 2094 alias GtkJustification Justification; 2095 2096 /** 2097 * Describes how `GtkLevelBar` contents should be rendered. 2098 * 2099 * Note that this enumeration could be extended with additional modes 2100 * in the future. 2101 */ 2102 public enum GtkLevelBarMode 2103 { 2104 /** 2105 * the bar has a continuous mode 2106 */ 2107 CONTINUOUS = 0, 2108 /** 2109 * the bar has a discrete mode 2110 */ 2111 DISCRETE = 1, 2112 } 2113 alias GtkLevelBarMode LevelBarMode; 2114 2115 /** 2116 * The type of license for an application. 2117 * 2118 * This enumeration can be expanded at later date. 2119 */ 2120 public enum GtkLicense 2121 { 2122 /** 2123 * No license specified 2124 */ 2125 UNKNOWN = 0, 2126 /** 2127 * A license text is going to be specified by the 2128 * developer 2129 */ 2130 CUSTOM = 1, 2131 /** 2132 * The GNU General Public License, version 2.0 or later 2133 */ 2134 GPL_2_0 = 2, 2135 /** 2136 * The GNU General Public License, version 3.0 or later 2137 */ 2138 GPL_3_0 = 3, 2139 /** 2140 * The GNU Lesser General Public License, version 2.1 or later 2141 */ 2142 LGPL_2_1 = 4, 2143 /** 2144 * The GNU Lesser General Public License, version 3.0 or later 2145 */ 2146 LGPL_3_0 = 5, 2147 /** 2148 * The BSD standard license 2149 */ 2150 BSD = 6, 2151 /** 2152 * The MIT/X11 standard license 2153 */ 2154 MIT_X11 = 7, 2155 /** 2156 * The Artistic License, version 2.0 2157 */ 2158 ARTISTIC = 8, 2159 /** 2160 * The GNU General Public License, version 2.0 only 2161 */ 2162 GPL_2_0_ONLY = 9, 2163 /** 2164 * The GNU General Public License, version 3.0 only 2165 */ 2166 GPL_3_0_ONLY = 10, 2167 /** 2168 * The GNU Lesser General Public License, version 2.1 only 2169 */ 2170 LGPL_2_1_ONLY = 11, 2171 /** 2172 * The GNU Lesser General Public License, version 3.0 only 2173 */ 2174 LGPL_3_0_ONLY = 12, 2175 /** 2176 * The GNU Affero General Public License, version 3.0 or later 2177 */ 2178 AGPL_3_0 = 13, 2179 /** 2180 * The GNU Affero General Public License, version 3.0 only 2181 */ 2182 AGPL_3_0_ONLY = 14, 2183 /** 2184 * The 3-clause BSD licence 2185 */ 2186 BSD_3 = 15, 2187 /** 2188 * The Apache License, version 2.0 2189 */ 2190 APACHE_2_0 = 16, 2191 /** 2192 * The Mozilla Public License, version 2.0 2193 */ 2194 MPL_2_0 = 17, 2195 } 2196 alias GtkLicense License; 2197 2198 /** 2199 * The type of message being displayed in a `GtkMessageDialog`. 2200 */ 2201 public enum GtkMessageType : uint 2202 { 2203 /** 2204 * Informational message 2205 */ 2206 INFO = 0, 2207 /** 2208 * Non-fatal warning message 2209 */ 2210 WARNING = 1, 2211 /** 2212 * Question requiring a choice 2213 */ 2214 QUESTION = 2, 2215 /** 2216 * Fatal error message 2217 */ 2218 ERROR = 3, 2219 /** 2220 * None of the above 2221 */ 2222 OTHER = 4, 2223 } 2224 alias GtkMessageType MessageType; 2225 2226 /** 2227 * Passed as argument to various keybinding signals for moving the 2228 * cursor position. 2229 */ 2230 public enum GtkMovementStep 2231 { 2232 /** 2233 * Move forward or back by graphemes 2234 */ 2235 LOGICAL_POSITIONS = 0, 2236 /** 2237 * Move left or right by graphemes 2238 */ 2239 VISUAL_POSITIONS = 1, 2240 /** 2241 * Move forward or back by words 2242 */ 2243 WORDS = 2, 2244 /** 2245 * Move up or down lines (wrapped lines) 2246 */ 2247 DISPLAY_LINES = 3, 2248 /** 2249 * Move to either end of a line 2250 */ 2251 DISPLAY_LINE_ENDS = 4, 2252 /** 2253 * Move up or down paragraphs (newline-ended lines) 2254 */ 2255 PARAGRAPHS = 5, 2256 /** 2257 * Move to either end of a paragraph 2258 */ 2259 PARAGRAPH_ENDS = 6, 2260 /** 2261 * Move by pages 2262 */ 2263 PAGES = 7, 2264 /** 2265 * Move to ends of the buffer 2266 */ 2267 BUFFER_ENDS = 8, 2268 /** 2269 * Move horizontally by pages 2270 */ 2271 HORIZONTAL_PAGES = 9, 2272 } 2273 alias GtkMovementStep MovementStep; 2274 2275 /** 2276 * The parameter used in the action signals of `GtkNotebook`. 2277 */ 2278 public enum GtkNotebookTab 2279 { 2280 /** 2281 * the first tab in the notebook 2282 */ 2283 FIRST = 0, 2284 /** 2285 * the last tab in the notebook 2286 */ 2287 LAST = 1, 2288 } 2289 alias GtkNotebookTab NotebookTab; 2290 2291 /** 2292 * Used to determine the layout of pages on a sheet when printing 2293 * multiple pages per sheet. 2294 */ 2295 public enum GtkNumberUpLayout 2296 { 2297 /** 2298 * ![](layout-lrtb.png) 2299 */ 2300 LRTB = 0, 2301 /** 2302 * ![](layout-lrbt.png) 2303 */ 2304 LRBT = 1, 2305 /** 2306 * ![](layout-rltb.png) 2307 */ 2308 RLTB = 2, 2309 /** 2310 * ![](layout-rlbt.png) 2311 */ 2312 RLBT = 3, 2313 /** 2314 * ![](layout-tblr.png) 2315 */ 2316 TBLR = 4, 2317 /** 2318 * ![](layout-tbrl.png) 2319 */ 2320 TBRL = 5, 2321 /** 2322 * ![](layout-btlr.png) 2323 */ 2324 BTLR = 6, 2325 /** 2326 * ![](layout-btrl.png) 2327 */ 2328 BTRL = 7, 2329 } 2330 alias GtkNumberUpLayout NumberUpLayout; 2331 2332 /** 2333 * Describes the way two values can be compared. 2334 * 2335 * These values can be used with a `GCompareFunc`. However, 2336 * a `GCompareFunc` is allowed to return any integer values. 2337 * For converting such a value to a `GtkOrdering` value, use 2338 * [func@Gtk.Ordering.from_cmpfunc]. 2339 */ 2340 public enum GtkOrdering 2341 { 2342 /** 2343 * the first value is smaller than the second 2344 */ 2345 SMALLER = -1, 2346 /** 2347 * the two values are equal 2348 */ 2349 EQUAL = 0, 2350 /** 2351 * the first value is larger than the second 2352 */ 2353 LARGER = 1, 2354 } 2355 alias GtkOrdering Ordering; 2356 2357 /** 2358 * Represents the orientation of widgets and other objects. 2359 * 2360 * Typical examples are `GtkBox or `GtkGesturePan`. 2361 */ 2362 public enum GtkOrientation 2363 { 2364 /** 2365 * The element is in horizontal orientation. 2366 */ 2367 HORIZONTAL = 0, 2368 /** 2369 * The element is in vertical orientation. 2370 */ 2371 VERTICAL = 1, 2372 } 2373 alias GtkOrientation Orientation; 2374 2375 /** 2376 * Defines how content overflowing a given area should be handled. 2377 * 2378 * This is used in [method@Gtk.Widget.set_overflow]. The 2379 * [property@Gtk.Widget:overflow] property is modeled after the 2380 * CSS overflow property, but implements it only partially. 2381 */ 2382 public enum GtkOverflow 2383 { 2384 /** 2385 * No change is applied. Content is drawn at the specified 2386 * position. 2387 */ 2388 VISIBLE = 0, 2389 /** 2390 * Content is clipped to the bounds of the area. Content 2391 * outside the area is not drawn and cannot be interacted with. 2392 */ 2393 HIDDEN = 1, 2394 } 2395 alias GtkOverflow Overflow; 2396 2397 /** 2398 * Represents the packing location of a children in its parent. 2399 * 2400 * See `GtkWindowControls` for example. 2401 */ 2402 public enum GtkPackType 2403 { 2404 /** 2405 * The child is packed into the start of the widget 2406 */ 2407 START = 0, 2408 /** 2409 * The child is packed into the end of the widget 2410 */ 2411 END = 1, 2412 } 2413 alias GtkPackType PackType; 2414 2415 /** 2416 * The type of a pad action. 2417 */ 2418 public enum GtkPadActionType 2419 { 2420 /** 2421 * Action is triggered by a pad button 2422 */ 2423 BUTTON = 0, 2424 /** 2425 * Action is triggered by a pad ring 2426 */ 2427 RING = 1, 2428 /** 2429 * Action is triggered by a pad strip 2430 */ 2431 STRIP = 2, 2432 } 2433 alias GtkPadActionType PadActionType; 2434 2435 /** 2436 * See also gtk_print_settings_set_orientation(). 2437 */ 2438 public enum GtkPageOrientation 2439 { 2440 /** 2441 * Portrait mode. 2442 */ 2443 PORTRAIT = 0, 2444 /** 2445 * Landscape mode. 2446 */ 2447 LANDSCAPE = 1, 2448 /** 2449 * Reverse portrait mode. 2450 */ 2451 REVERSE_PORTRAIT = 2, 2452 /** 2453 * Reverse landscape mode. 2454 */ 2455 REVERSE_LANDSCAPE = 3, 2456 } 2457 alias GtkPageOrientation PageOrientation; 2458 2459 /** 2460 * See also gtk_print_job_set_page_set(). 2461 */ 2462 public enum GtkPageSet 2463 { 2464 /** 2465 * All pages. 2466 */ 2467 ALL = 0, 2468 /** 2469 * Even pages. 2470 */ 2471 EVEN = 1, 2472 /** 2473 * Odd pages. 2474 */ 2475 ODD = 2, 2476 } 2477 alias GtkPageSet PageSet; 2478 2479 /** 2480 * Describes the panning direction of a `GtkGesturePan` 2481 */ 2482 public enum GtkPanDirection 2483 { 2484 /** 2485 * panned towards the left 2486 */ 2487 LEFT = 0, 2488 /** 2489 * panned towards the right 2490 */ 2491 RIGHT = 1, 2492 /** 2493 * panned upwards 2494 */ 2495 UP = 2, 2496 /** 2497 * panned downwards 2498 */ 2499 DOWN = 3, 2500 } 2501 alias GtkPanDirection PanDirection; 2502 2503 /** 2504 * Flags that influence the behavior of gtk_widget_pick(). 2505 */ 2506 public enum GtkPickFlags 2507 { 2508 /** 2509 * The default behavior, include widgets that are receiving events 2510 */ 2511 DEFAULT = 0, 2512 /** 2513 * Include widgets that are insensitive 2514 */ 2515 INSENSITIVE = 1, 2516 /** 2517 * Include widgets that are marked as non-targetable. See #GtkWidget:can-target 2518 */ 2519 NON_TARGETABLE = 2, 2520 } 2521 alias GtkPickFlags PickFlags; 2522 2523 /** 2524 * Determines how the size should be computed to achieve the one of the 2525 * visibility mode for the scrollbars. 2526 */ 2527 public enum GtkPolicyType 2528 { 2529 /** 2530 * The scrollbar is always visible. The view size is 2531 * independent of the content. 2532 */ 2533 ALWAYS = 0, 2534 /** 2535 * The scrollbar will appear and disappear as necessary. 2536 * For example, when all of a `GtkTreeView` can not be seen. 2537 */ 2538 AUTOMATIC = 1, 2539 /** 2540 * The scrollbar should never appear. In this mode the 2541 * content determines the size. 2542 */ 2543 NEVER = 2, 2544 /** 2545 * Don't show a scrollbar, but don't force the 2546 * size to follow the content. This can be used e.g. to make multiple 2547 * scrolled windows share a scrollbar. 2548 */ 2549 EXTERNAL = 3, 2550 } 2551 alias GtkPolicyType PolicyType; 2552 2553 /** 2554 * Flags that affect how popover menus are created from 2555 * a menu model. 2556 */ 2557 public enum GtkPopoverMenuFlags 2558 { 2559 /** 2560 * Create submenus as nested 2561 * popovers. Without this flag, submenus are created as 2562 * sliding pages that replace the main menu. 2563 */ 2564 NESTED = 1, 2565 } 2566 alias GtkPopoverMenuFlags PopoverMenuFlags; 2567 2568 /** 2569 * Describes which edge of a widget a certain feature is positioned at. 2570 * 2571 * For examples, see the tabs of a `GtkNotebook`, or the label 2572 * of a `GtkScale`. 2573 */ 2574 public enum GtkPositionType 2575 { 2576 /** 2577 * The feature is at the left edge. 2578 */ 2579 LEFT = 0, 2580 /** 2581 * The feature is at the right edge. 2582 */ 2583 RIGHT = 1, 2584 /** 2585 * The feature is at the top edge. 2586 */ 2587 TOP = 2, 2588 /** 2589 * The feature is at the bottom edge. 2590 */ 2591 BOTTOM = 3, 2592 } 2593 alias GtkPositionType PositionType; 2594 2595 /** 2596 * Specifies which features the print dialog should offer. 2597 * 2598 * If neither %GTK_PRINT_CAPABILITY_GENERATE_PDF nor 2599 * %GTK_PRINT_CAPABILITY_GENERATE_PS is specified, GTK assumes that all 2600 * formats are supported. 2601 */ 2602 public enum GtkPrintCapabilities 2603 { 2604 /** 2605 * Print dialog will offer printing even/odd pages. 2606 */ 2607 PAGE_SET = 1, 2608 /** 2609 * Print dialog will allow to print multiple copies. 2610 */ 2611 COPIES = 2, 2612 /** 2613 * Print dialog will allow to collate multiple copies. 2614 */ 2615 COLLATE = 4, 2616 /** 2617 * Print dialog will allow to print pages in reverse order. 2618 */ 2619 REVERSE = 8, 2620 /** 2621 * Print dialog will allow to scale the output. 2622 */ 2623 SCALE = 16, 2624 /** 2625 * The program will send the document to 2626 * the printer in PDF format 2627 */ 2628 GENERATE_PDF = 32, 2629 /** 2630 * The program will send the document to 2631 * the printer in Postscript format 2632 */ 2633 GENERATE_PS = 64, 2634 /** 2635 * Print dialog will offer a preview 2636 */ 2637 PREVIEW = 128, 2638 /** 2639 * Print dialog will offer printing multiple 2640 * pages per sheet 2641 */ 2642 NUMBER_UP = 256, 2643 /** 2644 * Print dialog will allow to rearrange 2645 * pages when printing multiple pages per sheet 2646 */ 2647 NUMBER_UP_LAYOUT = 512, 2648 } 2649 alias GtkPrintCapabilities PrintCapabilities; 2650 2651 /** 2652 * See also gtk_print_settings_set_duplex(). 2653 */ 2654 public enum GtkPrintDuplex 2655 { 2656 /** 2657 * No duplex. 2658 */ 2659 SIMPLEX = 0, 2660 /** 2661 * Horizontal duplex. 2662 */ 2663 HORIZONTAL = 1, 2664 /** 2665 * Vertical duplex. 2666 */ 2667 VERTICAL = 2, 2668 } 2669 alias GtkPrintDuplex PrintDuplex; 2670 2671 /** 2672 * Error codes that identify various errors that can occur while 2673 * using the GTK printing support. 2674 */ 2675 public enum GtkPrintError 2676 { 2677 /** 2678 * An unspecified error occurred. 2679 */ 2680 GENERAL = 0, 2681 /** 2682 * An internal error occurred. 2683 */ 2684 INTERNAL_ERROR = 1, 2685 /** 2686 * A memory allocation failed. 2687 */ 2688 NOMEM = 2, 2689 /** 2690 * An error occurred while loading a page setup 2691 * or paper size from a key file. 2692 */ 2693 INVALID_FILE = 3, 2694 } 2695 alias GtkPrintError PrintError; 2696 2697 /** 2698 * Determines what action the print operation should perform. 2699 * 2700 * A parameter of this typs is passed to [method@Gtk.PrintOperation.run]. 2701 */ 2702 public enum GtkPrintOperationAction 2703 { 2704 /** 2705 * Show the print dialog. 2706 */ 2707 PRINT_DIALOG = 0, 2708 /** 2709 * Start to print without showing 2710 * the print dialog, based on the current print settings. 2711 */ 2712 PRINT = 1, 2713 /** 2714 * Show the print preview. 2715 */ 2716 PREVIEW = 2, 2717 /** 2718 * Export to a file. This requires 2719 * the export-filename property to be set. 2720 */ 2721 EXPORT = 3, 2722 } 2723 alias GtkPrintOperationAction PrintOperationAction; 2724 2725 /** 2726 * The result of a print operation. 2727 * 2728 * A value of this type is returned by [method@Gtk.PrintOperation.run]. 2729 */ 2730 public enum GtkPrintOperationResult 2731 { 2732 /** 2733 * An error has occurred. 2734 */ 2735 ERROR = 0, 2736 /** 2737 * The print settings should be stored. 2738 */ 2739 APPLY = 1, 2740 /** 2741 * The print operation has been canceled, 2742 * the print settings should not be stored. 2743 */ 2744 CANCEL = 2, 2745 /** 2746 * The print operation is not complete 2747 * yet. This value will only be returned when running asynchronously. 2748 */ 2749 IN_PROGRESS = 3, 2750 } 2751 alias GtkPrintOperationResult PrintOperationResult; 2752 2753 /** 2754 * See also gtk_print_job_set_pages() 2755 */ 2756 public enum GtkPrintPages 2757 { 2758 /** 2759 * All pages. 2760 */ 2761 ALL = 0, 2762 /** 2763 * Current page. 2764 */ 2765 CURRENT = 1, 2766 /** 2767 * Range of pages. 2768 */ 2769 RANGES = 2, 2770 /** 2771 * Selected pages. 2772 */ 2773 SELECTION = 3, 2774 } 2775 alias GtkPrintPages PrintPages; 2776 2777 /** 2778 * See also gtk_print_settings_set_quality(). 2779 */ 2780 public enum GtkPrintQuality 2781 { 2782 /** 2783 * Low quality. 2784 */ 2785 LOW = 0, 2786 /** 2787 * Normal quality. 2788 */ 2789 NORMAL = 1, 2790 /** 2791 * High quality. 2792 */ 2793 HIGH = 2, 2794 /** 2795 * Draft quality. 2796 */ 2797 DRAFT = 3, 2798 } 2799 alias GtkPrintQuality PrintQuality; 2800 2801 /** 2802 * The status gives a rough indication of the completion of a running 2803 * print operation. 2804 */ 2805 public enum GtkPrintStatus 2806 { 2807 /** 2808 * The printing has not started yet; this 2809 * status is set initially, and while the print dialog is shown. 2810 */ 2811 INITIAL = 0, 2812 /** 2813 * This status is set while the begin-print 2814 * signal is emitted and during pagination. 2815 */ 2816 PREPARING = 1, 2817 /** 2818 * This status is set while the 2819 * pages are being rendered. 2820 */ 2821 GENERATING_DATA = 2, 2822 /** 2823 * The print job is being sent off to the 2824 * printer. 2825 */ 2826 SENDING_DATA = 3, 2827 /** 2828 * The print job has been sent to the printer, 2829 * but is not printed for some reason, e.g. the printer may be stopped. 2830 */ 2831 PENDING = 4, 2832 /** 2833 * Some problem has occurred during 2834 * printing, e.g. a paper jam. 2835 */ 2836 PENDING_ISSUE = 5, 2837 /** 2838 * The printer is processing the print job. 2839 */ 2840 PRINTING = 6, 2841 /** 2842 * The printing has been completed successfully. 2843 */ 2844 FINISHED = 7, 2845 /** 2846 * The printing has been aborted. 2847 */ 2848 FINISHED_ABORTED = 8, 2849 } 2850 alias GtkPrintStatus PrintStatus; 2851 2852 /** 2853 * Describes limits of a `GtkEventController` for handling events 2854 * targeting other widgets. 2855 */ 2856 public enum GtkPropagationLimit 2857 { 2858 /** 2859 * Events are handled regardless of what their 2860 * target is. 2861 */ 2862 NONE = 0, 2863 /** 2864 * Events are only handled if their target 2865 * is in the same #GtkNative as the event controllers widget. Note 2866 * that some event types have two targets (origin and destination). 2867 */ 2868 SAME_NATIVE = 1, 2869 } 2870 alias GtkPropagationLimit PropagationLimit; 2871 2872 /** 2873 * Describes the stage at which events are fed into a `GtkEventController`. 2874 */ 2875 public enum GtkPropagationPhase 2876 { 2877 /** 2878 * Events are not delivered. 2879 */ 2880 NONE = 0, 2881 /** 2882 * Events are delivered in the capture phase. The 2883 * capture phase happens before the bubble phase, runs from the toplevel down 2884 * to the event widget. This option should only be used on containers that 2885 * might possibly handle events before their children do. 2886 */ 2887 CAPTURE = 1, 2888 /** 2889 * Events are delivered in the bubble phase. The bubble 2890 * phase happens after the capture phase, and before the default handlers 2891 * are run. This phase runs from the event widget, up to the toplevel. 2892 */ 2893 BUBBLE = 2, 2894 /** 2895 * Events are delivered in the default widget event handlers, 2896 * note that widget implementations must chain up on button, motion, touch and 2897 * grab broken handlers for controllers in this phase to be run. 2898 */ 2899 TARGET = 3, 2900 } 2901 alias GtkPropagationPhase PropagationPhase; 2902 2903 /** 2904 * Error codes for #GtkRecentManager operations 2905 */ 2906 public enum GtkRecentManagerError 2907 { 2908 /** 2909 * the URI specified does not exists in 2910 * the recently used resources list. 2911 */ 2912 NOT_FOUND = 0, 2913 /** 2914 * the URI specified is not valid. 2915 */ 2916 INVALID_URI = 1, 2917 /** 2918 * the supplied string is not 2919 * UTF-8 encoded. 2920 */ 2921 INVALID_ENCODING = 2, 2922 /** 2923 * no application has registered 2924 * the specified item. 2925 */ 2926 NOT_REGISTERED = 3, 2927 /** 2928 * failure while reading the recently used 2929 * resources file. 2930 */ 2931 READ = 4, 2932 /** 2933 * failure while writing the recently used 2934 * resources file. 2935 */ 2936 WRITE = 5, 2937 /** 2938 * unspecified error. 2939 */ 2940 UNKNOWN = 6, 2941 } 2942 alias GtkRecentManagerError RecentManagerError; 2943 2944 /** 2945 * Predefined values for use as response ids in gtk_dialog_add_button(). 2946 * 2947 * All predefined values are negative; GTK leaves values of 0 or greater for 2948 * application-defined response ids. 2949 */ 2950 public enum GtkResponseType 2951 { 2952 /** 2953 * Returned if an action widget has no response id, 2954 * or if the dialog gets programmatically hidden or destroyed 2955 */ 2956 NONE = -1, 2957 /** 2958 * Generic response id, not used by GTK dialogs 2959 */ 2960 REJECT = -2, 2961 /** 2962 * Generic response id, not used by GTK dialogs 2963 */ 2964 ACCEPT = -3, 2965 /** 2966 * Returned if the dialog is deleted 2967 */ 2968 DELETE_EVENT = -4, 2969 /** 2970 * Returned by OK buttons in GTK dialogs 2971 */ 2972 OK = -5, 2973 /** 2974 * Returned by Cancel buttons in GTK dialogs 2975 */ 2976 CANCEL = -6, 2977 /** 2978 * Returned by Close buttons in GTK dialogs 2979 */ 2980 CLOSE = -7, 2981 /** 2982 * Returned by Yes buttons in GTK dialogs 2983 */ 2984 YES = -8, 2985 /** 2986 * Returned by No buttons in GTK dialogs 2987 */ 2988 NO = -9, 2989 /** 2990 * Returned by Apply buttons in GTK dialogs 2991 */ 2992 APPLY = -10, 2993 /** 2994 * Returned by Help buttons in GTK dialogs 2995 */ 2996 HELP = -11, 2997 } 2998 alias GtkResponseType ResponseType; 2999 3000 /** 3001 * These enumeration values describe the possible transitions 3002 * when the child of a `GtkRevealer` widget is shown or hidden. 3003 */ 3004 public enum GtkRevealerTransitionType 3005 { 3006 /** 3007 * No transition 3008 */ 3009 NONE = 0, 3010 /** 3011 * Fade in 3012 */ 3013 CROSSFADE = 1, 3014 /** 3015 * Slide in from the left 3016 */ 3017 SLIDE_RIGHT = 2, 3018 /** 3019 * Slide in from the right 3020 */ 3021 SLIDE_LEFT = 3, 3022 /** 3023 * Slide in from the bottom 3024 */ 3025 SLIDE_UP = 4, 3026 /** 3027 * Slide in from the top 3028 */ 3029 SLIDE_DOWN = 5, 3030 /** 3031 * Floop in from the left 3032 */ 3033 SWING_RIGHT = 6, 3034 /** 3035 * Floop in from the right 3036 */ 3037 SWING_LEFT = 7, 3038 /** 3039 * Floop in from the bottom 3040 */ 3041 SWING_UP = 8, 3042 /** 3043 * Floop in from the top 3044 */ 3045 SWING_DOWN = 9, 3046 } 3047 alias GtkRevealerTransitionType RevealerTransitionType; 3048 3049 /** 3050 * Passed as argument to various keybinding signals. 3051 */ 3052 public enum GtkScrollStep 3053 { 3054 /** 3055 * Scroll in steps. 3056 */ 3057 STEPS = 0, 3058 /** 3059 * Scroll by pages. 3060 */ 3061 PAGES = 1, 3062 /** 3063 * Scroll to ends. 3064 */ 3065 ENDS = 2, 3066 /** 3067 * Scroll in horizontal steps. 3068 */ 3069 HORIZONTAL_STEPS = 3, 3070 /** 3071 * Scroll by horizontal pages. 3072 */ 3073 HORIZONTAL_PAGES = 4, 3074 /** 3075 * Scroll to the horizontal ends. 3076 */ 3077 HORIZONTAL_ENDS = 5, 3078 } 3079 alias GtkScrollStep ScrollStep; 3080 3081 /** 3082 * Scrolling types. 3083 */ 3084 public enum GtkScrollType 3085 { 3086 /** 3087 * No scrolling. 3088 */ 3089 NONE = 0, 3090 /** 3091 * Jump to new location. 3092 */ 3093 JUMP = 1, 3094 /** 3095 * Step backward. 3096 */ 3097 STEP_BACKWARD = 2, 3098 /** 3099 * Step forward. 3100 */ 3101 STEP_FORWARD = 3, 3102 /** 3103 * Page backward. 3104 */ 3105 PAGE_BACKWARD = 4, 3106 /** 3107 * Page forward. 3108 */ 3109 PAGE_FORWARD = 5, 3110 /** 3111 * Step up. 3112 */ 3113 STEP_UP = 6, 3114 /** 3115 * Step down. 3116 */ 3117 STEP_DOWN = 7, 3118 /** 3119 * Page up. 3120 */ 3121 PAGE_UP = 8, 3122 /** 3123 * Page down. 3124 */ 3125 PAGE_DOWN = 9, 3126 /** 3127 * Step to the left. 3128 */ 3129 STEP_LEFT = 10, 3130 /** 3131 * Step to the right. 3132 */ 3133 STEP_RIGHT = 11, 3134 /** 3135 * Page to the left. 3136 */ 3137 PAGE_LEFT = 12, 3138 /** 3139 * Page to the right. 3140 */ 3141 PAGE_RIGHT = 13, 3142 /** 3143 * Scroll to start. 3144 */ 3145 START = 14, 3146 /** 3147 * Scroll to end. 3148 */ 3149 END = 15, 3150 } 3151 alias GtkScrollType ScrollType; 3152 3153 /** 3154 * Defines the policy to be used in a scrollable widget when updating 3155 * the scrolled window adjustments in a given orientation. 3156 */ 3157 public enum GtkScrollablePolicy 3158 { 3159 /** 3160 * Scrollable adjustments are based on the minimum size 3161 */ 3162 MINIMUM = 0, 3163 /** 3164 * Scrollable adjustments are based on the natural size 3165 */ 3166 NATURAL = 1, 3167 } 3168 alias GtkScrollablePolicy ScrollablePolicy; 3169 3170 /** 3171 * Used to control what selections users are allowed to make. 3172 */ 3173 public enum GtkSelectionMode 3174 { 3175 /** 3176 * No selection is possible. 3177 */ 3178 NONE = 0, 3179 /** 3180 * Zero or one element may be selected. 3181 */ 3182 SINGLE = 1, 3183 /** 3184 * Exactly one element is selected. 3185 * In some circumstances, such as initially or during a search 3186 * operation, it’s possible for no element to be selected with 3187 * %GTK_SELECTION_BROWSE. What is really enforced is that the user 3188 * can’t deselect a currently selected element except by selecting 3189 * another element. 3190 */ 3191 BROWSE = 2, 3192 /** 3193 * Any number of elements may be selected. 3194 * The Ctrl key may be used to enlarge the selection, and Shift 3195 * key to select between the focus and the child pointed to. 3196 * Some widgets may also allow Click-drag to select a range of elements. 3197 */ 3198 MULTIPLE = 3, 3199 } 3200 alias GtkSelectionMode SelectionMode; 3201 3202 /** 3203 * Determines how GTK handles the sensitivity of various controls, 3204 * such as combo box buttons. 3205 */ 3206 public enum GtkSensitivityType 3207 { 3208 /** 3209 * The control is made insensitive if no 3210 * action can be triggered 3211 */ 3212 AUTO = 0, 3213 /** 3214 * The control is always sensitive 3215 */ 3216 ON = 1, 3217 /** 3218 * The control is always insensitive 3219 */ 3220 OFF = 2, 3221 } 3222 alias GtkSensitivityType SensitivityType; 3223 3224 /** 3225 * List of flags that can be passed to action activation. 3226 * 3227 * More flags may be added in the future. 3228 */ 3229 public enum GtkShortcutActionFlags 3230 { 3231 /** 3232 * The action is the only 3233 * action that can be activated. If this flag is not set, 3234 * a future activation may select a different action. 3235 */ 3236 EXCLUSIVE = 1, 3237 } 3238 alias GtkShortcutActionFlags ShortcutActionFlags; 3239 3240 /** 3241 * Describes where `GtkShortcut`s added to a 3242 * `GtkShortcutController` get handled. 3243 */ 3244 public enum GtkShortcutScope 3245 { 3246 /** 3247 * Shortcuts are handled inside 3248 * the widget the controller belongs to. 3249 */ 3250 LOCAL = 0, 3251 /** 3252 * Shortcuts are handled by 3253 * the first ancestor that is a #GtkShortcutManager 3254 */ 3255 MANAGED = 1, 3256 /** 3257 * Shortcuts are handled by 3258 * the root widget. 3259 */ 3260 GLOBAL = 2, 3261 } 3262 alias GtkShortcutScope ShortcutScope; 3263 3264 /** 3265 * GtkShortcutType specifies the kind of shortcut that is being described. 3266 * 3267 * More values may be added to this enumeration over time. 3268 */ 3269 public enum GtkShortcutType 3270 { 3271 /** 3272 * The shortcut is a keyboard accelerator. The GtkShortcutsShortcut:accelerator 3273 * property will be used. 3274 */ 3275 ACCELERATOR = 0, 3276 /** 3277 * The shortcut is a pinch gesture. GTK provides an icon and subtitle. 3278 */ 3279 GESTURE_PINCH = 1, 3280 /** 3281 * The shortcut is a stretch gesture. GTK provides an icon and subtitle. 3282 */ 3283 GESTURE_STRETCH = 2, 3284 /** 3285 * The shortcut is a clockwise rotation gesture. GTK provides an icon and subtitle. 3286 */ 3287 GESTURE_ROTATE_CLOCKWISE = 3, 3288 /** 3289 * The shortcut is a counterclockwise rotation gesture. GTK provides an icon and subtitle. 3290 */ 3291 GESTURE_ROTATE_COUNTERCLOCKWISE = 4, 3292 /** 3293 * The shortcut is a two-finger swipe gesture. GTK provides an icon and subtitle. 3294 */ 3295 GESTURE_TWO_FINGER_SWIPE_LEFT = 5, 3296 /** 3297 * The shortcut is a two-finger swipe gesture. GTK provides an icon and subtitle. 3298 */ 3299 GESTURE_TWO_FINGER_SWIPE_RIGHT = 6, 3300 /** 3301 * The shortcut is a gesture. The GtkShortcutsShortcut:icon property will be 3302 * used. 3303 */ 3304 GESTURE = 7, 3305 /** 3306 * The shortcut is a swipe gesture. GTK provides an icon and subtitle. 3307 */ 3308 GESTURE_SWIPE_LEFT = 8, 3309 /** 3310 * The shortcut is a swipe gesture. GTK provides an icon and subtitle. 3311 */ 3312 GESTURE_SWIPE_RIGHT = 9, 3313 } 3314 alias GtkShortcutType ShortcutType; 3315 3316 /** 3317 * The mode of the size group determines the directions in which the size 3318 * group affects the requested sizes of its component widgets. 3319 */ 3320 public enum GtkSizeGroupMode 3321 { 3322 /** 3323 * group has no effect 3324 */ 3325 NONE = 0, 3326 /** 3327 * group affects horizontal requisition 3328 */ 3329 HORIZONTAL = 1, 3330 /** 3331 * group affects vertical requisition 3332 */ 3333 VERTICAL = 2, 3334 /** 3335 * group affects both horizontal and vertical requisition 3336 */ 3337 BOTH = 3, 3338 } 3339 alias GtkSizeGroupMode SizeGroupMode; 3340 3341 /** 3342 * Specifies a preference for height-for-width or 3343 * width-for-height geometry management. 3344 */ 3345 public enum GtkSizeRequestMode 3346 { 3347 /** 3348 * Prefer height-for-width geometry management 3349 */ 3350 HEIGHT_FOR_WIDTH = 0, 3351 /** 3352 * Prefer width-for-height geometry management 3353 */ 3354 WIDTH_FOR_HEIGHT = 1, 3355 /** 3356 * Don’t trade height-for-width or width-for-height 3357 */ 3358 CONSTANT_SIZE = 2, 3359 } 3360 alias GtkSizeRequestMode SizeRequestMode; 3361 3362 /** 3363 * Determines the direction of a sort. 3364 */ 3365 public enum GtkSortType 3366 { 3367 /** 3368 * Sorting is in ascending order. 3369 */ 3370 ASCENDING = 0, 3371 /** 3372 * Sorting is in descending order. 3373 */ 3374 DESCENDING = 1, 3375 } 3376 alias GtkSortType SortType; 3377 3378 /** 3379 * Describes changes in a sorter in more detail and allows users 3380 * to optimize resorting. 3381 */ 3382 public enum GtkSorterChange 3383 { 3384 /** 3385 * The sorter change cannot be described 3386 * by any of the other enumeration values 3387 */ 3388 DIFFERENT = 0, 3389 /** 3390 * The sort order was inverted. Comparisons 3391 * that returned %GTK_ORDERING_SMALLER now return %GTK_ORDERING_LARGER 3392 * and vice versa. Other comparisons return the same values as before. 3393 */ 3394 INVERTED = 1, 3395 /** 3396 * The sorter is less strict: Comparisons 3397 * may now return %GTK_ORDERING_EQUAL that did not do so before. 3398 */ 3399 LESS_STRICT = 2, 3400 /** 3401 * The sorter is more strict: Comparisons 3402 * that did return %GTK_ORDERING_EQUAL may not do so anymore. 3403 */ 3404 MORE_STRICT = 3, 3405 } 3406 alias GtkSorterChange SorterChange; 3407 3408 /** 3409 * Describes the type of order that a `GtkSorter` may produce. 3410 */ 3411 public enum GtkSorterOrder 3412 { 3413 /** 3414 * A partial order. Any #GtkOrdering is possible. 3415 */ 3416 PARTIAL = 0, 3417 /** 3418 * No order, all elements are considered equal. 3419 * gtk_sorter_compare() will only return %GTK_ORDERING_EQUAL. 3420 */ 3421 NONE = 1, 3422 /** 3423 * A total order. gtk_sorter_compare() will only 3424 * return %GTK_ORDERING_EQUAL if an item is compared with itself. Two 3425 * different items will never cause this value to be returned. 3426 */ 3427 TOTAL = 2, 3428 } 3429 alias GtkSorterOrder SorterOrder; 3430 3431 /** 3432 * Determines whether the spin button displays values outside the adjustment 3433 * bounds. 3434 * 3435 * See [method@Gtk.SpinButton.set_update_policy]. 3436 */ 3437 public enum GtkSpinButtonUpdatePolicy 3438 { 3439 /** 3440 * When refreshing your #GtkSpinButton, the value is 3441 * always displayed 3442 */ 3443 ALWAYS = 0, 3444 /** 3445 * When refreshing your #GtkSpinButton, the value is 3446 * only displayed if it is valid within the bounds of the spin button's 3447 * adjustment 3448 */ 3449 IF_VALID = 1, 3450 } 3451 alias GtkSpinButtonUpdatePolicy SpinButtonUpdatePolicy; 3452 3453 /** 3454 * The values of the GtkSpinType enumeration are used to specify the 3455 * change to make in gtk_spin_button_spin(). 3456 */ 3457 public enum GtkSpinType 3458 { 3459 /** 3460 * Increment by the adjustments step increment. 3461 */ 3462 STEP_FORWARD = 0, 3463 /** 3464 * Decrement by the adjustments step increment. 3465 */ 3466 STEP_BACKWARD = 1, 3467 /** 3468 * Increment by the adjustments page increment. 3469 */ 3470 PAGE_FORWARD = 2, 3471 /** 3472 * Decrement by the adjustments page increment. 3473 */ 3474 PAGE_BACKWARD = 3, 3475 /** 3476 * Go to the adjustments lower bound. 3477 */ 3478 HOME = 4, 3479 /** 3480 * Go to the adjustments upper bound. 3481 */ 3482 END = 5, 3483 /** 3484 * Change by a specified amount. 3485 */ 3486 USER_DEFINED = 6, 3487 } 3488 alias GtkSpinType SpinType; 3489 3490 /** 3491 * Possible transitions between pages in a `GtkStack` widget. 3492 * 3493 * New values may be added to this enumeration over time. 3494 */ 3495 public enum GtkStackTransitionType 3496 { 3497 /** 3498 * No transition 3499 */ 3500 NONE = 0, 3501 /** 3502 * A cross-fade 3503 */ 3504 CROSSFADE = 1, 3505 /** 3506 * Slide from left to right 3507 */ 3508 SLIDE_RIGHT = 2, 3509 /** 3510 * Slide from right to left 3511 */ 3512 SLIDE_LEFT = 3, 3513 /** 3514 * Slide from bottom up 3515 */ 3516 SLIDE_UP = 4, 3517 /** 3518 * Slide from top down 3519 */ 3520 SLIDE_DOWN = 5, 3521 /** 3522 * Slide from left or right according to the children order 3523 */ 3524 SLIDE_LEFT_RIGHT = 6, 3525 /** 3526 * Slide from top down or bottom up according to the order 3527 */ 3528 SLIDE_UP_DOWN = 7, 3529 /** 3530 * Cover the old page by sliding up 3531 */ 3532 OVER_UP = 8, 3533 /** 3534 * Cover the old page by sliding down 3535 */ 3536 OVER_DOWN = 9, 3537 /** 3538 * Cover the old page by sliding to the left 3539 */ 3540 OVER_LEFT = 10, 3541 /** 3542 * Cover the old page by sliding to the right 3543 */ 3544 OVER_RIGHT = 11, 3545 /** 3546 * Uncover the new page by sliding up 3547 */ 3548 UNDER_UP = 12, 3549 /** 3550 * Uncover the new page by sliding down 3551 */ 3552 UNDER_DOWN = 13, 3553 /** 3554 * Uncover the new page by sliding to the left 3555 */ 3556 UNDER_LEFT = 14, 3557 /** 3558 * Uncover the new page by sliding to the right 3559 */ 3560 UNDER_RIGHT = 15, 3561 /** 3562 * Cover the old page sliding up or uncover the new page sliding down, according to order 3563 */ 3564 OVER_UP_DOWN = 16, 3565 /** 3566 * Cover the old page sliding down or uncover the new page sliding up, according to order 3567 */ 3568 OVER_DOWN_UP = 17, 3569 /** 3570 * Cover the old page sliding left or uncover the new page sliding right, according to order 3571 */ 3572 OVER_LEFT_RIGHT = 18, 3573 /** 3574 * Cover the old page sliding right or uncover the new page sliding left, according to order 3575 */ 3576 OVER_RIGHT_LEFT = 19, 3577 /** 3578 * Pretend the pages are sides of a cube and rotate that cube to the left 3579 */ 3580 ROTATE_LEFT = 20, 3581 /** 3582 * Pretend the pages are sides of a cube and rotate that cube to the right 3583 */ 3584 ROTATE_RIGHT = 21, 3585 /** 3586 * Pretend the pages are sides of a cube and rotate that cube to the left or right according to the children order 3587 */ 3588 ROTATE_LEFT_RIGHT = 22, 3589 } 3590 alias GtkStackTransitionType StackTransitionType; 3591 3592 /** 3593 * Describes a widget state. 3594 * 3595 * Widget states are used to match the widget against CSS pseudo-classes. 3596 * Note that GTK extends the regular CSS classes and sometimes uses 3597 * different names. 3598 */ 3599 public enum GtkStateFlags 3600 { 3601 /** 3602 * State during normal operation 3603 */ 3604 NORMAL = 0, 3605 /** 3606 * Widget is active 3607 */ 3608 ACTIVE = 1, 3609 /** 3610 * Widget has a mouse pointer over it 3611 */ 3612 PRELIGHT = 2, 3613 /** 3614 * Widget is selected 3615 */ 3616 SELECTED = 4, 3617 /** 3618 * Widget is insensitive 3619 */ 3620 INSENSITIVE = 8, 3621 /** 3622 * Widget is inconsistent 3623 */ 3624 INCONSISTENT = 16, 3625 /** 3626 * Widget has the keyboard focus 3627 */ 3628 FOCUSED = 32, 3629 /** 3630 * Widget is in a background toplevel window 3631 */ 3632 BACKDROP = 64, 3633 /** 3634 * Widget is in left-to-right text direction 3635 */ 3636 DIR_LTR = 128, 3637 /** 3638 * Widget is in right-to-left text direction 3639 */ 3640 DIR_RTL = 256, 3641 /** 3642 * Widget is a link 3643 */ 3644 LINK = 512, 3645 /** 3646 * The location the widget points to has already been visited 3647 */ 3648 VISITED = 1024, 3649 /** 3650 * Widget is checked 3651 */ 3652 CHECKED = 2048, 3653 /** 3654 * Widget is highlighted as a drop target for DND 3655 */ 3656 DROP_ACTIVE = 4096, 3657 /** 3658 * Widget has the visible focus 3659 */ 3660 FOCUS_VISIBLE = 8192, 3661 /** 3662 * Widget contains the keyboard focus 3663 */ 3664 FOCUS_WITHIN = 16384, 3665 } 3666 alias GtkStateFlags StateFlags; 3667 3668 /** 3669 * Specifies how search strings are matched inside text. 3670 */ 3671 public enum GtkStringFilterMatchMode 3672 { 3673 /** 3674 * The search string and 3675 * text must match exactly. 3676 */ 3677 EXACT = 0, 3678 /** 3679 * The search string 3680 * must be contained as a substring inside the text. 3681 */ 3682 SUBSTRING = 1, 3683 /** 3684 * The text must begin 3685 * with the search string. 3686 */ 3687 PREFIX = 2, 3688 } 3689 alias GtkStringFilterMatchMode StringFilterMatchMode; 3690 3691 /** 3692 * Flags that modify the behavior of gtk_style_context_to_string(). 3693 * 3694 * New values may be added to this enumeration. 3695 */ 3696 public enum GtkStyleContextPrintFlags 3697 { 3698 /** 3699 * Default value. 3700 */ 3701 NONE = 0, 3702 /** 3703 * Print the entire tree of 3704 * CSS nodes starting at the style context's node 3705 */ 3706 RECURSE = 1, 3707 /** 3708 * Show the values of the 3709 * CSS properties for each node 3710 */ 3711 SHOW_STYLE = 2, 3712 /** 3713 * Show information about 3714 * what changes affect the styles 3715 */ 3716 SHOW_CHANGE = 4, 3717 } 3718 alias GtkStyleContextPrintFlags StyleContextPrintFlags; 3719 3720 /** 3721 * Values that can be passed to the GtkWidgetClass.system_setting_changed 3722 * vfunc. 3723 * 3724 * The values indicate which system setting has changed. 3725 * Widgets may need to drop caches, or react otherwise. 3726 * 3727 * Most of the values correspond to `GtkSettings` properties. 3728 * 3729 * More values may be added over time. 3730 */ 3731 public enum GtkSystemSetting 3732 { 3733 /** 3734 * the #GtkSettings:gtk-xft-dpi setting has changed 3735 */ 3736 DPI = 0, 3737 /** 3738 * The #GtkSettings:gtk-font-name setting has changed 3739 */ 3740 FONT_NAME = 1, 3741 /** 3742 * The font configuration has changed in a way that 3743 * requires text to be redrawn. This can be any of the 3744 * #GtkSettings:gtk-xft-antialias, #GtkSettings:gtk-xft-hinting, 3745 * #GtkSettings:gtk-xft-hintstyle, #GtkSettings:gtk-xft-rgba or 3746 * #GtkSettings:gtk-fontconfig-timestamp settings 3747 */ 3748 FONT_CONFIG = 2, 3749 /** 3750 * The display has changed 3751 */ 3752 DISPLAY = 3, 3753 /** 3754 * The icon theme has changed in a way that requires 3755 * icons to be looked up again 3756 */ 3757 ICON_THEME = 4, 3758 } 3759 alias GtkSystemSetting SystemSetting; 3760 3761 /** 3762 * Reading directions for text. 3763 */ 3764 public enum GtkTextDirection 3765 { 3766 /** 3767 * No direction. 3768 */ 3769 NONE = 0, 3770 /** 3771 * Left to right text direction. 3772 */ 3773 LTR = 1, 3774 /** 3775 * Right to left text direction. 3776 */ 3777 RTL = 2, 3778 } 3779 alias GtkTextDirection TextDirection; 3780 3781 /** 3782 * Granularity types that extend the text selection. Use the 3783 * #GtkTextView::extend-selection signal to customize the selection. 3784 */ 3785 public enum GtkTextExtendSelection 3786 { 3787 /** 3788 * Selects the current word. It is triggered by 3789 * a double-click for example. 3790 */ 3791 WORD = 0, 3792 /** 3793 * Selects the current line. It is triggered by 3794 * a triple-click for example. 3795 */ 3796 LINE = 1, 3797 } 3798 alias GtkTextExtendSelection TextExtendSelection; 3799 3800 /** 3801 * Flags affecting how a search is done. 3802 * 3803 * If neither %GTK_TEXT_SEARCH_VISIBLE_ONLY nor %GTK_TEXT_SEARCH_TEXT_ONLY are 3804 * enabled, the match must be exact; the special 0xFFFC character will match 3805 * embedded paintables or child widgets. 3806 */ 3807 public enum GtkTextSearchFlags 3808 { 3809 /** 3810 * Search only visible data. A search match may 3811 * have invisible text interspersed. 3812 */ 3813 VISIBLE_ONLY = 1, 3814 /** 3815 * Search only text. A match may have paintables or 3816 * child widgets mixed inside the matched range. 3817 */ 3818 TEXT_ONLY = 2, 3819 /** 3820 * The text will be matched regardless of 3821 * what case it is in. 3822 */ 3823 CASE_INSENSITIVE = 4, 3824 } 3825 alias GtkTextSearchFlags TextSearchFlags; 3826 3827 /** 3828 * Used to reference the layers of #GtkTextView for the purpose of customized 3829 * drawing with the ::snapshot_layer vfunc. 3830 */ 3831 public enum GtkTextViewLayer 3832 { 3833 /** 3834 * The layer rendered below the text (but above the background). 3835 */ 3836 BELOW_TEXT = 0, 3837 /** 3838 * The layer rendered above the text. 3839 */ 3840 ABOVE_TEXT = 1, 3841 } 3842 alias GtkTextViewLayer TextViewLayer; 3843 3844 /** 3845 * Used to reference the parts of #GtkTextView. 3846 */ 3847 public enum GtkTextWindowType 3848 { 3849 /** 3850 * Window that floats over scrolling areas. 3851 */ 3852 WIDGET = 1, 3853 /** 3854 * Scrollable text window. 3855 */ 3856 TEXT = 2, 3857 /** 3858 * Left side border window. 3859 */ 3860 LEFT = 3, 3861 /** 3862 * Right side border window. 3863 */ 3864 RIGHT = 4, 3865 /** 3866 * Top border window. 3867 */ 3868 TOP = 5, 3869 /** 3870 * Bottom border window. 3871 */ 3872 BOTTOM = 6, 3873 } 3874 alias GtkTextWindowType TextWindowType; 3875 3876 /** 3877 * These flags indicate various properties of a #GtkTreeModel. 3878 * 3879 * They are returned by gtk_tree_model_get_flags(), and must be 3880 * static for the lifetime of the object. A more complete description 3881 * of #GTK_TREE_MODEL_ITERS_PERSIST can be found in the overview of 3882 * this section. 3883 */ 3884 public enum GtkTreeModelFlags 3885 { 3886 /** 3887 * iterators survive all signals 3888 * emitted by the tree 3889 */ 3890 ITERS_PERSIST = 1, 3891 /** 3892 * the model is a list only, and never 3893 * has children 3894 */ 3895 LIST_ONLY = 2, 3896 } 3897 alias GtkTreeModelFlags TreeModelFlags; 3898 3899 /** 3900 * The sizing method the column uses to determine its width. Please note 3901 * that %GTK_TREE_VIEW_COLUMN_AUTOSIZE are inefficient for large views, and 3902 * can make columns appear choppy. 3903 */ 3904 public enum GtkTreeViewColumnSizing 3905 { 3906 /** 3907 * Columns only get bigger in reaction to changes in the model 3908 */ 3909 GROW_ONLY = 0, 3910 /** 3911 * Columns resize to be the optimal size every time the model changes. 3912 */ 3913 AUTOSIZE = 1, 3914 /** 3915 * Columns are a fixed numbers of pixels wide. 3916 */ 3917 FIXED = 2, 3918 } 3919 alias GtkTreeViewColumnSizing TreeViewColumnSizing; 3920 3921 /** 3922 * An enum for determining where a dropped row goes. 3923 */ 3924 public enum GtkTreeViewDropPosition 3925 { 3926 /** 3927 * dropped row is inserted before 3928 */ 3929 BEFORE = 0, 3930 /** 3931 * dropped row is inserted after 3932 */ 3933 AFTER = 1, 3934 /** 3935 * dropped row becomes a child or is inserted before 3936 */ 3937 INTO_OR_BEFORE = 2, 3938 /** 3939 * dropped row becomes a child or is inserted after 3940 */ 3941 INTO_OR_AFTER = 3, 3942 } 3943 alias GtkTreeViewDropPosition TreeViewDropPosition; 3944 3945 /** 3946 * Used to indicate which grid lines to draw in a tree view. 3947 */ 3948 public enum GtkTreeViewGridLines 3949 { 3950 /** 3951 * No grid lines. 3952 */ 3953 NONE = 0, 3954 /** 3955 * Horizontal grid lines. 3956 */ 3957 HORIZONTAL = 1, 3958 /** 3959 * Vertical grid lines. 3960 */ 3961 VERTICAL = 2, 3962 /** 3963 * Horizontal and vertical grid lines. 3964 */ 3965 BOTH = 3, 3966 } 3967 alias GtkTreeViewGridLines TreeViewGridLines; 3968 3969 /** 3970 * See also gtk_print_settings_set_paper_width(). 3971 */ 3972 public enum GtkUnit 3973 { 3974 /** 3975 * No units. 3976 */ 3977 NONE = 0, 3978 /** 3979 * Dimensions in points. 3980 */ 3981 POINTS = 1, 3982 /** 3983 * Dimensions in inches. 3984 */ 3985 INCH = 2, 3986 /** 3987 * Dimensions in millimeters 3988 */ 3989 MM = 3, 3990 } 3991 alias GtkUnit Unit; 3992 3993 /** 3994 * Describes a type of line wrapping. 3995 */ 3996 public enum GtkWrapMode 3997 { 3998 /** 3999 * do not wrap lines; just make the text area wider 4000 */ 4001 NONE = 0, 4002 /** 4003 * wrap text, breaking lines anywhere the cursor can 4004 * appear (between characters, usually - if you want to be technical, 4005 * between graphemes, see pango_get_log_attrs()) 4006 */ 4007 CHAR = 1, 4008 /** 4009 * wrap text, breaking lines in between words 4010 */ 4011 WORD = 2, 4012 /** 4013 * wrap text, breaking lines in between words, or if 4014 * that is not enough, also between graphemes 4015 */ 4016 WORD_CHAR = 3, 4017 } 4018 alias GtkWrapMode WrapMode; 4019 4020 struct GtkATContext; 4021 4022 struct GtkATContextClass; 4023 4024 struct GtkAboutDialog; 4025 4026 struct GtkAccessible; 4027 4028 struct GtkAccessibleInterface; 4029 4030 struct GtkActionBar; 4031 4032 struct GtkActionable; 4033 4034 /** 4035 * The interface vtable for `GtkActionable`. 4036 */ 4037 struct GtkActionableInterface 4038 { 4039 GTypeInterface gIface; 4040 /** 4041 * 4042 * Params: 4043 * actionable = a `GtkActionable` widget 4044 * Returns: the action name, or %NULL if none is set 4045 */ 4046 extern(C) const(char)* function(GtkActionable* actionable) getActionName; 4047 /** */ 4048 extern(C) void function(GtkActionable* actionable, const(char)* actionName) setActionName; 4049 /** 4050 * 4051 * Params: 4052 * actionable = a `GtkActionable` widget 4053 * Returns: the current target value 4054 */ 4055 extern(C) GVariant* function(GtkActionable* actionable) getActionTargetValue; 4056 /** */ 4057 extern(C) void function(GtkActionable* actionable, GVariant* targetValue) setActionTargetValue; 4058 } 4059 4060 struct GtkActivateAction; 4061 4062 struct GtkActivateActionClass; 4063 4064 struct GtkAdjustment 4065 { 4066 GObject parentInstance; 4067 } 4068 4069 struct GtkAdjustmentClass 4070 { 4071 GObjectClass parentClass; 4072 /** */ 4073 extern(C) void function(GtkAdjustment* adjustment) changed; 4074 /** */ 4075 extern(C) void function(GtkAdjustment* adjustment) valueChanged; 4076 /** */ 4077 extern(C) void function() GtkReserved1; 4078 /** */ 4079 extern(C) void function() GtkReserved2; 4080 /** */ 4081 extern(C) void function() GtkReserved3; 4082 /** */ 4083 extern(C) void function() GtkReserved4; 4084 } 4085 4086 struct GtkAlternativeTrigger; 4087 4088 struct GtkAlternativeTriggerClass; 4089 4090 struct GtkAnyFilter; 4091 4092 struct GtkAnyFilterClass; 4093 4094 struct GtkAppChooser; 4095 4096 struct GtkAppChooserButton; 4097 4098 struct GtkAppChooserDialog; 4099 4100 struct GtkAppChooserWidget; 4101 4102 struct GtkApplication 4103 { 4104 GApplication parentInstance; 4105 } 4106 4107 struct GtkApplicationClass 4108 { 4109 /** 4110 * The parent class. 4111 */ 4112 GApplicationClass parentClass; 4113 /** */ 4114 extern(C) void function(GtkApplication* application, GtkWindow* window) windowAdded; 4115 /** */ 4116 extern(C) void function(GtkApplication* application, GtkWindow* window) windowRemoved; 4117 void*[8] padding; 4118 } 4119 4120 struct GtkApplicationWindow 4121 { 4122 GtkWindow parentInstance; 4123 } 4124 4125 struct GtkApplicationWindowClass 4126 { 4127 /** 4128 * The parent class. 4129 */ 4130 GtkWindowClass parentClass; 4131 void*[8] padding; 4132 } 4133 4134 struct GtkAspectFrame; 4135 4136 struct GtkAssistant; 4137 4138 struct GtkAssistantPage; 4139 4140 struct GtkBinLayout; 4141 4142 struct GtkBinLayoutClass 4143 { 4144 GtkLayoutManagerClass parentClass; 4145 } 4146 4147 struct GtkBitset; 4148 4149 struct GtkBitsetIter 4150 { 4151 void*[10] privateData; 4152 } 4153 4154 struct GtkBookmarkList; 4155 4156 struct GtkBookmarkListClass 4157 { 4158 GObjectClass parentClass; 4159 } 4160 4161 struct GtkBoolFilter; 4162 4163 struct GtkBoolFilterClass 4164 { 4165 GtkFilterClass parentClass; 4166 } 4167 4168 struct GtkBorder 4169 { 4170 /** 4171 * The width of the left border 4172 */ 4173 short left; 4174 /** 4175 * The width of the right border 4176 */ 4177 short right; 4178 /** 4179 * The width of the top border 4180 */ 4181 short top; 4182 /** 4183 * The width of the bottom border 4184 */ 4185 short bottom; 4186 } 4187 4188 struct GtkBox 4189 { 4190 GtkWidget parentInstance; 4191 } 4192 4193 struct GtkBoxClass 4194 { 4195 /** 4196 * The parent class. 4197 */ 4198 GtkWidgetClass parentClass; 4199 void*[8] padding; 4200 } 4201 4202 struct GtkBoxLayout; 4203 4204 struct GtkBoxLayoutClass 4205 { 4206 GtkLayoutManagerClass parentClass; 4207 } 4208 4209 struct GtkBuildable; 4210 4211 /** 4212 * The `GtkBuildableIface` interface contains methods that are 4213 * necessary to allow `GtkBuilder` to construct an object from 4214 * a `GtkBuilder` UI definition. 4215 */ 4216 struct GtkBuildableIface 4217 { 4218 /** 4219 * the parent class 4220 */ 4221 GTypeInterface gIface; 4222 /** */ 4223 extern(C) void function(GtkBuildable* buildable, const(char)* id) setId; 4224 /** */ 4225 extern(C) const(char)* function(GtkBuildable* buildable) getId; 4226 /** */ 4227 extern(C) void function(GtkBuildable* buildable, GtkBuilder* builder, GObject* child, const(char)* type) addChild; 4228 /** */ 4229 extern(C) void function(GtkBuildable* buildable, GtkBuilder* builder, const(char)* name, GValue* value) setBuildableProperty; 4230 /** */ 4231 extern(C) GObject* function(GtkBuildable* buildable, GtkBuilder* builder, const(char)* name) constructChild; 4232 /** 4233 * 4234 * Params: 4235 * buildable = a #GtkBuildable 4236 * builder = a #GtkBuilder used to construct this object 4237 * child = child object or %NULL for non-child tags 4238 * tagname = name of tag 4239 * parser = a #GtkBuildableParser to fill in 4240 * data = return location for user data that will be passed in 4241 * to parser functions 4242 * Returns: %TRUE if an object has a custom implementation, %FALSE 4243 * if it doesn't. 4244 */ 4245 extern(C) int function(GtkBuildable* buildable, GtkBuilder* builder, GObject* child, const(char)* tagname, GtkBuildableParser* parser, void** data) customTagStart; 4246 /** */ 4247 extern(C) void function(GtkBuildable* buildable, GtkBuilder* builder, GObject* child, const(char)* tagname, void* data) customTagEnd; 4248 /** */ 4249 extern(C) void function(GtkBuildable* buildable, GtkBuilder* builder, GObject* child, const(char)* tagname, void* data) customFinished; 4250 /** */ 4251 extern(C) void function(GtkBuildable* buildable, GtkBuilder* builder) parserFinished; 4252 /** 4253 * 4254 * Params: 4255 * buildable = a #GtkBuildable 4256 * builder = a #GtkBuilder 4257 * childname = name of child 4258 * Returns: the internal child of the buildable object 4259 */ 4260 extern(C) GObject* function(GtkBuildable* buildable, GtkBuilder* builder, const(char)* childname) getInternalChild; 4261 } 4262 4263 struct GtkBuildableParseContext; 4264 4265 /** 4266 * A sub-parser for `GtkBuildable` implementations. 4267 */ 4268 struct GtkBuildableParser 4269 { 4270 /** */ 4271 extern(C) void function(GtkBuildableParseContext* context, const(char)* elementName, char** attributeNames, char** attributeValues, void* userData, GError** err) startElement; 4272 /** */ 4273 extern(C) void function(GtkBuildableParseContext* context, const(char)* elementName, void* userData, GError** err) endElement; 4274 /** */ 4275 extern(C) void function(GtkBuildableParseContext* context, const(char)* text, size_t textLen, void* userData, GError** err) text; 4276 /** */ 4277 extern(C) void function(GtkBuildableParseContext* context, GError* error, void* userData) error; 4278 void*[4] padding; 4279 } 4280 4281 struct GtkBuilder; 4282 4283 struct GtkBuilderCScope 4284 { 4285 GObject parentInstance; 4286 } 4287 4288 struct GtkBuilderCScopeClass 4289 { 4290 GObjectClass parentClass; 4291 } 4292 4293 struct GtkBuilderClass; 4294 4295 struct GtkBuilderListItemFactory; 4296 4297 struct GtkBuilderListItemFactoryClass; 4298 4299 struct GtkBuilderScope; 4300 4301 /** 4302 * The virtual function table to implement for #GtkBuilderScope implementations. 4303 * Default implementations for each function do exist, but they usually just fail, 4304 * so it is suggested that implementations implement all of them. 4305 */ 4306 struct GtkBuilderScopeInterface 4307 { 4308 GTypeInterface gIface; 4309 /** */ 4310 extern(C) GType function(GtkBuilderScope* self, GtkBuilder* builder, const(char)* typeName) getTypeFromName; 4311 /** */ 4312 extern(C) GType function(GtkBuilderScope* self, GtkBuilder* builder, const(char)* functionName) getTypeFromFunction; 4313 /** */ 4314 extern(C) GClosure* function(GtkBuilderScope* self, GtkBuilder* builder, const(char)* functionName, GtkBuilderClosureFlags flags, GObject* object, GError** err) createClosure; 4315 } 4316 4317 struct GtkButton 4318 { 4319 GtkWidget parentInstance; 4320 } 4321 4322 struct GtkButtonClass 4323 { 4324 /** 4325 * The parent class. 4326 */ 4327 GtkWidgetClass parentClass; 4328 /** */ 4329 extern(C) void function(GtkButton* button) clicked; 4330 /** */ 4331 extern(C) void function(GtkButton* button) activate; 4332 void*[8] padding; 4333 } 4334 4335 struct GtkButtonPrivate; 4336 4337 struct GtkCClosureExpression; 4338 4339 struct GtkCalendar; 4340 4341 struct GtkCallbackAction; 4342 4343 struct GtkCallbackActionClass; 4344 4345 struct GtkCellArea 4346 { 4347 GObject parentInstance; 4348 } 4349 4350 struct GtkCellAreaBox; 4351 4352 struct GtkCellAreaClass 4353 { 4354 GObjectClass parentClass; 4355 /** */ 4356 extern(C) void function(GtkCellArea* area, GtkCellRenderer* renderer) add; 4357 /** */ 4358 extern(C) void function(GtkCellArea* area, GtkCellRenderer* renderer) remove; 4359 /** */ 4360 extern(C) void function(GtkCellArea* area, GtkCellCallback callback, void* callbackData) foreach_; 4361 /** */ 4362 extern(C) void function(GtkCellArea* area, GtkCellAreaContext* context, GtkWidget* widget, GdkRectangle* cellArea, GdkRectangle* backgroundArea, GtkCellAllocCallback callback, void* callbackData) foreachAlloc; 4363 /** 4364 * 4365 * Params: 4366 * area = a #GtkCellArea 4367 * context = the #GtkCellAreaContext for this row of data. 4368 * widget = the #GtkWidget that @area is rendering to 4369 * event = the #GdkEvent to handle 4370 * cellArea = the @widget relative coordinates for @area 4371 * flags = the #GtkCellRendererState for @area in this row. 4372 * Returns: %TRUE if the event was handled by @area. 4373 */ 4374 extern(C) int function(GtkCellArea* area, GtkCellAreaContext* context, GtkWidget* widget, GdkEvent* event, GdkRectangle* cellArea, GtkCellRendererState flags) event; 4375 /** */ 4376 extern(C) void function(GtkCellArea* area, GtkCellAreaContext* context, GtkWidget* widget, GtkSnapshot* snapshot, GdkRectangle* backgroundArea, GdkRectangle* cellArea, GtkCellRendererState flags, int paintFocus) snapshot; 4377 /** */ 4378 extern(C) void function(GtkCellArea* area, GtkTreeModel* treeModel, GtkTreeIter* iter, int isExpander, int isExpanded) applyAttributes; 4379 /** 4380 * 4381 * Params: 4382 * area = a #GtkCellArea 4383 * Returns: a newly created #GtkCellAreaContext which can be used with @area. 4384 */ 4385 extern(C) GtkCellAreaContext* function(GtkCellArea* area) createContext; 4386 /** 4387 * 4388 * Params: 4389 * area = a #GtkCellArea 4390 * context = the #GtkCellAreaContext to copy 4391 * Returns: a newly created #GtkCellAreaContext copy of @context. 4392 */ 4393 extern(C) GtkCellAreaContext* function(GtkCellArea* area, GtkCellAreaContext* context) copyContext; 4394 /** 4395 * 4396 * Params: 4397 * area = a #GtkCellArea 4398 * Returns: The #GtkSizeRequestMode preferred by @area. 4399 */ 4400 extern(C) GtkSizeRequestMode function(GtkCellArea* area) getRequestMode; 4401 /** */ 4402 extern(C) void function(GtkCellArea* area, GtkCellAreaContext* context, GtkWidget* widget, int* minimumWidth, int* naturalWidth) getPreferredWidth; 4403 /** */ 4404 extern(C) void function(GtkCellArea* area, GtkCellAreaContext* context, GtkWidget* widget, int width, int* minimumHeight, int* naturalHeight) getPreferredHeightForWidth; 4405 /** */ 4406 extern(C) void function(GtkCellArea* area, GtkCellAreaContext* context, GtkWidget* widget, int* minimumHeight, int* naturalHeight) getPreferredHeight; 4407 /** */ 4408 extern(C) void function(GtkCellArea* area, GtkCellAreaContext* context, GtkWidget* widget, int height, int* minimumWidth, int* naturalWidth) getPreferredWidthForHeight; 4409 /** */ 4410 extern(C) void function(GtkCellArea* area, GtkCellRenderer* renderer, uint propertyId, GValue* value, GParamSpec* pspec) setCellProperty; 4411 /** */ 4412 extern(C) void function(GtkCellArea* area, GtkCellRenderer* renderer, uint propertyId, GValue* value, GParamSpec* pspec) getCellProperty; 4413 /** 4414 * 4415 * Params: 4416 * area = a #GtkCellArea 4417 * direction = the #GtkDirectionType 4418 * Returns: %TRUE if focus remains inside @area as a result of this call. 4419 */ 4420 extern(C) int function(GtkCellArea* area, GtkDirectionType direction) focus; 4421 /** 4422 * 4423 * Params: 4424 * area = a #GtkCellArea 4425 * Returns: whether @area can do anything when activated. 4426 */ 4427 extern(C) int function(GtkCellArea* area) isActivatable; 4428 /** 4429 * 4430 * Params: 4431 * area = a #GtkCellArea 4432 * context = the #GtkCellAreaContext in context with the current row data 4433 * widget = the #GtkWidget that @area is rendering on 4434 * cellArea = the size and location of @area relative to @widget’s allocation 4435 * flags = the #GtkCellRendererState flags for @area for this row of data. 4436 * editOnly = if %TRUE then only cell renderers that are %GTK_CELL_RENDERER_MODE_EDITABLE 4437 * will be activated. 4438 * Returns: Whether @area was successfully activated. 4439 */ 4440 extern(C) int function(GtkCellArea* area, GtkCellAreaContext* context, GtkWidget* widget, GdkRectangle* cellArea, GtkCellRendererState flags, int editOnly) activate; 4441 void*[8] padding; 4442 } 4443 4444 struct GtkCellAreaContext 4445 { 4446 GObject parentInstance; 4447 } 4448 4449 struct GtkCellAreaContextClass 4450 { 4451 GObjectClass parentClass; 4452 /** */ 4453 extern(C) void function(GtkCellAreaContext* context, int width, int height) allocate; 4454 /** */ 4455 extern(C) void function(GtkCellAreaContext* context) reset; 4456 /** */ 4457 extern(C) void function(GtkCellAreaContext* context, int width, int* minimumHeight, int* naturalHeight) getPreferredHeightForWidth; 4458 /** */ 4459 extern(C) void function(GtkCellAreaContext* context, int height, int* minimumWidth, int* naturalWidth) getPreferredWidthForHeight; 4460 void*[8] padding; 4461 } 4462 4463 struct GtkCellAreaContextPrivate; 4464 4465 struct GtkCellEditable; 4466 4467 struct GtkCellEditableIface 4468 { 4469 GTypeInterface gIface; 4470 /** */ 4471 extern(C) void function(GtkCellEditable* cellEditable) editingDone; 4472 /** */ 4473 extern(C) void function(GtkCellEditable* cellEditable) removeWidget; 4474 /** */ 4475 extern(C) void function(GtkCellEditable* cellEditable, GdkEvent* event) startEditing; 4476 } 4477 4478 struct GtkCellLayout; 4479 4480 struct GtkCellLayoutIface 4481 { 4482 GTypeInterface gIface; 4483 /** */ 4484 extern(C) void function(GtkCellLayout* cellLayout, GtkCellRenderer* cell, int expand) packStart; 4485 /** */ 4486 extern(C) void function(GtkCellLayout* cellLayout, GtkCellRenderer* cell, int expand) packEnd; 4487 /** */ 4488 extern(C) void function(GtkCellLayout* cellLayout) clear; 4489 /** */ 4490 extern(C) void function(GtkCellLayout* cellLayout, GtkCellRenderer* cell, const(char)* attribute, int column) addAttribute; 4491 /** */ 4492 extern(C) void function(GtkCellLayout* cellLayout, GtkCellRenderer* cell, GtkCellLayoutDataFunc func, void* funcData, GDestroyNotify destroy) setCellDataFunc; 4493 /** */ 4494 extern(C) void function(GtkCellLayout* cellLayout, GtkCellRenderer* cell) clearAttributes; 4495 /** */ 4496 extern(C) void function(GtkCellLayout* cellLayout, GtkCellRenderer* cell, int position) reorder; 4497 /** 4498 * 4499 * Params: 4500 * cellLayout = a #GtkCellLayout 4501 * Returns: a list of cell renderers. The list, but not the renderers has 4502 * been newly allocated and should be freed with g_list_free() 4503 * when no longer needed. 4504 */ 4505 extern(C) GList* function(GtkCellLayout* cellLayout) getCells; 4506 /** 4507 * 4508 * Params: 4509 * cellLayout = a #GtkCellLayout 4510 * Returns: the cell area used by @cell_layout, 4511 * or %NULL in case no cell area is used. 4512 */ 4513 extern(C) GtkCellArea* function(GtkCellLayout* cellLayout) getArea; 4514 } 4515 4516 struct GtkCellRenderer 4517 { 4518 GObject parentInstance; 4519 GtkCellRendererPrivate* priv; 4520 } 4521 4522 struct GtkCellRendererAccel; 4523 4524 struct GtkCellRendererClass 4525 { 4526 GObjectClass parentClass; 4527 /** 4528 * 4529 * Params: 4530 * cell = a #GtkCellRenderer instance 4531 * Returns: The #GtkSizeRequestMode preferred by this renderer. 4532 */ 4533 extern(C) GtkSizeRequestMode function(GtkCellRenderer* cell) getRequestMode; 4534 /** */ 4535 extern(C) void function(GtkCellRenderer* cell, GtkWidget* widget, int* minimumSize, int* naturalSize) getPreferredWidth; 4536 /** */ 4537 extern(C) void function(GtkCellRenderer* cell, GtkWidget* widget, int width, int* minimumHeight, int* naturalHeight) getPreferredHeightForWidth; 4538 /** */ 4539 extern(C) void function(GtkCellRenderer* cell, GtkWidget* widget, int* minimumSize, int* naturalSize) getPreferredHeight; 4540 /** */ 4541 extern(C) void function(GtkCellRenderer* cell, GtkWidget* widget, int height, int* minimumWidth, int* naturalWidth) getPreferredWidthForHeight; 4542 /** */ 4543 extern(C) void function(GtkCellRenderer* cell, GtkWidget* widget, GtkCellRendererState flags, GdkRectangle* cellArea, GdkRectangle* alignedArea) getAlignedArea; 4544 /** */ 4545 extern(C) void function(GtkCellRenderer* cell, GtkSnapshot* snapshot, GtkWidget* widget, GdkRectangle* backgroundArea, GdkRectangle* cellArea, GtkCellRendererState flags) snapshot; 4546 /** 4547 * 4548 * Params: 4549 * cell = a #GtkCellRenderer 4550 * event = a #GdkEvent 4551 * widget = widget that received the event 4552 * path = widget-dependent string representation of the event location; 4553 * e.g. for #GtkTreeView, a string representation of #GtkTreePath 4554 * backgroundArea = background area as passed to gtk_cell_renderer_render() 4555 * cellArea = cell area as passed to gtk_cell_renderer_render() 4556 * flags = render flags 4557 * Returns: %TRUE if the event was consumed/handled 4558 */ 4559 extern(C) int function(GtkCellRenderer* cell, GdkEvent* event, GtkWidget* widget, const(char)* path, GdkRectangle* backgroundArea, GdkRectangle* cellArea, GtkCellRendererState flags) activate; 4560 /** 4561 * 4562 * Params: 4563 * cell = a #GtkCellRenderer 4564 * event = a #GdkEvent 4565 * widget = widget that received the event 4566 * path = widget-dependent string representation of the event location; 4567 * e.g. for #GtkTreeView, a string representation of #GtkTreePath 4568 * backgroundArea = background area as passed to gtk_cell_renderer_render() 4569 * cellArea = cell area as passed to gtk_cell_renderer_render() 4570 * flags = render flags 4571 * Returns: A new #GtkCellEditable for editing this 4572 * @cell, or %NULL if editing is not possible 4573 */ 4574 extern(C) GtkCellEditable* function(GtkCellRenderer* cell, GdkEvent* event, GtkWidget* widget, const(char)* path, GdkRectangle* backgroundArea, GdkRectangle* cellArea, GtkCellRendererState flags) startEditing; 4575 /** */ 4576 extern(C) void function(GtkCellRenderer* cell) editingCanceled; 4577 /** */ 4578 extern(C) void function(GtkCellRenderer* cell, GtkCellEditable* editable, const(char)* path) editingStarted; 4579 void*[8] padding; 4580 } 4581 4582 struct GtkCellRendererClassPrivate; 4583 4584 struct GtkCellRendererCombo; 4585 4586 struct GtkCellRendererPixbuf; 4587 4588 struct GtkCellRendererPrivate; 4589 4590 struct GtkCellRendererProgress; 4591 4592 struct GtkCellRendererSpin; 4593 4594 struct GtkCellRendererSpinner; 4595 4596 struct GtkCellRendererText 4597 { 4598 GtkCellRenderer parent; 4599 } 4600 4601 struct GtkCellRendererTextClass 4602 { 4603 GtkCellRendererClass parentClass; 4604 /** */ 4605 extern(C) void function(GtkCellRendererText* cellRendererText, const(char)* path, const(char)* newText) edited; 4606 void*[8] padding; 4607 } 4608 4609 struct GtkCellRendererToggle; 4610 4611 struct GtkCellView; 4612 4613 struct GtkCenterBox; 4614 4615 struct GtkCenterBoxClass; 4616 4617 struct GtkCenterLayout; 4618 4619 struct GtkCenterLayoutClass 4620 { 4621 GtkLayoutManagerClass parentClass; 4622 } 4623 4624 struct GtkCheckButton 4625 { 4626 GtkWidget parentInstance; 4627 } 4628 4629 struct GtkCheckButtonClass 4630 { 4631 GtkWidgetClass parentClass; 4632 /** */ 4633 extern(C) void function(GtkCheckButton* checkButton) toggled; 4634 /** */ 4635 extern(C) void function(GtkCheckButton* checkButton) activate; 4636 void*[7] padding; 4637 } 4638 4639 struct GtkClosureExpression; 4640 4641 struct GtkColorButton; 4642 4643 struct GtkColorChooser; 4644 4645 struct GtkColorChooserDialog; 4646 4647 struct GtkColorChooserInterface 4648 { 4649 GTypeInterface baseInterface; 4650 /** */ 4651 extern(C) void function(GtkColorChooser* chooser, GdkRGBA* color) getRgba; 4652 /** */ 4653 extern(C) void function(GtkColorChooser* chooser, GdkRGBA* color) setRgba; 4654 /** */ 4655 extern(C) void function(GtkColorChooser* chooser, GtkOrientation orientation, int colorsPerLine, int nColors, GdkRGBA* colors) addPalette; 4656 /** */ 4657 extern(C) void function(GtkColorChooser* chooser, GdkRGBA* color) colorActivated; 4658 void*[12] padding; 4659 } 4660 4661 struct GtkColorChooserWidget; 4662 4663 struct GtkColumnView; 4664 4665 struct GtkColumnViewClass; 4666 4667 struct GtkColumnViewColumn; 4668 4669 struct GtkColumnViewColumnClass; 4670 4671 struct GtkComboBox 4672 { 4673 GtkWidget parentInstance; 4674 } 4675 4676 struct GtkComboBoxClass 4677 { 4678 /** 4679 * The parent class. 4680 */ 4681 GtkWidgetClass parentClass; 4682 /** */ 4683 extern(C) void function(GtkComboBox* comboBox) changed; 4684 /** */ 4685 extern(C) char* function(GtkComboBox* comboBox, const(char)* path) formatEntryText; 4686 void*[8] padding; 4687 } 4688 4689 struct GtkComboBoxText; 4690 4691 struct GtkConstantExpression; 4692 4693 struct GtkConstraint; 4694 4695 struct GtkConstraintClass 4696 { 4697 GObjectClass parentClass; 4698 } 4699 4700 struct GtkConstraintGuide; 4701 4702 struct GtkConstraintGuideClass 4703 { 4704 GObjectClass parentClass; 4705 } 4706 4707 struct GtkConstraintLayout; 4708 4709 struct GtkConstraintLayoutChild; 4710 4711 struct GtkConstraintLayoutChildClass 4712 { 4713 GtkLayoutChildClass parentClass; 4714 } 4715 4716 struct GtkConstraintLayoutClass 4717 { 4718 GtkLayoutManagerClass parentClass; 4719 } 4720 4721 struct GtkConstraintTarget; 4722 4723 struct GtkConstraintTargetInterface; 4724 4725 /** 4726 * Represents a location in a file or other source of data parsed 4727 * by the CSS engine. 4728 * 4729 * The @bytes and @line_bytes offsets are meant to be used to 4730 * programmatically match data. The @lines and @line_chars offsets 4731 * can be used for printing the location in a file. 4732 * 4733 * Note that the @lines parameter starts from 0 and is increased 4734 * whenever a CSS line break is encountered. (CSS defines the C character 4735 * sequences "\r\n", "\r", "\n" and "\f" as newlines.) 4736 * If your document uses different rules for line breaking, you might want 4737 * run into problems here. 4738 */ 4739 struct GtkCssLocation 4740 { 4741 /** 4742 * number of bytes parsed since the beginning 4743 */ 4744 size_t bytes; 4745 /** 4746 * number of characters parsed since the beginning 4747 */ 4748 size_t chars; 4749 /** 4750 * number of full lines that have been parsed 4751 * If you want to display this as a line number, you 4752 * need to add 1 to this. 4753 */ 4754 size_t lines; 4755 /** 4756 * Number of bytes parsed since the last line break 4757 */ 4758 size_t lineBytes; 4759 /** 4760 * Number of characters parsed since the last line 4761 * break 4762 */ 4763 size_t lineChars; 4764 } 4765 4766 struct GtkCssProvider 4767 { 4768 GObject parentInstance; 4769 } 4770 4771 struct GtkCssProviderClass; 4772 4773 struct GtkCssProviderPrivate; 4774 4775 struct GtkCssSection; 4776 4777 struct GtkCssStyleChange; 4778 4779 struct GtkCustomFilter; 4780 4781 struct GtkCustomFilterClass 4782 { 4783 GtkFilterClass parentClass; 4784 } 4785 4786 struct GtkCustomLayout; 4787 4788 struct GtkCustomLayoutClass 4789 { 4790 GtkLayoutManagerClass parentClass; 4791 } 4792 4793 struct GtkCustomSorter; 4794 4795 struct GtkCustomSorterClass 4796 { 4797 GtkSorterClass parentClass; 4798 } 4799 4800 struct GtkDialog 4801 { 4802 GtkWindow parentInstance; 4803 } 4804 4805 struct GtkDialogClass 4806 { 4807 /** 4808 * The parent class. 4809 */ 4810 GtkWindowClass parentClass; 4811 /** */ 4812 extern(C) void function(GtkDialog* dialog, int responseId) response; 4813 /** */ 4814 extern(C) void function(GtkDialog* dialog) close; 4815 void*[8] padding; 4816 } 4817 4818 struct GtkDirectoryList; 4819 4820 struct GtkDirectoryListClass 4821 { 4822 GObjectClass parentClass; 4823 } 4824 4825 struct GtkDragIcon; 4826 4827 struct GtkDragIconClass 4828 { 4829 GtkWidgetClass parentClass; 4830 } 4831 4832 struct GtkDragSource; 4833 4834 struct GtkDragSourceClass; 4835 4836 struct GtkDrawingArea 4837 { 4838 GtkWidget widget; 4839 } 4840 4841 struct GtkDrawingAreaClass 4842 { 4843 GtkWidgetClass parentClass; 4844 /** */ 4845 extern(C) void function(GtkDrawingArea* area, int width, int height) resize; 4846 void*[8] padding; 4847 } 4848 4849 struct GtkDropControllerMotion; 4850 4851 struct GtkDropControllerMotionClass; 4852 4853 struct GtkDropDown; 4854 4855 struct GtkDropDownClass 4856 { 4857 GtkWidgetClass parentClass; 4858 } 4859 4860 struct GtkDropTarget; 4861 4862 struct GtkDropTargetAsync; 4863 4864 struct GtkDropTargetAsyncClass; 4865 4866 struct GtkDropTargetClass; 4867 4868 struct GtkEditable; 4869 4870 struct GtkEditableInterface 4871 { 4872 GTypeInterface baseIface; 4873 /** */ 4874 extern(C) void function(GtkEditable* editable, const(char)* text, int length, int* position) insertText; 4875 /** */ 4876 extern(C) void function(GtkEditable* editable, int startPos, int endPos) deleteText; 4877 /** */ 4878 extern(C) void function(GtkEditable* editable) changed; 4879 /** 4880 * 4881 * Params: 4882 * editable = a `GtkEditable` 4883 * Returns: a pointer to the contents of the editable 4884 */ 4885 extern(C) const(char)* function(GtkEditable* editable) getText; 4886 /** */ 4887 extern(C) void function(GtkEditable* editable, const(char)* text, int length, int* position) doInsertText; 4888 /** */ 4889 extern(C) void function(GtkEditable* editable, int startPos, int endPos) doDeleteText; 4890 /** 4891 * 4892 * Params: 4893 * editable = a `GtkEditable` 4894 * startPos = location to store the starting position, or %NULL 4895 * endPos = location to store the end position, or %NULL 4896 * Returns: %TRUE if there is a non-empty selection, %FALSE otherwise 4897 */ 4898 extern(C) int function(GtkEditable* editable, int* startPos, int* endPos) getSelectionBounds; 4899 /** */ 4900 extern(C) void function(GtkEditable* editable, int startPos, int endPos) setSelectionBounds; 4901 /** 4902 * 4903 * Params: 4904 * editable = a `GtkEditable` 4905 * Returns: the delegate `GtkEditable` 4906 */ 4907 extern(C) GtkEditable* function(GtkEditable* editable) getDelegate; 4908 } 4909 4910 struct GtkEditableLabel; 4911 4912 struct GtkEditableLabelClass 4913 { 4914 GtkWidgetClass parentClass; 4915 } 4916 4917 struct GtkEmojiChooser; 4918 4919 struct GtkEmojiChooserClass; 4920 4921 struct GtkEntry 4922 { 4923 GtkWidget parentInstance; 4924 } 4925 4926 struct GtkEntryBuffer 4927 { 4928 GObject parentInstance; 4929 } 4930 4931 struct GtkEntryBufferClass 4932 { 4933 GObjectClass parentClass; 4934 /** */ 4935 extern(C) void function(GtkEntryBuffer* buffer, uint position, const(char)* chars, uint nChars) insertedText; 4936 /** */ 4937 extern(C) void function(GtkEntryBuffer* buffer, uint position, uint nChars) deletedText; 4938 /** */ 4939 extern(C) const(char)* function(GtkEntryBuffer* buffer, size_t* nBytes) getText; 4940 /** 4941 * 4942 * Params: 4943 * buffer = a `GtkEntryBuffer` 4944 * Returns: The number of characters in the buffer. 4945 */ 4946 extern(C) uint function(GtkEntryBuffer* buffer) getLength; 4947 /** 4948 * 4949 * Params: 4950 * buffer = a `GtkEntryBuffer` 4951 * position = the position at which to insert text. 4952 * chars = the text to insert into the buffer. 4953 * nChars = the length of the text in characters, or -1 4954 * Returns: The number of characters actually inserted. 4955 */ 4956 extern(C) uint function(GtkEntryBuffer* buffer, uint position, const(char)* chars, uint nChars) insertText; 4957 /** 4958 * 4959 * Params: 4960 * buffer = a `GtkEntryBuffer` 4961 * position = position at which to delete text 4962 * nChars = number of characters to delete 4963 * Returns: The number of characters deleted. 4964 */ 4965 extern(C) uint function(GtkEntryBuffer* buffer, uint position, uint nChars) deleteText; 4966 /** */ 4967 extern(C) void function() GtkReserved1; 4968 /** */ 4969 extern(C) void function() GtkReserved2; 4970 /** */ 4971 extern(C) void function() GtkReserved3; 4972 /** */ 4973 extern(C) void function() GtkReserved4; 4974 /** */ 4975 extern(C) void function() GtkReserved5; 4976 /** */ 4977 extern(C) void function() GtkReserved6; 4978 /** */ 4979 extern(C) void function() GtkReserved7; 4980 /** */ 4981 extern(C) void function() GtkReserved8; 4982 } 4983 4984 /** 4985 * Class structure for #GtkEntry. All virtual functions have a default 4986 * implementation. Derived classes may set the virtual function pointers for the 4987 * signal handlers to %NULL, but must keep @get_text_area_size and 4988 * @get_frame_size non-%NULL; either use the default implementation, or provide 4989 * a custom one. 4990 */ 4991 struct GtkEntryClass 4992 { 4993 /** 4994 * The parent class. 4995 */ 4996 GtkWidgetClass parentClass; 4997 /** */ 4998 extern(C) void function(GtkEntry* entry) activate; 4999 void*[8] padding; 5000 } 5001 5002 struct GtkEntryCompletion; 5003 5004 struct GtkEventController; 5005 5006 struct GtkEventControllerClass; 5007 5008 struct GtkEventControllerFocus; 5009 5010 struct GtkEventControllerFocusClass; 5011 5012 struct GtkEventControllerKey; 5013 5014 struct GtkEventControllerKeyClass; 5015 5016 struct GtkEventControllerLegacy; 5017 5018 struct GtkEventControllerLegacyClass; 5019 5020 struct GtkEventControllerMotion; 5021 5022 struct GtkEventControllerMotionClass; 5023 5024 struct GtkEventControllerScroll; 5025 5026 struct GtkEventControllerScrollClass; 5027 5028 struct GtkEveryFilter; 5029 5030 struct GtkEveryFilterClass; 5031 5032 struct GtkExpander; 5033 5034 struct GtkExpression; 5035 5036 struct GtkExpressionWatch; 5037 5038 struct GtkFileChooser; 5039 5040 struct GtkFileChooserDialog; 5041 5042 struct GtkFileChooserNative; 5043 5044 struct GtkFileChooserNativeClass 5045 { 5046 GtkNativeDialogClass parentClass; 5047 } 5048 5049 struct GtkFileChooserWidget; 5050 5051 struct GtkFileFilter; 5052 5053 struct GtkFilter 5054 { 5055 GObject parentInstance; 5056 } 5057 5058 struct GtkFilterClass 5059 { 5060 GObjectClass parentClass; 5061 /** 5062 * 5063 * Params: 5064 * self = a `GtkFilter` 5065 * item = The item to check 5066 * Returns: %TRUE if the filter matches the item and a filter model should 5067 * keep it, %FALSE if not. 5068 */ 5069 extern(C) int function(GtkFilter* self, void* item) match; 5070 /** 5071 * 5072 * Params: 5073 * self = a #GtkFilter 5074 * Returns: the strictness of @self 5075 */ 5076 extern(C) GtkFilterMatch function(GtkFilter* self) getStrictness; 5077 /** */ 5078 extern(C) void function() GtkReserved1; 5079 /** */ 5080 extern(C) void function() GtkReserved2; 5081 /** */ 5082 extern(C) void function() GtkReserved3; 5083 /** */ 5084 extern(C) void function() GtkReserved4; 5085 /** */ 5086 extern(C) void function() GtkReserved5; 5087 /** */ 5088 extern(C) void function() GtkReserved6; 5089 /** */ 5090 extern(C) void function() GtkReserved7; 5091 /** */ 5092 extern(C) void function() GtkReserved8; 5093 } 5094 5095 struct GtkFilterListModel; 5096 5097 struct GtkFilterListModelClass 5098 { 5099 GObjectClass parentClass; 5100 } 5101 5102 struct GtkFixed 5103 { 5104 GtkWidget parentInstance; 5105 } 5106 5107 struct GtkFixedClass 5108 { 5109 GtkWidgetClass parentClass; 5110 void*[8] padding; 5111 } 5112 5113 struct GtkFixedLayout; 5114 5115 struct GtkFixedLayoutChild; 5116 5117 struct GtkFixedLayoutChildClass 5118 { 5119 GtkLayoutChildClass parentClass; 5120 } 5121 5122 struct GtkFixedLayoutClass 5123 { 5124 GtkLayoutManagerClass parentClass; 5125 } 5126 5127 struct GtkFlattenListModel; 5128 5129 struct GtkFlattenListModelClass 5130 { 5131 GObjectClass parentClass; 5132 } 5133 5134 struct GtkFlowBox; 5135 5136 struct GtkFlowBoxChild 5137 { 5138 GtkWidget parentInstance; 5139 } 5140 5141 struct GtkFlowBoxChildClass 5142 { 5143 GtkWidgetClass parentClass; 5144 /** */ 5145 extern(C) void function(GtkFlowBoxChild* child) activate; 5146 void*[8] padding; 5147 } 5148 5149 struct GtkFontButton; 5150 5151 struct GtkFontChooser; 5152 5153 struct GtkFontChooserDialog; 5154 5155 struct GtkFontChooserIface 5156 { 5157 GTypeInterface baseIface; 5158 /** 5159 * 5160 * Params: 5161 * fontchooser = a `GtkFontChooser` 5162 * Returns: A `PangoFontFamily` representing the 5163 * selected font family, or %NULL. The returned object is owned by @fontchooser 5164 * and must not be modified or freed. 5165 */ 5166 extern(C) PangoFontFamily* function(GtkFontChooser* fontchooser) getFontFamily; 5167 /** 5168 * 5169 * Params: 5170 * fontchooser = a `GtkFontChooser` 5171 * Returns: A `PangoFontFace` representing the 5172 * selected font group details, or %NULL. The returned object is owned by 5173 * @fontchooser and must not be modified or freed. 5174 */ 5175 extern(C) PangoFontFace* function(GtkFontChooser* fontchooser) getFontFace; 5176 /** 5177 * 5178 * Params: 5179 * fontchooser = a `GtkFontChooser` 5180 * Returns: A n integer representing the selected font size, 5181 * or -1 if no font size is selected. 5182 */ 5183 extern(C) int function(GtkFontChooser* fontchooser) getFontSize; 5184 /** */ 5185 extern(C) void function(GtkFontChooser* fontchooser, GtkFontFilterFunc filter, void* userData, GDestroyNotify destroy) setFilterFunc; 5186 /** */ 5187 extern(C) void function(GtkFontChooser* chooser, const(char)* fontname) fontActivated; 5188 /** */ 5189 extern(C) void function(GtkFontChooser* fontchooser, PangoFontMap* fontmap) setFontMap; 5190 /** 5191 * 5192 * Params: 5193 * fontchooser = a `GtkFontChooser` 5194 * Returns: a `PangoFontMap`, or %NULL 5195 */ 5196 extern(C) PangoFontMap* function(GtkFontChooser* fontchooser) getFontMap; 5197 void*[10] padding; 5198 } 5199 5200 struct GtkFontChooserWidget; 5201 5202 struct GtkFrame 5203 { 5204 GtkWidget parentInstance; 5205 } 5206 5207 struct GtkFrameClass 5208 { 5209 /** 5210 * The parent class. 5211 */ 5212 GtkWidgetClass parentClass; 5213 /** */ 5214 extern(C) void function(GtkFrame* frame, GtkAllocation* allocation) computeChildAllocation; 5215 void*[8] padding; 5216 } 5217 5218 struct GtkGLArea 5219 { 5220 GtkWidget parentInstance; 5221 } 5222 5223 /** 5224 * The `GtkGLAreaClass` structure contains only private data. 5225 */ 5226 struct GtkGLAreaClass 5227 { 5228 GtkWidgetClass parentClass; 5229 /** */ 5230 extern(C) int function(GtkGLArea* area, GdkGLContext* context) render; 5231 /** */ 5232 extern(C) void function(GtkGLArea* area, int width, int height) resize; 5233 /** */ 5234 extern(C) GdkGLContext* function(GtkGLArea* area) createContext; 5235 void*[8] Padding; 5236 } 5237 5238 struct GtkGesture; 5239 5240 struct GtkGestureClass; 5241 5242 struct GtkGestureClick; 5243 5244 struct GtkGestureClickClass; 5245 5246 struct GtkGestureDrag; 5247 5248 struct GtkGestureDragClass; 5249 5250 struct GtkGestureLongPress; 5251 5252 struct GtkGestureLongPressClass; 5253 5254 struct GtkGesturePan; 5255 5256 struct GtkGesturePanClass; 5257 5258 struct GtkGestureRotate; 5259 5260 struct GtkGestureRotateClass; 5261 5262 struct GtkGestureSingle; 5263 5264 struct GtkGestureSingleClass; 5265 5266 struct GtkGestureStylus; 5267 5268 struct GtkGestureStylusClass; 5269 5270 struct GtkGestureSwipe; 5271 5272 struct GtkGestureSwipeClass; 5273 5274 struct GtkGestureZoom; 5275 5276 struct GtkGestureZoomClass; 5277 5278 struct GtkGrid 5279 { 5280 GtkWidget parentInstance; 5281 } 5282 5283 struct GtkGridClass 5284 { 5285 /** 5286 * The parent class. 5287 */ 5288 GtkWidgetClass parentClass; 5289 void*[8] padding; 5290 } 5291 5292 struct GtkGridLayout; 5293 5294 struct GtkGridLayoutChild; 5295 5296 struct GtkGridLayoutChildClass 5297 { 5298 GtkLayoutChildClass parentClass; 5299 } 5300 5301 struct GtkGridLayoutClass 5302 { 5303 GtkLayoutManagerClass parentClass; 5304 } 5305 5306 struct GtkGridView; 5307 5308 struct GtkGridViewClass; 5309 5310 struct GtkHeaderBar; 5311 5312 struct GtkIMContext 5313 { 5314 GObject parentInstance; 5315 } 5316 5317 struct GtkIMContextClass 5318 { 5319 GObjectClass parentClass; 5320 /** */ 5321 extern(C) void function(GtkIMContext* context) preeditStart; 5322 /** */ 5323 extern(C) void function(GtkIMContext* context) preeditEnd; 5324 /** */ 5325 extern(C) void function(GtkIMContext* context) preeditChanged; 5326 /** */ 5327 extern(C) void function(GtkIMContext* context, const(char)* str) commit; 5328 /** */ 5329 extern(C) int function(GtkIMContext* context) retrieveSurrounding; 5330 /** 5331 * 5332 * Params: 5333 * context = a `GtkIMContext` 5334 * offset = offset from cursor position in chars; 5335 * a negative value means start before the cursor. 5336 * nChars = number of characters to delete. 5337 * Returns: %TRUE if the signal was handled. 5338 */ 5339 extern(C) int function(GtkIMContext* context, int offset, int nChars) deleteSurrounding; 5340 /** */ 5341 extern(C) void function(GtkIMContext* context, GtkWidget* widget) setClientWidget; 5342 /** */ 5343 extern(C) void function(GtkIMContext* context, char** str, PangoAttrList** attrs, int* cursorPos) getPreeditString; 5344 /** 5345 * 5346 * Params: 5347 * context = a `GtkIMContext` 5348 * event = the key event 5349 * Returns: %TRUE if the input method handled the key event. 5350 */ 5351 extern(C) int function(GtkIMContext* context, GdkEvent* event) filterKeypress; 5352 /** */ 5353 extern(C) void function(GtkIMContext* context) focusIn; 5354 /** */ 5355 extern(C) void function(GtkIMContext* context) focusOut; 5356 /** */ 5357 extern(C) void function(GtkIMContext* context) reset; 5358 /** */ 5359 extern(C) void function(GtkIMContext* context, GdkRectangle* area) setCursorLocation; 5360 /** */ 5361 extern(C) void function(GtkIMContext* context, int usePreedit) setUsePreedit; 5362 /** */ 5363 extern(C) void function(GtkIMContext* context, const(char)* text, int len, int cursorIndex) setSurrounding; 5364 /** 5365 * 5366 * Params: 5367 * context = a `GtkIMContext` 5368 * text = location to store a UTF-8 encoded 5369 * string of text holding context around the insertion point. 5370 * If the function returns %TRUE, then you must free the result 5371 * stored in this location with g_free(). 5372 * cursorIndex = location to store byte index of the insertion 5373 * cursor within @text. 5374 * Returns: `TRUE` if surrounding text was provided; in this case 5375 * you must free the result stored in `text`. 5376 */ 5377 extern(C) int function(GtkIMContext* context, char** text, int* cursorIndex) getSurrounding; 5378 /** */ 5379 extern(C) void function(GtkIMContext* context, const(char)* text, int len, int cursorIndex, int anchorIndex) setSurroundingWithSelection; 5380 /** 5381 * 5382 * Params: 5383 * context = a #GtkIMContext 5384 * text = location to store a UTF-8 encoded 5385 * string of text holding context around the insertion point. 5386 * If the function returns %TRUE, then you must free the result 5387 * stored in this location with g_free(). 5388 * cursorIndex = location to store byte index of the insertion 5389 * cursor within @text. 5390 * anchorIndex = location to store byte index of the selection 5391 * bound within @text 5392 * Returns: `TRUE` if surrounding text was provided; in this case 5393 * you must free the result stored in `text`. 5394 */ 5395 extern(C) int function(GtkIMContext* context, char** text, int* cursorIndex, int* anchorIndex) getSurroundingWithSelection; 5396 /** */ 5397 extern(C) void function() GtkReserved1; 5398 /** */ 5399 extern(C) void function() GtkReserved2; 5400 /** */ 5401 extern(C) void function() GtkReserved3; 5402 /** */ 5403 extern(C) void function() GtkReserved4; 5404 /** */ 5405 extern(C) void function() GtkReserved5; 5406 } 5407 5408 struct GtkIMContextSimple 5409 { 5410 GtkIMContext object; 5411 GtkIMContextSimplePrivate* priv; 5412 } 5413 5414 struct GtkIMContextSimpleClass 5415 { 5416 GtkIMContextClass parentClass; 5417 } 5418 5419 struct GtkIMContextSimplePrivate; 5420 5421 struct GtkIMMulticontext 5422 { 5423 GtkIMContext object; 5424 GtkIMMulticontextPrivate* priv; 5425 } 5426 5427 struct GtkIMMulticontextClass 5428 { 5429 GtkIMContextClass parentClass; 5430 /** */ 5431 extern(C) void function() GtkReserved1; 5432 /** */ 5433 extern(C) void function() GtkReserved2; 5434 /** */ 5435 extern(C) void function() GtkReserved3; 5436 /** */ 5437 extern(C) void function() GtkReserved4; 5438 } 5439 5440 struct GtkIMMulticontextPrivate; 5441 5442 struct GtkIconPaintable; 5443 5444 struct GtkIconTheme; 5445 5446 struct GtkIconView; 5447 5448 struct GtkImage; 5449 5450 struct GtkInfoBar; 5451 5452 struct GtkKeyvalTrigger; 5453 5454 struct GtkKeyvalTriggerClass; 5455 5456 struct GtkLabel; 5457 5458 struct GtkLayoutChild 5459 { 5460 GObject parentInstance; 5461 } 5462 5463 struct GtkLayoutChildClass 5464 { 5465 GObjectClass parentClass; 5466 } 5467 5468 struct GtkLayoutManager 5469 { 5470 GObject parentInstance; 5471 } 5472 5473 /** 5474 * The `GtkLayoutManagerClass` structure contains only private data, and 5475 * should only be accessed through the provided API, or when subclassing 5476 * #GtkLayoutManager. 5477 */ 5478 struct GtkLayoutManagerClass 5479 { 5480 GObjectClass parentClass; 5481 /** */ 5482 extern(C) GtkSizeRequestMode function(GtkLayoutManager* manager, GtkWidget* widget) getRequestMode; 5483 /** */ 5484 extern(C) void function(GtkLayoutManager* manager, GtkWidget* widget, GtkOrientation orientation, int forSize, int* minimum, int* natural, int* minimumBaseline, int* naturalBaseline) measure; 5485 /** */ 5486 extern(C) void function(GtkLayoutManager* manager, GtkWidget* widget, int width, int height, int baseline) allocate; 5487 /** 5488 * the type of #GtkLayoutChild used by this layout manager 5489 */ 5490 GType layoutChildType; 5491 /** 5492 * 5493 * Params: 5494 * manager = the #GtkLayoutManager 5495 * widget = the widget using the @manager 5496 * forChild = the child of @widget 5497 * Returns: a #GtkLayoutChild 5498 */ 5499 extern(C) GtkLayoutChild* function(GtkLayoutManager* manager, GtkWidget* widget, GtkWidget* forChild) createLayoutChild; 5500 /** */ 5501 extern(C) void function(GtkLayoutManager* manager) root; 5502 /** */ 5503 extern(C) void function(GtkLayoutManager* manager) unroot; 5504 void*[16] Padding; 5505 } 5506 5507 struct GtkLevelBar; 5508 5509 struct GtkLinkButton; 5510 5511 struct GtkListBase; 5512 5513 struct GtkListBaseClass; 5514 5515 struct GtkListBox; 5516 5517 struct GtkListBoxRow 5518 { 5519 GtkWidget parentInstance; 5520 } 5521 5522 struct GtkListBoxRowClass 5523 { 5524 /** 5525 * The parent class. 5526 */ 5527 GtkWidgetClass parentClass; 5528 /** */ 5529 extern(C) void function(GtkListBoxRow* row) activate; 5530 void*[8] padding; 5531 } 5532 5533 struct GtkListItem; 5534 5535 struct GtkListItemClass; 5536 5537 struct GtkListItemFactory; 5538 5539 struct GtkListItemFactoryClass; 5540 5541 struct GtkListStore 5542 { 5543 GObject parent; 5544 GtkListStorePrivate* priv; 5545 } 5546 5547 struct GtkListStoreClass 5548 { 5549 GObjectClass parentClass; 5550 void*[8] padding; 5551 } 5552 5553 struct GtkListStorePrivate; 5554 5555 struct GtkListView; 5556 5557 struct GtkListViewClass; 5558 5559 struct GtkLockButton; 5560 5561 struct GtkMapListModel; 5562 5563 struct GtkMapListModelClass 5564 { 5565 GObjectClass parentClass; 5566 } 5567 5568 struct GtkMediaControls; 5569 5570 struct GtkMediaControlsClass 5571 { 5572 GtkWidgetClass parentClass; 5573 } 5574 5575 struct GtkMediaFile 5576 { 5577 GtkMediaStream parentInstance; 5578 } 5579 5580 struct GtkMediaFileClass 5581 { 5582 GtkMediaStreamClass parentClass; 5583 /** */ 5584 extern(C) void function(GtkMediaFile* self) open; 5585 /** */ 5586 extern(C) void function(GtkMediaFile* self) close; 5587 /** */ 5588 extern(C) void function() GtkReserved1; 5589 /** */ 5590 extern(C) void function() GtkReserved2; 5591 /** */ 5592 extern(C) void function() GtkReserved3; 5593 /** */ 5594 extern(C) void function() GtkReserved4; 5595 } 5596 5597 struct GtkMediaStream 5598 { 5599 GObject parentInstance; 5600 } 5601 5602 struct GtkMediaStreamClass 5603 { 5604 GObjectClass parentClass; 5605 /** */ 5606 extern(C) int function(GtkMediaStream* self) play; 5607 /** */ 5608 extern(C) void function(GtkMediaStream* self) pause; 5609 /** */ 5610 extern(C) void function(GtkMediaStream* self, long timestamp) seek; 5611 /** */ 5612 extern(C) void function(GtkMediaStream* self, int muted, double volume) updateAudio; 5613 /** */ 5614 extern(C) void function(GtkMediaStream* self, GdkSurface* surface) realize; 5615 /** */ 5616 extern(C) void function(GtkMediaStream* self, GdkSurface* surface) unrealize; 5617 /** */ 5618 extern(C) void function() GtkReserved1; 5619 /** */ 5620 extern(C) void function() GtkReserved2; 5621 /** */ 5622 extern(C) void function() GtkReserved3; 5623 /** */ 5624 extern(C) void function() GtkReserved4; 5625 /** */ 5626 extern(C) void function() GtkReserved5; 5627 /** */ 5628 extern(C) void function() GtkReserved6; 5629 /** */ 5630 extern(C) void function() GtkReserved7; 5631 /** */ 5632 extern(C) void function() GtkReserved8; 5633 } 5634 5635 struct GtkMenuButton; 5636 5637 struct GtkMessageDialog 5638 { 5639 GtkDialog parentInstance; 5640 } 5641 5642 struct GtkMessageDialogClass; 5643 5644 struct GtkMnemonicAction; 5645 5646 struct GtkMnemonicActionClass; 5647 5648 struct GtkMnemonicTrigger; 5649 5650 struct GtkMnemonicTriggerClass; 5651 5652 struct GtkMountOperation 5653 { 5654 GMountOperation parentInstance; 5655 GtkMountOperationPrivate* priv; 5656 } 5657 5658 struct GtkMountOperationClass 5659 { 5660 /** 5661 * The parent class. 5662 */ 5663 GMountOperationClass parentClass; 5664 /** */ 5665 extern(C) void function() GtkReserved1; 5666 /** */ 5667 extern(C) void function() GtkReserved2; 5668 /** */ 5669 extern(C) void function() GtkReserved3; 5670 /** */ 5671 extern(C) void function() GtkReserved4; 5672 } 5673 5674 struct GtkMountOperationPrivate; 5675 5676 struct GtkMultiFilter; 5677 5678 struct GtkMultiFilterClass; 5679 5680 struct GtkMultiSelection; 5681 5682 struct GtkMultiSelectionClass 5683 { 5684 GObjectClass parentClass; 5685 } 5686 5687 struct GtkMultiSorter; 5688 5689 struct GtkMultiSorterClass 5690 { 5691 GtkSorterClass parentClass; 5692 } 5693 5694 struct GtkNamedAction; 5695 5696 struct GtkNamedActionClass; 5697 5698 struct GtkNative; 5699 5700 struct GtkNativeDialog 5701 { 5702 GObject parentInstance; 5703 } 5704 5705 /** 5706 * Class structure for #GtkNativeDialog. 5707 */ 5708 struct GtkNativeDialogClass 5709 { 5710 GObjectClass parentClass; 5711 /** */ 5712 extern(C) void function(GtkNativeDialog* self, int responseId) response; 5713 /** */ 5714 extern(C) void function(GtkNativeDialog* self) show; 5715 /** */ 5716 extern(C) void function(GtkNativeDialog* self) hide; 5717 /** */ 5718 extern(C) void function() GtkReserved1; 5719 /** */ 5720 extern(C) void function() GtkReserved2; 5721 /** */ 5722 extern(C) void function() GtkReserved3; 5723 /** */ 5724 extern(C) void function() GtkReserved4; 5725 } 5726 5727 struct GtkNativeInterface; 5728 5729 struct GtkNeverTrigger; 5730 5731 struct GtkNeverTriggerClass; 5732 5733 struct GtkNoSelection; 5734 5735 struct GtkNoSelectionClass 5736 { 5737 GObjectClass parentClass; 5738 } 5739 5740 struct GtkNotebook; 5741 5742 struct GtkNotebookPage; 5743 5744 struct GtkNothingAction; 5745 5746 struct GtkNothingActionClass; 5747 5748 struct GtkNumericSorter; 5749 5750 struct GtkNumericSorterClass 5751 { 5752 GtkSorterClass parentClass; 5753 } 5754 5755 struct GtkObjectExpression; 5756 5757 struct GtkOrientable; 5758 5759 struct GtkOrientableIface 5760 { 5761 GTypeInterface baseIface; 5762 } 5763 5764 struct GtkOverlay; 5765 5766 struct GtkOverlayLayout; 5767 5768 struct GtkOverlayLayoutChild; 5769 5770 struct GtkOverlayLayoutChildClass 5771 { 5772 GtkLayoutChildClass parentClass; 5773 } 5774 5775 struct GtkOverlayLayoutClass 5776 { 5777 GtkLayoutManagerClass parentClass; 5778 } 5779 5780 /** 5781 * Struct defining a pad action entry. 5782 */ 5783 struct GtkPadActionEntry 5784 { 5785 /** 5786 * the type of pad feature that will trigger this action entry. 5787 */ 5788 GtkPadActionType type; 5789 /** 5790 * the 0-indexed button/ring/strip number that will trigger this action 5791 * entry. 5792 */ 5793 int index; 5794 /** 5795 * the mode that will trigger this action entry, or -1 for all modes. 5796 */ 5797 int mode; 5798 /** 5799 * Human readable description of this action entry, this string should 5800 * be deemed user-visible. 5801 */ 5802 const(char)* label; 5803 /** 5804 * action name that will be activated in the #GActionGroup. 5805 */ 5806 const(char)* actionName; 5807 } 5808 5809 struct GtkPadController; 5810 5811 struct GtkPadControllerClass; 5812 5813 /** 5814 * A range of pages to print. 5815 * 5816 * See also [method@Gtk.PrintSettings.set_page_ranges]. 5817 */ 5818 struct GtkPageRange 5819 { 5820 /** 5821 * start of page range. 5822 */ 5823 int start; 5824 /** 5825 * end of page range. 5826 */ 5827 int end; 5828 } 5829 5830 struct GtkPageSetup; 5831 5832 struct GtkPageSetupUnixDialog; 5833 5834 struct GtkPaned; 5835 5836 struct GtkPaperSize; 5837 5838 struct GtkParamSpecExpression 5839 { 5840 GParamSpec parentInstance; 5841 } 5842 5843 struct GtkPasswordEntry; 5844 5845 struct GtkPasswordEntryClass; 5846 5847 struct GtkPicture; 5848 5849 struct GtkPictureClass 5850 { 5851 GtkWidgetClass parentClass; 5852 } 5853 5854 struct GtkPopover 5855 { 5856 GtkWidget parent; 5857 } 5858 5859 struct GtkPopoverClass 5860 { 5861 GtkWidgetClass parentClass; 5862 /** */ 5863 extern(C) void function(GtkPopover* popover) closed; 5864 /** */ 5865 extern(C) void function(GtkPopover* popover) activateDefault; 5866 void*[8] reserved; 5867 } 5868 5869 struct GtkPopoverMenu; 5870 5871 struct GtkPopoverMenuBar; 5872 5873 struct GtkPrintBackend; 5874 5875 struct GtkPrintContext; 5876 5877 struct GtkPrintJob; 5878 5879 struct GtkPrintOperation 5880 { 5881 GObject parentInstance; 5882 GtkPrintOperationPrivate* priv; 5883 } 5884 5885 struct GtkPrintOperationClass 5886 { 5887 /** 5888 * The parent class. 5889 */ 5890 GObjectClass parentClass; 5891 /** */ 5892 extern(C) void function(GtkPrintOperation* operation, GtkPrintOperationResult result) done; 5893 /** */ 5894 extern(C) void function(GtkPrintOperation* operation, GtkPrintContext* context) beginPrint; 5895 /** */ 5896 extern(C) int function(GtkPrintOperation* operation, GtkPrintContext* context) paginate; 5897 /** */ 5898 extern(C) void function(GtkPrintOperation* operation, GtkPrintContext* context, int pageNr, GtkPageSetup* setup) requestPageSetup; 5899 /** */ 5900 extern(C) void function(GtkPrintOperation* operation, GtkPrintContext* context, int pageNr) drawPage; 5901 /** */ 5902 extern(C) void function(GtkPrintOperation* operation, GtkPrintContext* context) endPrint; 5903 /** */ 5904 extern(C) void function(GtkPrintOperation* operation) statusChanged; 5905 /** */ 5906 extern(C) GtkWidget* function(GtkPrintOperation* operation) createCustomWidget; 5907 /** */ 5908 extern(C) void function(GtkPrintOperation* operation, GtkWidget* widget) customWidgetApply; 5909 /** */ 5910 extern(C) int function(GtkPrintOperation* operation, GtkPrintOperationPreview* preview, GtkPrintContext* context, GtkWindow* parent) preview; 5911 /** */ 5912 extern(C) void function(GtkPrintOperation* operation, GtkWidget* widget, GtkPageSetup* setup, GtkPrintSettings* settings) updateCustomWidget; 5913 void*[8] padding; 5914 } 5915 5916 struct GtkPrintOperationPreview; 5917 5918 struct GtkPrintOperationPreviewIface 5919 { 5920 GTypeInterface gIface; 5921 /** */ 5922 extern(C) void function(GtkPrintOperationPreview* preview, GtkPrintContext* context) ready; 5923 /** */ 5924 extern(C) void function(GtkPrintOperationPreview* preview, GtkPrintContext* context, GtkPageSetup* pageSetup) gotPageSize; 5925 /** */ 5926 extern(C) void function(GtkPrintOperationPreview* preview, int pageNr) renderPage; 5927 /** 5928 * 5929 * Params: 5930 * preview = a `GtkPrintOperationPreview` 5931 * pageNr = a page number 5932 * Returns: %TRUE if the page has been selected for printing 5933 */ 5934 extern(C) int function(GtkPrintOperationPreview* preview, int pageNr) isSelected; 5935 /** */ 5936 extern(C) void function(GtkPrintOperationPreview* preview) endPreview; 5937 /** */ 5938 extern(C) void function() GtkReserved1; 5939 /** */ 5940 extern(C) void function() GtkReserved2; 5941 /** */ 5942 extern(C) void function() GtkReserved3; 5943 /** */ 5944 extern(C) void function() GtkReserved4; 5945 /** */ 5946 extern(C) void function() GtkReserved5; 5947 /** */ 5948 extern(C) void function() GtkReserved6; 5949 /** */ 5950 extern(C) void function() GtkReserved7; 5951 /** */ 5952 extern(C) void function() GtkReserved8; 5953 } 5954 5955 struct GtkPrintOperationPrivate; 5956 5957 struct GtkPrintSettings; 5958 5959 struct GtkPrintUnixDialog; 5960 5961 struct GtkPrinter; 5962 5963 struct GtkProgressBar; 5964 5965 struct GtkPropertyExpression; 5966 5967 struct GtkRange 5968 { 5969 GtkWidget parentInstance; 5970 } 5971 5972 struct GtkRangeClass 5973 { 5974 GtkWidgetClass parentClass; 5975 /** */ 5976 extern(C) void function(GtkRange* range) valueChanged; 5977 /** */ 5978 extern(C) void function(GtkRange* range, double newValue) adjustBounds; 5979 /** */ 5980 extern(C) void function(GtkRange* range, GtkScrollType scroll) moveSlider; 5981 /** */ 5982 extern(C) void function(GtkRange* range, GtkBorder* border) getRangeBorder; 5983 /** */ 5984 extern(C) int function(GtkRange* range, GtkScrollType scroll, double newValue) changeValue; 5985 void*[8] padding; 5986 } 5987 5988 /** 5989 * Meta-data to be passed to gtk_recent_manager_add_full() when 5990 * registering a recently used resource. 5991 */ 5992 struct GtkRecentData 5993 { 5994 /** 5995 * a UTF-8 encoded string, containing the name of the recently 5996 * used resource to be displayed, or %NULL; 5997 */ 5998 char* displayName; 5999 /** 6000 * a UTF-8 encoded string, containing a short description of 6001 * the resource, or %NULL; 6002 */ 6003 char* description; 6004 /** 6005 * the MIME type of the resource; 6006 */ 6007 char* mimeType; 6008 /** 6009 * the name of the application that is registering this recently 6010 * used resource; 6011 */ 6012 char* appName; 6013 /** 6014 * command line used to launch this resource; may contain the 6015 * “\%f” and “\%u” escape characters which will be expanded 6016 * to the resource file path and URI respectively when the command line 6017 * is retrieved; 6018 */ 6019 char* appExec; 6020 /** 6021 * a vector of strings containing 6022 * groups names; 6023 */ 6024 char** groups; 6025 /** 6026 * whether this resource should be displayed only by the 6027 * applications that have registered it or not. 6028 */ 6029 bool isPrivate; 6030 } 6031 6032 struct GtkRecentInfo; 6033 6034 struct GtkRecentManager 6035 { 6036 GObject parentInstance; 6037 GtkRecentManagerPrivate* priv; 6038 } 6039 6040 /** 6041 * #GtkRecentManagerClass contains only private data. 6042 */ 6043 struct GtkRecentManagerClass 6044 { 6045 GObjectClass parentClass; 6046 /** */ 6047 extern(C) void function(GtkRecentManager* manager) changed; 6048 /** */ 6049 extern(C) void function() GtkRecent1; 6050 /** */ 6051 extern(C) void function() GtkRecent2; 6052 /** */ 6053 extern(C) void function() GtkRecent3; 6054 /** */ 6055 extern(C) void function() GtkRecent4; 6056 } 6057 6058 struct GtkRecentManagerPrivate; 6059 6060 /** 6061 * Represents a request of a screen object in a given orientation. These 6062 * are primarily used in container implementations when allocating a natural 6063 * size for children calling. See gtk_distribute_natural_allocation(). 6064 */ 6065 struct GtkRequestedSize 6066 { 6067 /** 6068 * A client pointer 6069 */ 6070 void* data; 6071 /** 6072 * The minimum size needed for allocation in a given orientation 6073 */ 6074 int minimumSize; 6075 /** 6076 * The natural size for allocation in a given orientation 6077 */ 6078 int naturalSize; 6079 } 6080 6081 struct GtkRequisition 6082 { 6083 /** 6084 * the widget’s desired width 6085 */ 6086 int width; 6087 /** 6088 * the widget’s desired height 6089 */ 6090 int height; 6091 } 6092 6093 struct GtkRevealer; 6094 6095 struct GtkRoot; 6096 6097 struct GtkRootInterface; 6098 6099 struct GtkScale 6100 { 6101 GtkRange parentInstance; 6102 } 6103 6104 struct GtkScaleButton 6105 { 6106 GtkWidget parentInstance; 6107 } 6108 6109 struct GtkScaleButtonClass 6110 { 6111 GtkWidgetClass parentClass; 6112 /** */ 6113 extern(C) void function(GtkScaleButton* button, double value) valueChanged; 6114 void*[8] padding; 6115 } 6116 6117 struct GtkScaleClass 6118 { 6119 GtkRangeClass parentClass; 6120 /** */ 6121 extern(C) void function(GtkScale* scale, int* x, int* y) getLayoutOffsets; 6122 void*[8] padding; 6123 } 6124 6125 struct GtkScrollable; 6126 6127 struct GtkScrollableInterface 6128 { 6129 GTypeInterface baseIface; 6130 /** 6131 * 6132 * Params: 6133 * scrollable = a `GtkScrollable` 6134 * border = return location for the results 6135 * Returns: %TRUE if @border has been set 6136 */ 6137 extern(C) int function(GtkScrollable* scrollable, GtkBorder* border) getBorder; 6138 } 6139 6140 struct GtkScrollbar; 6141 6142 struct GtkScrolledWindow; 6143 6144 struct GtkSearchBar; 6145 6146 struct GtkSearchEntry; 6147 6148 struct GtkSelectionFilterModel; 6149 6150 struct GtkSelectionFilterModelClass 6151 { 6152 GObjectClass parentClass; 6153 } 6154 6155 struct GtkSelectionModel; 6156 6157 /** 6158 * The list of virtual functions for the #GtkSelectionModel interface. 6159 * No function must be implemented, but unless #GtkSelectionModel::is_selected() 6160 * is implemented, it will not be possible to select items in the set. 6161 * 6162 * The model does not need to implement any functions to support either 6163 * selecting or unselecting items. Of course, if the model does not do that, 6164 * it means that users cannot select or unselect items in a list widget 6165 * using the model. 6166 * 6167 * All selection functions fall back to #GtkSelectionModel::set_selection() 6168 * so it is sufficient to implement just that function for full selection 6169 * support. 6170 */ 6171 struct GtkSelectionModelInterface 6172 { 6173 GTypeInterface gIface; 6174 /** 6175 * 6176 * Params: 6177 * model = a `GtkSelectionModel` 6178 * position = the position of the item to query 6179 * Returns: %TRUE if the item is selected 6180 */ 6181 extern(C) int function(GtkSelectionModel* model, uint position) isSelected; 6182 /** 6183 * 6184 * Params: 6185 * model = a `GtkSelectionModel` 6186 * position = start of the queired range 6187 * nItems = number of items in the queried range 6188 * Returns: A `GtkBitset` that matches the selection state 6189 * for the given range with all other values being undefined. 6190 * The bitset must not be modified. 6191 */ 6192 extern(C) GtkBitset* function(GtkSelectionModel* model, uint position, uint nItems) getSelectionInRange; 6193 /** 6194 * 6195 * Params: 6196 * model = a `GtkSelectionModel` 6197 * position = the position of the item to select 6198 * unselectRest = whether previously selected items should be unselected 6199 * Returns: %TRUE if this action was supported and no fallback should be 6200 * tried. This does not mean the item was selected. 6201 */ 6202 extern(C) int function(GtkSelectionModel* model, uint position, int unselectRest) selectItem; 6203 /** 6204 * 6205 * Params: 6206 * model = a `GtkSelectionModel` 6207 * position = the position of the item to unselect 6208 * Returns: %TRUE if this action was supported and no fallback should be 6209 * tried. This does not mean the item was unselected. 6210 */ 6211 extern(C) int function(GtkSelectionModel* model, uint position) unselectItem; 6212 /** 6213 * 6214 * Params: 6215 * model = a `GtkSelectionModel` 6216 * position = the first item to select 6217 * nItems = the number of items to select 6218 * unselectRest = whether previously selected items should be unselected 6219 * Returns: %TRUE if this action was supported and no fallback should be 6220 * tried. This does not mean the range was selected. 6221 */ 6222 extern(C) int function(GtkSelectionModel* model, uint position, uint nItems, int unselectRest) selectRange; 6223 /** 6224 * 6225 * Params: 6226 * model = a `GtkSelectionModel` 6227 * position = the first item to unselect 6228 * nItems = the number of items to unselect 6229 * Returns: %TRUE if this action was supported and no fallback should be 6230 * tried. This does not mean the range was unselected. 6231 */ 6232 extern(C) int function(GtkSelectionModel* model, uint position, uint nItems) unselectRange; 6233 /** 6234 * 6235 * Params: 6236 * model = a `GtkSelectionModel` 6237 * Returns: %TRUE if this action was supported and no fallback should be 6238 * tried. This does not mean that all items are now selected. 6239 */ 6240 extern(C) int function(GtkSelectionModel* model) selectAll; 6241 /** 6242 * 6243 * Params: 6244 * model = a `GtkSelectionModel` 6245 * Returns: %TRUE if this action was supported and no fallback should be 6246 * tried. This does not mean that all items are now unselected. 6247 */ 6248 extern(C) int function(GtkSelectionModel* model) unselectAll; 6249 /** 6250 * 6251 * Params: 6252 * model = a `GtkSelectionModel` 6253 * selected = bitmask specifying if items should be selected or 6254 * unselected 6255 * mask = bitmask specifying which items should be updated 6256 * Returns: %TRUE if this action was supported and no fallback should be 6257 * tried. This does not mean that all items were updated according 6258 * to the inputs. 6259 */ 6260 extern(C) int function(GtkSelectionModel* model, GtkBitset* selected, GtkBitset* mask) setSelection; 6261 } 6262 6263 struct GtkSeparator; 6264 6265 struct GtkSettings; 6266 6267 struct GtkShortcut; 6268 6269 struct GtkShortcutAction; 6270 6271 struct GtkShortcutActionClass; 6272 6273 struct GtkShortcutClass 6274 { 6275 GObjectClass parentClass; 6276 } 6277 6278 struct GtkShortcutController; 6279 6280 struct GtkShortcutControllerClass; 6281 6282 struct GtkShortcutLabel; 6283 6284 struct GtkShortcutLabelClass; 6285 6286 struct GtkShortcutManager; 6287 6288 /** 6289 * The list of functions that can be implemented for the #GtkShortcutManager interface. 6290 * 6291 * Note that no function is mandatory to implement, the default implementation will work 6292 * fine. 6293 */ 6294 struct GtkShortcutManagerInterface 6295 { 6296 GTypeInterface gIface; 6297 /** */ 6298 extern(C) void function(GtkShortcutManager* self, GtkShortcutController* controller) addController; 6299 /** */ 6300 extern(C) void function(GtkShortcutManager* self, GtkShortcutController* controller) removeController; 6301 } 6302 6303 struct GtkShortcutTrigger; 6304 6305 struct GtkShortcutTriggerClass; 6306 6307 struct GtkShortcutsGroup; 6308 6309 struct GtkShortcutsGroupClass; 6310 6311 struct GtkShortcutsSection; 6312 6313 struct GtkShortcutsSectionClass; 6314 6315 struct GtkShortcutsShortcut; 6316 6317 struct GtkShortcutsShortcutClass; 6318 6319 struct GtkShortcutsWindow; 6320 6321 struct GtkSignalAction; 6322 6323 struct GtkSignalActionClass; 6324 6325 struct GtkSignalListItemFactory; 6326 6327 struct GtkSignalListItemFactoryClass; 6328 6329 struct GtkSingleSelection; 6330 6331 struct GtkSingleSelectionClass 6332 { 6333 GObjectClass parentClass; 6334 } 6335 6336 struct GtkSizeGroup 6337 { 6338 GObject parentInstance; 6339 } 6340 6341 struct GtkSliceListModel; 6342 6343 struct GtkSliceListModelClass 6344 { 6345 GObjectClass parentClass; 6346 } 6347 6348 struct GtkSnapshot; 6349 6350 struct GtkSnapshotClass; 6351 6352 struct GtkSortListModel; 6353 6354 struct GtkSortListModelClass 6355 { 6356 GObjectClass parentClass; 6357 } 6358 6359 struct GtkSorter 6360 { 6361 GObject parentInstance; 6362 } 6363 6364 /** 6365 * The virtual table for `GtkSorter`. 6366 */ 6367 struct GtkSorterClass 6368 { 6369 GObjectClass parentClass; 6370 /** 6371 * 6372 * Params: 6373 * self = a `GtkSorter` 6374 * item1 = first item to compare 6375 * item2 = second item to compare 6376 * Returns: %GTK_ORDERING_EQUAL if @item1 == @item2, 6377 * %GTK_ORDERING_SMALLER if @item1 < @item2, 6378 * %GTK_ORDERING_LARGER if @item1 > @item2 6379 */ 6380 extern(C) GtkOrdering function(GtkSorter* self, void* item1, void* item2) compare; 6381 /** 6382 * 6383 * Params: 6384 * self = a `GtkSorter` 6385 * Returns: The order 6386 */ 6387 extern(C) GtkSorterOrder function(GtkSorter* self) getOrder; 6388 /** */ 6389 extern(C) void function() GtkReserved1; 6390 /** */ 6391 extern(C) void function() GtkReserved2; 6392 /** */ 6393 extern(C) void function() GtkReserved3; 6394 /** */ 6395 extern(C) void function() GtkReserved4; 6396 /** */ 6397 extern(C) void function() GtkReserved5; 6398 /** */ 6399 extern(C) void function() GtkReserved6; 6400 /** */ 6401 extern(C) void function() GtkReserved7; 6402 /** */ 6403 extern(C) void function() GtkReserved8; 6404 } 6405 6406 struct GtkSpinButton; 6407 6408 struct GtkSpinner; 6409 6410 struct GtkStack; 6411 6412 struct GtkStackPage; 6413 6414 struct GtkStackSidebar; 6415 6416 struct GtkStackSwitcher; 6417 6418 struct GtkStatusbar; 6419 6420 struct GtkStringFilter; 6421 6422 struct GtkStringFilterClass 6423 { 6424 GtkFilterClass parentClass; 6425 } 6426 6427 struct GtkStringList; 6428 6429 struct GtkStringListClass 6430 { 6431 GObjectClass parentClass; 6432 } 6433 6434 struct GtkStringObject; 6435 6436 struct GtkStringObjectClass 6437 { 6438 GObjectClass parentClass; 6439 } 6440 6441 struct GtkStringSorter; 6442 6443 struct GtkStringSorterClass 6444 { 6445 GtkSorterClass parentClass; 6446 } 6447 6448 struct GtkStyleContext 6449 { 6450 GObject parentObject; 6451 } 6452 6453 struct GtkStyleContextClass 6454 { 6455 GObjectClass parentClass; 6456 /** */ 6457 extern(C) void function(GtkStyleContext* context) changed; 6458 /** */ 6459 extern(C) void function() GtkReserved1; 6460 /** */ 6461 extern(C) void function() GtkReserved2; 6462 /** */ 6463 extern(C) void function() GtkReserved3; 6464 /** */ 6465 extern(C) void function() GtkReserved4; 6466 } 6467 6468 struct GtkStyleProvider; 6469 6470 struct GtkSwitch; 6471 6472 struct GtkText 6473 { 6474 GtkWidget parentInstance; 6475 } 6476 6477 struct GtkTextBuffer 6478 { 6479 GObject parentInstance; 6480 GtkTextBufferPrivate* priv; 6481 } 6482 6483 /** 6484 * The class structure for #GtkTextBuffer. 6485 */ 6486 struct GtkTextBufferClass 6487 { 6488 /** 6489 * The object class structure needs to be the first. 6490 */ 6491 GObjectClass parentClass; 6492 /** */ 6493 extern(C) void function(GtkTextBuffer* buffer, GtkTextIter* pos, const(char)* newText, int newTextLength) insertText; 6494 /** */ 6495 extern(C) void function(GtkTextBuffer* buffer, GtkTextIter* iter, GdkPaintable* paintable) insertPaintable; 6496 /** */ 6497 extern(C) void function(GtkTextBuffer* buffer, GtkTextIter* iter, GtkTextChildAnchor* anchor) insertChildAnchor; 6498 /** */ 6499 extern(C) void function(GtkTextBuffer* buffer, GtkTextIter* start, GtkTextIter* end) deleteRange; 6500 /** */ 6501 extern(C) void function(GtkTextBuffer* buffer) changed; 6502 /** */ 6503 extern(C) void function(GtkTextBuffer* buffer) modifiedChanged; 6504 /** */ 6505 extern(C) void function(GtkTextBuffer* buffer, GtkTextIter* location, GtkTextMark* mark) markSet; 6506 /** */ 6507 extern(C) void function(GtkTextBuffer* buffer, GtkTextMark* mark) markDeleted; 6508 /** */ 6509 extern(C) void function(GtkTextBuffer* buffer, GtkTextTag* tag, GtkTextIter* start, GtkTextIter* end) applyTag; 6510 /** */ 6511 extern(C) void function(GtkTextBuffer* buffer, GtkTextTag* tag, GtkTextIter* start, GtkTextIter* end) removeTag; 6512 /** */ 6513 extern(C) void function(GtkTextBuffer* buffer) beginUserAction; 6514 /** */ 6515 extern(C) void function(GtkTextBuffer* buffer) endUserAction; 6516 /** */ 6517 extern(C) void function(GtkTextBuffer* buffer, GdkClipboard* clipboard) pasteDone; 6518 /** */ 6519 extern(C) void function(GtkTextBuffer* buffer) undo; 6520 /** */ 6521 extern(C) void function(GtkTextBuffer* buffer) redo; 6522 /** */ 6523 extern(C) void function() GtkReserved1; 6524 /** */ 6525 extern(C) void function() GtkReserved2; 6526 /** */ 6527 extern(C) void function() GtkReserved3; 6528 /** */ 6529 extern(C) void function() GtkReserved4; 6530 } 6531 6532 struct GtkTextBufferPrivate; 6533 6534 struct GtkTextChildAnchor 6535 { 6536 GObject parentInstance; 6537 void* segment; 6538 } 6539 6540 struct GtkTextChildAnchorClass 6541 { 6542 GObjectClass parentClass; 6543 /** */ 6544 extern(C) void function() GtkReserved1; 6545 /** */ 6546 extern(C) void function() GtkReserved2; 6547 /** */ 6548 extern(C) void function() GtkReserved3; 6549 /** */ 6550 extern(C) void function() GtkReserved4; 6551 } 6552 6553 struct GtkTextIter 6554 { 6555 void* dummy1; 6556 void* dummy2; 6557 int dummy3; 6558 int dummy4; 6559 int dummy5; 6560 int dummy6; 6561 int dummy7; 6562 int dummy8; 6563 void* dummy9; 6564 void* dummy10; 6565 int dummy11; 6566 int dummy12; 6567 int dummy13; 6568 void* dummy14; 6569 } 6570 6571 struct GtkTextMark 6572 { 6573 GObject parentInstance; 6574 void* segment; 6575 } 6576 6577 struct GtkTextMarkClass 6578 { 6579 GObjectClass parentClass; 6580 void*[8] padding; 6581 } 6582 6583 struct GtkTextTag 6584 { 6585 GObject parentInstance; 6586 GtkTextTagPrivate* priv; 6587 } 6588 6589 struct GtkTextTagClass 6590 { 6591 GObjectClass parentClass; 6592 void*[8] padding; 6593 } 6594 6595 struct GtkTextTagPrivate; 6596 6597 struct GtkTextTagTable; 6598 6599 struct GtkTextView 6600 { 6601 GtkWidget parentInstance; 6602 GtkTextViewPrivate* priv; 6603 } 6604 6605 struct GtkTextViewClass 6606 { 6607 /** 6608 * The object class structure needs to be the first 6609 */ 6610 GtkWidgetClass parentClass; 6611 /** */ 6612 extern(C) void function(GtkTextView* textView, GtkMovementStep step, int count, int extendSelection) moveCursor; 6613 /** */ 6614 extern(C) void function(GtkTextView* textView) setAnchor; 6615 /** */ 6616 extern(C) void function(GtkTextView* textView, const(char)* str) insertAtCursor; 6617 /** */ 6618 extern(C) void function(GtkTextView* textView, GtkDeleteType type, int count) deleteFromCursor; 6619 /** */ 6620 extern(C) void function(GtkTextView* textView) backspace; 6621 /** */ 6622 extern(C) void function(GtkTextView* textView) cutClipboard; 6623 /** */ 6624 extern(C) void function(GtkTextView* textView) copyClipboard; 6625 /** */ 6626 extern(C) void function(GtkTextView* textView) pasteClipboard; 6627 /** */ 6628 extern(C) void function(GtkTextView* textView) toggleOverwrite; 6629 /** */ 6630 extern(C) GtkTextBuffer* function(GtkTextView* textView) createBuffer; 6631 /** */ 6632 extern(C) void function(GtkTextView* textView, GtkTextViewLayer layer, GtkSnapshot* snapshot) snapshotLayer; 6633 /** */ 6634 extern(C) int function(GtkTextView* textView, GtkTextExtendSelection granularity, GtkTextIter* location, GtkTextIter* start, GtkTextIter* end) extendSelection; 6635 /** */ 6636 extern(C) void function(GtkTextView* textView) insertEmoji; 6637 void*[8] padding; 6638 } 6639 6640 struct GtkTextViewPrivate; 6641 6642 struct GtkToggleButton 6643 { 6644 GtkButton button; 6645 } 6646 6647 struct GtkToggleButtonClass 6648 { 6649 GtkButtonClass parentClass; 6650 /** */ 6651 extern(C) void function(GtkToggleButton* toggleButton) toggled; 6652 void*[8] padding; 6653 } 6654 6655 struct GtkTooltip; 6656 6657 struct GtkTreeDragDest; 6658 6659 struct GtkTreeDragDestIface 6660 { 6661 GTypeInterface gIface; 6662 /** 6663 * 6664 * Params: 6665 * dragDest = a #GtkTreeDragDest 6666 * dest = row to drop in front of 6667 * value = data to drop 6668 * Returns: whether a new row was created before position @dest 6669 */ 6670 extern(C) int function(GtkTreeDragDest* dragDest, GtkTreePath* dest, GValue* value) dragDataReceived; 6671 /** 6672 * 6673 * Params: 6674 * dragDest = a #GtkTreeDragDest 6675 * destPath = destination row 6676 * value = the data being dropped 6677 * Returns: %TRUE if a drop is possible before @dest_path 6678 */ 6679 extern(C) int function(GtkTreeDragDest* dragDest, GtkTreePath* destPath, GValue* value) rowDropPossible; 6680 } 6681 6682 struct GtkTreeDragSource; 6683 6684 struct GtkTreeDragSourceIface 6685 { 6686 GTypeInterface gIface; 6687 /** 6688 * 6689 * Params: 6690 * dragSource = a #GtkTreeDragSource 6691 * path = row on which user is initiating a drag 6692 * Returns: %TRUE if the row can be dragged 6693 */ 6694 extern(C) int function(GtkTreeDragSource* dragSource, GtkTreePath* path) rowDraggable; 6695 /** 6696 * 6697 * Params: 6698 * dragSource = a #GtkTreeDragSource 6699 * path = row that was dragged 6700 * Returns: a #GdkContentProvider for the 6701 * given @path or %NULL if none exists 6702 */ 6703 extern(C) GdkContentProvider* function(GtkTreeDragSource* dragSource, GtkTreePath* path) dragDataGet; 6704 /** 6705 * 6706 * Params: 6707 * dragSource = a #GtkTreeDragSource 6708 * path = row that was being dragged 6709 * Returns: %TRUE if the row was successfully deleted 6710 */ 6711 extern(C) int function(GtkTreeDragSource* dragSource, GtkTreePath* path) dragDataDelete; 6712 } 6713 6714 struct GtkTreeExpander; 6715 6716 struct GtkTreeExpanderClass 6717 { 6718 GtkWidgetClass parentClass; 6719 } 6720 6721 struct GtkTreeIter 6722 { 6723 /** 6724 * a unique stamp to catch invalid iterators 6725 */ 6726 int stamp; 6727 /** 6728 * model-specific data 6729 */ 6730 void* userData; 6731 /** 6732 * model-specific data 6733 */ 6734 void* userData2; 6735 /** 6736 * model-specific data 6737 */ 6738 void* userData3; 6739 } 6740 6741 struct GtkTreeListModel; 6742 6743 struct GtkTreeListModelClass 6744 { 6745 GObjectClass parentClass; 6746 } 6747 6748 struct GtkTreeListRow; 6749 6750 struct GtkTreeListRowClass 6751 { 6752 GObjectClass parentClass; 6753 } 6754 6755 struct GtkTreeListRowSorter; 6756 6757 struct GtkTreeListRowSorterClass 6758 { 6759 GtkSorterClass parentClass; 6760 } 6761 6762 struct GtkTreeModel; 6763 6764 struct GtkTreeModelFilter 6765 { 6766 GObject parent; 6767 GtkTreeModelFilterPrivate* priv; 6768 } 6769 6770 struct GtkTreeModelFilterClass 6771 { 6772 GObjectClass parentClass; 6773 /** */ 6774 extern(C) int function(GtkTreeModelFilter* self, GtkTreeModel* childModel, GtkTreeIter* iter) visible; 6775 /** */ 6776 extern(C) void function(GtkTreeModelFilter* self, GtkTreeModel* childModel, GtkTreeIter* iter, GValue* value, int column) modify; 6777 void*[8] padding; 6778 } 6779 6780 struct GtkTreeModelFilterPrivate; 6781 6782 struct GtkTreeModelIface 6783 { 6784 GTypeInterface gIface; 6785 /** */ 6786 extern(C) void function(GtkTreeModel* treeModel, GtkTreePath* path, GtkTreeIter* iter) rowChanged; 6787 /** */ 6788 extern(C) void function(GtkTreeModel* treeModel, GtkTreePath* path, GtkTreeIter* iter) rowInserted; 6789 /** */ 6790 extern(C) void function(GtkTreeModel* treeModel, GtkTreePath* path, GtkTreeIter* iter) rowHasChildToggled; 6791 /** */ 6792 extern(C) void function(GtkTreeModel* treeModel, GtkTreePath* path) rowDeleted; 6793 /** */ 6794 extern(C) void function(GtkTreeModel* treeModel, GtkTreePath* path, GtkTreeIter* iter, int* newOrder) rowsReordered; 6795 /** 6796 * 6797 * Params: 6798 * treeModel = a #GtkTreeModel 6799 * Returns: the flags supported by this interface 6800 */ 6801 extern(C) GtkTreeModelFlags function(GtkTreeModel* treeModel) getFlags; 6802 /** 6803 * 6804 * Params: 6805 * treeModel = a #GtkTreeModel 6806 * Returns: the number of columns 6807 */ 6808 extern(C) int function(GtkTreeModel* treeModel) getNColumns; 6809 /** 6810 * 6811 * Params: 6812 * treeModel = a #GtkTreeModel 6813 * index = the column index 6814 * Returns: the type of the column 6815 */ 6816 extern(C) GType function(GtkTreeModel* treeModel, int index) getColumnType; 6817 /** 6818 * 6819 * Params: 6820 * treeModel = a #GtkTreeModel 6821 * iter = the uninitialized #GtkTreeIter-struct 6822 * path = the #GtkTreePath-struct 6823 * Returns: %TRUE, if @iter was set 6824 */ 6825 extern(C) int function(GtkTreeModel* treeModel, GtkTreeIter* iter, GtkTreePath* path) getIter; 6826 /** 6827 * 6828 * Params: 6829 * treeModel = a #GtkTreeModel 6830 * iter = the #GtkTreeIter-struct 6831 * Returns: a newly-created #GtkTreePath-struct 6832 */ 6833 extern(C) GtkTreePath* function(GtkTreeModel* treeModel, GtkTreeIter* iter) getPath; 6834 /** */ 6835 extern(C) void function(GtkTreeModel* treeModel, GtkTreeIter* iter, int column, GValue* value) getValue; 6836 /** 6837 * 6838 * Params: 6839 * treeModel = a #GtkTreeModel 6840 * iter = the #GtkTreeIter-struct 6841 * Returns: %TRUE if @iter has been changed to the next node 6842 */ 6843 extern(C) int function(GtkTreeModel* treeModel, GtkTreeIter* iter) iterNext; 6844 /** 6845 * 6846 * Params: 6847 * treeModel = a #GtkTreeModel 6848 * iter = the #GtkTreeIter-struct 6849 * Returns: %TRUE if @iter has been changed to the previous node 6850 */ 6851 extern(C) int function(GtkTreeModel* treeModel, GtkTreeIter* iter) iterPrevious; 6852 /** 6853 * 6854 * Params: 6855 * treeModel = a #GtkTreeModel 6856 * iter = the new #GtkTreeIter-struct to be set to the child 6857 * parent = the #GtkTreeIter-struct, or %NULL 6858 * Returns: %TRUE, if @iter has been set to the first child 6859 */ 6860 extern(C) int function(GtkTreeModel* treeModel, GtkTreeIter* iter, GtkTreeIter* parent) iterChildren; 6861 /** 6862 * 6863 * Params: 6864 * treeModel = a #GtkTreeModel 6865 * iter = the #GtkTreeIter-struct to test for children 6866 * Returns: %TRUE if @iter has children 6867 */ 6868 extern(C) int function(GtkTreeModel* treeModel, GtkTreeIter* iter) iterHasChild; 6869 /** 6870 * 6871 * Params: 6872 * treeModel = a #GtkTreeModel 6873 * iter = the #GtkTreeIter-struct, or %NULL 6874 * Returns: the number of children of @iter 6875 */ 6876 extern(C) int function(GtkTreeModel* treeModel, GtkTreeIter* iter) iterNChildren; 6877 /** 6878 * 6879 * Params: 6880 * treeModel = a #GtkTreeModel 6881 * iter = the #GtkTreeIter-struct to set to the nth child 6882 * parent = the #GtkTreeIter-struct to get the child from, or %NULL. 6883 * n = the index of the desired child 6884 * Returns: %TRUE, if @parent has an @n-th child 6885 */ 6886 extern(C) int function(GtkTreeModel* treeModel, GtkTreeIter* iter, GtkTreeIter* parent, int n) iterNthChild; 6887 /** 6888 * 6889 * Params: 6890 * treeModel = a #GtkTreeModel 6891 * iter = the new #GtkTreeIter-struct to set to the parent 6892 * child = the #GtkTreeIter-struct 6893 * Returns: %TRUE, if @iter is set to the parent of @child 6894 */ 6895 extern(C) int function(GtkTreeModel* treeModel, GtkTreeIter* iter, GtkTreeIter* child) iterParent; 6896 /** */ 6897 extern(C) void function(GtkTreeModel* treeModel, GtkTreeIter* iter) refNode; 6898 /** */ 6899 extern(C) void function(GtkTreeModel* treeModel, GtkTreeIter* iter) unrefNode; 6900 } 6901 6902 struct GtkTreeModelSort 6903 { 6904 GObject parent; 6905 GtkTreeModelSortPrivate* priv; 6906 } 6907 6908 struct GtkTreeModelSortClass 6909 { 6910 GObjectClass parentClass; 6911 void*[8] padding; 6912 } 6913 6914 struct GtkTreeModelSortPrivate; 6915 6916 struct GtkTreePath; 6917 6918 struct GtkTreeRowReference; 6919 6920 struct GtkTreeSelection; 6921 6922 struct GtkTreeSortable; 6923 6924 struct GtkTreeSortableIface 6925 { 6926 GTypeInterface gIface; 6927 /** */ 6928 extern(C) void function(GtkTreeSortable* sortable) sortColumnChanged; 6929 /** 6930 * 6931 * Params: 6932 * sortable = A #GtkTreeSortable 6933 * sortColumnId = The sort column id to be filled in 6934 * order = The #GtkSortType to be filled in 6935 * Returns: %TRUE if the sort column is not one of the special sort 6936 * column ids. 6937 */ 6938 extern(C) int function(GtkTreeSortable* sortable, int* sortColumnId, GtkSortType* order) getSortColumnId; 6939 /** */ 6940 extern(C) void function(GtkTreeSortable* sortable, int sortColumnId, GtkSortType order) setSortColumnId; 6941 /** */ 6942 extern(C) void function(GtkTreeSortable* sortable, int sortColumnId, GtkTreeIterCompareFunc sortFunc, void* userData, GDestroyNotify destroy) setSortFunc; 6943 /** */ 6944 extern(C) void function(GtkTreeSortable* sortable, GtkTreeIterCompareFunc sortFunc, void* userData, GDestroyNotify destroy) setDefaultSortFunc; 6945 /** 6946 * 6947 * Params: 6948 * sortable = A #GtkTreeSortable 6949 * Returns: %TRUE, if the model has a default sort function 6950 */ 6951 extern(C) int function(GtkTreeSortable* sortable) hasDefaultSortFunc; 6952 } 6953 6954 struct GtkTreeStore 6955 { 6956 GObject parent; 6957 GtkTreeStorePrivate* priv; 6958 } 6959 6960 struct GtkTreeStoreClass 6961 { 6962 GObjectClass parentClass; 6963 void*[8] padding; 6964 } 6965 6966 struct GtkTreeStorePrivate; 6967 6968 struct GtkTreeView 6969 { 6970 GtkWidget parentInstance; 6971 } 6972 6973 struct GtkTreeViewClass 6974 { 6975 GtkWidgetClass parentClass; 6976 /** */ 6977 extern(C) void function(GtkTreeView* treeView, GtkTreePath* path, GtkTreeViewColumn* column) rowActivated; 6978 /** */ 6979 extern(C) int function(GtkTreeView* treeView, GtkTreeIter* iter, GtkTreePath* path) testExpandRow; 6980 /** */ 6981 extern(C) int function(GtkTreeView* treeView, GtkTreeIter* iter, GtkTreePath* path) testCollapseRow; 6982 /** */ 6983 extern(C) void function(GtkTreeView* treeView, GtkTreeIter* iter, GtkTreePath* path) rowExpanded; 6984 /** */ 6985 extern(C) void function(GtkTreeView* treeView, GtkTreeIter* iter, GtkTreePath* path) rowCollapsed; 6986 /** */ 6987 extern(C) void function(GtkTreeView* treeView) columnsChanged; 6988 /** */ 6989 extern(C) void function(GtkTreeView* treeView) cursorChanged; 6990 /** */ 6991 extern(C) int function(GtkTreeView* treeView, GtkMovementStep step, int count, int extend, int modify) moveCursor; 6992 /** */ 6993 extern(C) int function(GtkTreeView* treeView) selectAll; 6994 /** */ 6995 extern(C) int function(GtkTreeView* treeView) unselectAll; 6996 /** */ 6997 extern(C) int function(GtkTreeView* treeView, int startEditing) selectCursorRow; 6998 /** */ 6999 extern(C) int function(GtkTreeView* treeView) toggleCursorRow; 7000 /** */ 7001 extern(C) int function(GtkTreeView* treeView, int logical, int expand, int openAll) expandCollapseCursorRow; 7002 /** */ 7003 extern(C) int function(GtkTreeView* treeView) selectCursorParent; 7004 /** */ 7005 extern(C) int function(GtkTreeView* treeView) startInteractiveSearch; 7006 void*[16] Reserved; 7007 } 7008 7009 struct GtkTreeViewColumn; 7010 7011 struct GtkVideo; 7012 7013 struct GtkVideoClass 7014 { 7015 GtkWidgetClass parentClass; 7016 } 7017 7018 struct GtkViewport; 7019 7020 struct GtkVolumeButton 7021 { 7022 GtkScaleButton parent; 7023 } 7024 7025 struct GtkWidget 7026 { 7027 GObject parentInstance; 7028 GtkWidgetPrivate* priv; 7029 } 7030 7031 struct GtkWidgetClass 7032 { 7033 /** 7034 * The object class structure needs to be the first 7035 * element in the widget class structure in order for the class mechanism 7036 * to work correctly. This allows a GtkWidgetClass pointer to be cast to 7037 * a GObjectClass pointer. 7038 */ 7039 GObjectClass parentClass; 7040 /** */ 7041 extern(C) void function(GtkWidget* widget) show; 7042 /** */ 7043 extern(C) void function(GtkWidget* widget) hide; 7044 /** */ 7045 extern(C) void function(GtkWidget* widget) map; 7046 /** */ 7047 extern(C) void function(GtkWidget* widget) unmap; 7048 /** */ 7049 extern(C) void function(GtkWidget* widget) realize; 7050 /** */ 7051 extern(C) void function(GtkWidget* widget) unrealize; 7052 /** */ 7053 extern(C) void function(GtkWidget* widget) root; 7054 /** */ 7055 extern(C) void function(GtkWidget* widget) unroot; 7056 /** */ 7057 extern(C) void function(GtkWidget* widget, int width, int height, int baseline) sizeAllocate; 7058 /** */ 7059 extern(C) void function(GtkWidget* widget, GtkStateFlags previousStateFlags) stateFlagsChanged; 7060 /** */ 7061 extern(C) void function(GtkWidget* widget, GtkTextDirection previousDirection) directionChanged; 7062 /** 7063 * 7064 * Params: 7065 * widget = a `GtkWidget` instance 7066 * Returns: The `GtkSizeRequestMode` preferred by @widget. 7067 */ 7068 extern(C) GtkSizeRequestMode function(GtkWidget* widget) getRequestMode; 7069 /** */ 7070 extern(C) void function(GtkWidget* widget, GtkOrientation orientation, int forSize, int* minimum, int* natural, int* minimumBaseline, int* naturalBaseline) measure; 7071 /** 7072 * 7073 * Params: 7074 * widget = a `GtkWidget` 7075 * groupCycling = %TRUE if there are other widgets with the same mnemonic 7076 * Returns: %TRUE if the signal has been handled 7077 */ 7078 extern(C) int function(GtkWidget* widget, int groupCycling) mnemonicActivate; 7079 /** 7080 * 7081 * Params: 7082 * widget = a `GtkWidget` 7083 * Returns: %TRUE if focus is now inside @widget. 7084 */ 7085 extern(C) int function(GtkWidget* widget) grabFocus; 7086 /** */ 7087 extern(C) int function(GtkWidget* widget, GtkDirectionType direction) focus; 7088 /** */ 7089 extern(C) void function(GtkWidget* widget, GtkWidget* child) setFocusChild; 7090 /** */ 7091 extern(C) void function(GtkWidget* widget, GtkDirectionType direction) moveFocus; 7092 /** 7093 * 7094 * Params: 7095 * widget = a `GtkWidget` 7096 * direction = direction of focus movement 7097 * Returns: %TRUE if stopping keyboard navigation is fine, %FALSE 7098 * if the emitting widget should try to handle the keyboard 7099 * navigation attempt in its parent container(s). 7100 */ 7101 extern(C) int function(GtkWidget* widget, GtkDirectionType direction) keynavFailed; 7102 /** */ 7103 extern(C) int function(GtkWidget* widget, int x, int y, int keyboardTooltip, GtkTooltip* tooltip) queryTooltip; 7104 /** */ 7105 extern(C) void function(GtkWidget* widget, int* hexpandP, int* vexpandP) computeExpand; 7106 /** */ 7107 extern(C) void function(GtkWidget* widget, GtkCssStyleChange* change) cssChanged; 7108 /** */ 7109 extern(C) void function(GtkWidget* widget, GtkSystemSetting settings) systemSettingChanged; 7110 /** */ 7111 extern(C) void function(GtkWidget* widget, GtkSnapshot* snapshot) snapshot; 7112 /** 7113 * 7114 * Params: 7115 * widget = the widget to query 7116 * x = X coordinate to test, relative to @widget's origin 7117 * y = Y coordinate to test, relative to @widget's origin 7118 * Returns: %TRUE if @widget contains (@x, @y). 7119 */ 7120 extern(C) int function(GtkWidget* widget, double x, double y) contains; 7121 GtkWidgetClassPrivate* priv; 7122 void*[8] padding; 7123 } 7124 7125 struct GtkWidgetClassPrivate; 7126 7127 struct GtkWidgetPaintable; 7128 7129 struct GtkWidgetPaintableClass 7130 { 7131 GObjectClass parentClass; 7132 } 7133 7134 struct GtkWidgetPrivate; 7135 7136 struct GtkWindow 7137 { 7138 GtkWidget parentInstance; 7139 } 7140 7141 struct GtkWindowClass 7142 { 7143 /** 7144 * The parent class. 7145 */ 7146 GtkWidgetClass parentClass; 7147 /** */ 7148 extern(C) void function(GtkWindow* window) activateFocus; 7149 /** */ 7150 extern(C) void function(GtkWindow* window) activateDefault; 7151 /** */ 7152 extern(C) void function(GtkWindow* window) keysChanged; 7153 /** */ 7154 extern(C) int function(GtkWindow* window, int toggle) enableDebugging; 7155 /** */ 7156 extern(C) int function(GtkWindow* window) closeRequest; 7157 void*[8] padding; 7158 } 7159 7160 struct GtkWindowControls; 7161 7162 struct GtkWindowControlsClass 7163 { 7164 GtkWidgetClass parentClass; 7165 } 7166 7167 struct GtkWindowGroup 7168 { 7169 GObject parentInstance; 7170 GtkWindowGroupPrivate* priv; 7171 } 7172 7173 struct GtkWindowGroupClass 7174 { 7175 GObjectClass parentClass; 7176 /** */ 7177 extern(C) void function() GtkReserved1; 7178 /** */ 7179 extern(C) void function() GtkReserved2; 7180 /** */ 7181 extern(C) void function() GtkReserved3; 7182 /** */ 7183 extern(C) void function() GtkReserved4; 7184 } 7185 7186 struct GtkWindowGroupPrivate; 7187 7188 struct GtkWindowHandle; 7189 7190 struct GtkWindowHandleClass 7191 { 7192 GtkWidgetClass parentClass; 7193 } 7194 7195 /** 7196 * Type of callback used to calculate the next page in a `GtkAssistant`. 7197 * 7198 * It’s called both for computing the next page when the user presses the 7199 * “forward” button and for handling the behavior of the “last” button. 7200 * 7201 * See [method@Gtk.Assistant.set_forward_page_func]. 7202 * 7203 * Params: 7204 * currentPage = The page number used to calculate the next page. 7205 * data = user data. 7206 * 7207 * Returns: The next page number 7208 */ 7209 public alias extern(C) int function(int currentPage, void* data) GtkAssistantPageFunc; 7210 7211 /** 7212 * The type of the callback functions used for iterating over the 7213 * cell renderers and their allocated areas inside a #GtkCellArea, 7214 * see gtk_cell_area_foreach_alloc(). 7215 * 7216 * Params: 7217 * renderer = the cell renderer to operate on 7218 * cellArea = the area allocated to @renderer inside the rectangle 7219 * provided to gtk_cell_area_foreach_alloc(). 7220 * cellBackground = the background area for @renderer inside the 7221 * background area provided to gtk_cell_area_foreach_alloc(). 7222 * data = user-supplied data 7223 * 7224 * Returns: %TRUE to stop iterating over cells. 7225 */ 7226 public alias extern(C) int function(GtkCellRenderer* renderer, GdkRectangle* cellArea, GdkRectangle* cellBackground, void* data) GtkCellAllocCallback; 7227 7228 /** 7229 * The type of the callback functions used for iterating over 7230 * the cell renderers of a #GtkCellArea, see gtk_cell_area_foreach(). 7231 * 7232 * Params: 7233 * renderer = the cell renderer to operate on 7234 * data = user-supplied data 7235 * 7236 * Returns: %TRUE to stop iterating over cells. 7237 */ 7238 public alias extern(C) int function(GtkCellRenderer* renderer, void* data) GtkCellCallback; 7239 7240 /** 7241 * A function which should set the value of @cell_layout’s cell renderer(s) 7242 * as appropriate. 7243 * 7244 * Params: 7245 * cellLayout = a #GtkCellLayout 7246 * cell = the cell renderer whose value is to be set 7247 * treeModel = the model 7248 * iter = a #GtkTreeIter indicating the row to set the value for 7249 * data = user data passed to gtk_cell_layout_set_cell_data_func() 7250 */ 7251 public alias extern(C) void function(GtkCellLayout* cellLayout, GtkCellRenderer* cell, GtkTreeModel* treeModel, GtkTreeIter* iter, void* data) GtkCellLayoutDataFunc; 7252 7253 /** 7254 * A function to be used by `GtkCustomLayout` to allocate a widget. 7255 * 7256 * Params: 7257 * widget = the widget to allocate 7258 * width = the new width of the widget 7259 * height = the new height of the widget 7260 * baseline = the new baseline of the widget, or -1 7261 */ 7262 public alias extern(C) void function(GtkWidget* widget, int width, int height, int baseline) GtkCustomAllocateFunc; 7263 7264 /** 7265 * User function that is called to determine if the @item should be matched. 7266 * 7267 * If the filter matches the item, this function must return %TRUE. If the 7268 * item should be filtered out, %FALSE must be returned. 7269 * 7270 * Params: 7271 * item = The item to be matched 7272 * userData = user data 7273 * 7274 * Returns: %TRUE to keep the item around 7275 */ 7276 public alias extern(C) int function(void* item, void* userData) GtkCustomFilterFunc; 7277 7278 /** 7279 * A function to be used by #GtkCustomLayout to measure a widget. 7280 * 7281 * Params: 7282 * widget = the widget to be measured 7283 * orientation = the direction to be measured 7284 * forSize = the size to be measured for 7285 * minimum = the measured minimum size of the widget 7286 * natural = the measured natural size of the widget 7287 * minimumBaseline = the measured minimum baseline of the widget 7288 * naturalBaseline = the measured natural baseline of the widget 7289 */ 7290 public alias extern(C) void function(GtkWidget* widget, GtkOrientation orientation, int forSize, int* minimum, int* natural, int* minimumBaseline, int* naturalBaseline) GtkCustomMeasureFunc; 7291 7292 /** 7293 * Queries a widget for its preferred size request mode. 7294 * 7295 * Params: 7296 * widget = the widget to be queried 7297 * 7298 * Returns: the size request mode 7299 */ 7300 public alias extern(C) GtkSizeRequestMode function(GtkWidget* widget) GtkCustomRequestModeFunc; 7301 7302 /** 7303 * Whenever @drawing_area needs to redraw, this function will be called. 7304 * 7305 * This function should exclusively redraw the contents of the drawing area 7306 * and must not call any widget functions that cause changes. 7307 * 7308 * Params: 7309 * drawingArea = the #GtkDrawingArea to redraw 7310 * cr = the context to draw to 7311 * width = the actual width of the contents. This value will be at least 7312 * as wide as GtkDrawingArea:width. 7313 * height = the actual height of the contents. This value will be at least 7314 * as wide as GtkDrawingArea:height. 7315 * userData = user data 7316 */ 7317 public alias extern(C) void function(GtkDrawingArea* drawingArea, cairo_t* cr, int width, int height, void* userData) GtkDrawingAreaDrawFunc; 7318 7319 /** 7320 * A function which decides whether the row indicated by @iter matches 7321 * a given @key, and should be displayed as a possible completion for @key. 7322 * 7323 * Note that @key is normalized and case-folded (see g_utf8_normalize() 7324 * and g_utf8_casefold()). If this is not appropriate, match functions 7325 * have access to the unmodified key via 7326 * `gtk_editable_get_text (GTK_EDITABLE (gtk_entry_completion_get_entry ()))`. 7327 * 7328 * Params: 7329 * completion = the #GtkEntryCompletion 7330 * key = the string to match, normalized and case-folded 7331 * iter = a #GtkTreeIter indicating the row to match 7332 * userData = user data given to gtk_entry_completion_set_match_func() 7333 * 7334 * Returns: %TRUE if @iter should be displayed as a possible completion 7335 * for @key 7336 */ 7337 public alias extern(C) int function(GtkEntryCompletion* completion, const(char)* key, GtkTreeIter* iter, void* userData) GtkEntryCompletionMatchFunc; 7338 7339 /** 7340 * Callback called by gtk_expression_watch() when the 7341 * expression value changes. 7342 * 7343 * Params: 7344 * userData = data passed to gtk_expression_watch() 7345 */ 7346 public alias extern(C) void function(void* userData) GtkExpressionNotify; 7347 7348 /** 7349 * Called for flow boxes that are bound to a `GListModel`. 7350 * 7351 * This function is called for each item that gets added to the model. 7352 * 7353 * Params: 7354 * item = the item from the model for which to create a widget for 7355 * userData = user data from gtk_flow_box_bind_model() 7356 * 7357 * Returns: a `GtkWidget` that represents @item 7358 */ 7359 public alias extern(C) GtkWidget* function(void* item, void* userData) GtkFlowBoxCreateWidgetFunc; 7360 7361 /** 7362 * A function that will be called whenever a child changes 7363 * or is added. 7364 * 7365 * It lets you control if the child should be visible or not. 7366 * 7367 * Params: 7368 * child = a `GtkFlowBoxChild` that may be filtered 7369 * userData = user data 7370 * 7371 * Returns: %TRUE if the row should be visible, %FALSE otherwise 7372 */ 7373 public alias extern(C) int function(GtkFlowBoxChild* child, void* userData) GtkFlowBoxFilterFunc; 7374 7375 /** 7376 * A function used by gtk_flow_box_selected_foreach(). 7377 * 7378 * It will be called on every selected child of the @box. 7379 * 7380 * Params: 7381 * box = a `GtkFlowBox` 7382 * child = a `GtkFlowBoxChild` 7383 * userData = user data 7384 */ 7385 public alias extern(C) void function(GtkFlowBox* box, GtkFlowBoxChild* child, void* userData) GtkFlowBoxForeachFunc; 7386 7387 /** 7388 * A function to compare two children to determine which 7389 * should come first. 7390 * 7391 * Params: 7392 * child1 = the first child 7393 * child2 = the second child 7394 * userData = user data 7395 * 7396 * Returns: < 0 if @child1 should be before @child2, 0 if 7397 * the are equal, and > 0 otherwise 7398 */ 7399 public alias extern(C) int function(GtkFlowBoxChild* child1, GtkFlowBoxChild* child2, void* userData) GtkFlowBoxSortFunc; 7400 7401 /** 7402 * The type of function that is used for deciding what fonts get 7403 * shown in a `GtkFontChooser`. 7404 * 7405 * See [method@Gtk.FontChooser.set_filter_func]. 7406 * 7407 * Params: 7408 * family = a #PangoFontFamily 7409 * face = a #PangoFontFace belonging to @family 7410 * data = user data passed to gtk_font_chooser_set_filter_func() 7411 * 7412 * Returns: %TRUE if the font should be displayed 7413 */ 7414 public alias extern(C) int function(PangoFontFamily* family, PangoFontFace* face, void* data) GtkFontFilterFunc; 7415 7416 /** 7417 * A function used by gtk_icon_view_selected_foreach() to map all 7418 * selected rows. 7419 * 7420 * It will be called on every selected row in the view. 7421 * 7422 * Params: 7423 * iconView = a #GtkIconView 7424 * path = The #GtkTreePath of a selected row 7425 * data = user data 7426 */ 7427 public alias extern(C) void function(GtkIconView* iconView, GtkTreePath* path, void* data) GtkIconViewForeachFunc; 7428 7429 /** 7430 * Called for list boxes that are bound to a `GListModel` with 7431 * gtk_list_box_bind_model() for each item that gets added to the model. 7432 * 7433 * Params: 7434 * item = the item from the model for which to create a widget for 7435 * userData = user data 7436 * 7437 * Returns: a `GtkWidget` that represents @item 7438 */ 7439 public alias extern(C) GtkWidget* function(void* item, void* userData) GtkListBoxCreateWidgetFunc; 7440 7441 /** 7442 * Will be called whenever the row changes or is added and lets you control 7443 * if the row should be visible or not. 7444 * 7445 * Params: 7446 * row = the row that may be filtered 7447 * userData = user data 7448 * 7449 * Returns: %TRUE if the row should be visible, %FALSE otherwise 7450 */ 7451 public alias extern(C) int function(GtkListBoxRow* row, void* userData) GtkListBoxFilterFunc; 7452 7453 /** 7454 * A function used by gtk_list_box_selected_foreach(). 7455 * 7456 * It will be called on every selected child of the @box. 7457 * 7458 * Params: 7459 * box = a `GtkListBox` 7460 * row = a `GtkListBoxRow` 7461 * userData = user data 7462 */ 7463 public alias extern(C) void function(GtkListBox* box, GtkListBoxRow* row, void* userData) GtkListBoxForeachFunc; 7464 7465 /** 7466 * Compare two rows to determine which should be first. 7467 * 7468 * Params: 7469 * row1 = the first row 7470 * row2 = the second row 7471 * userData = user data 7472 * 7473 * Returns: < 0 if @row1 should be before @row2, 0 if they are 7474 * equal and > 0 otherwise 7475 */ 7476 public alias extern(C) int function(GtkListBoxRow* row1, GtkListBoxRow* row2, void* userData) GtkListBoxSortFunc; 7477 7478 /** 7479 * Whenever @row changes or which row is before @row changes this 7480 * is called, which lets you update the header on @row. 7481 * 7482 * You may remove or set a new one via [method@Gtk.ListBoxRow.set_header] 7483 * or just change the state of the current header widget. 7484 * 7485 * Params: 7486 * row = the row to update 7487 * before = the row before @row, or %NULL if it is first 7488 * userData = user data 7489 */ 7490 public alias extern(C) void function(GtkListBoxRow* row, GtkListBoxRow* before, void* userData) GtkListBoxUpdateHeaderFunc; 7491 7492 /** 7493 * User function that is called to map an @item of the original model to 7494 * an item expected by the map model. 7495 * 7496 * The returned items must conform to the item type of the model they are 7497 * used with. 7498 * 7499 * Params: 7500 * item = The item to map 7501 * userData = user data 7502 * 7503 * Returns: The item to map to. 7504 * This function may not return %NULL 7505 */ 7506 public alias extern(C) void* function(void* item, void* userData) GtkMapListModelMapFunc; 7507 7508 /** 7509 * User-provided callback function to create a popup for a 7510 * `GtkMenuButton` on demand. 7511 * 7512 * This function is called when the popup of @menu_button is shown, 7513 * but none has been provided via [method@Gtk.MenuButton.set_popover] 7514 * or [method@Gtk.MenuButton.set_menu_model]. 7515 * 7516 * Params: 7517 * menuButton = the #GtkMenuButton 7518 * userData = User data passed to gtk_menu_button_set_create_popup_func() 7519 */ 7520 public alias extern(C) void function(GtkMenuButton* menuButton, void* userData) GtkMenuButtonCreatePopupFunc; 7521 7522 /** 7523 * The type of function that is passed to 7524 * gtk_print_run_page_setup_dialog_async(). 7525 * 7526 * This function will be called when the page setup dialog 7527 * is dismissed, and also serves as destroy notify for @data. 7528 * 7529 * Params: 7530 * pageSetup = the #GtkPageSetup that has been passed to 7531 * gtk_print_run_page_setup_dialog_async() 7532 * data = user data that has been passed to 7533 * gtk_print_run_page_setup_dialog_async() 7534 */ 7535 public alias extern(C) void function(GtkPageSetup* pageSetup, void* data) GtkPageSetupDoneFunc; 7536 7537 /** 7538 * The type of callback that is passed to gtk_print_job_send(). 7539 * 7540 * It is called when the print job has been completely sent. 7541 * 7542 * Params: 7543 * printJob = the #GtkPrintJob 7544 * userData = user data that has been passed to gtk_print_job_send() 7545 * error = a #GError that contains error information if the sending 7546 * of the print job failed, otherwise %NULL 7547 */ 7548 public alias extern(C) void function(GtkPrintJob* printJob, void* userData, GError* error) GtkPrintJobCompleteFunc; 7549 7550 /** */ 7551 public alias extern(C) void function(const(char)* key, const(char)* value, void* userData) GtkPrintSettingsFunc; 7552 7553 /** 7554 * The type of function passed to gtk_enumerate_printers(). 7555 * 7556 * Note that you need to ref @printer, if you want to keep 7557 * a reference to it after the function has returned. 7558 * 7559 * Params: 7560 * printer = a #GtkPrinter 7561 * data = user data passed to gtk_enumerate_printers() 7562 * 7563 * Returns: %TRUE to stop the enumeration, %FALSE to continue 7564 */ 7565 public alias extern(C) int function(GtkPrinter* printer, void* data) GtkPrinterFunc; 7566 7567 /** 7568 * 7569 * Params: 7570 * scale = The #GtkScale 7571 * value = The numeric value to format 7572 * userData = user data 7573 * Returns: A newly allocated string describing a textual representation 7574 * of the given numerical value. 7575 */ 7576 public alias extern(C) char* function(GtkScale* scale, double value, void* userData) GtkScaleFormatValueFunc; 7577 7578 /** 7579 * Prototype for shortcuts based on user callbacks. 7580 * 7581 * Params: 7582 * widget = The widget passed to the activation 7583 * args = The arguments passed to the activation 7584 * userData = The user data provided when activating the action 7585 */ 7586 public alias extern(C) int function(GtkWidget* widget, GVariant* args, void* userData) GtkShortcutFunc; 7587 7588 /** 7589 * The predicate function used by gtk_text_iter_forward_find_char() and 7590 * gtk_text_iter_backward_find_char(). 7591 * 7592 * Params: 7593 * ch = a Unicode code point 7594 * userData = data passed to the callback 7595 * 7596 * Returns: %TRUE if the predicate is satisfied, and the iteration should 7597 * stop, and %FALSE otherwise 7598 */ 7599 public alias extern(C) int function(dchar ch, void* userData) GtkTextCharPredicate; 7600 7601 /** 7602 * A function used with gtk_text_tag_table_foreach(), 7603 * to iterate over every `GtkTextTag` inside a `GtkTextTagTable`. 7604 * 7605 * Params: 7606 * tag = the `GtkTextTag` 7607 * data = data passed to gtk_text_tag_table_foreach() 7608 */ 7609 public alias extern(C) void function(GtkTextTag* tag, void* data) GtkTextTagTableForeach; 7610 7611 /** 7612 * Callback type for adding a function to update animations. See gtk_widget_add_tick_callback(). 7613 * 7614 * Params: 7615 * widget = the widget 7616 * frameClock = the frame clock for the widget (same as calling gtk_widget_get_frame_clock()) 7617 * userData = user data passed to gtk_widget_add_tick_callback(). 7618 * 7619 * Returns: %G_SOURCE_CONTINUE if the tick callback should continue to be called, 7620 * %G_SOURCE_REMOVE if the tick callback should be removed. 7621 */ 7622 public alias extern(C) int function(GtkWidget* widget, GdkFrameClock* frameClock, void* userData) GtkTickCallback; 7623 7624 /** 7625 * A function to set the properties of a cell instead of just using the 7626 * straight mapping between the cell and the model. 7627 * 7628 * This function is useful for customizing the cell renderer. For example, 7629 * a function might get an* integer from the @tree_model, and render it to 7630 * the “text” attribute of “cell” by converting it to its written equivalent. 7631 * 7632 * See also: gtk_tree_view_column_set_cell_data_func() 7633 * 7634 * Params: 7635 * treeColumn = A #GtkTreeViewColumn 7636 * cell = The #GtkCellRenderer that is being rendered by @tree_column 7637 * treeModel = The #GtkTreeModel being rendered 7638 * iter = A #GtkTreeIter of the current row rendered 7639 * data = user data 7640 */ 7641 public alias extern(C) void function(GtkTreeViewColumn* treeColumn, GtkCellRenderer* cell, GtkTreeModel* treeModel, GtkTreeIter* iter, void* data) GtkTreeCellDataFunc; 7642 7643 /** 7644 * A GtkTreeIterCompareFunc should return a negative integer, zero, or a positive 7645 * integer if @a sorts before @b, @a sorts with @b, or @a sorts after @b 7646 * respectively. 7647 * 7648 * If two iters compare as equal, their order in the sorted model 7649 * is undefined. In order to ensure that the #GtkTreeSortable behaves as 7650 * expected, the GtkTreeIterCompareFunc must define a partial order on 7651 * the model, i.e. it must be reflexive, antisymmetric and transitive. 7652 * 7653 * For example, if @model is a product catalogue, then a compare function 7654 * for the “price” column could be one which returns 7655 * `price_of(@a) - price_of(@b)`. 7656 * 7657 * Params: 7658 * model = The #GtkTreeModel the comparison is within 7659 * a = A #GtkTreeIter in @model 7660 * b = Another #GtkTreeIter in @model 7661 * userData = Data passed when the compare func is assigned e.g. by 7662 * gtk_tree_sortable_set_sort_func() 7663 * 7664 * Returns: a negative integer, zero or a positive integer depending on whether 7665 * @a sorts before, with or after @b 7666 */ 7667 public alias extern(C) int function(GtkTreeModel* model, GtkTreeIter* a, GtkTreeIter* b, void* userData) GtkTreeIterCompareFunc; 7668 7669 /** 7670 * Prototype of the function called to create new child models when 7671 * gtk_tree_list_row_set_expanded() is called. 7672 * 7673 * This function can return %NULL to indicate that @item is guaranteed to be 7674 * a leaf node and will never have children. 7675 * If it does not have children but may get children later, it should return 7676 * an empty model that is filled once children arrive. 7677 * 7678 * Params: 7679 * item = The item that is being expanded 7680 * userData = User data passed when registering the function 7681 * 7682 * Returns: The model tracking the children of @item or %NULL if 7683 * @item can never have children 7684 */ 7685 public alias extern(C) GListModel* function(void* item, void* userData) GtkTreeListModelCreateModelFunc; 7686 7687 /** 7688 * A function which calculates display values from raw values in the model. 7689 * It must fill @value with the display value for the column @column in the 7690 * row indicated by @iter. 7691 * 7692 * Since this function is called for each data access, it’s not a 7693 * particularly efficient operation. 7694 * 7695 * Params: 7696 * model = the #GtkTreeModelFilter 7697 * iter = a #GtkTreeIter pointing to the row whose display values are determined 7698 * value = A #GValue which is already initialized for 7699 * with the correct type for the column @column. 7700 * column = the column whose display value is determined 7701 * data = user data given to gtk_tree_model_filter_set_modify_func() 7702 */ 7703 public alias extern(C) void function(GtkTreeModel* model, GtkTreeIter* iter, GValue* value, int column, void* data) GtkTreeModelFilterModifyFunc; 7704 7705 /** 7706 * A function which decides whether the row indicated by @iter is visible. 7707 * 7708 * Params: 7709 * model = the child model of the #GtkTreeModelFilter 7710 * iter = a #GtkTreeIter pointing to the row in @model whose visibility 7711 * is determined 7712 * data = user data given to gtk_tree_model_filter_set_visible_func() 7713 * 7714 * Returns: Whether the row indicated by @iter is visible. 7715 */ 7716 public alias extern(C) int function(GtkTreeModel* model, GtkTreeIter* iter, void* data) GtkTreeModelFilterVisibleFunc; 7717 7718 /** 7719 * Type of the callback passed to gtk_tree_model_foreach() to 7720 * iterate over the rows in a tree model. 7721 * 7722 * Params: 7723 * model = the #GtkTreeModel being iterated 7724 * path = the current #GtkTreePath 7725 * iter = the current #GtkTreeIter 7726 * data = The user data passed to gtk_tree_model_foreach() 7727 * 7728 * Returns: %TRUE to stop iterating, %FALSE to continue 7729 */ 7730 public alias extern(C) int function(GtkTreeModel* model, GtkTreePath* path, GtkTreeIter* iter, void* data) GtkTreeModelForeachFunc; 7731 7732 /** 7733 * A function used by gtk_tree_selection_selected_foreach() to map all 7734 * selected rows. It will be called on every selected row in the view. 7735 * 7736 * Params: 7737 * model = The #GtkTreeModel being viewed 7738 * path = The #GtkTreePath of a selected row 7739 * iter = A #GtkTreeIter pointing to a selected row 7740 * data = user data 7741 */ 7742 public alias extern(C) void function(GtkTreeModel* model, GtkTreePath* path, GtkTreeIter* iter, void* data) GtkTreeSelectionForeachFunc; 7743 7744 /** 7745 * A function used by gtk_tree_selection_set_select_function() to filter 7746 * whether or not a row may be selected. It is called whenever a row's 7747 * state might change. 7748 * 7749 * A return value of %TRUE indicates to @selection that it is okay to 7750 * change the selection. 7751 * 7752 * Params: 7753 * selection = A #GtkTreeSelection 7754 * model = A #GtkTreeModel being viewed 7755 * path = The #GtkTreePath of the row in question 7756 * pathCurrentlySelected = %TRUE, if the path is currently selected 7757 * data = user data 7758 * 7759 * Returns: %TRUE, if the selection state of the row can be toggled 7760 */ 7761 public alias extern(C) int function(GtkTreeSelection* selection, GtkTreeModel* model, GtkTreePath* path, int pathCurrentlySelected, void* data) GtkTreeSelectionFunc; 7762 7763 /** 7764 * Function type for determining whether @column can be dropped in a 7765 * particular spot (as determined by @prev_column and @next_column). In 7766 * left to right locales, @prev_column is on the left of the potential drop 7767 * spot, and @next_column is on the right. In right to left mode, this is 7768 * reversed. This function should return %TRUE if the spot is a valid drop 7769 * spot. Please note that returning %TRUE does not actually indicate that 7770 * the column drop was made, but is meant only to indicate a possible drop 7771 * spot to the user. 7772 * 7773 * Params: 7774 * treeView = A #GtkTreeView 7775 * column = The #GtkTreeViewColumn being dragged 7776 * prevColumn = A #GtkTreeViewColumn on one side of @column 7777 * nextColumn = A #GtkTreeViewColumn on the other side of @column 7778 * data = user data 7779 * 7780 * Returns: %TRUE, if @column can be dropped in this spot 7781 */ 7782 public alias extern(C) int function(GtkTreeView* treeView, GtkTreeViewColumn* column, GtkTreeViewColumn* prevColumn, GtkTreeViewColumn* nextColumn, void* data) GtkTreeViewColumnDropFunc; 7783 7784 /** 7785 * Function used for gtk_tree_view_map_expanded_rows(). 7786 * 7787 * Params: 7788 * treeView = A #GtkTreeView 7789 * path = The path that’s expanded 7790 * userData = user data 7791 */ 7792 public alias extern(C) void function(GtkTreeView* treeView, GtkTreePath* path, void* userData) GtkTreeViewMappingFunc; 7793 7794 /** 7795 * Function type for determining whether the row pointed to by @iter should 7796 * be rendered as a separator. A common way to implement this is to have a 7797 * boolean column in the model, whose values the #GtkTreeViewRowSeparatorFunc 7798 * returns. 7799 * 7800 * Params: 7801 * model = the #GtkTreeModel 7802 * iter = a #GtkTreeIter pointing at a row in @model 7803 * data = user data 7804 * 7805 * Returns: %TRUE if the row is a separator 7806 */ 7807 public alias extern(C) int function(GtkTreeModel* model, GtkTreeIter* iter, void* data) GtkTreeViewRowSeparatorFunc; 7808 7809 /** 7810 * A function used for checking whether a row in @model matches 7811 * a search key string entered by the user. Note the return value 7812 * is reversed from what you would normally expect, though it 7813 * has some similarity to strcmp() returning 0 for equal strings. 7814 * 7815 * Params: 7816 * model = the #GtkTreeModel being searched 7817 * column = the search column set by gtk_tree_view_set_search_column() 7818 * key = the key string to compare with 7819 * iter = a #GtkTreeIter pointing the row of @model that should be compared 7820 * with @key. 7821 * searchData = user data from gtk_tree_view_set_search_equal_func() 7822 * 7823 * Returns: %FALSE if the row matches, %TRUE otherwise. 7824 */ 7825 public alias extern(C) int function(GtkTreeModel* model, int column, const(char)* key, GtkTreeIter* iter, void* searchData) GtkTreeViewSearchEqualFunc; 7826 7827 /** 7828 * The type of the callback functions used for activating 7829 * actions installed with gtk_widget_class_install_action(). 7830 * 7831 * The @parameter must match the @parameter_type of the action. 7832 * 7833 * Params: 7834 * widget = the widget to which the action belongs 7835 * actionName = the action name 7836 * parameter = parameter for activation 7837 */ 7838 public alias extern(C) void function(GtkWidget* widget, const(char)* actionName, GVariant* parameter) GtkWidgetActionActivateFunc; 7839 7840 /** 7841 * An undefined value. The accessible attribute is either unset, or its 7842 * value is undefined. 7843 */ 7844 enum ACCESSIBLE_VALUE_UNDEFINED = -1; 7845 alias GTK_ACCESSIBLE_VALUE_UNDEFINED = ACCESSIBLE_VALUE_UNDEFINED; 7846 7847 /** 7848 * Like gtk_get_binary_age(), but from the headers used at 7849 * application compile time, rather than from the library linked 7850 * against at application run time. 7851 */ 7852 enum BINARY_AGE = 201; 7853 alias GTK_BINARY_AGE = BINARY_AGE; 7854 7855 enum IM_MODULE_EXTENSION_POINT_NAME = "gtk-im-module"; 7856 alias GTK_IM_MODULE_EXTENSION_POINT_NAME = IM_MODULE_EXTENSION_POINT_NAME; 7857 7858 /** 7859 * Constant to return from a signal handler for the ::input 7860 * signal in case of conversion failure. 7861 * 7862 * See [signal@Gtk.SpinButton::input]. 7863 */ 7864 enum INPUT_ERROR = -1; 7865 alias GTK_INPUT_ERROR = INPUT_ERROR; 7866 7867 /** 7868 * Like gtk_get_interface_age(), but from the headers used at 7869 * application compile time, rather than from the library linked 7870 * against at application run time. 7871 */ 7872 enum INTERFACE_AGE = 1; 7873 alias GTK_INTERFACE_AGE = INTERFACE_AGE; 7874 7875 /** 7876 * The name used for the stock full offset included by #GtkLevelBar. 7877 */ 7878 enum LEVEL_BAR_OFFSET_FULL = "full"; 7879 alias GTK_LEVEL_BAR_OFFSET_FULL = LEVEL_BAR_OFFSET_FULL; 7880 7881 /** 7882 * The name used for the stock high offset included by #GtkLevelBar. 7883 */ 7884 enum LEVEL_BAR_OFFSET_HIGH = "high"; 7885 alias GTK_LEVEL_BAR_OFFSET_HIGH = LEVEL_BAR_OFFSET_HIGH; 7886 7887 /** 7888 * The name used for the stock low offset included by #GtkLevelBar. 7889 */ 7890 enum LEVEL_BAR_OFFSET_LOW = "low"; 7891 alias GTK_LEVEL_BAR_OFFSET_LOW = LEVEL_BAR_OFFSET_LOW; 7892 7893 /** 7894 * Like gtk_get_major_version(), but from the headers used at 7895 * application compile time, rather than from the library linked 7896 * against at application run time. 7897 */ 7898 enum MAJOR_VERSION = 4; 7899 alias GTK_MAJOR_VERSION = MAJOR_VERSION; 7900 7901 enum MAX_COMPOSE_LEN = 7; 7902 alias GTK_MAX_COMPOSE_LEN = MAX_COMPOSE_LEN; 7903 7904 enum MEDIA_FILE_EXTENSION_POINT_NAME = "gtk-media-file"; 7905 alias GTK_MEDIA_FILE_EXTENSION_POINT_NAME = MEDIA_FILE_EXTENSION_POINT_NAME; 7906 7907 /** 7908 * Like gtk_get_micro_version(), but from the headers used at 7909 * application compile time, rather than from the library linked 7910 * against at application run time. 7911 */ 7912 enum MICRO_VERSION = 1; 7913 alias GTK_MICRO_VERSION = MICRO_VERSION; 7914 7915 /** 7916 * Like gtk_get_minor_version(), but from the headers used at 7917 * application compile time, rather than from the library linked 7918 * against at application run time. 7919 */ 7920 enum MINOR_VERSION = 2; 7921 alias GTK_MINOR_VERSION = MINOR_VERSION; 7922 7923 /** 7924 * Name for the A3 paper size. 7925 */ 7926 enum PAPER_NAME_A3 = "iso_a3"; 7927 alias GTK_PAPER_NAME_A3 = PAPER_NAME_A3; 7928 7929 /** 7930 * Name for the A4 paper size. 7931 */ 7932 enum PAPER_NAME_A4 = "iso_a4"; 7933 alias GTK_PAPER_NAME_A4 = PAPER_NAME_A4; 7934 7935 /** 7936 * Name for the A5 paper size. 7937 */ 7938 enum PAPER_NAME_A5 = "iso_a5"; 7939 alias GTK_PAPER_NAME_A5 = PAPER_NAME_A5; 7940 7941 /** 7942 * Name for the B5 paper size. 7943 */ 7944 enum PAPER_NAME_B5 = "iso_b5"; 7945 alias GTK_PAPER_NAME_B5 = PAPER_NAME_B5; 7946 7947 /** 7948 * Name for the Executive paper size. 7949 */ 7950 enum PAPER_NAME_EXECUTIVE = "na_executive"; 7951 alias GTK_PAPER_NAME_EXECUTIVE = PAPER_NAME_EXECUTIVE; 7952 7953 /** 7954 * Name for the Legal paper size. 7955 */ 7956 enum PAPER_NAME_LEGAL = "na_legal"; 7957 alias GTK_PAPER_NAME_LEGAL = PAPER_NAME_LEGAL; 7958 7959 /** 7960 * Name for the Letter paper size. 7961 */ 7962 enum PAPER_NAME_LETTER = "na_letter"; 7963 alias GTK_PAPER_NAME_LETTER = PAPER_NAME_LETTER; 7964 7965 enum PRINT_SETTINGS_COLLATE = "collate"; 7966 alias GTK_PRINT_SETTINGS_COLLATE = PRINT_SETTINGS_COLLATE; 7967 7968 enum PRINT_SETTINGS_DEFAULT_SOURCE = "default-source"; 7969 alias GTK_PRINT_SETTINGS_DEFAULT_SOURCE = PRINT_SETTINGS_DEFAULT_SOURCE; 7970 7971 enum PRINT_SETTINGS_DITHER = "dither"; 7972 alias GTK_PRINT_SETTINGS_DITHER = PRINT_SETTINGS_DITHER; 7973 7974 enum PRINT_SETTINGS_DUPLEX = "duplex"; 7975 alias GTK_PRINT_SETTINGS_DUPLEX = PRINT_SETTINGS_DUPLEX; 7976 7977 enum PRINT_SETTINGS_FINISHINGS = "finishings"; 7978 alias GTK_PRINT_SETTINGS_FINISHINGS = PRINT_SETTINGS_FINISHINGS; 7979 7980 enum PRINT_SETTINGS_MEDIA_TYPE = "media-type"; 7981 alias GTK_PRINT_SETTINGS_MEDIA_TYPE = PRINT_SETTINGS_MEDIA_TYPE; 7982 7983 enum PRINT_SETTINGS_NUMBER_UP = "number-up"; 7984 alias GTK_PRINT_SETTINGS_NUMBER_UP = PRINT_SETTINGS_NUMBER_UP; 7985 7986 enum PRINT_SETTINGS_NUMBER_UP_LAYOUT = "number-up-layout"; 7987 alias GTK_PRINT_SETTINGS_NUMBER_UP_LAYOUT = PRINT_SETTINGS_NUMBER_UP_LAYOUT; 7988 7989 enum PRINT_SETTINGS_N_COPIES = "n-copies"; 7990 alias GTK_PRINT_SETTINGS_N_COPIES = PRINT_SETTINGS_N_COPIES; 7991 7992 enum PRINT_SETTINGS_ORIENTATION = "orientation"; 7993 alias GTK_PRINT_SETTINGS_ORIENTATION = PRINT_SETTINGS_ORIENTATION; 7994 7995 /** 7996 * The key used by the “Print to file” printer to store the file 7997 * name of the output without the path to the directory and the 7998 * file extension. 7999 */ 8000 enum PRINT_SETTINGS_OUTPUT_BASENAME = "output-basename"; 8001 alias GTK_PRINT_SETTINGS_OUTPUT_BASENAME = PRINT_SETTINGS_OUTPUT_BASENAME; 8002 8003 enum PRINT_SETTINGS_OUTPUT_BIN = "output-bin"; 8004 alias GTK_PRINT_SETTINGS_OUTPUT_BIN = PRINT_SETTINGS_OUTPUT_BIN; 8005 8006 /** 8007 * The key used by the “Print to file” printer to store the 8008 * directory to which the output should be written. 8009 */ 8010 enum PRINT_SETTINGS_OUTPUT_DIR = "output-dir"; 8011 alias GTK_PRINT_SETTINGS_OUTPUT_DIR = PRINT_SETTINGS_OUTPUT_DIR; 8012 8013 /** 8014 * The key used by the “Print to file” printer to store the format 8015 * of the output. The supported values are “PS” and “PDF”. 8016 */ 8017 enum PRINT_SETTINGS_OUTPUT_FILE_FORMAT = "output-file-format"; 8018 alias GTK_PRINT_SETTINGS_OUTPUT_FILE_FORMAT = PRINT_SETTINGS_OUTPUT_FILE_FORMAT; 8019 8020 /** 8021 * The key used by the “Print to file” printer to store the URI 8022 * to which the output should be written. GTK itself supports 8023 * only “file://” URIs. 8024 */ 8025 enum PRINT_SETTINGS_OUTPUT_URI = "output-uri"; 8026 alias GTK_PRINT_SETTINGS_OUTPUT_URI = PRINT_SETTINGS_OUTPUT_URI; 8027 8028 enum PRINT_SETTINGS_PAGE_RANGES = "page-ranges"; 8029 alias GTK_PRINT_SETTINGS_PAGE_RANGES = PRINT_SETTINGS_PAGE_RANGES; 8030 8031 enum PRINT_SETTINGS_PAGE_SET = "page-set"; 8032 alias GTK_PRINT_SETTINGS_PAGE_SET = PRINT_SETTINGS_PAGE_SET; 8033 8034 enum PRINT_SETTINGS_PAPER_FORMAT = "paper-format"; 8035 alias GTK_PRINT_SETTINGS_PAPER_FORMAT = PRINT_SETTINGS_PAPER_FORMAT; 8036 8037 enum PRINT_SETTINGS_PAPER_HEIGHT = "paper-height"; 8038 alias GTK_PRINT_SETTINGS_PAPER_HEIGHT = PRINT_SETTINGS_PAPER_HEIGHT; 8039 8040 enum PRINT_SETTINGS_PAPER_WIDTH = "paper-width"; 8041 alias GTK_PRINT_SETTINGS_PAPER_WIDTH = PRINT_SETTINGS_PAPER_WIDTH; 8042 8043 enum PRINT_SETTINGS_PRINTER = "printer"; 8044 alias GTK_PRINT_SETTINGS_PRINTER = PRINT_SETTINGS_PRINTER; 8045 8046 enum PRINT_SETTINGS_PRINTER_LPI = "printer-lpi"; 8047 alias GTK_PRINT_SETTINGS_PRINTER_LPI = PRINT_SETTINGS_PRINTER_LPI; 8048 8049 enum PRINT_SETTINGS_PRINT_PAGES = "print-pages"; 8050 alias GTK_PRINT_SETTINGS_PRINT_PAGES = PRINT_SETTINGS_PRINT_PAGES; 8051 8052 enum PRINT_SETTINGS_QUALITY = "quality"; 8053 alias GTK_PRINT_SETTINGS_QUALITY = PRINT_SETTINGS_QUALITY; 8054 8055 enum PRINT_SETTINGS_RESOLUTION = "resolution"; 8056 alias GTK_PRINT_SETTINGS_RESOLUTION = PRINT_SETTINGS_RESOLUTION; 8057 8058 enum PRINT_SETTINGS_RESOLUTION_X = "resolution-x"; 8059 alias GTK_PRINT_SETTINGS_RESOLUTION_X = PRINT_SETTINGS_RESOLUTION_X; 8060 8061 enum PRINT_SETTINGS_RESOLUTION_Y = "resolution-y"; 8062 alias GTK_PRINT_SETTINGS_RESOLUTION_Y = PRINT_SETTINGS_RESOLUTION_Y; 8063 8064 enum PRINT_SETTINGS_REVERSE = "reverse"; 8065 alias GTK_PRINT_SETTINGS_REVERSE = PRINT_SETTINGS_REVERSE; 8066 8067 enum PRINT_SETTINGS_SCALE = "scale"; 8068 alias GTK_PRINT_SETTINGS_SCALE = PRINT_SETTINGS_SCALE; 8069 8070 enum PRINT_SETTINGS_USE_COLOR = "use-color"; 8071 alias GTK_PRINT_SETTINGS_USE_COLOR = PRINT_SETTINGS_USE_COLOR; 8072 8073 enum PRINT_SETTINGS_WIN32_DRIVER_EXTRA = "win32-driver-extra"; 8074 alias GTK_PRINT_SETTINGS_WIN32_DRIVER_EXTRA = PRINT_SETTINGS_WIN32_DRIVER_EXTRA; 8075 8076 enum PRINT_SETTINGS_WIN32_DRIVER_VERSION = "win32-driver-version"; 8077 alias GTK_PRINT_SETTINGS_WIN32_DRIVER_VERSION = PRINT_SETTINGS_WIN32_DRIVER_VERSION; 8078 8079 /** 8080 * Use this priority for functionality related to size allocation. 8081 * 8082 * It is used internally by GTK+ to compute the sizes of widgets. 8083 * This priority is higher than %GDK_PRIORITY_REDRAW to avoid 8084 * resizing a widget which was just redrawn. 8085 */ 8086 enum PRIORITY_RESIZE = 110; 8087 alias GTK_PRIORITY_RESIZE = PRIORITY_RESIZE; 8088 8089 /** 8090 * A priority that can be used when adding a `GtkStyleProvider` 8091 * for application-specific style information. 8092 */ 8093 enum STYLE_PROVIDER_PRIORITY_APPLICATION = 600; 8094 alias GTK_STYLE_PROVIDER_PRIORITY_APPLICATION = STYLE_PROVIDER_PRIORITY_APPLICATION; 8095 8096 /** 8097 * The priority used for default style information 8098 * that is used in the absence of themes. 8099 * 8100 * Note that this is not very useful for providing default 8101 * styling for custom style classes - themes are likely to 8102 * override styling provided at this priority with 8103 * catch-all `* {...}` rules. 8104 */ 8105 enum STYLE_PROVIDER_PRIORITY_FALLBACK = 1; 8106 alias GTK_STYLE_PROVIDER_PRIORITY_FALLBACK = STYLE_PROVIDER_PRIORITY_FALLBACK; 8107 8108 /** 8109 * The priority used for style information provided 8110 * via `GtkSettings`. 8111 * 8112 * This priority is higher than #GTK_STYLE_PROVIDER_PRIORITY_THEME 8113 * to let settings override themes. 8114 */ 8115 enum STYLE_PROVIDER_PRIORITY_SETTINGS = 400; 8116 alias GTK_STYLE_PROVIDER_PRIORITY_SETTINGS = STYLE_PROVIDER_PRIORITY_SETTINGS; 8117 8118 /** 8119 * The priority used for style information provided 8120 * by themes. 8121 */ 8122 enum STYLE_PROVIDER_PRIORITY_THEME = 200; 8123 alias GTK_STYLE_PROVIDER_PRIORITY_THEME = STYLE_PROVIDER_PRIORITY_THEME; 8124 8125 /** 8126 * The priority used for the style information from 8127 * `$XDG_CONFIG_HOME/gtk-4.0/gtk.css`. 8128 * 8129 * You should not use priorities higher than this, to 8130 * give the user the last word. 8131 */ 8132 enum STYLE_PROVIDER_PRIORITY_USER = 800; 8133 alias GTK_STYLE_PROVIDER_PRIORITY_USER = STYLE_PROVIDER_PRIORITY_USER; 8134 8135 /** 8136 * The priority at which the text view validates onscreen lines 8137 * in an idle job in the background. 8138 */ 8139 enum TEXT_VIEW_PRIORITY_VALIDATE = 125; 8140 alias GTK_TEXT_VIEW_PRIORITY_VALIDATE = TEXT_VIEW_PRIORITY_VALIDATE; 8141 8142 /** 8143 * Uses the default sort function in a [interface@Gtk.TreeSortable]. 8144 * 8145 * See also: [method@Gtk.TreeSortable.set_sort_column_id] 8146 */ 8147 enum TREE_SORTABLE_DEFAULT_SORT_COLUMN_ID = -1; 8148 alias GTK_TREE_SORTABLE_DEFAULT_SORT_COLUMN_ID = TREE_SORTABLE_DEFAULT_SORT_COLUMN_ID; 8149 8150 /** 8151 * Disables sorting in a [interface@Gtk.TreeSortable]. 8152 * 8153 * See also: [method@Gtk.TreeSortable.set_sort_column_id] 8154 */ 8155 enum TREE_SORTABLE_UNSORTED_SORT_COLUMN_ID = -2; 8156 alias GTK_TREE_SORTABLE_UNSORTED_SORT_COLUMN_ID = TREE_SORTABLE_UNSORTED_SORT_COLUMN_ID;