## Documentation

Table of Contents
Class Inheritance Tree
Widget Screenshots
Package groups

## Index

Package: File_Chooser_Button

- Goto spec source

# Description

    package Gtk.File_Chooser_Button is

The Gtk_File_Chooser_Button is a widget that lets the user select a file.

It implements the Gtk_File_Chooser interface. Visually, it is a file name with a button to bring up a Gtk_File_Chooser_Dialog. The user can then use that dialog to change the file associated with that button. This widget does not support setting the "select-multiple" property to TRUE.

The Gtk_File_Chooser_Button supports the File_Chooser_Actions Action_Open and Action_Select_Folder.

The Gtk_File_Chooser_Button will ellipsize the label, and thus will request little horizontal space. To give the button more space, you should call Gtk.Widget.Size_Request, Set_Width_Chars, or pack the button in such a way that other interface elements give space to the widget.

Binding from C File version 2.16.6

### Screenshot

<testgtk>create_file_chooser.adb</testgtk>

# Packages

### Implements_File_Chooser (new Glib.Types.Implements)

    package Implements_File_Chooser is new Glib.Types.Implements
         (Gtk.File_Chooser.Gtk_File_Chooser,
          Gtk_File_Chooser_Button_Record, Gtk_File_Chooser_Button);

# Classes

### Gtk_File_Chooser_Button_Record

- Goto declaration in source

    type Gtk_File_Chooser_Button_Record is
         new Gtk.Box.Gtk_Hbox_Record with null record;

#### Ancestors:

Gtk.Box.Gtk_Box_Record
Gtk.Container.Gtk_Container_Record
Gtk.Widget.Gtk_Widget_Record
Glib.Object.GObject_Record

#### Primitive operations:

Get_Focus_On_Click

- To API doc
- To spec

Get_Title

- To API doc
- To spec

Get_Width_Chars

- To API doc
- To spec

Glib.Object.Deallocate

- To API doc
- To spec

(Inherited)
Glib.Object.Get_Type

- To API doc
- To spec

(Inherited)
Glib.Object.Notify

- To API doc
- To spec

(Inherited)
Glib.Object.Ref

- To API doc
- To spec

(Inherited)
Glib.Object.Ref_Sink

- To API doc
- To spec

(Inherited)
Glib.Object.Unref

- To API doc
- To spec

(Inherited)
Gtk.Box.Get_Child

- To API doc
- To spec

(Inherited)
Gtk.Box.Get_Homogeneous

- To API doc
- To spec

(Inherited)
Gtk.Box.Get_Orientation

- To API doc
- To spec

(Inherited)
Gtk.Box.Get_Spacing

- To API doc
- To spec

(Inherited)
Gtk.Box.Pack_End

- To API doc
- To spec

(Inherited)
Gtk.Box.Pack_End_Defaults

- To API doc
- To spec

(Inherited)
Gtk.Box.Pack_Start

- To API doc
- To spec

(Inherited)
Gtk.Box.Pack_Start_Defaults

- To API doc
- To spec

(Inherited)
Gtk.Box.Query_Child_Packing

- To API doc
- To spec

(Inherited)
Gtk.Box.Reorder_Child

- To API doc
- To spec

(Inherited)
Gtk.Box.Set_Child_Packing

- To API doc
- To spec

(Inherited)
Gtk.Box.Set_Homogeneous

- To API doc
- To spec

(Inherited)
Gtk.Box.Set_Orientation

- To API doc
- To spec

(Inherited)
Gtk.Box.Set_Spacing

- To API doc
- To spec

(Inherited)
Gtk.Container.Add

- To API doc
- To spec

(Inherited)
Gtk.Container.Check_Resize

- To API doc
- To spec

(Inherited)
Gtk.Container.Child_Get_Property

- To API doc
- To spec

(Inherited)
Gtk.Container.Child_Set_Property

- To API doc
- To spec

(Inherited)
Gtk.Container.Child_Type

- To API doc
- To spec

(Inherited)
Gtk.Container.Forall

- To API doc
- To spec

(Inherited)
Gtk.Container.Foreach

- To API doc
- To spec

(Inherited)
Gtk.Container.Get_Border_Width

- To API doc
- To spec

(Inherited)
Gtk.Container.Get_Children

- To API doc
- To spec

(Inherited)
Gtk.Container.Get_Focus_Chain

- To API doc
- To spec

(Inherited)
Gtk.Container.Get_Focus_Child

- To API doc
- To spec

(Inherited)
Gtk.Container.Get_Focus_Hadjustment

- To API doc
- To spec

(Inherited)
Gtk.Container.Get_Focus_Vadjustment

- To API doc
- To spec

(Inherited)
Gtk.Container.Get_Resize_Mode

- To API doc
- To spec

(Inherited)
Gtk.Container.Propagate_Expose

- To API doc
- To spec

(Inherited)
Gtk.Container.Remove

- To API doc
- To spec

(Inherited)
Gtk.Container.Resize_Children

- To API doc
- To spec

(Inherited)
Gtk.Container.Set_Border_Width

- To API doc
- To spec

(Inherited)
Gtk.Container.Set_Focus_Chain

- To API doc
- To spec

(Inherited)
Gtk.Container.Set_Focus_Child

- To API doc
- To spec

(Inherited)
Gtk.Container.Set_Focus_Hadjustment

- To API doc
- To spec

(Inherited)
Gtk.Container.Set_Focus_Vadjustment

- To API doc
- To spec

(Inherited)
Gtk.Container.Set_Reallocate_Redraws

- To API doc
- To spec

(Inherited)
Gtk.Container.Set_Resize_Mode

- To API doc
- To spec

(Inherited)
Gtk.Container.Unset_Focus_Chain

- To API doc
- To spec

(Inherited)
Gtk.Widget.Activate

- To API doc
- To spec

(Inherited)
Gtk.Widget.Add_Accelerator

- To API doc
- To spec

(Inherited)
Gtk.Widget.Add_Events

- To API doc
- To spec

(Inherited)
Gtk.Widget.Add_Mnemonic_Label

- To API doc
- To spec

(Inherited)
Gtk.Widget.Can_Activate_Accel

- To API doc
- To spec

(Inherited)
Gtk.Widget.Child_Notify

- To API doc
- To spec

(Inherited)
Gtk.Widget.Class_Path

- To API doc
- To spec

(Inherited)
Gtk.Widget.Class_Path_Reversed

- To API doc
- To spec

(Inherited)
Gtk.Widget.Create_Pango_Context

- To API doc
- To spec

(Inherited)
Gtk.Widget.Create_Pango_Layout

- To API doc
- To spec

(Inherited)
Gtk.Widget.Destroy

- To API doc
- To spec

(Inherited)
Gtk.Widget.Draw

- To API doc
- To spec

(Inherited)
Gtk.Widget.Ensure_Style

- To API doc
- To spec

(Inherited)
Gtk.Widget.Error_Bell

- To API doc
- To spec

(Inherited)
Gtk.Widget.Flag_Is_Set

- To API doc
- To spec

(Inherited)
Gtk.Widget.Flags

- To API doc
- To spec

(Inherited)
Gtk.Widget.Freeze_Child_Notify

- To API doc
- To spec

(Inherited)
Gtk.Widget.Get_Allocation_Height

- To API doc
- To spec

(Inherited)
Gtk.Widget.Get_Allocation_Width

- To API doc
- To spec

(Inherited)
Gtk.Widget.Get_Allocation_X

- To API doc
- To spec

(Inherited)
Gtk.Widget.Get_Allocation_Y

- To API doc
- To spec

(Inherited)
Gtk.Widget.Get_Ancestor

- To API doc
- To spec

(Inherited)
Gtk.Widget.Get_Child_Requisition

- To API doc
- To spec

(Inherited)
Gtk.Widget.Get_Child_Visible

- To API doc
- To spec

(Inherited)
Gtk.Widget.Get_Colormap

- To API doc
- To spec

(Inherited)
Gtk.Widget.Get_Composite_Name

- To API doc
- To spec

(Inherited)
Gtk.Widget.Get_Direction

- To API doc
- To spec

(Inherited)
Gtk.Widget.Get_Events

- To API doc
- To spec

(Inherited)
Gtk.Widget.Get_Extension_Events

- To API doc
- To spec

(Inherited)
Gtk.Widget.Get_Has_Tooltip

- To API doc
- To spec

(Inherited)
Gtk.Widget.Get_Name

- To API doc
- To spec

(Inherited)
Gtk.Widget.Get_No_Show_All

- To API doc
- To spec

(Inherited)
Gtk.Widget.Get_Pango_Context

- To API doc
- To spec

(Inherited)
Gtk.Widget.Get_Parent

- To API doc
- To spec

(Inherited)
Gtk.Widget.Get_Parent_Window

- To API doc
- To spec

(Inherited)
Gtk.Widget.Get_Pointer

- To API doc
- To spec

(Inherited)
Gtk.Widget.Get_Root_Window

- To API doc
- To spec

(Inherited)
Gtk.Widget.Get_Size_Request

- To API doc
- To spec

(Inherited)
Gtk.Widget.Get_Snapshot

- To API doc
- To spec

(Inherited)
Gtk.Widget.Get_State

- To API doc
- To spec

(Inherited)
Gtk.Widget.Get_Style

- To API doc
- To spec

(Inherited)
Gtk.Widget.Get_Tooltip_Markup

- To API doc
- To spec

(Inherited)
Gtk.Widget.Get_Tooltip_Text

- To API doc
- To spec

(Inherited)
Gtk.Widget.Get_Tooltip_Window

- To API doc
- To spec

(Inherited)
Gtk.Widget.Get_Toplevel

- To API doc
- To spec

(Inherited)
Gtk.Widget.Get_Visual

- To API doc
- To spec

(Inherited)
Gtk.Widget.Get_Window

- To API doc
- To spec

(Inherited)
Gtk.Widget.Grab_Default

- To API doc
- To spec

(Inherited)
Gtk.Widget.Grab_Focus

- To API doc
- To spec

(Inherited)
Gtk.Widget.Has_Screen

- To API doc
- To spec

(Inherited)
Gtk.Widget.Hide

- To API doc
- To spec

(Inherited)
Gtk.Widget.Hide_All

- To API doc
- To spec

(Inherited)
Gtk.Widget.Input_Shape_Combine_Mask

- To API doc
- To spec

(Inherited)
Gtk.Widget.Intersect

- To API doc
- To spec

(Inherited)
Gtk.Widget.Is_Ancestor

- To API doc
- To spec

(Inherited)
Gtk.Widget.Is_Composited

- To API doc
- To spec

(Inherited)
Gtk.Widget.Is_Focus

- To API doc
- To spec

(Inherited)
Gtk.Widget.Keynav_Failed

- To API doc
- To spec

(Inherited)
Gtk.Widget.List_Mnemonic_Labels

- To API doc
- To spec

(Inherited)
Gtk.Widget.Map

- To API doc
- To spec

(Inherited)
Gtk.Widget.Mnemonic_Activate

- To API doc
- To spec

(Inherited)
Gtk.Widget.Modify_Base

- To API doc
- To spec

(Inherited)
Gtk.Widget.Modify_Bg

- To API doc
- To spec

(Inherited)
Gtk.Widget.Modify_Cursor

- To API doc
- To spec

(Inherited)
Gtk.Widget.Modify_Fg

- To API doc
- To spec

(Inherited)
Gtk.Widget.Modify_Font

- To API doc
- To spec

(Inherited)
Gtk.Widget.Modify_Text

- To API doc
- To spec

(Inherited)
Gtk.Widget.Path

- To API doc
- To spec

(Inherited)
Gtk.Widget.Path_Reversed

- To API doc
- To spec

(Inherited)
Gtk.Widget.Queue_Clear

- To API doc
- To spec

(Inherited)
Gtk.Widget.Queue_Clear_Area

- To API doc
- To spec

(Inherited)
Gtk.Widget.Queue_Draw

- To API doc
- To spec

(Inherited)
Gtk.Widget.Queue_Draw_Area

- To API doc
- To spec

(Inherited)
Gtk.Widget.Queue_Resize

- To API doc
- To spec

(Inherited)
Gtk.Widget.Queue_Resize_No_Redraw

- To API doc
- To spec

(Inherited)
Gtk.Widget.Realize

- To API doc
- To spec

(Inherited)
Gtk.Widget.Region_Intersect

- To API doc
- To spec

(Inherited)
Gtk.Widget.Remove_Accelerator

- To API doc
- To spec

(Inherited)
Gtk.Widget.Remove_Mnemonic_Label

- To API doc
- To spec

(Inherited)
Gtk.Widget.Render_Icon

- To API doc
- To spec

(Inherited)
Gtk.Widget.Reparent

- To API doc
- To spec

(Inherited)
Gtk.Widget.Reset_Rc_Styles

- To API doc
- To spec

(Inherited)
Gtk.Widget.Reset_Shapes

- To API doc
- To spec

(Inherited)
Gtk.Widget.Restore_Default_Style

- To API doc
- To spec

(Inherited)
Gtk.Widget.Send_Expose

- To API doc
- To spec

(Inherited)
Gtk.Widget.Set_Accel_Path

- To API doc
- To spec

(Inherited)
Gtk.Widget.Set_App_Paintable

- To API doc
- To spec

(Inherited)
Gtk.Widget.Set_Child_Visible

- To API doc
- To spec

(Inherited)
Gtk.Widget.Set_Colormap

- To API doc
- To spec

(Inherited)
Gtk.Widget.Set_Composite_Name

- To API doc
- To spec

(Inherited)
Gtk.Widget.Set_Direction

- To API doc
- To spec

(Inherited)
Gtk.Widget.Set_Double_Buffered

- To API doc
- To spec

(Inherited)
Gtk.Widget.Set_Events

- To API doc
- To spec

(Inherited)
Gtk.Widget.Set_Extension_Events

- To API doc
- To spec

(Inherited)
Gtk.Widget.Set_Flags

- To API doc
- To spec

(Inherited)
Gtk.Widget.Set_Has_Tooltip

- To API doc
- To spec

(Inherited)
Gtk.Widget.Set_Name

- To API doc
- To spec

(Inherited)
Gtk.Widget.Set_No_Show_All

- To API doc
- To spec

(Inherited)
Gtk.Widget.Set_Parent

- To API doc
- To spec

(Inherited)
Gtk.Widget.Set_Parent_Window

- To API doc
- To spec

(Inherited)
Gtk.Widget.Set_Redraw_On_Allocate

- To API doc
- To spec

(Inherited)
Gtk.Widget.Set_Scroll_Adjustments

- To API doc
- To spec

(Inherited)
Gtk.Widget.Set_Sensitive

- To API doc
- To spec

(Inherited)
Gtk.Widget.Set_Size_Request

- To API doc
- To spec

(Inherited)
Gtk.Widget.Set_State

- To API doc
- To spec

(Inherited)
Gtk.Widget.Set_Style

- To API doc
- To spec

(Inherited)
Gtk.Widget.Set_Tooltip_Markup

- To API doc
- To spec

(Inherited)
Gtk.Widget.Set_Tooltip_Text

- To API doc
- To spec

(Inherited)
Gtk.Widget.Set_Tooltip_Window

- To API doc
- To spec

(Inherited)
Gtk.Widget.Set_UPosition

- To API doc
- To spec

(Inherited)
Gtk.Widget.Set_USize

- To API doc
- To spec

(Inherited)
Gtk.Widget.Set_Window

- To API doc
- To spec

(Inherited)
Gtk.Widget.Shape_Combine_Mask

- To API doc
- To spec

(Inherited)
Gtk.Widget.Show

- To API doc
- To spec

(Inherited)
Gtk.Widget.Show_All

- To API doc
- To spec

(Inherited)
Gtk.Widget.Show_Now

- To API doc
- To spec

(Inherited)
Gtk.Widget.Size_Allocate

- To API doc
- To spec

(Inherited)
Gtk.Widget.Size_Request

- To API doc
- To spec

(Inherited)
Gtk.Widget.Style_Get_Property

- To API doc
- To spec

(Inherited)
Gtk.Widget.Thaw_Child_Notify

- To API doc
- To spec

(Inherited)
Gtk.Widget.Trigger_Tooltip_Query

- To API doc
- To spec

(Inherited)
Gtk.Widget.Unmap

- To API doc
- To spec

(Inherited)
Gtk.Widget.Unrealize

- To API doc
- To spec

(Inherited)
Gtk.Widget.Unset_Flags

- To API doc
- To spec

(Inherited)
Set_Focus_On_Click

- To API doc
- To spec

Set_Title

- To API doc
- To spec

Set_Width_Chars

- To API doc
- To spec

# Types

### Gtk_File_Chooser_Button

- Goto declaration in source

    type Gtk_File_Chooser_Button is
         access all Gtk_File_Chooser_Button_Record'Class;

# Constants & Global variables

### Dialog_Property

- Goto declaration in source

(Glib.Properties.Property_Object)

    Dialog_Property         : constant Glib.Properties.Property_Object;

### Focus_On_Click_Property

- Goto declaration in source

(Glib.Properties.Property_Boolean)

    Focus_On_Click_Property : constant Glib.Properties.Property_Boolean;

### Title_Property

- Goto declaration in source

(Glib.Properties.Property_String)

    Title_Property          : constant Glib.Properties.Property_String;

### Width_Chars_Property

- Goto declaration in source

(Glib.Properties.Property_Int)

    Width_Chars_Property    : constant Glib.Properties.Property_Int;

# Subprograms & Entries

### Get_Type

- Goto spec in source
- Goto body in source

    function Get_Type return GType;

Return the internal value associated with a Gtk_File_Chooser_Button

### Gtk_New

- Goto spec in source

    procedure Gtk_New (Button: out Gtk_File_Chooser_Button;Title: String;Action: Gtk.File_Chooser.File_Chooser_Action);

### Initialize

- Goto spec in source

    procedure Initialize (Button: access Gtk_File_Chooser_Button_Record'Class;Title: String;Action: Gtk.File_Chooser.File_Chooser_Action);

Creates a new file-selecting button widget. Title is the title of the browse dialog

### Gtk_New_With_Backend

- Goto spec in source

    procedure Gtk_New_With_Backend (Button: out Gtk_File_Chooser_Button;Title: String;Action: Gtk.File_Chooser.File_Chooser_Action;Backend: String);

Gtk_New_With_Backend

### Initialize_With_Backend

- Goto spec in source

    procedure Initialize_With_Backend (Button: access Gtk_File_Chooser_Button_Record'Class;Title: String;Action: Gtk.File_Chooser.File_Chooser_Action;Backend: String);

Gtk_New_With_Backend

### Gtk_New_With_Dialog

- Goto spec in source

    procedure Gtk_New_With_Dialog (Button: out Gtk_File_Chooser_Button;Dialog: access Gtk_File_Chooser_Dialog_Record'Class);

### Initialize_With_Dialog

- Goto spec in source

    procedure Initialize_With_Dialog (Button: access Gtk_File_Chooser_Button_Record'Class;Dialog: access Gtk_File_Chooser_Dialog_Record'Class);

Creates a button widget which uses Dialog as it's file-picking window. Note that dialog must not have Destroy_With_Parent set.

### Set_Title

- Goto spec in source

    procedure Set_Title (Button: access Gtk_File_Chooser_Button_Record;Title: String);

### Get_Title

- Goto spec in source

    function Get_Title (Button: access Gtk_File_Chooser_Button_Record) return String;

Modifies the Title of the browse dialog used by Button.

### Set_Width_Chars

- Goto spec in source

    procedure Set_Width_Chars (Button: access Gtk_File_Chooser_Button_Record;N_Chars: Gint);

### Get_Width_Chars

- Goto spec in source

    function Get_Width_Chars (Button: access Gtk_File_Chooser_Button_Record) return Gint;

Sets the width (in characters) that Button will use.

### Get_Focus_On_Click

- Goto spec in source

    function Get_Focus_On_Click (Button: access Gtk_File_Chooser_Button_Record) return Boolean;

### Set_Focus_On_Click

- Goto spec in source

    procedure Set_Focus_On_Click (Button: access Gtk_File_Chooser_Button_Record;Focus_On_Click: Boolean);

Controls whether the button will grab focus when it is clicked with the mouse. Making mouse clicks not grab focus is useful in places like toolbars where you don't want the keyboard focus removed from the main area of the application.

### +

- Goto spec in source

    function "+" (Button: access Gtk_File_Chooser_Button_Record'Class) return Gtk.File_Chooser.Gtk_File_Chooser renames Implements_File_Chooser.To_Interface;

### -

- Goto spec in source

    function "-" (File: Gtk.File_Chooser.Gtk_File_Chooser) return Gtk_File_Chooser_Button renames Implements_File_Chooser.To_Object;

Converts to and from the Gtk_File_Chooser interface