----------------------------------------------------------------------- -- GtkAda - Ada95 binding for Gtk+/Gnome -- -- -- -- Copyright (C) 2001-2008, AdaCore -- -- -- -- This library is free software; you can redistribute it and/or -- -- modify it under the terms of the GNU General Public -- -- License as published by the Free Software Foundation; either -- -- version 2 of the License, or (at your option) any later version. -- -- -- -- This library is distributed in the hope that it will be useful, -- -- but WITHOUT ANY WARRANTY; without even the implied warranty of -- -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -- -- General Public License for more details. -- -- -- -- You should have received a copy of the GNU General Public -- -- License along with this library; if not, write to the -- -- Free Software Foundation, Inc., 59 Temple Place - Suite 330, -- -- Boston, MA 02111-1307, USA. -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- ----------------------------------------------------------------------- with Gtk.Enums; use Gtk.Enums; with Gtk.Text_Attributes; use Gtk.Text_Attributes; with Pango.Tabs; use Pango.Tabs; with System; with Glib.Type_Conversion_Hooks; package body Gtk.Text_View is package Type_Conversion is new Glib.Type_Conversion_Hooks.Hook_Registrator (Get_Type'Access, Gtk_Text_View_Record); pragma Warnings (Off, Type_Conversion); -- See Note (2) in the body of package Gtk.Text_Iter for more details -- on why it is safe to apply the 'Address attribute on a Gtk_Text_Iter -- parameter. ------------- -- Gtk_New -- ------------- procedure Gtk_New (Widget : out Gtk_Text_View; Buffer : Gtk.Text_Buffer.Gtk_Text_Buffer := null) is begin Widget := new Gtk_Text_View_Record; Initialize (Widget, Buffer); end Gtk_New; ---------------- -- Initialize -- ---------------- procedure Initialize (Widget : access Gtk_Text_View_Record'Class; Buffer : Gtk.Text_Buffer.Gtk_Text_Buffer) is function Internal (Buffer : System.Address) return System.Address; pragma Import (C, Internal, "gtk_text_view_new_with_buffer"); use type Gtk.Text_Buffer.Gtk_Text_Buffer; begin if Buffer = null then Set_Object (Widget, Internal (System.Null_Address)); else Set_Object (Widget, Internal (Get_Object (Buffer))); end if; end Initialize; ---------------- -- Set_Buffer -- ---------------- procedure Set_Buffer (Text_View : access Gtk_Text_View_Record; Buffer : access Gtk.Text_Buffer.Gtk_Text_Buffer_Record'Class) is procedure Internal (Text_View : System.Address; Buffer : System.Address); pragma Import (C, Internal, "gtk_text_view_set_buffer"); begin Internal (Get_Object (Text_View), Get_Object (Buffer)); end Set_Buffer; ---------------- -- Get_Buffer -- ---------------- function Get_Buffer (Text_View : access Gtk_Text_View_Record) return Gtk.Text_Buffer.Gtk_Text_Buffer is function Internal (Text_View : System.Address) return System.Address; pragma Import (C, Internal, "gtk_text_view_get_buffer"); Stub : Gtk.Text_Buffer.Gtk_Text_Buffer_Record; begin return Gtk.Text_Buffer.Gtk_Text_Buffer (Get_User_Data_Fast (Internal (Get_Object (Text_View)), Stub)); end Get_Buffer; -------------------- -- Scroll_To_Iter -- -------------------- function Scroll_To_Iter (Text_View : access Gtk_Text_View_Record; Iter : Gtk.Text_Iter.Gtk_Text_Iter; Within_Margin : Gdouble; Use_Align : Boolean; Xalign : Gdouble; Yalign : Gdouble) return Boolean is function Internal (Text_View : System.Address; Iter : Gtk.Text_Iter.Gtk_Text_Iter; Within_Margin : Gdouble; Use_Align : Gboolean; Xalign : Gdouble; Yalign : Gdouble) return Gboolean; pragma Import (C, Internal, "gtk_text_view_scroll_to_iter"); begin return Internal (Get_Object (Text_View), Iter, Within_Margin, Boolean'Pos (Use_Align), Xalign, Yalign) /= 0; end Scroll_To_Iter; -------------------- -- Scroll_To_Mark -- -------------------- procedure Scroll_To_Mark (Text_View : access Gtk_Text_View_Record; Mark : access Gtk.Text_Mark.Gtk_Text_Mark_Record'Class; Within_Margin : Gdouble := 0.0; Use_Align : Boolean := False; Xalign : Gdouble := 0.0; Yalign : Gdouble := 0.0) is procedure Internal (Text_View : System.Address; Mark : System.Address; Within_Margin : Gdouble; Use_Align : Gboolean; Xalign : Gdouble; Yalign : Gdouble); pragma Import (C, Internal, "gtk_text_view_scroll_to_mark"); begin Internal (Get_Object (Text_View), Get_Object (Mark), Within_Margin, Boolean'Pos (Use_Align), Xalign, Yalign); end Scroll_To_Mark; -------------------------- -- Scroll_Mark_Onscreen -- -------------------------- procedure Scroll_Mark_Onscreen (Text_View : access Gtk_Text_View_Record; Mark : access Gtk.Text_Mark.Gtk_Text_Mark_Record'Class) is procedure Internal (Text_View : System.Address; Mark : System.Address); pragma Import (C, Internal, "gtk_text_view_scroll_mark_onscreen"); begin Internal (Get_Object (Text_View), Get_Object (Mark)); end Scroll_Mark_Onscreen; ------------------------ -- Move_Mark_Onscreen -- ------------------------ function Move_Mark_Onscreen (Text_View : access Gtk_Text_View_Record; Mark : access Gtk.Text_Mark.Gtk_Text_Mark_Record'Class) return Boolean is function Internal (Text_View : System.Address; Mark : System.Address) return Gboolean; pragma Import (C, Internal, "gtk_text_view_move_mark_onscreen"); begin return Internal (Get_Object (Text_View), Get_Object (Mark)) /= 0; end Move_Mark_Onscreen; --------------------------- -- Place_Cursor_Onscreen -- --------------------------- function Place_Cursor_Onscreen (Text_View : access Gtk_Text_View_Record) return Boolean is function Internal (Text_View : System.Address) return Gboolean; pragma Import (C, Internal, "gtk_text_view_place_cursor_onscreen"); begin return Internal (Get_Object (Text_View)) /= 0; end Place_Cursor_Onscreen; ---------------------- -- Get_Visible_Rect -- ---------------------- procedure Get_Visible_Rect (Text_View : access Gtk_Text_View_Record; Visible_Rect : out Gdk.Rectangle.Gdk_Rectangle) is procedure Internal (Text_View : System.Address; Visible_Rect : out Gdk.Rectangle.Gdk_Rectangle); pragma Import (C, Internal, "gtk_text_view_get_visible_rect"); begin Internal (Get_Object (Text_View), Visible_Rect); end Get_Visible_Rect; ------------------------ -- Set_Cursor_Visible -- ------------------------ procedure Set_Cursor_Visible (Text_View : access Gtk_Text_View_Record; Setting : Boolean := True) is procedure Internal (Text_View : System.Address; Setting : Gboolean); pragma Import (C, Internal, "gtk_text_view_set_cursor_visible"); begin Internal (Get_Object (Text_View), Boolean'Pos (Setting)); end Set_Cursor_Visible; ------------------------ -- Get_Cursor_Visible -- ------------------------ function Get_Cursor_Visible (Text_View : access Gtk_Text_View_Record) return Boolean is function Internal (Text_View : System.Address) return Gboolean; pragma Import (C, Internal, "gtk_text_view_get_cursor_visible"); begin return Internal (Get_Object (Text_View)) /= 0; end Get_Cursor_Visible; ----------------------- -- Get_Iter_Location -- ----------------------- procedure Get_Iter_Location (Text_View : access Gtk_Text_View_Record; Iter : Gtk.Text_Iter.Gtk_Text_Iter; Location : out Gdk.Rectangle.Gdk_Rectangle) is procedure Internal (Text_View : System.Address; Iter : Gtk.Text_Iter.Gtk_Text_Iter; Location : out Gdk.Rectangle.Gdk_Rectangle); pragma Import (C, Internal, "gtk_text_view_get_iter_location"); begin Internal (Get_Object (Text_View), Iter, Location); end Get_Iter_Location; -------------------------- -- Get_Iter_At_Location -- -------------------------- procedure Get_Iter_At_Location (Text_View : access Gtk_Text_View_Record; Iter : out Gtk.Text_Iter.Gtk_Text_Iter; X : Gint; Y : Gint) is procedure Internal (Text_View : System.Address; Iter : System.Address; X : Gint; Y : Gint); pragma Import (C, Internal, "gtk_text_view_get_iter_at_location"); begin Internal (Get_Object (Text_View), Iter'Address, X, Y); end Get_Iter_At_Location; -------------------------- -- Get_Iter_At_Position -- -------------------------- procedure Get_Iter_At_Position (Text_View : access Gtk_Text_View_Record; Iter : out Gtk.Text_Iter.Gtk_Text_Iter; Trailing : out Gint; X : Gint; Y : Gint) is procedure Internal (Text_View : System.Address; Iter : System.Address; Trailing : out Gint; X : Gint; Y : Gint); pragma Import (C, Internal, "gtk_text_view_get_iter_at_position"); begin Internal (Get_Object (Text_View), Iter'Address, Trailing, X, Y); end Get_Iter_At_Position; --------------------- -- Get_Line_Yrange -- --------------------- procedure Get_Line_Yrange (Text_View : access Gtk_Text_View_Record; Iter : Gtk.Text_Iter.Gtk_Text_Iter; Y : out Gint; Height : out Gint) is procedure Internal (Text_View : System.Address; Iter : Gtk.Text_Iter.Gtk_Text_Iter; Y : out Gint; Height : out Gint); pragma Import (C, Internal, "gtk_text_view_get_line_yrange"); begin Internal (Get_Object (Text_View), Iter, Y, Height); end Get_Line_Yrange; ------------------- -- Get_Line_At_Y -- ------------------- procedure Get_Line_At_Y (Text_View : access Gtk_Text_View_Record; Target_Iter : out Gtk.Text_Iter.Gtk_Text_Iter; Y : Gint; Line_Top : out Gint) is procedure Internal (Text_View : System.Address; Target_Iter : System.Address; Y : Gint; Line_Top : out Gint); pragma Import (C, Internal, "gtk_text_view_get_line_at_y"); begin Internal (Get_Object (Text_View), Target_Iter'Address, Y, Line_Top); end Get_Line_At_Y; ----------------------------- -- Buffer_To_Window_Coords -- ----------------------------- procedure Buffer_To_Window_Coords (Text_View : access Gtk_Text_View_Record; Win : Gtk.Enums.Gtk_Text_Window_Type; Buffer_X : Gint; Buffer_Y : Gint; Window_X : out Gint; Window_Y : out Gint) is procedure Internal (Text_View : System.Address; Win : Gtk.Enums.Gtk_Text_Window_Type; Buffer_X : Gint; Buffer_Y : Gint; Window_X : out Gint; Window_Y : out Gint); pragma Import (C, Internal, "gtk_text_view_buffer_to_window_coords"); begin Internal (Get_Object (Text_View), Win, Buffer_X, Buffer_Y, Window_X, Window_Y); end Buffer_To_Window_Coords; ----------------------------- -- Window_To_Buffer_Coords -- ----------------------------- procedure Window_To_Buffer_Coords (Text_View : access Gtk_Text_View_Record; Win : Gtk.Enums.Gtk_Text_Window_Type; Window_X : Gint; Window_Y : Gint; Buffer_X : out Gint; Buffer_Y : out Gint) is procedure Internal (Text_View : System.Address; Win : Gtk.Enums.Gtk_Text_Window_Type; Window_X : Gint; Window_Y : Gint; Buffer_X : out Gint; Buffer_Y : out Gint); pragma Import (C, Internal, "gtk_text_view_window_to_buffer_coords"); begin Internal (Get_Object (Text_View), Win, Window_X, Window_Y, Buffer_X, Buffer_Y); end Window_To_Buffer_Coords; ---------------- -- Get_Window -- ---------------- function Get_Window (Text_View : access Gtk_Text_View_Record; Win : Gtk.Enums.Gtk_Text_Window_Type) return Gdk.Window.Gdk_Window is function Internal (Text_View : System.Address; Win : Gtk.Enums.Gtk_Text_Window_Type) return Gdk.Window.Gdk_Window; pragma Import (C, Internal, "gtk_text_view_get_window"); begin return Internal (Get_Object (Text_View), Win); end Get_Window; --------------------- -- Get_Window_Type -- --------------------- function Get_Window_Type (Text_View : access Gtk_Text_View_Record; Window : Gdk.Window.Gdk_Window) return Gtk.Enums.Gtk_Text_Window_Type is function Internal (Text_View : System.Address; Window : Gdk.Window.Gdk_Window) return Gint; pragma Import (C, Internal, "gtk_text_view_get_window_type"); begin return Gtk.Enums.Gtk_Text_Window_Type'Val (Internal (Get_Object (Text_View), Window)); end Get_Window_Type; ---------------------------- -- Set_Border_Window_Size -- ---------------------------- procedure Set_Border_Window_Size (Text_View : access Gtk_Text_View_Record; The_Type : Gtk.Enums.Gtk_Text_Window_Type; Size : Gint) is procedure Internal (Text_View : System.Address; The_Type : Gtk.Enums.Gtk_Text_Window_Type; Size : Gint); pragma Import (C, Internal, "gtk_text_view_set_border_window_size"); begin Internal (Get_Object (Text_View), The_Type, Size); end Set_Border_Window_Size; --------------------------------- -- Set_Disable_Scroll_On_Focus -- --------------------------------- procedure Set_Disable_Scroll_On_Focus (Text_View : access Gtk_Text_View_Record; Set : Boolean) is procedure Internal (Text_View : System.Address; Set : Gboolean); pragma Import (C, Internal, "ada_text_view_set_disable_scroll_on_focus"); begin Internal (Get_Object (Text_View), Boolean'Pos (Set)); end Set_Disable_Scroll_On_Focus; --------------------------------- -- Get_Disable_Scroll_On_Focus -- --------------------------------- function Get_Disable_Scroll_On_Focus (Text_View : access Gtk_Text_View_Record) return Boolean is function Internal (Text_View : System.Address) return Gboolean; pragma Import (C, Internal, "ada_text_view_get_disable_scroll_on_focus"); begin return Internal (Get_Object (Text_View)) /= 0; end Get_Disable_Scroll_On_Focus; -------------------------- -- Forward_Display_Line -- -------------------------- procedure Forward_Display_Line (Text_View : access Gtk_Text_View_Record; Iter : in out Gtk.Text_Iter.Gtk_Text_Iter; Result : out Boolean) is function Internal (Text_View : System.Address; Iter : Gtk.Text_Iter.Gtk_Text_Iter) return Gboolean; pragma Import (C, Internal, "gtk_text_view_forward_display_line"); begin Result := Internal (Get_Object (Text_View), Iter) /= 0; end Forward_Display_Line; --------------------------- -- Backward_Display_Line -- --------------------------- procedure Backward_Display_Line (Text_View : access Gtk_Text_View_Record; Iter : in out Gtk.Text_Iter.Gtk_Text_Iter; Result : out Boolean) is function Internal (Text_View : System.Address; Iter : Gtk.Text_Iter.Gtk_Text_Iter) return Gboolean; pragma Import (C, Internal, "gtk_text_view_backward_display_line"); begin Result := Internal (Get_Object (Text_View), Iter) /= 0; end Backward_Display_Line; ------------------------------ -- Forward_Display_Line_End -- ------------------------------ procedure Forward_Display_Line_End (Text_View : access Gtk_Text_View_Record; Iter : in out Gtk.Text_Iter.Gtk_Text_Iter; Result : out Boolean) is function Internal (Text_View : System.Address; Iter : Gtk.Text_Iter.Gtk_Text_Iter) return Gboolean; pragma Import (C, Internal, "gtk_text_view_forward_display_line_end"); begin Result := Internal (Get_Object (Text_View), Iter) /= 0; end Forward_Display_Line_End; --------------------------------- -- Backward_Display_Line_Start -- --------------------------------- procedure Backward_Display_Line_Start (Text_View : access Gtk_Text_View_Record; Iter : in out Gtk.Text_Iter.Gtk_Text_Iter; Result : out Boolean) is function Internal (Text_View : System.Address; Iter : Gtk.Text_Iter.Gtk_Text_Iter) return Gboolean; pragma Import (C, Internal, "gtk_text_view_backward_display_line_start"); begin Result := Internal (Get_Object (Text_View), Iter) /= 0; end Backward_Display_Line_Start; ------------------------- -- Starts_Display_Line -- ------------------------- function Starts_Display_Line (Text_View : access Gtk_Text_View_Record; Iter : Gtk.Text_Iter.Gtk_Text_Iter) return Boolean is function Internal (Text_View : System.Address; Iter : Gtk.Text_Iter.Gtk_Text_Iter) return Gboolean; pragma Import (C, Internal, "gtk_text_view_starts_display_line"); begin return Internal (Get_Object (Text_View), Iter) /= 0; end Starts_Display_Line; ------------------- -- Move_Visually -- ------------------- procedure Move_Visually (Text_View : access Gtk_Text_View_Record; Iter : in out Gtk.Text_Iter.Gtk_Text_Iter; Count : Gint; Result : out Boolean) is function Internal (Text_View : System.Address; Iter : Gtk.Text_Iter.Gtk_Text_Iter; Count : Gint) return Gboolean; pragma Import (C, Internal, "gtk_text_view_move_visually"); begin Result := Internal (Get_Object (Text_View), Iter, Count) /= 0; end Move_Visually; ------------------------- -- Add_Child_At_Anchor -- ------------------------- procedure Add_Child_At_Anchor (Text_View : access Gtk_Text_View_Record; Child : access Gtk.Widget.Gtk_Widget_Record'Class; Anchor : access Gtk.Text_Child.Gtk_Text_Child_Anchor_Record'Class) is procedure Internal (Text_View : System.Address; Child : System.Address; Anchor : System.Address); pragma Import (C, Internal, "gtk_text_view_add_child_at_anchor"); begin Internal (Get_Object (Text_View), Get_Object (Child), Get_Object (Anchor)); end Add_Child_At_Anchor; ------------------------- -- Add_Child_In_Window -- ------------------------- procedure Add_Child_In_Window (Text_View : access Gtk_Text_View_Record; Child : access Gtk.Widget.Gtk_Widget_Record'Class; Which_Window : Gtk.Enums.Gtk_Text_Window_Type; Xpos : Gint; Ypos : Gint) is procedure Internal (Text_View : System.Address; Child : System.Address; Which_Window : Gtk.Enums.Gtk_Text_Window_Type; Xpos : Gint; Ypos : Gint); pragma Import (C, Internal, "gtk_text_view_add_child_in_window"); begin Internal (Get_Object (Text_View), Get_Object (Child), Which_Window, Xpos, Ypos); end Add_Child_In_Window; ---------------- -- Move_Child -- ---------------- procedure Move_Child (Text_View : access Gtk_Text_View_Record; Child : access Gtk.Widget.Gtk_Widget_Record'Class; Xpos : Gint; Ypos : Gint) is procedure Internal (Text_View : System.Address; Child : System.Address; Xpos : Gint; Ypos : Gint); pragma Import (C, Internal, "gtk_text_view_move_child"); begin Internal (Get_Object (Text_View), Get_Object (Child), Xpos, Ypos); end Move_Child; ------------------- -- Set_Wrap_Mode -- ------------------- procedure Set_Wrap_Mode (Text_View : access Gtk_Text_View_Record; Wrap_Mode : Gtk.Enums.Gtk_Wrap_Mode) is procedure Internal (Text_View : System.Address; Wrap_Mode : Gtk.Enums.Gtk_Wrap_Mode); pragma Import (C, Internal, "gtk_text_view_set_wrap_mode"); begin Internal (Get_Object (Text_View), Wrap_Mode); end Set_Wrap_Mode; ------------------- -- Get_Wrap_Mode -- ------------------- function Get_Wrap_Mode (Text_View : access Gtk_Text_View_Record) return Gtk.Enums.Gtk_Wrap_Mode is function Internal (Text_View : System.Address) return Gint; pragma Import (C, Internal, "gtk_text_view_get_wrap_mode"); begin return Gtk.Enums.Gtk_Wrap_Mode'Val (Internal (Get_Object (Text_View))); end Get_Wrap_Mode; ------------------ -- Set_Editable -- ------------------ procedure Set_Editable (Text_View : access Gtk_Text_View_Record; Setting : Boolean := True) is procedure Internal (Text_View : System.Address; Setting : Gboolean); pragma Import (C, Internal, "gtk_text_view_set_editable"); begin Internal (Get_Object (Text_View), Boolean'Pos (Setting)); end Set_Editable; ------------------ -- Get_Editable -- ------------------ function Get_Editable (Text_View : access Gtk_Text_View_Record) return Boolean is function Internal (Text_View : System.Address) return Gboolean; pragma Import (C, Internal, "gtk_text_view_get_editable"); begin return Internal (Get_Object (Text_View)) /= 0; end Get_Editable; ---------------------------- -- Set_Pixels_Above_Lines -- ---------------------------- procedure Set_Pixels_Above_Lines (Text_View : access Gtk_Text_View_Record; Pixels_Above_Lines : Gint) is procedure Internal (Text_View : System.Address; Pixels_Above_Lines : Gint); pragma Import (C, Internal, "gtk_text_view_set_pixels_above_lines"); begin Internal (Get_Object (Text_View), Pixels_Above_Lines); end Set_Pixels_Above_Lines; ---------------------------- -- Get_Pixels_Above_Lines -- ---------------------------- function Get_Pixels_Above_Lines (Text_View : access Gtk_Text_View_Record) return Gint is function Internal (Text_View : System.Address) return Gint; pragma Import (C, Internal, "gtk_text_view_get_pixels_above_lines"); begin return Internal (Get_Object (Text_View)); end Get_Pixels_Above_Lines; ---------------------------- -- Set_Pixels_Below_Lines -- ---------------------------- procedure Set_Pixels_Below_Lines (Text_View : access Gtk_Text_View_Record; Pixels_Below_Lines : Gint) is procedure Internal (Text_View : System.Address; Pixels_Below_Lines : Gint); pragma Import (C, Internal, "gtk_text_view_set_pixels_below_lines"); begin Internal (Get_Object (Text_View), Pixels_Below_Lines); end Set_Pixels_Below_Lines; ---------------------------- -- Get_Pixels_Below_Lines -- ---------------------------- function Get_Pixels_Below_Lines (Text_View : access Gtk_Text_View_Record) return Gint is function Internal (Text_View : System.Address) return Gint; pragma Import (C, Internal, "gtk_text_view_get_pixels_below_lines"); begin return Internal (Get_Object (Text_View)); end Get_Pixels_Below_Lines; ---------------------------- -- Set_Pixels_Inside_Wrap -- ---------------------------- procedure Set_Pixels_Inside_Wrap (Text_View : access Gtk_Text_View_Record; Pixels_Inside_Wrap : Gint) is procedure Internal (Text_View : System.Address; Pixels_Inside_Wrap : Gint); pragma Import (C, Internal, "gtk_text_view_set_pixels_inside_wrap"); begin Internal (Get_Object (Text_View), Pixels_Inside_Wrap); end Set_Pixels_Inside_Wrap; ---------------------------- -- Get_Pixels_Inside_Wrap -- ---------------------------- function Get_Pixels_Inside_Wrap (Text_View : access Gtk_Text_View_Record) return Gint is function Internal (Text_View : System.Address) return Gint; pragma Import (C, Internal, "gtk_text_view_get_pixels_inside_wrap"); begin return Internal (Get_Object (Text_View)); end Get_Pixels_Inside_Wrap; ----------------------- -- Set_Justification -- ----------------------- procedure Set_Justification (Text_View : access Gtk_Text_View_Record; Justification : Gtk.Enums.Gtk_Justification) is procedure Internal (Text_View : System.Address; Justification : Gtk.Enums.Gtk_Justification); pragma Import (C, Internal, "gtk_text_view_set_justification"); begin Internal (Get_Object (Text_View), Justification); end Set_Justification; ----------------------- -- Get_Justification -- ----------------------- function Get_Justification (Text_View : access Gtk_Text_View_Record) return Gtk.Enums.Gtk_Justification is function Internal (Text_View : System.Address) return Gint; pragma Import (C, Internal, "gtk_text_view_get_justification"); begin return Gtk.Enums.Gtk_Justification'Val (Internal (Get_Object (Text_View))); end Get_Justification; --------------------- -- Set_Left_Margin -- --------------------- procedure Set_Left_Margin (Text_View : access Gtk_Text_View_Record; Left_Margin : Gint) is procedure Internal (Text_View : System.Address; Left_Margin : Gint); pragma Import (C, Internal, "gtk_text_view_set_left_margin"); begin Internal (Get_Object (Text_View), Left_Margin); end Set_Left_Margin; --------------------- -- Get_Left_Margin -- --------------------- function Get_Left_Margin (Text_View : access Gtk_Text_View_Record) return Gint is function Internal (Text_View : System.Address) return Gint; pragma Import (C, Internal, "gtk_text_view_get_left_margin"); begin return Internal (Get_Object (Text_View)); end Get_Left_Margin; ---------------------- -- Set_Right_Margin -- ---------------------- procedure Set_Right_Margin (Text_View : access Gtk_Text_View_Record; Right_Margin : Gint) is procedure Internal (Text_View : System.Address; Right_Margin : Gint); pragma Import (C, Internal, "gtk_text_view_set_right_margin"); begin Internal (Get_Object (Text_View), Right_Margin); end Set_Right_Margin; ---------------------- -- Get_Right_Margin -- ---------------------- function Get_Right_Margin (Text_View : access Gtk_Text_View_Record) return Gint is function Internal (Text_View : System.Address) return Gint; pragma Import (C, Internal, "gtk_text_view_get_right_margin"); begin return Internal (Get_Object (Text_View)); end Get_Right_Margin; ---------------- -- Set_Indent -- ---------------- procedure Set_Indent (Text_View : access Gtk_Text_View_Record; Indent : Gint) is procedure Internal (Text_View : System.Address; Indent : Gint); pragma Import (C, Internal, "gtk_text_view_set_indent"); begin Internal (Get_Object (Text_View), Indent); end Set_Indent; ---------------- -- Get_Indent -- ---------------- function Get_Indent (Text_View : access Gtk_Text_View_Record) return Gint is function Internal (Text_View : System.Address) return Gint; pragma Import (C, Internal, "gtk_text_view_get_indent"); begin return Internal (Get_Object (Text_View)); end Get_Indent; -------------- -- Set_Tabs -- -------------- procedure Set_Tabs (Text_View : access Gtk_Text_View_Record; Tabs : Pango_Tab_Array) is procedure Internal (Text_View : System.Address; Tabs : Pango_Tab_Array); pragma Import (C, Internal, "gtk_text_view_set_tabs"); begin Internal (Get_Object (Text_View), Tabs); end Set_Tabs; -------------- -- Get_Tabs -- -------------- function Get_Tabs (Text_View : access Gtk_Text_View_Record) return Pango_Tab_Array is function Internal (Text_View : System.Address) return Pango_Tab_Array; pragma Import (C, Internal, "gtk_text_view_get_tabs"); begin return Internal (Get_Object (Text_View)); end Get_Tabs; ------------------- -- Set_Overwrite -- ------------------- procedure Set_Overwrite (Text_View : access Gtk_Text_View_Record; Overwrite : Boolean) is procedure Internal (Text_View : System.Address; Overwrite : Gboolean); pragma Import (C, Internal, "gtk_text_view_set_overwrite"); begin Internal (Get_Object (Text_View), Boolean'Pos (Overwrite)); end Set_Overwrite; ------------------- -- Get_Overwrite -- ------------------- function Get_Overwrite (Text_View : access Gtk_Text_View_Record) return Boolean is function Internal (Text_View : System.Address) return Gboolean; pragma Import (C, Internal, "gtk_text_view_get_overwrite"); begin return Boolean'Val (Internal (Get_Object (Text_View))); end Get_Overwrite; --------------------- -- Get_Accepts_Tab -- --------------------- function Get_Accepts_Tab (Text_View : access Gtk_Text_View_Record) return Boolean is function Internal (Text_View : System.Address) return Gboolean; pragma Import (C, Internal, "gtk_text_view_get_accepts_tab"); begin return Boolean'Val (Internal (Get_Object (Text_View))); end Get_Accepts_Tab; --------------------- -- Set_Accepts_Tab -- --------------------- procedure Set_Accepts_Tab (Text_View : access Gtk_Text_View_Record; Accepts_Tab : Boolean) is procedure Internal (Text_View : System.Address; Accepts_Tab : Gboolean); pragma Import (C, Internal, "gtk_text_view_set_accepts_tab"); begin Internal (Get_Object (Text_View), Boolean'Pos (Accepts_Tab)); end Set_Accepts_Tab; ---------------------------- -- Get_Border_Window_Size -- ---------------------------- function Get_Border_Window_Size (Text_View : access Gtk_Text_View_Record; The_Type : Gtk.Enums.Gtk_Text_Window_Type) return Gint is function Internal (Text_View : System.Address; The_Type : Gtk.Enums.Gtk_Text_Window_Type) return Gint; pragma Import (C, Internal, "gtk_text_view_get_border_window_size"); begin return Internal (Get_Object (Text_View), The_Type); end Get_Border_Window_Size; ---------------------------- -- Get_Default_Attributes -- ---------------------------- function Get_Default_Attributes (Text_View : access Gtk_Text_View_Record) return Gtk_Text_Attributes is function Internal (Text_View : System.Address) return Gtk_Text_Attributes; pragma Import (C, Internal, "gtk_text_view_get_default_attributes"); begin return Internal (Get_Object (Text_View)); end Get_Default_Attributes; end Gtk.Text_View;