1. ----------------------------------------------------------------------- 
  2. --               GtkAda - Ada95 binding for Gtk+/Gnome               -- 
  3. --                                                                   -- 
  4. --   Copyright (C) 1998-2000 E. Briot, J. Brobecker and A. Charlet   -- 
  5. --                Copyright (C) 2000-2010, AdaCore                   -- 
  6. --                                                                   -- 
  7. -- This library is free software; you can redistribute it and/or     -- 
  8. -- modify it under the terms of the GNU General Public               -- 
  9. -- License as published by the Free Software Foundation; either      -- 
  10. -- version 2 of the License, or (at your option) any later version.  -- 
  11. --                                                                   -- 
  12. -- This library is distributed in the hope that it will be useful,   -- 
  13. -- but WITHOUT ANY WARRANTY; without even the implied warranty of    -- 
  14. -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU -- 
  15. -- General Public License for more details.                          -- 
  16. --                                                                   -- 
  17. -- You should have received a copy of the GNU General Public         -- 
  18. -- License along with this library; if not, write to the             -- 
  19. -- Free Software Foundation, Inc., 59 Temple Place - Suite 330,      -- 
  20. -- Boston, MA 02111-1307, USA.                                       -- 
  21. --                                                                   -- 
  22. -- -- -- -- -- -- -- -- -- -- -- --
  23. ----------------------------------------------------------------------- 
  24.  
  25. --  <description> 
  26. --  A toolbar groups a number of items (buttons, combo boxes,...), generally 
  27. --  at the top of the application window, just below the menu bar. It provides 
  28. --  quick access to the most commonly used features of your application. 
  29. --  It is common for an application to have multiple toolbars. 
  30. --  </description> 
  31. --  <c_version>2.8.17</c_version> 
  32. --  <group>Menus and Toolbars</group> 
  33. --  <testgtk>create_toolbar.adb</testgtk> 
  34. --  <screenshot>gtk-toolbar</screenshot> 
  35.  
  36. with Glib; 
  37. with Glib.Properties; 
  38. with Gtk.Button; 
  39. with Gtk.Container; 
  40. with Gtk.Enums; use Gtk.Enums; 
  41. with Gtk.Tool_Item; 
  42. with Gtk.Widget; 
  43.  
  44. package Gtk.Toolbar is 
  45.  
  46.    type Gtk_Toolbar_Record is new 
  47.      Gtk.Container.Gtk_Container_Record with private; 
  48.    type Gtk_Toolbar is access all Gtk_Toolbar_Record'Class; 
  49.  
  50.    procedure Gtk_New (Widget : out Gtk_Toolbar); 
  51.    procedure Initialize (Widget : access Gtk_Toolbar_Record'Class); 
  52.    --  Create or initialize a new toolbar 
  53.  
  54.    function Get_Type return Glib.GType; 
  55.    --  Return the internal value associated with a Gtk_Toolbar. 
  56.  
  57.    ----------- 
  58.    -- Items -- 
  59.    ----------- 
  60.  
  61.    procedure Insert 
  62.      (Toolbar : access Gtk_Toolbar_Record; 
  63.       Item    : access Gtk.Tool_Item.Gtk_Tool_Item_Record'Class; 
  64.       Pos     : Gint := -1); 
  65.    --  Insert a new item anywhere in the toolbar. 
  66.    --  If Pos is negative, the item is inserted at the end. 
  67.    --  If Pos is 0, the item is inserted first in the toolbar 
  68.  
  69.    function Get_Item_Index 
  70.      (Toolbar : access Gtk_Toolbar_Record; 
  71.       Item    : access Gtk.Tool_Item.Gtk_Tool_Item_Record'Class) 
  72.       return Gint; 
  73.    --  Get the position of Item within the toolbar 
  74.  
  75.    function Get_N_Items 
  76.      (Toolbar : access Gtk_Toolbar_Record) return Gint; 
  77.    --  Return the number of items in the toolbar 
  78.  
  79.    function Get_Nth_Item 
  80.      (Toolbar : access Gtk_Toolbar_Record; 
  81.       N       : Gint) 
  82.       return Gtk.Tool_Item.Gtk_Tool_Item; 
  83.    --  Return the n-th item in the toolbar 
  84.  
  85.    procedure Set_Drop_Highlight_Item 
  86.      (Toolbar   : access Gtk_Toolbar_Record; 
  87.       Tool_Item : access Gtk.Tool_Item.Gtk_Tool_Item_Record'Class; 
  88.       Index     : Gint); 
  89.    --  Highlights Toolbar to give an idea of what it would look like 
  90.    --  if Item was added at the position indicated by Index. 
  91.    --  If Item is %NULL, highlighting is turned off. In that case Index is 
  92.    --  ignored. 
  93.    -- 
  94.    --  The item passed to this function must not be part of any widget 
  95.    --  hierarchy. When an item is set as drop highlight item it can not 
  96.    --  be added to any widget hierarchy or used as highlight item for another 
  97.    --  toolbar. 
  98.  
  99.    --------------------- 
  100.    -- Style functions -- 
  101.    --------------------- 
  102.  
  103.    procedure Set_Orientation 
  104.      (Toolbar     : access Gtk_Toolbar_Record; 
  105.       Orientation : Gtk_Orientation); 
  106.    function Get_Orientation 
  107.      (Toolbar : access Gtk_Toolbar_Record) return Gtk_Orientation; 
  108.    --  Set or get the orientation (horizontal, vertical) for the toolbar 
  109.  
  110.    procedure Set_Style 
  111.      (Toolbar : access Gtk_Toolbar_Record; 
  112.       Style   : Gtk_Toolbar_Style); 
  113.    function Get_Style 
  114.      (Toolbar : access Gtk_Toolbar_Record) return Gtk_Toolbar_Style; 
  115.    --  Set the style of the toolbar: text only, images only, or both 
  116.  
  117.    procedure Unset_Style (Toolbar : access Gtk_Toolbar_Record); 
  118.    --  Unsets a toolbar style set with Set_Style, so that user preferences 
  119.    --  will be used to determine the toolbar style. These user preferences are 
  120.    --  defined through the current gtk+ theme 
  121.  
  122.    procedure Set_Tooltips 
  123.      (Toolbar : access Gtk_Toolbar_Record; 
  124.       Enable  : Boolean); 
  125.    function Get_Tooltips 
  126.      (Toolbar : access Gtk_Toolbar_Record) return Boolean; 
  127.    --  Sets whether tooltips should be enabled for items in the toolbar 
  128.  
  129.    function Get_Relief_Style 
  130.      (Toolbar : access Gtk_Toolbar_Record) 
  131.       return Gtk_Relief_Style; 
  132.    --  Returns the relief style of buttons on Toolbar. See 
  133.    --  Gtk.Button.Set_Relief for more information on reliefs. 
  134.  
  135.    procedure Set_Show_Arrow 
  136.      (Toolbar    : access Gtk_Toolbar_Record; 
  137.       Show_Arrow : Boolean := True); 
  138.    function Get_Show_Arrow 
  139.      (Toolbar : access Gtk_Toolbar_Record) 
  140.       return Boolean; 
  141.    --  Sets or Gets whether to show an overflow arrow when the toolbar doesn't 
  142.    --  have room for all items on it. If True, the items that have no room are 
  143.    --  still available to the user. 
  144.  
  145.    function Get_Icon_Size 
  146.      (Toolbar : access Gtk_Toolbar_Record) return Gtk_Icon_Size; 
  147.    --  Returns the icon size used in this toolbar 
  148.  
  149.    ---------- 
  150.    -- Misc -- 
  151.    ---------- 
  152.  
  153.    function Get_Drop_Index 
  154.      (Toolbar : access Gtk_Toolbar_Record; 
  155.       X       : Gint; 
  156.       Y       : Gint) 
  157.       return Gint; 
  158.    --  Returns the position corresponding to the indicated point on 
  159.    --  Toolbar. This is useful when dragging items to the toolbar: 
  160.    --  this function returns the position a new item should be 
  161.    --  inserted. 
  162.    --  (X, Y) are the coordinates, in pixels, within the toolbar 
  163.  
  164.    ----------------- 
  165.    -- Obsolescent -- 
  166.    ----------------- 
  167.    --  All subprograms below are now obsolescent in gtk+. They might be removed 
  168.    --  from future versions of gtk+ (and therefore GtkAda). 
  169.    --  To find out whether your code uses any of these, we recommend compiling 
  170.    --  with the -gnatwj switch 
  171.    --  <doc_ignore> 
  172.  
  173.    procedure Gtk_New 
  174.      (Widget      : out Gtk_Toolbar; 
  175.       Orientation : Gtk_Orientation; 
  176.       Style       : Gtk_Toolbar_Style); 
  177.    pragma Obsolescent; 
  178.  
  179.    procedure Initialize 
  180.      (Widget      : access Gtk_Toolbar_Record'Class; 
  181.       Orientation : Gtk_Orientation; 
  182.       Style       : Gtk_Toolbar_Style); 
  183.    pragma Obsolescent; 
  184.  
  185.    type Gtk_Toolbar_Child_Type is 
  186.      (Toolbar_Child_Space, 
  187.       Toolbar_Child_Button, 
  188.       Toolbar_Child_Togglebutton, 
  189.       Toolbar_Child_Radiobutton, 
  190.       Toolbar_Child_Widget); 
  191.    --  This type used to be in Gtk.Enums, but is no longer used outside of the 
  192.    --  obsolescent subprograms in this package. We strongly encourage you to 
  193.    --  move your code to the new Insert API. 
  194.  
  195.    pragma Convention (C, Gtk_Toolbar_Child_Type); 
  196.  
  197.    function Append_Element 
  198.      (Toolbar              : access Gtk_Toolbar_Record; 
  199.       The_Type             : Gtk_Toolbar_Child_Type; 
  200.       Widget               : Gtk.Widget.Gtk_Widget := null; 
  201.       Text                 : UTF8_String := ""; 
  202.       Tooltip_Text         : UTF8_String := ""; 
  203.       Tooltip_Private_Text : UTF8_String := ""; 
  204.       Icon                 : Gtk.Widget.Gtk_Widget := null) 
  205.       return Gtk.Widget.Gtk_Widget; 
  206.    pragma Obsolescent ("Use Gtk.Toolbar.Insert instead"); --  Append_Element 
  207.  
  208.    function Prepend_Element 
  209.      (Toolbar              : access Gtk_Toolbar_Record; 
  210.       The_Type             : Gtk_Toolbar_Child_Type; 
  211.       Widget               : access Gtk.Widget.Gtk_Widget_Record'Class; 
  212.       Text                 : UTF8_String := ""; 
  213.       Tooltip_Text         : UTF8_String := ""; 
  214.       Tooltip_Private_Text : UTF8_String := ""; 
  215.       Icon                 : Gtk.Widget.Gtk_Widget := null) 
  216.       return Gtk.Widget.Gtk_Widget; 
  217.    pragma Obsolescent ("Use Gtk.Toolbar.Insert instead");  --  Prepend_Element 
  218.  
  219.    function Insert_Element 
  220.      (Toolbar              : access Gtk_Toolbar_Record; 
  221.       The_Type             : Gtk_Toolbar_Child_Type; 
  222.       Widget               : access Gtk.Widget.Gtk_Widget_Record'Class; 
  223.       Text                 : UTF8_String := ""; 
  224.       Tooltip_Text         : UTF8_String := ""; 
  225.       Tooltip_Private_Text : UTF8_String := ""; 
  226.       Icon                 : Gtk.Widget.Gtk_Widget := null; 
  227.       Position             : Gint) 
  228.       return Gtk.Widget.Gtk_Widget; 
  229.    pragma Obsolescent ("Use Gtk.Toolbar.Insert instead");  --  Insert_Element 
  230.  
  231.    function Append_Item 
  232.      (Toolbar              : access Gtk_Toolbar_Record; 
  233.       Text                 : UTF8_String := ""; 
  234.       Tooltip_Text         : UTF8_String := ""; 
  235.       Tooltip_Private_Text : UTF8_String := ""; 
  236.       Icon                 : Gtk.Widget.Gtk_Widget := null) 
  237.       return Gtk.Button.Gtk_Button; 
  238.    pragma Obsolescent ("Use Gtk.Toolbar.Insert instead");  --  Append_Item 
  239.  
  240.    function Prepend_Item 
  241.      (Toolbar              : access Gtk_Toolbar_Record; 
  242.       Text                 : UTF8_String := ""; 
  243.       Tooltip_Text         : UTF8_String := ""; 
  244.       Tooltip_Private_Text : UTF8_String := ""; 
  245.       Icon                 : Gtk.Widget.Gtk_Widget := null) 
  246.       return Gtk.Button.Gtk_Button; 
  247.    pragma Obsolescent ("Use Gtk.Toolbar.Insert instead");  --  Prepend_Item 
  248.  
  249.    function Insert_Item 
  250.      (Toolbar              : access Gtk_Toolbar_Record; 
  251.       Text                 : UTF8_String := ""; 
  252.       Tooltip_Text         : UTF8_String := ""; 
  253.       Tooltip_Private_Text : UTF8_String := ""; 
  254.       Icon                 : Gtk.Widget.Gtk_Widget := null; 
  255.       Position             : Gint) 
  256.       return Gtk.Button.Gtk_Button; 
  257.    pragma Obsolescent ("Use Gtk.Toolbar.Insert instead");  --  Insert_Item 
  258.  
  259.    function Insert_Stock 
  260.      (Toolbar              : access Gtk_Toolbar_Record; 
  261.       Stock_Id             : UTF8_String; 
  262.       Tooltip_Text         : UTF8_String := ""; 
  263.       Tooltip_Private_Text : UTF8_String := ""; 
  264.       Position             : Gint := -1) return Gtk.Button.Gtk_Button; 
  265.    pragma Obsolescent ("Use Gtk.Toolbar.Insert instead");  --  Insert_Stock 
  266.  
  267.    procedure Append_Space (Toolbar : access Gtk_Toolbar_Record); 
  268.    pragma Obsolescent ("Use Gtk.Toolbar.Insert instead");  --  Append_Space 
  269.  
  270.    procedure Prepend_Space (Toolbar : access Gtk_Toolbar_Record); 
  271.    pragma Obsolescent ("Use Gtk.Toolbar.Insert instead");  --  Prepend_Space 
  272.  
  273.    procedure Insert_Space 
  274.      (Toolbar : access Gtk_Toolbar_Record; Position : Gint); 
  275.    pragma Obsolescent ("Use Gtk.Toolbar.Insert instead");  --  Insert_Space 
  276.  
  277.    procedure Remove_Space 
  278.      (Toolbar : access Gtk_Toolbar_Record; Position : Gint); 
  279.    pragma Obsolescent ("Use Gtk.Toolbar.Insert instead");  --  Remove_Space 
  280.  
  281.    procedure Append_Widget 
  282.      (Toolbar              : access Gtk_Toolbar_Record; 
  283.       Widget               : access Gtk.Widget.Gtk_Widget_Record'Class; 
  284.       Tooltip_Text         : UTF8_String := ""; 
  285.       Tooltip_Private_Text : UTF8_String := ""); 
  286.    pragma Obsolescent ("Use Gtk.Toolbar.Insert instead");  --  Append_Widget 
  287.  
  288.    procedure Prepend_Widget 
  289.      (Toolbar              : access Gtk_Toolbar_Record; 
  290.       Widget               : access Gtk.Widget.Gtk_Widget_Record'Class; 
  291.       Tooltip_Text         : UTF8_String := ""; 
  292.       Tooltip_Private_Text : UTF8_String := ""); 
  293.    pragma Obsolescent ("Use Gtk.Toolbar.Insert instead");  --  Prepend_Widget 
  294.  
  295.    procedure Insert_Widget 
  296.      (Toolbar              : access Gtk_Toolbar_Record; 
  297.       Widget               : access Gtk.Widget.Gtk_Widget_Record'Class; 
  298.       Tooltip_Text         : UTF8_String := ""; 
  299.       Tooltip_Private_Text : UTF8_String := ""; 
  300.       Position             : Gint); 
  301.    pragma Obsolescent ("Use Gtk.Toolbar.Insert instead");  --  Insert_Widget 
  302.  
  303.    procedure Set_Icon_Size 
  304.      (Toolbar   : access Gtk_Toolbar_Record; 
  305.       Icon_Size : Gtk_Icon_Size); 
  306.    pragma Obsolescent  --  Set_Icon_Size 
  307.      ("Applications should respect user preferences (gtk+ themes)"); 
  308.  
  309.    procedure Unset_Icon_Size (Toolbar : access Gtk_Toolbar_Record); 
  310.    pragma Obsolescent;  --  Unset_Icon_Size 
  311.    --  Unsets icon sizes set through Set_Icon_Size, so that user preferences 
  312.    --  set through the gtk+ theme are used 
  313.  
  314.    --  </doc_ignore> 
  315.  
  316.    ---------------- 
  317.    -- Properties -- 
  318.    ---------------- 
  319.    --  The following properties are defined for this widget. See 
  320.    --  Glib.Properties for more information on properties. 
  321.  
  322.    --  <properties> 
  323.    --  Name: Orientation_Property 
  324.    --  Type: Gtk_Orientation 
  325.    --  See:  Set_Orientation / Get_Orientation 
  326.    -- 
  327.    --  Name: Toolbar_Style_Property 
  328.    --  Type: Gtk_Toolbar_Style 
  329.    --  See:  Set_Style / Get_Style 
  330.    -- 
  331.    --  Name: Show_Arrow_Property 
  332.    --  Type: Boolean 
  333.    --  See:  Set_Show_Arrow / Get_Show_Arrow 
  334.    -- 
  335.    --  Name: Tooltips_Property 
  336.    --  Type: Boolean 
  337.    --  See : Set_Tooltips / Get_Tooltips 
  338.    --  </properties> 
  339.  
  340.    Orientation_Property   : constant Gtk.Enums.Property_Gtk_Orientation; 
  341.    Toolbar_Style_Property : constant Gtk.Enums.Property_Gtk_Toolbar_Style; 
  342.    Show_Arrow_Property    : constant Glib.Properties.Property_Boolean; 
  343.    Tooltips_Property      : constant Glib.Properties.Property_Boolean; 
  344.  
  345.    ---------------------- 
  346.    -- Child Properties -- 
  347.    ---------------------- 
  348.    --  The following properties can be set on children of this widget. See 
  349.    --  in particular Gtk.Containers.Child_Set_Property. 
  350.  
  351.    --  <child_properties> 
  352.    --  Name:  Expand_Property 
  353.    --  Type:  Boolean 
  354.    --  Descr: Whether the item should receive extra space when the toolbar 
  355.    --        grows 
  356.    -- 
  357.    --  Name:  Homogeneous_Property 
  358.    --  Type:  Boolean 
  359.    --  Descr: Whether the item should be the same size as other homogeneous 
  360.    --        items 
  361.    --  </child_properties> 
  362.  
  363.    Expand_Property      : constant Glib.Properties.Property_Boolean; 
  364.    Homogeneous_Property : constant Glib.Properties.Property_Boolean; 
  365.  
  366.    ---------------------- 
  367.    -- Style Properties -- 
  368.    ---------------------- 
  369.    --  The following properties can be changed through the gtk theme and 
  370.    --  configuration files, and retrieved through Gtk.Widget.Style_Get_Property 
  371.  
  372.    --  <style_properties> 
  373.    --  Name:  Button_Relief_Property 
  374.    --  Type:  Enum 
  375.    --  Descr: Type of bevel around toolbar buttons 
  376.    -- 
  377.    --  Name:  Internal_Padding_Property 
  378.    --  Type:  Int 
  379.    --  Descr: Amount of border space between the toolbar shadow and the buttons 
  380.    -- 
  381.    --  Name:  Shadow_Type_Property 
  382.    --  Type:  Enum 
  383.    --  Descr: Style of bevel around the toolbar 
  384.    -- 
  385.    --  Name:  Space_Size_Property 
  386.    --  Type:  Int 
  387.    --  Descr: Size of spacers 
  388.    -- 
  389.    --  Name:  Space_Style_Property 
  390.    --  Type:  Enum 
  391.    --  Descr: Whether spacers are vertical lines or just blank 
  392.    --  </style_properties> 
  393.  
  394.    Button_Relief_Property    : constant Gtk.Enums.Property_Gtk_Relief_Style; 
  395.    Internal_Padding_Property : constant Glib.Properties.Property_Int; 
  396.    Shadow_Type_Property      : constant Gtk.Enums.Property_Gtk_Shadow_Type; 
  397.    Space_Size_Property       : constant Glib.Properties.Property_Int; 
  398.    Space_Style_Property      : constant Gtk.Enums.Property_Toolbar_Space_Style; 
  399.    Icon_Size_Property        : constant Gtk.Enums.Property_Gtk_Icon_Size; 
  400.  
  401.    ------------- 
  402.    -- Signals -- 
  403.    ------------- 
  404.  
  405.    --  <signals> 
  406.    --  The following new signals are defined for this widget: 
  407.    -- 
  408.    --  - "orientation-changed" 
  409.    --    procedure Handler 
  410.    --      (Toolbar     : access Gtk_Toolbar_Record'Class; 
  411.    --       Orientation : Gtk_Orientation); 
  412.    --    Emitted when the orientation of the toolbar changes 
  413.    -- 
  414.    --  - "style-changed" 
  415.    --    procedure Handler 
  416.    --      (Toolbar     : access Gtk_Toolbar_Record'Class; 
  417.    --       Style       : Gtk_Toolbar_Style); 
  418.    --    Emitted when the style of the toolbar changes 
  419.    -- 
  420.    --  - "popup_context_menu" 
  421.    --    function Handler 
  422.    --      (Toolbar      : access Gtk_Toolbar_Record'Class; 
  423.    --       X, Y, Button : Gint) return Boolean; 
  424.    --    Emitted when the user right-clicks the toolbar or uses the keybinding 
  425.    --    to display a popup menu. 
  426.    --    Application developers should handle this signal if they want to 
  427.    --    display a context menu on the toolbar. The context-menu should appear 
  428.    --    at the coordinates given by (x, y). The mouse button number is given 
  429.    --    by the Button parameter (set to -1 if popped up with the keyboard). 
  430.    --    Return value is True if the signal was handled. 
  431.    -- 
  432.    --  - "move_focus" 
  433.    --    This signal can't be used in application code, it is internal to GTK 
  434.    -- 
  435.    --  - "focus_home_or_end" 
  436.    --    function Handler 
  437.    --       (Toolbar    : access Gtk_Toolbar_Record'Class; 
  438.    --        Focus_Home : Boolean) return Boolean; 
  439.    --    A keybinding signal used internally by GTK+. This signal can't be used 
  440.    --    in application code 
  441.    -- 
  442.    --  </signals> 
  443.  
  444.    Signal_Orientation_Changed : constant Glib.Signal_Name := 
  445.                                   "orientation-changed"; 
  446.    Signal_Style_Changed       : constant Glib.Signal_Name := 
  447.                                   "style-changed"; 
  448.    Signal_Popup_Context_Menu  : constant Glib.Signal_Name := 
  449.                                   "popup_context_menu"; 
  450.    Signal_Focus_Home_Or_End   : constant Glib.Signal_Name := 
  451.                                   "focus_home_or_end"; 
  452.    Signal_Move_Focus          : constant Glib.Signal_Name := 
  453.                                   "move_focus"; 
  454.  
  455. private 
  456.    type Gtk_Toolbar_Record is 
  457.      new Gtk.Container.Gtk_Container_Record with null record; 
  458.  
  459.    Orientation_Property   : constant Gtk.Enums.Property_Gtk_Orientation := 
  460.      Gtk.Enums.Build ("orientation"); 
  461.    Toolbar_Style_Property : constant Gtk.Enums.Property_Gtk_Toolbar_Style := 
  462.      Gtk.Enums.Build ("toolbar-style"); 
  463.    Show_Arrow_Property    : constant Glib.Properties.Property_Boolean := 
  464.      Glib.Properties.Build ("show-arrow"); 
  465.    Tooltips_Property : constant Glib.Properties.Property_Boolean := 
  466.      Glib.Properties.Build ("tooltips"); 
  467.  
  468.    Expand_Property : constant Glib.Properties.Property_Boolean := 
  469.      Glib.Properties.Build ("expand"); 
  470.    Homogeneous_Property : constant Glib.Properties.Property_Boolean := 
  471.      Glib.Properties.Build ("homogeneous"); 
  472.  
  473.    Button_Relief_Property : constant Gtk.Enums.Property_Gtk_Relief_Style := 
  474.      Gtk.Enums.Build ("button-relief"); 
  475.    Internal_Padding_Property : constant Glib.Properties.Property_Int := 
  476.      Glib.Properties.Build ("internal-padding"); 
  477.    Shadow_Type_Property : constant Gtk.Enums.Property_Gtk_Shadow_Type := 
  478.      Gtk.Enums.Build ("shadow-type"); 
  479.    Icon_Size_Property : constant Gtk.Enums.Property_Gtk_Icon_Size := 
  480.      Gtk.Enums.Build ("icon-size"); 
  481.    Space_Size_Property : constant Glib.Properties.Property_Int := 
  482.      Glib.Properties.Build ("space-size"); 
  483.    Space_Style_Property : constant Gtk.Enums.Property_Toolbar_Space_Style := 
  484.      Gtk.Enums.Build ("space-style"); 
  485.  
  486.    pragma Import (C, Get_Type, "gtk_toolbar_get_type"); 
  487. end Gtk.Toolbar;