## Documentation

Table of Contents
Class Inheritance Tree
Widget Screenshots
Package groups

## Index

Package: Return_Callback (generic)

- Goto spec source

# Description

    generic
          type Widget_Type is new Glib.Object.GObject_Record with private;
          type Return_Type is (<>);
       package Return_Callback is

# Packages

### Marshallers (new Gtk.Marshallers.Return_Marshallers)

    package Marshallers is new Gtk.Marshallers.Return_Marshallers
            (Widget_Type, Return_Type);

### Gint_Marshaller (new Gtk.Marshallers.Return_Marshallers.Generic_Marshaller)

    package Gint_Marshaller is new Marshallers.Generic_Marshaller
            (Gint, Glib.Values.Get_Int);

### Guint_Marshaller (new Gtk.Marshallers.Return_Marshallers.Generic_Marshaller)

    package Guint_Marshaller is new Marshallers.Generic_Marshaller
            (Guint, Glib.Values.Get_Uint);

### Event_Marshaller (new Gtk.Marshallers.Return_Marshallers.Generic_Marshaller)

    package Event_Marshaller is new Marshallers.Generic_Marshaller
            (Gdk.Event.Gdk_Event, Gdk.Event.Get_Event);

### Widget_Marshaller (new Gtk.Marshallers.Return_Marshallers.Generic_Widget_Marshaller)

    package Widget_Marshaller is new Marshallers.Generic_Widget_Marshaller
            (Gtk.Widget.Gtk_Widget_Record, Gtk.Widget.Gtk_Widget);

### Notebook_Page_Marshaller (new Gtk.Marshallers.Return_Marshallers.Generic_Marshaller)

    package Notebook_Page_Marshaller is new Marshallers.Generic_Marshaller
            (Gtk.Notebook.Gtk_Notebook_Page, Gtk.Notebook.Get_Notebook_Page);

# Types

### Widget_Type

- Goto declaration in source

    type Widget_Type is new Glib.Object.GObject_Record with private;

### Return_Type

- Goto declaration in source

    type Return_Type is (<>);

### Handler

- Goto declaration in source

    type Handler is access function
            (Widget : access Widget_Type'Class;
             Params : Glib.Values.GValues) return Return_Type;

### Simple_Handler

- Goto declaration in source

    type Simple_Handler is access function
            (Widget : access Widget_Type'Class) return Return_Type;

# Subprograms & Entries

### Connect

- Goto spec in source

    procedure Connect (Widget: access Widget_Type'Class;Name: Glib.Signal_Name;Marsh: Marshallers.Marshaller;After: Boolean := False);

Connects a Marshaller. The Handler_Id is dropped.

### Object_Connect

- Goto spec in source

    procedure Object_Connect (Widget: access Glib.Object.GObject_Record'Class;Name: Glib.Signal_Name;Marsh: Marshallers.Marshaller;Slot_Object: access Widget_Type'Class;After: Boolean := False);

Connect a Marshaller. The Handler_Id is dropped. This is automatically disconnected as soon as either Widget or Slot_Object is destroyed. Slot_Object *must* be of type Gtk_Object or one of its children.

### Connect

- Goto spec in source

    procedure Connect (Widget: access Widget_Type'Class;Name: Glib.Signal_Name;Cb: Simple_Handler;After: Boolean := False);

### Object_Connect

- Goto spec in source

    procedure Object_Connect (Widget: access Glib.Object.GObject_Record'Class;Name: Glib.Signal_Name;Cb: Simple_Handler;Slot_Object: access Widget_Type'Class;After: Boolean := False);

Same as above, except with a simple handle with no parameter. This is the same as using a To_Marshaller call to the above two procedures, except it is shorter to write.

### Connect

- Goto spec in source

    procedure Connect (Widget: access Widget_Type'Class;Name: Glib.Signal_Name;Cb: Handler;After: Boolean := False);

### Object_Connect

- Goto spec in source

    procedure Object_Connect (Widget: access Glib.Object.GObject_Record'Class;Name: Glib.Signal_Name;Cb: Handler;Slot_Object: access Widget_Type'Class;After: Boolean := False);

Connect a Handler. The Handler_Id is dropped. This is automatically disconnected as soon as either Widget or Slot_Object is destroyed. Slot_Object *must* be of type Gtk_Object or one of its children.

### Connect

- Goto spec in source

    function Connect (Widget: access Widget_Type'Class;Name: Glib.Signal_Name;Marsh: Marshallers.Marshaller;After: Boolean := False) return Handler_Id;

Connects a Marshaller. Returns the Handler_Id.

### Object_Connect

- Goto spec in source

    function Object_Connect (Widget: access Glib.Object.GObject_Record'Class;Name: Glib.Signal_Name;Marsh: Marshallers.Marshaller;Slot_Object: access Widget_Type'Class;After: Boolean := False) return Handler_Id;

Connect a Marshaller. Return the Handler_Id. This is automatically disconnected as soon as either Widget or Slot_Object is destroyed. Slot_Object *must* be of type Gtk_Object or one of its children.

### Connect

- Goto spec in source

    function Connect (Widget: access Widget_Type'Class;Name: Glib.Signal_Name;Cb: Handler;After: Boolean := False) return Handler_Id;

Connects a Handler. Returns the Handler_Id.

### Object_Connect

- Goto spec in source

    function Object_Connect (Widget: access Glib.Object.GObject_Record'Class;Name: Glib.Signal_Name;Cb: Handler;Slot_Object: access Widget_Type'Class;After: Boolean := False) return Handler_Id;

Connect a Handler. Returns the Handler_Id. This is automatically disconnected as soon as either Widget or Slot_Object is destroyed. Slot_Object *must* be of type Gtk_Object or one of its children.

### To_Marshaller

- Goto spec in source

    function To_Marshaller (Cb: Gint_Marshaller.Handler) return Marshallers.Marshaller renames Gint_Marshaller.To_Marshaller;

### To_Marshaller

- Goto spec in source

    function To_Marshaller (Cb: Guint_Marshaller.Handler) return Marshallers.Marshaller renames Guint_Marshaller.To_Marshaller;

### To_Marshaller

- Goto spec in source

    function To_Marshaller (Cb: Event_Marshaller.Handler) return Marshallers.Marshaller renames Event_Marshaller.To_Marshaller;

### To_Marshaller

- Goto spec in source

    function To_Marshaller (Cb: Widget_Marshaller.Handler) return Marshallers.Marshaller renames Widget_Marshaller.To_Marshaller;

### To_Marshaller

- Goto spec in source

    function To_Marshaller (Cb: Marshallers.Void_Marshaller.Handler) return Marshallers.Marshaller renames Marshallers.Void_Marshaller.To_Marshaller;

### To_Marshaller

- Goto spec in source

    function To_Marshaller (Cb: Notebook_Page_Marshaller.Handler) return Marshallers.Marshaller renames Notebook_Page_Marshaller.To_Marshaller;

### Emit_By_Name

- Goto spec in source

    function Emit_By_Name (Object: access Widget_Type'Class;Name: Glib.Signal_Name;Param: Gint) return Return_Type renames Gint_Marshaller.Emit_By_Name;

### Emit_By_Name

- Goto spec in source

    function Emit_By_Name (Object: access Widget_Type'Class;Name: Glib.Signal_Name;Param: Guint) return Return_Type renames Guint_Marshaller.Emit_By_Name;

### Emit_By_Name

- Goto spec in source

    function Emit_By_Name (Object: access Widget_Type'Class;Name: Glib.Signal_Name;Param: Gdk.Event.Gdk_Event) return Return_Type;

### Emit_By_Name

- Goto spec in source

    function Emit_By_Name (Object: access Widget_Type'Class;Name: Glib.Signal_Name;Param: access Gtk.Widget.Gtk_Widget_Record'Class) return Return_Type renames Widget_Marshaller.Emit_By_Name;

### Emit_By_Name

- Goto spec in source

    function Emit_By_Name (Object: access Widget_Type'Class;Name: Glib.Signal_Name) return Return_Type renames Marshallers.Void_Marshaller.Emit_By_Name;

### Emit_By_Name

- Goto spec in source

    function Emit_By_Name (Object: access Widget_Type'Class;Name: Glib.Signal_Name;Param: Gtk.Notebook.Gtk_Notebook_Page) return Return_Type renames Notebook_Page_Marshaller.Emit_By_Name;