## Documentation

Table of Contents
Class Inheritance Tree
Widget Screenshots
Package groups

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-2013, 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.     -- As a special exception, if other files instantiate generics from  --

23.     -- this unit, or you link this unit with other files to produce an   --

24.     -- executable, this  unit  does not  by itself cause  the resulting  --

25.     -- executable to be covered by the GNU General Public License. This  --

26.     -- exception does not however invalidate any other reasons why the   --

27.     -- executable file  might be covered by the  GNU Public License.     --

28.     -----------------------------------------------------------------------

30.     --  <description>

31.     --  This package contains a number of types that are shared by several

32.     --  widgets in GtkAda.

33.     --  </description>

34.     --  <c_version>2.16.6</c_version>

36.     with GlibTo API docTo specTo body;

37.     with Glib.Generic_PropertiesTo API docTo specTo body;  use Glib.Generic_PropertiesTo API docTo specTo body;

38.     pragma Elaborate_All (Glib.Generic_PropertiesTo API docTo specTo body);

39.     with Glib.GlistTo API docTo specTo body, Glib.GSlistTo API docTo specTo body;

40.     pragma Elaborate_All (Glib.GlistTo API docTo specTo body);

41.     pragma Elaborate_All (Glib.GSlistTo API docTo specTo body);

43.     with System;

45.     package Gtk.EnumsTo API docTo specTo body is

47.        type Gtk_Anchor_Type is

48.          (Anchor_Center,

49.           Anchor_North,

50.           Anchor_North_West,

51.           Anchor_North_East,

52.           Anchor_South,

53.           Anchor_South_East,

54.           Anchor_South_West,

55.           Anchor_West,

56.           Anchor_East);

57.        --  Gtk_Anchor_Type indicates the exact location of the widget on its

58.        --  side. Note that not all anchors are relevant for each side.

59.        --

60.        --  For instance, if you put a widget on Side_Right, with an anchor of

61.        --  Anchor_North, Anchor_North_West or Anchor_North_East, the widget will

62.        --  in fact appear on the upper right side of the remaining space in the

63.        --  container.

64.        --

65.        --  Thus, if a previous child was added on Side_North, then the new child

66.        --  will only appear on the second line in the container. The order the

67.        --  children are inserted into the container is important.

69.        pragma Convention (C, Gtk_Anchor_TypeTo API docTo spec);

71.        Anchor_N  : Gtk_Anchor_TypeTo API docTo spec renames Anchor_North;

72.        Anchor_NW : Gtk_Anchor_TypeTo API docTo spec renames Anchor_North_West;

73.        Anchor_NE : Gtk_Anchor_TypeTo API docTo spec renames Anchor_North_East;

74.        Anchor_S  : Gtk_Anchor_TypeTo API docTo spec renames Anchor_South;

75.        Anchor_SW : Gtk_Anchor_TypeTo API docTo spec renames Anchor_South_West;

76.        Anchor_SE : Gtk_Anchor_TypeTo API docTo spec renames Anchor_South_East;

77.        Anchor_W  : Gtk_Anchor_TypeTo API docTo spec renames Anchor_West;

78.        Anchor_E  : Gtk_Anchor_TypeTo API docTo spec renames Anchor_East;

80.        type Gtk_Arrow_Type is

81.          (Arrow_Up,

82.           Arrow_Down,

83.           Arrow_Left,

84.           Arrow_Right);

85.        --  The various types of arrows that can be represented by GtkAda

87.        type Gtk_Attach_Options is new Glib.Guint32To API docTo spec;

88.        --  The various options used for attaching widgets to tables

90.        Expand : constant Gtk_Attach_OptionsTo API docTo spec := 1;

91.        Shrink : constant Gtk_Attach_OptionsTo API docTo spec := 2;

92.        Fill   : constant Gtk_Attach_OptionsTo API docTo spec := 4;

94.        type Gtk_Button_Box_Style is

95.          (Buttonbox_Default_Style,

96.           Buttonbox_Spread,

97.           Buttonbox_Edge,

98.           Buttonbox_Start,

99.           Buttonbox_End);

100.        --  The style for button boxes

101.        --  - Buttonbox_Spread: The children are spread regularly across the box

102.        --  - Buttonbox_Edge  : Same as Spread, except that the first and last

103.        --                      children are aligned on the border of the box.

104.        --  - Buttonbox_Start : The children are put as much to the left (resp. top)

105.        --                      as possible in the box.

106.        --  - Buttonbox_End   : The children are put as much to the right

107.        --                      (resp. bottom) as possible in the box.

109.        type Gtk_Curve_Type is

110.          (Curve_Type_Linear,       --  Linear interpolation

111.           Curve_Type_Spline,       --  Spline interpolation

112.           Curve_Type_Free);        --  Free form curve

113.        --  The curve types that can be used in gtk-curve.ads

115.        type Gtk_Delete_Type is

116.          (Delete_Chars,

117.           Delete_Word_Ends,

118.           Delete_Words,

119.           Delete_Display_Lines,

120.           Delete_Display_Line_Ends,

121.           Delete_Paragraph_Ends,

122.           Delete_Paragraphs,

123.           Delete_Whitespace);

124.        --  The deletion modes used in the text editor.

125.        --  Delete_Word_Ends will delete only the portion of the word to the

126.        --  left/right of the cursor if we are in the middle of a word.

127.        --  Delete_Paragraph_Ends acts like c-k in Emacs: it deletes the text until,

128.        --  but not including, the end of line.

129.        --  Delete_Paragraphs acts like c-k in pico: it deletes the whole line.

130.        --  Delete_Whitespace acts like M-\ in Emacs, and removes all white spaces

131.        --  surrounding the cursor.

133.        type Gtk_Direction_Type is

134.          (Dir_Tab_Forward,

135.           Dir_Tab_Backward,

136.           Dir_Up,

137.           Dir_Down,

138.           Dir_Left,

139.           Dir_Right);

140.        --  Focus movement types

142.        type Gtk_Expander_Style is

143.          (Expander_Collapsed,

144.           Expander_Semi_Collapsed,

145.           Expander_Semi_Expanded,

146.           Expander_Expanded);

147.        --  Expander styles, as seen in trees

149.        type Gtk_Icon_Size is new GintTo API docTo spec;

150.        Icon_Size_Invalid       : constant Gtk_Icon_SizeTo API docTo spec := 0;

151.        Icon_Size_Menu          : constant Gtk_Icon_SizeTo API docTo spec := 1;

152.        Icon_Size_Small_Toolbar : constant Gtk_Icon_SizeTo API docTo spec := 2;

153.        Icon_Size_Large_Toolbar : constant Gtk_Icon_SizeTo API docTo spec := 3;

154.        Icon_Size_Button        : constant Gtk_Icon_SizeTo API docTo spec := 4;

155.        Icon_Size_Dnd           : constant Gtk_Icon_SizeTo API docTo spec := 5;

156.        Icon_Size_Dialog        : constant Gtk_Icon_SizeTo API docTo spec := 6;

157.        --  Built-in stock icon sizes. Depending on the context, icons should be

158.        --  displayed larger or smaller (typically, icons in menus are much smaller

159.        --  than icons in toolbars for instance).

160.        --  New custom icon sizes can be created (see gtk-icon_factory.ads)

162.        type Gtk_Text_Direction is

163.          (Text_Dir_None,

164.           Text_Dir_Ltr,

165.           Text_Dir_Rtl);

166.        --  The directory in which text should be written (left to right or

167.        --  right to left).

169.        type Gtk_Justification is

170.          (Justify_Left,

171.           Justify_Right,

172.           Justify_Center,

173.           Justify_Fill);

174.        --  Within a paragraph, text can be justified in various ways: aligned on

175.        --  the left, aligned on the right, centered, or justified (in which case

176.        --  the width of the spaces might vary so that the text is aligned on both

177.        --  sides).

179.        type Gtk_Menu_Direction_Type is

180.          (Menu_Dir_Parent,

181.           Menu_Dir_Child,

182.           Menu_Dir_Next,

183.           Menu_Dir_Prev);

184.        --  Direction where to move the selection.

186.        type Gtk_Metric_Type is (Pixels, Inches, Centimeters);

187.        --  The unit to use when you display a ruler at the top of a drawing area.

189.        type Gtk_Movement_Step is

190.          (Movement_Logical_Positions, --  move by forw/back graphemes

191.           Movement_Visual_Positions,  --  move by left/right graphemes

192.           Movement_Words,             --  move by forward/back words

193.           Movement_Display_Lines,     --  move up/down lines (wrapped lines)

194.           Movement_Display_Line_Ends, --  move up/down lines (wrapped lines)

195.           Movement_Paragraphs,        --  move up/down paragraphs

196.           Movement_Paragraph_Ends,    --  move to either end of a paragraph

197.           Movement_Pages,             --  move by pages

198.           Movement_Buffer_Ends,       --  move to ends of the buffer

199.           Movement_Horizontal_Pages); --  move horizontally by pages

200.        --  The various kind of movements that can be performed within an editor.

201.        --  Gtk+ has builtin knowledge of all of the above.

202.        --  Note that a paragraph is defined as a new-line ended line.

204.        type Gtk_Number_Up_Layout is

205.          (Left_To_Right_Top_To_Bottom,   --  nick=lrtb

206.           Left_To_Right_Bottom_To_Top,   --  nick=lrbt

207.           Right_To_Left_Top_To_Bottom,   --  nick=rltb

208.           Right_To_Left_Bottom_To_Top,   --  nick=rlbt

209.           Top_To_Bottom_Left_To_Right,   --  nick=tblr

210.           Top_To_Bottom_Right_To_Left,   --  nick=tbrl

211.           Bottom_To_Top_Left_To_Right,   --  nick=btlr

212.           Bottom_To_Top_Right_To_Left);  --  nick=btrl

213.        --  Used to determine the layout of pages on a sheet when printing multiple

214.        --  pages per sheet.

216.        type Gtk_Scroll_Step is

217.          (Scroll_Steps,

218.           Scroll_Pages,

219.           Scroll_Ends,

220.           Scroll_Horizontal_Steps,

221.           Scroll_Horizontal_Pages,

222.           Scroll_Horizontal_Ends);

223.        --  The behavior of scrollbars for editors

225.        type Gtk_Orientation is (Orientation_Horizontal, Orientation_Vertical);

226.        --  Orientation of widgets. Most widgets have no such notion, but for

227.        --  instance toolbars can display different kind of information depending

228.        --  on their current orientation

230.        type Gtk_Page_Orientation is

231.          (Page_Orientation_Portrait,

232.           Page_Orientation_Landscape,

233.           Page_Orientation_Reverse_Portrait,

234.           Page_Orientation_Reverse_Landscape);

235.        --  Orientation of a printed page.

237.        type Gtk_Corner_Type is

238.          (Corner_Top_Left,

239.           Corner_Bottom_Left,

240.           Corner_Top_Right,

241.           Corner_Bottom_Right);

242.        --  Type used by Set_Placement below to determine the location of the

243.        --  child widget with respect to the scrollbars.

244.        --  Corner_Top_Left means the child is in the top left, with the scrollbars

245.        --  underneath and to the right.

247.        type Gtk_Grid_Lines is

248.          (Grid_Lines_None,

249.           Grid_Lines_Horizontal,

250.           Grid_Lines_Vertical,

251.           Grid_Lines_Both);

252.        --  Used to indicate which grid lines to draw in a tree view.

254.        type Gtk_Pack_Type is (Pack_Start, Pack_End);

255.        --  Whether items should be added at the start or at the end of the list of

256.        --  children for a widget. This impacts the visual rendering of containers

258.        type Gtk_Path_Priority_Type is mod 2 ** 32;

259.        --  Priorities for path lookups

261.        Path_Prio_Lowest      : constant Gtk_Path_Priority_TypeTo API docTo spec := 0;

262.        Path_Prio_Gtk         : constant Gtk_Path_Priority_TypeTo API docTo spec := 4;

263.        Path_Prio_Application : constant Gtk_Path_Priority_TypeTo API docTo spec := 8;

264.        Path_Prio_Theme       : constant Gtk_Path_Priority_TypeTo API docTo spec := 10;

265.        Path_Prio_RC          : constant Gtk_Path_Priority_TypeTo API docTo spec := 12;

266.        Path_Prio_Highest     : constant Gtk_Path_Priority_TypeTo API docTo spec := 15;

267.        Path_Prio_Mask        : constant Gtk_Path_Priority_TypeTo API docTo spec := 16#0f#;

269.        type Gtk_Path_Type is (Path_Widget, Path_Widget_Class, Path_Class);

270.        --  Widget path types

272.        type Gtk_Policy_Type is (Policy_Always, Policy_Automatic, Policy_Never);

273.        --  When should scrollbars be made visible in Gtk_Scrolled_Window

275.        type Gtk_Position_Type is

276.          (Pos_Left,

277.           Pos_Right,

278.           Pos_Top,

279.           Pos_Bottom);

280.        --  Use to define the position of children within a container

282.        type Gtk_Page_Set is

283.          (Page_Set_All,

284.           Page_Set_Even,

285.           Page_Set_Odd);

286.        --  The set of pages to print

288.        type Gtk_Print_Duplex is

289.          (Print_Duplex_Simplex,

290.           Print_Duplex_Horizontal,

291.           Print_Duplex_Vertical);

292.        --  Whether/how to print on both sides of a sheet.

294.        type Gtk_Print_Pages is

295.          (Print_Pages_All,

296.           Print_Pages_Current,

297.           Print_Pages_Ranges);

298.        --  Which pages to print.

300.        type Gtk_Print_Quality is

301.          (Print_Quality_Low,

302.           Print_Quality_Normal,

303.           Print_Quality_High,

304.           Print_Quality_Draft);

305.        --  Quality of printed output.

307.        type Gtk_Relief_Style is (Relief_Normal, Relief_Half, Relief_None);

308.        --  Explains how the border of widgets should be displayed

310.        type Gtk_Resize_Mode is

311.          (Resize_Parent,     --  Pass request to the parent

312.           Resize_Queue,      --  Queue resizes on this widget

313.           Resize_Immediate); --  Perform the resizes now

314.        --  The resizing of widgets is generally done asynchronously, for efficiency

315.        --  reasons. This can have some impact on the visual rendering of the widget

316.        --  which might be an issue in some cases.

317.        --  This type is only used when you are writting your own containers.

319.        type Gtk_Scroll_Type is

320.          (Scroll_None,

321.           Scroll_Jump,

322.           Scroll_Step_Backward,

323.           Scroll_Step_Forward,

324.           Scroll_Page_Backward,

325.           Scroll_Page_Forward,

326.           Scroll_Step_Up,

327.           Scroll_Step_Down,

328.           Scroll_Page_Up,

329.           Scroll_Page_Down,

330.           Scroll_Step_Left,

331.           Scroll_Step_Right,

332.           Scroll_Page_Left,

333.           Scroll_Page_Right,

334.           Scroll_Start,

335.           Scroll_End);

336.        --  How clists should be scrolled

338.        type Gtk_Selection_Mode is

339.          (Selection_None,

340.           Selection_Single,

341.           Selection_Browse,

342.           Selection_Multiple);

343.        --  Indicates what selection is allowed in a tree (no selection allowed, a

344.        --  single line, a single line when the mouse is released, or multiple

345.        --  lines).

347.        type Gtk_Sensitivity_Type is

348.          (Gtk_Sensitivity_Auto,

349.           Gtk_Sensitivity_On,

350.           Gtk_Sensitivity_Off);

351.        --  Determines how GTK+ handles the sensitivity of stepper arrows at

352.        --  the end of range widgets.

354.        type Gtk_Shadow_Type is

355.          (Shadow_None,

356.           Shadow_In,

357.           Shadow_Out,

358.           Shadow_Etched_In,

359.           Shadow_Etched_Out);

360.        --  The type of shadows that can be drawn around widgets

362.        type Gtk_State_Type is

363.          (State_Normal,

364.           State_Active,

365.           State_Prelight,

366.           State_Selected,

367.           State_Insensitive);

368.        --  Widgets can be in various states. This impacts their visual rendering,

369.        --  but can also impact whether they react to events or not (they do not

370.        --  when in State_Insensitive mode).

372.        type Gtk_Toolbar_Style is

373.          (Toolbar_Icons,

374.           Toolbar_Text,

375.           Toolbar_Both,

376.           Toolbar_Both_Horiz);

377.        --  The style of toolbars. Toolbar_Both_Horiz indicates that both icon and

378.        --  text should be displayed, arranged horizontally.

380.        type Gtk_Unit is (Pixel, Points, Inch, MM);

381.        --  Unit of distance measurement.

383.        type Gtk_Update_Type is

384.          (Update_Continuous,

385.           Update_Discontinuous,

386.           Update_Delayed);

387.        --  For some widgets, this indicates how often they should be updated

389.        type Gtk_Visibility is

390.          (Visibility_None,

391.           Visibility_Partial,

392.           Visibility_Full);

393.        --  Generic visibility flags. This indicate how visible a window currently

394.        --  is.

396.        type Gtk_Window_Position is

397.          (Win_Pos_None,

398.           Win_Pos_Center,

399.           Win_Pos_Mouse,

400.           Win_Pos_Center_Always,

401.           Win_Pos_Center_On_Parent);

402.        --  The position at which a new window should be initially displayed on the

403.        --  screen.

405.        type Gtk_Window_Type is

406.          (Window_Toplevel,

407.           Window_Popup);

408.        --  GtkAda supports multiple types of windows. They all act as top-level

409.        --  containers, but the amount of decoration is different. A popup window

410.        --  has no title bar for instance.

412.        type Gtk_Wrap_Mode is

413.          (Wrap_None,

414.           Wrap_Char,

415.           Wrap_Word,

416.           Wrap_Word_Char);

417.        --  Text wrapping algorithm. This indicates where a text widget is allowed

418.        --  to break its contents to display multiple lines when a line doesn't fit

419.        --  on the screen.

421.        type Gtk_Sort_Type is

422.          (Sort_Ascending,

423.           Sort_Descending);

424.        --  How to sort

426.        type Gtk_Pack_Direction is

427.          (Pack_Direction_LTR,

428.           Pack_Direction_RTL,

429.           Pack_Direction_TTB,

430.           Pack_Direction_BTT);

431.        --  The direction in which children should be packed in their parents

432.        --  (Left-to-Right, Right-To-Left, Top-To-Bottom or Bottom-To-Top)

434.        type Gtk_Text_Window_Type is

435.          (Text_Window_Private,

436.           Text_Window_Widget,

437.           Text_Window_Text,

438.           Text_Window_Left,

439.           Text_Window_Right,

440.           Text_Window_Top,

441.           Text_Window_Bottom);

442.        --  The various components of a Gtk.Text_View widget

444.        -------------------------------

445.        --  Some Glib instantiations --

446.        -------------------------------

448.        function ConvertTo API docTo body (S : String) return System.Address;

449.        function ConvertTo API docTo body (S : System.Address) return String;

450.        function Convert_ITo API docTo body (I : GintTo API docTo spec) return System.Address;

451.        function Convert_ATo API docTo body (S : System.Address) return GintTo API docTo spec;

452.        pragma Import (C, Convert_ITo API docTo spec, "convert_i");

453.        pragma Import (C, Convert_ATo API docTo spec, "convert_a");

455.        package String_List is new Glib.Glist.Generic_ListTo API docTo specTo body (UTF8_StringTo API docTo spec);

456.        package String_SList is new Glib.GSlist.Generic_SListTo API docTo specTo body (UTF8_StringTo API docTo spec);

457.        --  Warning: when you create this list, new memory gets allocated for

458.        --  all the strings. You should use the function Free_String_List

459.        --  instead of Glib.Glist.Free to be sure to free this memory.

461.        procedure Free_String_ListTo API docTo body (ListTo API docTo body : in out String_List.GlistTo API docTo specTo body);

462.        procedure Free_String_ListTo API docTo body (ListTo API docTo body : in out String_SList.GSlistTo API docTo specTo body);

463.        --  Free the memory occupied by all the strings in the list, as well

464.        --  as the memory occupied by the list itself.

466.        package Gint_List is new

467.          Glib.Glist.Generic_ListTo API docTo specTo body (GintTo API docTo spec, Convert_ITo API docTo specTo body, Convert_ATo API docTo specTo body);

469.        function Convert_UITo API docTo body (I : GuintTo API docTo spec) return System.Address;

470.        function Convert_UATo API docTo body (S : System.Address) return GuintTo API docTo spec;

471.        pragma Import (C, Convert_UITo API docTo spec, "convert_ui");

472.        pragma Import (C, Convert_UATo API docTo spec, "convert_ua");

473.        package Guint_List is new

474.          Glib.Glist.Generic_ListTo API docTo specTo body (GuintTo API docTo spec, Convert_UITo API docTo specTo body, Convert_UATo API docTo specTo body);

476.        pragma Convention (C, Gtk_Arrow_TypeTo API docTo spec);

477.        pragma Convention (C, Gtk_Button_Box_StyleTo API docTo spec);

478.        pragma Convention (C, Gtk_Curve_TypeTo API docTo spec);

479.        pragma Convention (C, Gtk_Delete_TypeTo API docTo spec);

480.        pragma Convention (C, Gtk_Direction_TypeTo API docTo spec);

481.        pragma Convention (C, Gtk_Grid_LinesTo API docTo spec);

482.        pragma Convention (C, Gtk_Path_TypeTo API docTo spec);

483.        pragma Convention (C, Gtk_Expander_StyleTo API docTo spec);

484.        pragma Convention (C, Gtk_Text_DirectionTo API docTo spec);

485.        pragma Convention (C, Gtk_JustificationTo API docTo spec);

486.        pragma Convention (C, Gtk_Menu_Direction_TypeTo API docTo spec);

487.        pragma Convention (C, Gtk_Metric_TypeTo API docTo spec);

488.        pragma Convention (C, Gtk_Movement_StepTo API docTo spec);

489.        pragma Convention (C, Gtk_Number_Up_LayoutTo API docTo spec);

490.        pragma Convention (C, Gtk_OrientationTo API docTo spec);

491.        pragma Convention (C, Gtk_Page_OrientationTo API docTo spec);

492.        pragma Convention (C, Gtk_Corner_TypeTo API docTo spec);

493.        pragma Convention (C, Gtk_Pack_TypeTo API docTo spec);

494.        pragma Convention (C, Gtk_Policy_TypeTo API docTo spec);

495.        pragma Convention (C, Gtk_Position_TypeTo API docTo spec);

496.        pragma Convention (C, Gtk_Page_SetTo API docTo spec);

497.        pragma Convention (C, Gtk_Print_DuplexTo API docTo spec);

498.        pragma Convention (C, Gtk_Print_PagesTo API docTo spec);

499.        pragma Convention (C, Gtk_Print_QualityTo API docTo spec);

500.        pragma Convention (C, Gtk_Relief_StyleTo API docTo spec);

501.        pragma Convention (C, Gtk_Resize_ModeTo API docTo spec);

502.        pragma Convention (C, Gtk_Scroll_TypeTo API docTo spec);

503.        pragma Convention (C, Gtk_Selection_ModeTo API docTo spec);

504.        pragma Convention (C, Gtk_Sensitivity_TypeTo API docTo spec);

505.        pragma Convention (C, Gtk_Shadow_TypeTo API docTo spec);

506.        pragma Convention (C, Gtk_State_TypeTo API docTo spec);

507.        pragma Convention (C, Gtk_Text_Window_TypeTo API docTo spec);

508.        pragma Convention (C, Gtk_Toolbar_StyleTo API docTo spec);

509.        pragma Convention (C, Gtk_Update_TypeTo API docTo spec);

510.        pragma Convention (C, Gtk_UnitTo API docTo spec);

511.        pragma Convention (C, Gtk_VisibilityTo API docTo spec);

512.        pragma Convention (C, Gtk_Window_PositionTo API docTo spec);

513.        pragma Convention (C, Gtk_Window_TypeTo API docTo spec);

514.        pragma Convention (C, Gtk_Wrap_ModeTo API docTo spec);

515.        pragma Convention (C, Gtk_Sort_TypeTo API docTo spec);

517.        ----------------

518.        -- Properties --

519.        ----------------

520.        --  The following packages and types are used to represent properties of

521.        --  the given type. They are used in the packages that use these properties

523.        package Relief_Style_Properties is new

524.          Generic_Internal_Discrete_PropertyTo API docTo specTo body (Gtk_Relief_StyleTo API docTo spec);

525.        package Resize_Mode_Properties is new

526.          Generic_Internal_Discrete_PropertyTo API docTo specTo body (Gtk_Resize_ModeTo API docTo spec);

527.        package Arrow_Type_Properties is new

528.          Generic_Internal_Discrete_PropertyTo API docTo specTo body (Gtk_Arrow_TypeTo API docTo spec);

529.        package Shadow_Type_Properties is new

530.          Generic_Internal_Discrete_PropertyTo API docTo specTo body (Gtk_Shadow_TypeTo API docTo spec);

531.        package Update_Type_Properties is new

532.          Generic_Internal_Discrete_PropertyTo API docTo specTo body (Gtk_Update_TypeTo API docTo spec);

533.        package Position_Type_Properties is new

534.          Generic_Internal_Discrete_PropertyTo API docTo specTo body (Gtk_Position_TypeTo API docTo spec);

535.        package Toolbar_Style_Properties is new

536.          Generic_Internal_Discrete_PropertyTo API docTo specTo body (Gtk_Toolbar_StyleTo API docTo spec);

537.        package Justification_Properties is new

538.          Generic_Internal_Discrete_PropertyTo API docTo specTo body (Gtk_JustificationTo API docTo spec);

539.        package Orientation_Properties is new

540.          Generic_Internal_Discrete_PropertyTo API docTo specTo body (Gtk_OrientationTo API docTo spec);

541.        package Window_Type_Properties is new

542.          Generic_Internal_Discrete_PropertyTo API docTo specTo body (Gtk_Window_TypeTo API docTo spec);

543.        package Window_Position_Properties is new

544.          Generic_Internal_Discrete_PropertyTo API docTo specTo body (Gtk_Window_PositionTo API docTo spec);

545.        package Text_Direction_Properties is new

546.          Generic_Internal_Discrete_PropertyTo API docTo specTo body (Gtk_Text_DirectionTo API docTo spec);

547.        package Wrap_Mode_Properties is new

548.          Generic_Internal_Discrete_PropertyTo API docTo specTo body (Gtk_Text_DirectionTo API docTo spec);

549.        package Policy_Properties is new

550.          Generic_Internal_Discrete_PropertyTo API docTo specTo body (Gtk_Policy_TypeTo API docTo spec);

551.        package Pack_Direction_Properties is new

552.          Generic_Internal_Discrete_PropertyTo API docTo specTo body (Gtk_Pack_DirectionTo API docTo spec);

553.        package Sort_Type_Properties is new

554.          Generic_Internal_Discrete_PropertyTo API docTo specTo body (Gtk_Sort_TypeTo API docTo spec);

555.        package Metric_Type_Properties is new

556.          Generic_Internal_Discrete_PropertyTo API docTo specTo body (Gtk_Metric_TypeTo API docTo spec);

557.        package Pack_Type_Properties is new

558.          Generic_Internal_Discrete_PropertyTo API docTo specTo body (Gtk_Pack_TypeTo API docTo spec);

559.        package Icon_Size_Properties is new

560.          Generic_Internal_Discrete_PropertyTo API docTo specTo body (Gtk_Icon_SizeTo API docTo spec);

561.        package Selection_Mode_Properties is new

562.          Generic_Internal_Discrete_PropertyTo API docTo specTo body (Gtk_Selection_ModeTo API docTo spec);

563.        package Sensitivity_Properties is new

564.          Generic_Internal_Discrete_PropertyTo API docTo specTo body (Gtk_Sensitivity_TypeTo API docTo spec);

565.        package BBox_Style_Properties is new

566.          Generic_Internal_Discrete_PropertyTo API docTo specTo body (Gtk_Button_Box_StyleTo API docTo spec);

567.        package Curve_Type_Properties is new

568.          Generic_Internal_Discrete_PropertyTo API docTo specTo body (Gtk_Curve_TypeTo API docTo spec);

570.        type Property_Gtk_Relief_Style  is new Relief_Style_Properties.PropertyTo API docTo spec;

571.        type Property_Gtk_Resize_Mode   is new Resize_Mode_Properties.PropertyTo API docTo spec;

572.        type Property_Gtk_Arrow_Type    is new Arrow_Type_Properties.PropertyTo API docTo spec;

573.        type Property_Gtk_Shadow_Type   is new Shadow_Type_Properties.PropertyTo API docTo spec;

574.        type Property_Gtk_Update_Type   is new Update_Type_Properties.PropertyTo API docTo spec;

575.        type Property_Gtk_Position_Type is new Position_Type_Properties.PropertyTo API docTo spec;

576.        type Property_Gtk_Toolbar_Style is new Toolbar_Style_Properties.PropertyTo API docTo spec;

577.        type Property_Gtk_Button_Box_Style is new BBox_Style_Properties.PropertyTo API docTo spec;

578.        type Property_Gtk_Justification is new Justification_Properties.PropertyTo API docTo spec;

579.        type Property_Gtk_Orientation   is new Orientation_Properties.PropertyTo API docTo spec;

580.        type Property_Gtk_Window_Type   is new Window_Type_Properties.PropertyTo API docTo spec;

581.        type Property_Gtk_Window_Position is new

582.          Window_Position_Properties.PropertyTo API docTo spec;

583.        type Property_Gtk_Text_Direction is new Text_Direction_Properties.PropertyTo API docTo spec;

584.        type Property_Gtk_Wrap_Mode     is new Wrap_Mode_Properties.PropertyTo API docTo spec;

585.        type Property_Gtk_Policy_Type   is new Policy_Properties.PropertyTo API docTo spec;

586.        type Property_Pack_Direction    is new Pack_Direction_Properties.PropertyTo API docTo spec;

587.        type Property_Sort_Type         is new Sort_Type_Properties.PropertyTo API docTo spec;

588.        type Property_Metric_Type       is new Metric_Type_Properties.PropertyTo API docTo spec;

589.        type Property_Pack_Type         is new Pack_Type_Properties.PropertyTo API docTo spec;

590.        type Property_Gtk_Icon_Size     is new Icon_Size_Properties.PropertyTo API docTo spec;

591.        type Property_Gtk_Selection_Mode is new Selection_Mode_Properties.PropertyTo API docTo spec;

592.        type Property_Gtk_Sensitivity_Type is new Sensitivity_Properties.PropertyTo API docTo spec;

593.        type Property_Gtk_Curve_Type    is new Curve_Type_Properties.PropertyTo API docTo spec;

595.        -----------------

596.        -- Obsolescent --

597.        -----------------

598.        --  All subprograms below are now obsolescent in gtk+. They might be removed

599.        --  from future versions of gtk+ (and therefore GtkAda).

600.        --  To find out whether your code uses any of these, we recommend compiling

601.        --  with the -gnatwj switch

602.        --  <doc_ignore>

604.        type Gtk_Side_Type is (Side_Top, Side_Bottom, Side_Left, Side_Right);

605.        --  pragma Obsolescent;

606.        pragma Convention (C, Gtk_Side_TypeTo API docTo spec);

608.        type Gtk_Match_Type is

609.          (Match_All, Match_All_Tail, Match_Head, Match_Tail,

610.           Match_Exact, Match_Last);

611.        --  pragma Obsolescent;

612.        pragma Convention (C, Gtk_Match_TypeTo API docTo spec);

614.        type Gtk_Preview_Type is (Preview_Color, Preview_Grayscale);

615.        --  pragma Obsolescent;

616.        pragma Convention (C, Gtk_Preview_TypeTo API docTo spec);

618.        type Gtk_Submenu_Direction is (Direction_Left, Direction_Right);

619.        --  pragma Obsolescent;

621.        type Gtk_Submenu_Placement is (Top_Bottom, Left_Right);

622.        --  pragma Obsolescent;

624.        type Gtk_Toolbar_Space_Style is (Toolbar_Space_Empty, Toolbar_Space_Line);

625.        --  pragma Obsolescent;

627.        pragma Convention (C, Gtk_Toolbar_Space_StyleTo API docTo spec);

629.        package Toolbar_Space_Style_Properties is new

630.          Generic_Internal_Discrete_PropertyTo API docTo specTo body (Gtk_Toolbar_Space_StyleTo API docTo spec);

631.        type Property_Toolbar_Space_Style is new

632.          Toolbar_Space_Style_Properties.PropertyTo API docTo spec;

634.        type Gtk_Tree_View_Mode is (Tree_View_Line, Tree_View_Item);

635.        --  pragma Obsolescent;

637.        pragma Convention (C, Gtk_Submenu_DirectionTo API docTo spec);

638.        pragma Convention (C, Gtk_Submenu_PlacementTo API docTo spec);

639.        pragma Convention (C, Gtk_Tree_View_ModeTo API docTo spec);

640.        --  </doc_ignore>

642.        --  These comments are for the sake of our automatic tool to check whether

643.        --  the bindings are up-to-date. They indicate that the functions are part

644.        --  of GtkAda itself, no gtk+

645.        --  External binding: convert_ui

646.        --  External binding: convert_ua

647.        --  External binding: convert_i

648.        --  External binding: convert_a

649.     end Gtk.EnumsTo API docTo specTo body;