## Documentation

Table of Contents
Class Inheritance Tree
Widget Screenshots
Package groups

## Index

Package: MDI

- Goto spec source

# Description

    package Gtkada.MDI is

This widget organizes its children into resizable panes. Within each pane, multiple children can be put, and they will be accessible through a notebook.

# Packages

### Desktop (generic)

Full description

# Classes

### MDI_Window_Record

- Goto declaration in source
- Goto full declaration in source

    type MDI_Window_Record is new Gtk.Widget.Gtk_Widget_Record with private;

#### Ancestors:

Gtk.Widget.Gtk_Widget_Record
Glib.Object.GObject_Record

#### Primitive operations:

Check_Interactive_Selection_Dialog

- To API doc
- To spec

Close

- To API doc
- To spec

Configure

- To API doc
- To spec

Desktop_Was_Loaded

- To API doc
- To spec

Find_MDI_Child

- To API doc
- To spec

Find_MDI_Child_By_Name

- To API doc
- To spec

Find_MDI_Child_By_Tag

- To API doc
- To spec

First_Child

- To API doc
- To spec

Get_Focus_Child

- 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.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_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.Fixed.Get_Has_Window

- To API doc
- To spec

(Inherited)
Gtk.Fixed.Move

- To API doc
- To spec

(Inherited)
Gtk.Fixed.Put

- To API doc
- To spec

(Inherited)
Gtk.Fixed.Set_Has_Window

- 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)
Gtkada.Multi_Paned.Add_Child

- To API doc
- To spec

(Inherited)
Gtkada.Multi_Paned.Freeze

- To API doc
- To spec

(Inherited)
Gtkada.Multi_Paned.Get_Pane

- To API doc
- To spec

(Inherited)
Gtkada.Multi_Paned.Set_Opaque_Resizing

- To API doc
- To spec

(Inherited)
Gtkada.Multi_Paned.Set_Size

- To API doc
- To spec

(Inherited)
Gtkada.Multi_Paned.Split

- To API doc
- To spec

(Inherited)
Gtkada.Multi_Paned.Split

- To API doc
- To spec

(Inherited)
Gtkada.Multi_Paned.Splitted_Area

- To API doc
- To spec

(Inherited)
Gtkada.Multi_Paned.Start

- To API doc
- To spec

(Inherited)
Gtkada.Multi_Paned.Thaw

- To API doc
- To spec

(Inherited)
Independent_Perspectives

- To API doc
- To spec

List_Of_Perspectives

- To API doc
- To spec

Put

- To API doc
- To spec

Set_All_Floating_Mode

- To API doc
- To spec

Set_Dnd_Message

- To API doc
- To spec

Set_Focus_Child

- To API doc
- To spec

(overriding Gtk.Container.Set_Focus_Child)
Set_Size

- To API doc
- To spec

Set_Tab_Contextual_Menu_Factory

- To API doc
- To spec

Setup_Toplevel_Window

- To API doc
- To spec

Split

- To API doc
- To spec

Use_Short_Titles_For_Floats

- To API doc
- To spec

### MDI_Child_Record

- Goto declaration in source
- Goto full declaration in source

    type MDI_Child_Record is new Gtk.Event_Box.Gtk_Event_Box_Record
         with private;

#### Ancestors:

Gtk.Event_Box.Gtk_Event_Box_Record
Gtk.Bin.Gtk_Bin_Record
Gtk.Container.Gtk_Container_Record
Gtk.Widget.Gtk_Widget_Record
Glib.Object.GObject_Record

#### Primitive operations:

Child_Drag_Finished

- To API doc
- To spec

Dnd_Data

- To API doc
- To spec

Get_Icon

- To API doc
- To spec

Get_MDI

- To API doc
- To spec

Get_Short_Title

- To API doc
- To spec

Get_State

- To API doc
- To spec

Get_Title

- To API doc
- To spec

Get_Widget

- 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.Bin.Get_Child

- 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.Event_Box.Get_Above_Child

- To API doc
- To spec

(Inherited)
Gtk.Event_Box.Get_Visible_Window

- To API doc
- To spec

(Inherited)
Gtk.Event_Box.Set_Above_Child

- To API doc
- To spec

(Inherited)
Gtk.Event_Box.Set_Visible_Window

- 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)
Has_Title_Bar

- To API doc
- To spec

Highlight_Child

- To API doc
- To spec

Set_Focus_Child

- To API doc
- To spec

Set_Icon

- To API doc
- To spec

Set_Title

- To API doc
- To spec

# Types

### MDI_Window

- Goto declaration in source

    type MDI_Window is access all MDI_Window_Record'Class;

Although this widget is implemented as a gtk_layout, you shouldn't use the standard Gtk_Layout functions like Put and Move yourself.

### MDI_Child

- Goto declaration in source

    type MDI_Child is access all MDI_Child_Record'Class;

### MDI_Child_Array

- Goto declaration in source

    type MDI_Child_Array is array (Natural range <>) of MDI_Child;

### State_Type

- Goto declaration in source

    type State_Type is (Normal, Floating, Invisible);

This type indicates the state of an item in the MDI: - Normal: the item can be manipulated (moved and resized) by the user. It is found either in the middle notebook (maximized items), or in the layout. - Floating: the item has its own toplevel window, and is thus managed by the window manager. - Invisible: the child was part of a previously displayed perspective, but is no longer in the current perspective. We still keep it to reuse it when switching back to the previous perspective.

### Show_Tabs_Policy_Enum

- Goto declaration in source

    type Show_Tabs_Policy_Enum is (Always, Never, Automatic);

### Title_Bars_Policy

- Goto declaration in source

    type Title_Bars_Policy     is (Always, Never, Central_Only);

### Child_Flags

- Goto declaration in source

    type Child_Flags is mod 2 ** 5;

### Child_Group

- Goto declaration in source

    type Child_Group is new Positive;

### Child_Position

- Goto declaration in source

    type Child_Position is
         (Position_Automatic,
          Position_Bottom,
          Position_Top,
          Position_Left,
          Position_Right);

### Side_Position

- Goto declaration in source

    subtype Side_Position is Child_Position
          range Position_Bottom .. Position_Right;

The initial position of windows within the MDI. In all cases, the initial location for a window is computed with the following algorithm. This algorithm is designed with the notion of groups of windows in mind, so that some windows (typically editors) have a special status. - If another window with the same Group is already in the MDI, the new window is put on top of it. - Otherwise, if Position_Automatic, if an empty area exists within the MDI, the new window is put in that area. - Else if the Position is Bottom .. Right, the new window is put below all others (resp. to the top, left or right) - Else the window is put on top of the currently selected window

### Tab_Contextual_Menu_Factory

- Goto declaration in source

    type Tab_Contextual_Menu_Factory is access procedure
         (Child : access MDI_Child_Record'Class;
          Menu  : access Gtk.Menu.Gtk_Menu_Record'Class);

### Child_Iterator

- Goto declaration in source
- Goto full declaration in source

    type Child_Iterator is private;

### Split_Mode

- Goto declaration in source

    type Split_Mode is
         (Before, Before_Reuse,
          After,  After_Reuse,
          Any_Side_Reuse);

How a child should be split: If "Before", the child is put above or to the left of its current position. A new window is created to containing it. If the "_Reuse" version is used, and a window already exist at that position, the child will be put in it instead of creating a new one. Any_Side_Reuse indicates that the child will be put on either side, depending on where a window already exists. If there is no window on the side, a new one is created.

# Constants & Global variables

### No_Children

- Goto declaration in source

(MDI_Child_Array)

    No_Children : constant MDI_Child_Array := (1 .. 0 => null);

### Destroy_Button

- Goto declaration in source

(Child_Flags)

    Destroy_Button       : constant Child_Flags := 2 ** 2;

### Float_As_Transient

- Goto declaration in source

(Child_Flags)

    Float_As_Transient   : constant Child_Flags := 2 ** 3;

### Always_Destroy_Float

- Goto declaration in source

(Child_Flags)

    Always_Destroy_Float : constant Child_Flags := 2 ** 4;

### All_Buttons

- Goto declaration in source

(Child_Flags)

    All_Buttons          : constant Child_Flags := Destroy_Button;

Special flags to set up the widgets: The first is the buttons that should be displayed in the title bar of the MDI children. If Float_As_Transient is set, then the child will be set up as a transient window when floating: on most window managers, it will stay on top of the MDI, but the window will have less decorations in its title bar, in particular no destroy button. In such a case, <Esc> will close the window, or unfloat it depending on the MDI's setup, as is the case for all dialogs in GtkAda. The MDI's setup will be ignored (and the child always destroyed when Esc is pressed) if Always_Destroy_Float is true.

### Group_Default

- Goto declaration in source

(Child_Group)

    Group_Default : constant Child_Group := 1;

### Group_Any

- Goto declaration in source

(Child_Group)

    Group_Any     : constant Child_Group := Child_Group'Last;

This type can be used to help group windows by type within the MDI. Group_Default as a special status when computing the initial position for a window. But you can create your own groups as needed, so that for instance editors tend to be grouped with other editors, graphs with other graphs,... depending on your application. The group has an impact when the last window from a notebook is closed: If the window belongs to Group_Default, and it is the last of its group, then the space currently occupied by that window is not reclaimed, and therefore an empty area will exist in the MDI. The idea is that for instance editors typically play a special role in an integrated development environment, and the users like to have them in the center of the window. When closing the last editor, they do not want the side windows (browsers, consoles,...) to take up that space that should really only be used for editors. To get such a behavior, editors should belong to Group_Default, and all other windows to custom groups. Do not use Group_Any, it is used internally with special meanings.

### Signal_Child_Selected

- Goto declaration in source

(Glib.Signal_Name)

    Signal_Child_Selected       : constant Signal_Name := "child_selected";

### Signal_Float_Child

- Goto declaration in source

(Glib.Signal_Name)

    Signal_Float_Child          : constant Signal_Name := "float_child";

### Signal_Child_Title_Changed

- Goto declaration in source

(Glib.Signal_Name)

    Signal_Child_Title_Changed  : constant Signal_Name := "child_title_changed";

### Signal_Child_Added

- Goto declaration in source

(Glib.Signal_Name)

    Signal_Child_Added          : constant Signal_Name := "child_added";

### Signal_Child_Removed

- Goto declaration in source

(Glib.Signal_Name)

    Signal_Child_Removed        : constant Signal_Name := "child_removed";

### Signal_Child_Icon_Changed

- Goto declaration in source

(Glib.Signal_Name)

    Signal_Child_Icon_Changed   : constant Signal_Name := "child_icon_changed";

### Signal_Delete_Event

- Goto declaration in source

(Glib.Signal_Name)

    Signal_Delete_Event         : constant Signal_Name := "delete_event";

### Signal_Selected

- Goto declaration in source

(Glib.Signal_Name)

    Signal_Selected             : constant Signal_Name := "selected";

### Signal_Unfloat_Child

- Goto declaration in source

(Glib.Signal_Name)

    Signal_Unfloat_Child        : constant Signal_Name := "unfloat_child";

### Signal_Perspective_Changed

- Goto declaration in source

(Glib.Signal_Name)

    Signal_Perspective_Changed  : constant Signal_Name := "perspective_changed";

### Signal_Children_Reorganized

- Goto declaration in source

(Glib.Signal_Name)

    Signal_Children_Reorganized : constant Signal_Name :=
                                       "children_reorganized";

### Signal_Child_State_Changed

- Goto declaration in source

(Glib.Signal_Name)

    Signal_Child_State_Changed  : constant Signal_Name := "child_state_changed";

# Subprograms & Entries

### Gtk_New

- Goto spec in source

    procedure Gtk_New (MDI: out MDI_Window;Group: access Gtk.Accel_Group.Gtk_Accel_Group_Record'Class;Independent_Perspectives: Boolean := False);

Create a new MDI window. Note that it is recommended that you modify the style (Set_Background in State_Normal) to have a different color. You should call Setup_Toplevel_Window once you have added the MDI to a toplevel widget, so that focus is correctly handled when the toplevel window gains the focus When Independent_Perspectives is True, switching perspectives will not preserve any window. Otherwise, the windows that are in the central area will be preserved in the new perspective.

### Initialize

- Goto spec in source

    procedure Initialize (MDI: access MDI_Window_Record'Class;Group: access Gtk.Accel_Group.Gtk_Accel_Group_Record'Class;Independent_Perspectives: Boolean := False);

Internal initialization function. See the section "Creating your own widgets" in the documentation.

### Setup_Toplevel_Window

- Goto spec in source

    procedure Setup_Toplevel_Window (MDI: access MDI_Window_Record;Parent: access Gtk.Window.Gtk_Window_Record'Class);

Setup Parent to properly handle focus when the window manager changes the window that currently has the focus. Parent must be the toplevel window that contains the MDI.

### Configure

- Goto spec in source

    procedure Configure (MDI: access MDI_Window_Record;Opaque_Resize: Boolean := False;Close_Floating_Is_Unfloat: Boolean := True;Title_Font: Pango.Font.Pango_Font_Description := null;Background_Color: Gdk.Color.Gdk_Color := Gdk.Color.Null_Color;Title_Bar_Color: Gdk.Color.Gdk_Color := Gdk.Color.Null_Color;Focus_Title_Color: Gdk.Color.Gdk_Color := Gdk.Color.Null_Color;Draw_Title_Bars: Title_Bars_Policy   := Always;Tabs_Position: Gtk.Enums.Gtk_Position_Type := Gtk.Enums.Pos_Bottom;Show_Tabs_Policy: Show_Tabs_Policy_Enum := Automatic);

Change the setup of the MDI. Close_Floating_Is_Unfloat, if True, means that closing a floating child will put it back in the MDI instead of destroying it (unless its flag Always_Destroy_Float is set). Title_Font is the font used in the title bars (if null, "sans 8" is used). The colors, when Null_Color, will not change the current setup. If Draw_Title_Bars is False, then no extra title bar will be displayed for the MDI children when they are maximized. This saves space on the screen. However, the notebook tabs will be highlighted with Title_Bar_Color in exchange. Tabs_Position indicates where the notebook tabs should be put. Show_Tabs_Policy indicates when the notebook tabs should be displayed.

### Independent_Perspectives

- Goto spec in source

    function Independent_Perspectives (MDI: access MDI_Window_Record) return Boolean;

Whether the MDI is using independent perspectives

### Gtk_New

- Goto spec in source

    procedure Gtk_New (Child: out MDI_Child;Widget: access Gtk.Widget.Gtk_Widget_Record'Class;Flags: Child_Flags := All_Buttons;Group: Child_Group := Group_Default;Focus_Widget: Gtk.Widget.Gtk_Widget := null);

Create a new MDI child that contains widget. Widget mustn't be of type Gtk_Window. You shouldn't access Widget directly afterwards, but should manipulate Child only. However, as a special exception, you can still pass Widget as a parameter to the subprograms in this package to manipulate it (e.g. in Raise_Child, ...) Note: You might have to call Set_Size_Request on Widget to set its initial size. This won't prevent it from being resized by the user. If Focus_Widget is not null, this is the widget that gets the keyboard focus when the child is selected.

### Initialize

- Goto spec in source

    procedure Initialize (Child: access MDI_Child_Record'Class;Widget: access Gtk.Widget.Gtk_Widget_Record'Class;Flags: Child_Flags := All_Buttons;Group: Child_Group := Group_Default;Focus_Widget: Gtk.Widget.Gtk_Widget := null);

Internal initialization function. See the section "Creating your own widgets" in the documentation.

### Put

- Goto spec in source

    procedure Put (MDI: access MDI_Window_Record;Child: access MDI_Child_Record'Class;Initial_Position: Child_Position := Position_Automatic);

Add a new child to the MDI window, and return its embedding widget. Calling Put does not give the focus to the newly inserted widget. To do that, you should call Set_Focus_Child.

### Set_Size

- Goto spec in source

    procedure Set_Size (MDI: access MDI_Window_Record;Child: access MDI_Child_Record'Class;Width: Glib.Gint;Height: Glib.Gint;Fixed_Size: Boolean := False);

Forces a new size for a child. If Width or Height is left to -1, the matching size will be computed from the child's requisition. If they are left to 0, the corresponding length is left to its current value. If Fixed_Size is True, then the widget will not be resized when the MDI itself is resized (unless the user has first moved one of the handles to manually resize it). Otherwise, it will grow proportionally with the rest of the MDI.

### Close

- Goto spec in source

    procedure Close (MDI: access MDI_Window_Record;Child: access Gtk.Widget.Gtk_Widget_Record'Class;Force: Boolean := False);

Close the child that contains Child, and remove its window from the MDI. See also Close_Child if you need to close a MDI_Child itself. This first checks through a delete_event callback whether the child accepts to be closed. "delete_event" is not sent, and the child is automatically closed, if Force is set to True.

### Set_Title

- Goto spec in source

    procedure Set_Title (Child: access MDI_Child_Record;Title: UTF8_String;Short_Title: UTF8_String := "");

Set the title for a child. Title is the title put in titlebar of the children, whereas Short_Title is the name of the notebook tab when children are maximized. By default, it is the same as Title. The default title is the empty string. This title will be the one used for the window when the child is set to floating state.

### Get_MDI

- Goto spec in source

    function Get_MDI (Child: access MDI_Child_Record) return MDI_Window;

Return the MDI to which Child is associated. In Child is a floating child, it might not be in the MDI window itself.

### Get_Title

- Goto spec in source

    function Get_Title (Child: access MDI_Child_Record) return UTF8_String;

Return the title for a specific child

### Get_Short_Title

- Goto spec in source

    function Get_Short_Title (Child: access MDI_Child_Record) return UTF8_String;

Return the name of the notebook tab used when children are maximized.

### Has_Title_Bar

- Goto spec in source

    function Has_Title_Bar (Child: access MDI_Child_Record) return Boolean;

Whether a title bar is currently displayed for Child

### Get_State

- Goto spec in source

    function Get_State (Child: access MDI_Child_Record) return State_Type;

Return the current state of the child

### Set_Icon

- Goto spec in source

    procedure Set_Icon (Child: access MDI_Child_Record;Icon: Gdk.Pixbuf.Gdk_Pixbuf);

Associate an icon with Child. This icon is visible in the title bar, the notebook tabs, the Window menu and the interactive selection dialog. The icon is updated dynamically on the screen.

### Get_Icon

- Goto spec in source

    function Get_Icon (Child: access MDI_Child_Record) return Gdk.Pixbuf.Gdk_Pixbuf;

Returns the icon associated with Child

### Dnd_Data

- Goto spec in source

    function Dnd_Data (Child: access MDI_Child_Record;Copy: Boolean) return MDI_Child;

When a drag-and-drop operation took place to move a child from one position to the next, this function is called to know what child should be moved. As a result, the implementor can choose whether a copy of the child should be returned (creating a new view for an editor for instance), or if the child itself should be moved (the default). The returned MDI_Child must have been added to the MDI before it is returned. Copy is set to true if a copy operation was requested, to False if a simple move operation was requested. It can be ignored if Child doesn't know how to create a copy of itself for instance.

### Set_Dnd_Message

- Goto spec in source

    procedure Set_Dnd_Message (MDI: access MDI_Window_Record;Message: String);

Override the message that is displayed in the popup window while performing a drag. By default, this message mentions: "... will be (preserved|hidden) when changing perspective" "Use shift to create a new view for editors" so might not be suitable for all applications. Through this function you can override the message. If you insert the special sequence "(#)" in the message, it will be replaced either with "preserved" or "hidden" depending on where the drop occurs (the central area or the perspectives). It could also be replaced by an empty string if the MDI was configured with independent perspectives. You can use markup like "<b>...</b>" to put keywords in bold. Passing an empty string for Message will restore the default message.

### Child_Drag_Begin

- Goto spec in source

    procedure Child_Drag_Begin (Child: access MDI_Child_Record'Class;Event: Gdk.Event.Gdk_Event);

Starts a drag-and-drop operation for the child, so that it can be put in some other place on the desktop. This should only be called when a handler for the "button_press_event" signal, passing the event itself in parameter. The Child is immediately raised and gains the focus.

### Cancel_Child_Drag

- Goto spec in source

    procedure Cancel_Child_Drag (Child: access MDI_Child_Record'Class);

Cancel a drag operation started by Child_Drag_Begin. It doesn't call Child_Drag_Finished.

### Child_Drag_Finished

- Goto spec in source

    procedure Child_Drag_Finished (Child: access MDI_Child_Record);

Called when a drag operation is either aborted or completed. It should be overriden if special cleanup should be done.

### Set_Tab_Contextual_Menu_Factory

- Goto spec in source

    procedure Set_Tab_Contextual_Menu_Factory (MDI: access MDI_Window_Record;Factory: Tab_Contextual_Menu_Factory);

Set (or unset if Factory is null) the callback to create the contextual menu entries when the user clicks on a notebook tab. Factory should add entries to Menu (which already contains the default entries, but you can remove them if needed).

### Highlight_Child

- Goto spec in source

    procedure Highlight_Child (Child: access MDI_Child_Record;Highlight: Boolean := True);

Highlight the child until it is selected by the user. The color of its menu label and of the text in the notebook tabs is changed. Nothing is done if the child is already fully visible (either in the active page in one of the notebooks, or the child that has the selection in the layout). This is meant to be used as a graphical note to the user that the child has been updated and the user should look at it.

### Get_Focus_Child

- Goto spec in source

    function Get_Focus_Child (MDI: access MDI_Window_Record) return MDI_Child;

Return the child that currently has the MDI focus. null is returned if no child has the focus.

### Set_Focus_Child

- Goto spec in source

    procedure Set_Focus_Child (MDI: access MDI_Window_Record;Containing: access Gtk.Widget.Gtk_Widget_Record'Class);

Give the focus to the child containing Containing. This will not Grab_Focus for the child in all cases, since you might want to give the focus to some specific part of your widget (an entry field,...) in some cases.

### Set_Focus_Child

- Goto spec in source

    procedure Set_Focus_Child (Child: access MDI_Child_Record);

Make Child the active widget, and raise it at the top.

### Check_Interactive_Selection_Dialog

- Goto spec in source

    procedure Check_Interactive_Selection_Dialog (MDI: access MDI_Window_Record;Event: Gdk.Event.Gdk_Event;Move_To_Next: Boolean;Only_Group: Child_Group := Group_Any);

Open the interactive dialog for selecting windows. This dialog should be open as a result of a key press event. Move_To_Next indicates whether we want to select the next child (True) or the previous child (False). This dialog will be closed only when the key that opened it is fully released. For instance, if the dialog was opened as a result of pressing Ctrl-Tab, the dialog will only be closed when Ctrl itself is released. You can call this procedure even if a dialog is currently open. This simply forces a move to the next or previous child. In fact, it is your responsability to call this procedure when the user presses the keys to move between children. If Event is null, then no dialog is displayed. Instead, the next or previous visible child is immediately selected. In such a mode, windows that are not on top of their respective notebook are ignored. This can be used to emulate Emacs's behavior for goto-other-window. If Only_Group is specified, then only the windows from that group will be shown in the dialog.

### Get_Widget

- Goto spec in source

    function Get_Widget (Child: access MDI_Child_Record) return Gtk.Widget.Gtk_Widget;

Return the widget that Child encapsulates. This is the widget you initially Put() in MDI.

### Find_MDI_Child

- Goto spec in source

    function Find_MDI_Child (MDI: access MDI_Window_Record;Widget: access Gtk.Widget.Gtk_Widget_Record'Class) return MDI_Child;

Return the MDI_Child that encapsulates Widget. Widget must be the exact same one you gave in argument to Put. If the child is currently not visible in the perspective (for instance it was created for another perspective, but is not present in the current one), it is inserted automatically back in the MDI.

### Find_MDI_Child_From_Widget

- Goto spec in source

    function Find_MDI_Child_From_Widget (Widget: access Gtk.Widget.Gtk_Widget_Record'Class) return MDI_Child;

Return the MDI child that encapsulate the parent of Widget. As opposed to Find_MDI_Child, Widget can be anywhere within the widget tree. This function properly handles floating children If the child is currently not visible in the perspective (for instance it was created for another perspective, but is not present in the current one), it is inserted automatically back in the MDI.

### Find_MDI_Child_By_Tag

- Goto spec in source

    function Find_MDI_Child_By_Tag (MDI: access MDI_Window_Record;Tag: Ada.Tags.Tag;Visible_Only: Boolean := False) return MDI_Child;

Return the first child matching Tag If the child is currently not visible in the perspective (for instance it was created for another perspective, but is not present in the current one), it is inserted automatically back in the MDI. If Visible_Only is True, an invisible child is not returned. This is useful to check whether a child is currently visible.

### Find_MDI_Child_By_Name

- Goto spec in source

    function Find_MDI_Child_By_Name (MDI: access MDI_Window_Record;Name: String) return MDI_Child;

Return the first child matching Name. If the child is currently not visible in the perspective (for instance it was created for another perspective, but is not present in the current one), it is inserted automatically back in the MDI.

### First_Child

- Goto spec in source

    function First_Child (MDI: access MDI_Window_Record;Group_By_Notebook: Boolean := False;Visible_Only: Boolean := True) return Child_Iterator;

Return an access to the first child of the MDI. If Group_By_Notebook is True, then the children are reported one after the other, but all the widget from the same notebook are reported in the same order as the notebook pages. Floating children do not belong to a notebook, and are also reported together. To find out to which notebook a child belongs, use Get_Notebook below. If Group_By_Notebook is False, it is garanteed that the first child is the one that currently has the focus in the MDI. The children are returned in the order in which they last had the focus. If Visible_Only is true, then only those children currently visible in the perspective are returned. The children that were part of a former perspective are not returned.

### Next

- Goto spec in source

    procedure Next (Iterator: in out Child_Iterator);

Move to the next child in the MDI

### Get_Notebook

- Goto spec in source

    function Get_Notebook (Iterator: Child_Iterator) return Gtk.Notebook.Gtk_Notebook;

Return the notebook to which the current child belongs. null is returned for floating children

### Get

- Goto spec in source

    function Get (Iterator: Child_Iterator) return MDI_Child;

Return the child pointed to by Iterator. If Iterator is no longer valid, null is returned.

### Float_Child

- Goto spec in source

    procedure Float_Child (Child: access MDI_Child_Record'Class;Float: Boolean);

Change the floating state of a child

### Is_Floating

- Goto spec in source

    function Is_Floating (Child: access MDI_Child_Record'Class) return Boolean;

Return True if Child is currently in a separate window

### Close_Child

- Goto spec in source

    procedure Close_Child (Child: access MDI_Child_Record'Class;Force: Boolean := False);

Same as Close, but applies directly to a MDI_Child.

### Set_All_Floating_Mode

- Goto spec in source

    procedure Set_All_Floating_Mode (MDI: access MDI_Window_Record;All_Floating: Boolean);

If All_Floating is set to true, the MDI will have a size of 0x0, and all children are set to floating. This can be used if you wish to let the window manager handle the windows. If All_Floating is True, children can no longer be maximized.

### Use_Short_Titles_For_Floats

- Goto spec in source

    procedure Use_Short_Titles_For_Floats (MDI: access MDI_Window_Record;Short_Titles: Boolean);

If Short_Titles is set to true, only short titles will ever be used either in the title bars (in notebooks) or as the title for floating windows.

### Raise_Child

- Goto spec in source

    procedure Raise_Child (Child: access MDI_Child_Record'Class;Give_Focus: Boolean := True);

Put Child in the foreground. Note that this does not give the focus to this child, unless Give_Focus is set to True. If Child and the current focus child are in the same notebook, Child will always gain the focus, so that the focus is not left on an invisible window.

### Is_Raised

- Goto spec in source

    function Is_Raised (Child: access MDI_Child_Record'Class) return Boolean;

Whether the child is currently raised, ie fully visible to the user

### Lower_Child

- Goto spec in source

    procedure Lower_Child (Child: access MDI_Child_Record'Class);

Put Child in the background. If the children are maximized, this selected the next page from the notebook.

### Split

- Goto spec in source

    procedure Split (MDI: access MDI_Window_Record;Orientation: Gtk.Enums.Gtk_Orientation;Child: MDI_Child := null;Mode: Split_Mode := Before;Width, Height: Glib.Gint := 0);

Split the notebook containing Child (by default, the current focus child). Mode indicates in which direction the splitting should occur. If you are splitting a child in the central area, splitting will never reuse a window outside of the central area. Width and Height indicate the desired geometry for the splitted area, 0 indicate a 50/50 split.

### Desktop_Was_Loaded

- Goto spec in source

    function Desktop_Was_Loaded (MDI: access MDI_Window_Record) return Boolean;

Return True if a desktop was loaded, False if the MDI is only the result of calls to Gtk_New and Put.

### List_Of_Perspectives

- Goto spec in source

    function List_Of_Perspectives (MDI: access MDI_Window_Record) return GNAT.Strings.String_List_Access;

Return the list of perspectives known to the MDI. The caller must not free the list

### Current_Perspective

- Goto spec in source

    function Current_Perspective (MDI: access MDI_Window_Record'Class) return String;

Return the name of the currently displayed perspective