## org.gnu.gtk
Class Dialog

    java.lang.Object
      org.gnu.glib.GObject
          org.gnu.gtk.GtkObject
              org.gnu.gtk.Widget
                  org.gnu.gtk.Container
                      org.gnu.gtk.Bin
                          org.gnu.gtk.Window
                              org.gnu.gtk.Dialog

Direct Known Subclasses:
  AboutDialog, ColorSelectionDialog, FileChooserDialog, FileSelection, FontSelectionDialog, InputDialog, MessageDialog

public class Dialog
extends Window

Dialog boxes are a convenient way to prompt the user for a small amount of input, to display a message, ask a question, or anything else that does not require extensive effort on the user's part.

GTK+ treats a dialog as a window split vertically. The top section is a `VBox`, and is where widgets such as a `Label` or a `Entry` should be packed. The bottom area is known as the actionArea. This is generally used for packing buttons into the dialog which may perform functions such as cancel, ok, or apply. The two areas are separated by a `HSeparator`.

A 'modal' dialog (that is, one which freezes the rest of the application from user input), can be created by calling `Window.setModal(boolean)` on the dialog.

If you want to block waiting for a dialog to return before returning control flow to your code, you can call `run()`. This function enters a recursive main loop and waits for the user to respond to the dialog, returning the response ID corresponding to the button the user clicked.

Field Summary

Fields inherited from class org.gnu.glib.GObject
`eventsInitialized`

Constructor Summary
`Dialog()` Construct a new Dialog object
`Dialog(Handle handle)` Construct a dialog using a handle to a native resource.

Method Summary
`void` `addButton(GtkStockItem stockItem, int responseId)` Adds a button with the given stock button and sets things up so that clicking the button will emit the "response" event with the given `responseId`.
`void` `addButton(java.lang.String buttonText, int responseId)` Adds a button with the given text and sets things up so that clicking the button will emit the "response" event with the given `responseId`.
`void` `addListener(DialogListener listener)` Register an object to handle dialog events.
`void` `addWidget(Widget child, int responseId)` Adds an activatable widget to the action area of the Dialog, connecting a signal handler that will emit the "response" signal on the dialog when the widget is activated.
`protected void` `fireButtonEvent(DialogEvent event)`
`HButtonBox` `getActionArea()` The lower area of the Dialog where the buttons are located is a HButtonBox.
`protected static Handle` `getActionArea(Handle cptr)`
`VBox` `getDialogLayout()` The upper area of the Dialog where widgets can be added is a VBox.
`java.lang.Class` `getEventListenerClass(java.lang.String signal)`
`EventType` `getEventType(java.lang.String signal)`
`boolean` `getHasSeparator()` Access for whether the dialog has a separator.
`static Type` `getType()` Retrieve the runtime type used by the GLib library.
`protected static Handle` `getVbox(Handle cptr)`
`protected static void` `gtk_dialog_add_action_widget(Handle dialog, Handle child, int responseId)`
`protected static Handle` `gtk_dialog_add_button(Handle dialog, java.lang.String buttonText, int responseId)`
`protected static boolean` `gtk_dialog_get_has_separator(Handle dialog)`
`protected static int` `gtk_dialog_get_type()`
`protected static Handle` `gtk_dialog_new()`
`protected static void` `gtk_dialog_response(Handle dialog, int responseId)`
`protected static int` `gtk_dialog_run(Handle dialog)`
`protected static void` `gtk_dialog_set_default_response(Handle dialog, int responseId)`
`protected static void` `gtk_dialog_set_has_separator(Handle dialog, boolean setting)`
`protected static void` `gtk_dialog_set_response_sensitive(Handle dialog, int responseId, boolean setting)`
`void` `removeListener(DialogListener listener)` Removes a listener
`int` `run()` Blocks in a recursive main loop until the dialog either emits a response signal or is destroyed.
`void` `setDefaultResponse(int responseId)` Sets the last widget in the dialog's action area with the given responseId as the default widget for the dialog.
`void` `setHasSeparator(boolean setting)` Sets whether the dialog has a separator above the buttons.

Methods inherited from class org.gnu.gtk.Window

`addAccelGroup, deiconify, fullscreen, getAcceptFocus, getDefaultIconList, getFocusOnMap, getFocusWidget, getGravity, getIcon, getIconList, getIconName, getPosition, getScreen, getSize, getSkipPagerHint, getSkipTaskbarHint, getTitle, gtk_window_activate_default, gtk_window_activate_focus, gtk_window_add_accel_group, gtk_window_add_mnemonic, gtk_window_begin_move_drag, gtk_window_begin_resize_drag, gtk_window_deiconify, gtk_window_fullscreen, gtk_window_get_accept_focus, gtk_window_get_decorated, gtk_window_get_default_icon_list, gtk_window_get_default_size, gtk_window_get_destroy_with_parent, gtk_window_get_focus, gtk_window_get_frame_dimensions, gtk_window_get_gravity, gtk_window_get_has_frame, gtk_window_get_icon_list, gtk_window_get_icon, gtk_window_get_mnemonic_modifier, gtk_window_get_modal, gtk_window_get_position, gtk_window_get_resizable, gtk_window_get_role, gtk_window_get_screen, gtk_window_get_size, gtk_window_get_skip_pager_hint, gtk_window_get_skip_taskbar_hint, gtk_window_get_title, gtk_window_get_transient_for, gtk_window_get_type_hint, gtk_window_get_type, gtk_window_has_toplevel_focus, gtk_window_iconify, gtk_window_is_active, gtk_window_list_toplevels, gtk_window_maximize, gtk_window_mnemonic_activate, gtk_window_move, gtk_window_new, gtk_window_parse_geometry, gtk_window_present, gtk_window_remove_accel_group, gtk_window_remove_mnemonic, gtk_window_resize, gtk_window_set_accept_focus, gtk_window_set_auto_startup_notification, gtk_window_set_decorated, gtk_window_set_default_icon_from_file, gtk_window_set_default_icon_list, gtk_window_set_default_icon, gtk_window_set_default_size, gtk_window_set_default, gtk_window_set_destroy_with_parent, gtk_window_set_focus, gtk_window_set_frame_dimensions, gtk_window_set_geometry_hints, gtk_window_set_gravity, gtk_window_set_has_frame, gtk_window_set_icon_from_file, gtk_window_set_icon_list, gtk_window_set_icon, gtk_window_set_keep_above, gtk_window_set_keep_below, gtk_window_set_mnemonic_modifier, gtk_window_set_modal, gtk_window_set_position, gtk_window_set_resizable, gtk_window_set_role, gtk_window_set_screen, gtk_window_set_skip_pager_hint, gtk_window_set_skip_taskbar_hint, gtk_window_set_title, gtk_window_set_transient_for, gtk_window_set_type_hint, gtk_window_set_wmclass, gtk_window_stick, gtk_window_unfullscreen, gtk_window_unmaximize, gtk_window_unstick, hasToplevelFocus, iconify, isActive, listToplevelWindows, maximize, move, present, removeAccelGroup, resize, setAcceptFocus, setAutoStartupNotification, setDecorated, setDefaultIcon, setDefaultIconFromFile, setDefaultIconList, setDefaultIconName, setDefaultSize, setDefaultWidget, setFocusOnMap, setFocusWidget, setGeometryHints, setGravity, setIcon, setIconFromFile, setIconList, setIconName, setKeepAbove, setKeepBelow, setModal, setPosition, setResizable, setScreen, setSkipPagerHint, setSkipTaskbarHint, setTitle, stick, unfullscreen, unmaximize, unstick`

Methods inherited from class org.gnu.gtk.Bin
`getChild, gtk_bin_get_child, gtk_bin_get_type`

Methods inherited from class org.gnu.gtk.Container

`add, addListener, fireContainerEvent, getBorderWidth, getChildren, getResizeMode, gtk_container_add, gtk_container_check_resize, gtk_container_child_type, gtk_container_get_border_width, gtk_container_get_children, gtk_container_get_focus_chain, gtk_container_get_focus_hadjustment, gtk_container_get_focus_vadjustment, gtk_container_get_resize_mode, gtk_container_get_type, gtk_container_propagate_expose, gtk_container_remove, gtk_container_resize_children, gtk_container_set_border_width, gtk_container_set_focus_chain, gtk_container_set_focus_child, gtk_container_set_focus_hadjustment, gtk_container_set_focus_vadjustment, gtk_container_set_reallocate_redraws, gtk_container_set_resize_mode, gtk_container_unset_focus_chain, remove, removeListener, resizeChildren, setBorderWidth, setResizeMode`

Methods inherited from class org.gnu.gtk.Widget

`activate, addListener, addListener, addListener, addListener, addListener, addListener, addListener, addListener, canActivateAccel, createContext, createLayout, destroy, draw, drawArea, drawArea, findListener, finish, fireBooleanLifeCycleEvent, fireDragDestinationEvent, fireDragSourceEvent, fireExposeEvent, fireFocusEvent, fireKeyEvent, fireLifeCycleEvent, fireMouseEvent, fireMouseMotionEvent, getAccessible, getColormap, getContext, getData, getDisplay, getModifierStyle, getName, getParent, getParentWindow, getPointer, getRootWindow, getSensitive, getStyle, getToplevel, getWindow, grabDefault, grabFocus, gtk_drag_dest_set, gtk_drag_dest_unset, gtk_drag_finish, gtk_drag_get_data, gtk_drag_highlight, gtk_drag_source_set_icon_pixbuf, gtk_drag_source_set_icon_stock, gtk_drag_source_set_icon, gtk_drag_source_set, gtk_drag_source_unset, gtk_drag_unhighlight, gtk_widget_activate, gtk_widget_add_accelerator, gtk_widget_add_events, gtk_widget_add_mnemonic_label, gtk_widget_can_activate_accel, gtk_widget_child_focus, gtk_widget_child_notify, gtk_widget_class_path, gtk_widget_create_pango_context, gtk_widget_create_pango_layout, gtk_widget_destroy, gtk_widget_destroyed, gtk_widget_ensure_style, gtk_widget_event, gtk_widget_freeze_child_notify, gtk_widget_get_accessible, gtk_widget_get_ancestor, gtk_widget_get_child_requisition, gtk_widget_get_child_visible, gtk_widget_get_colormap, gtk_widget_get_composite_name, gtk_widget_get_default_colormap, gtk_widget_get_default_direction, gtk_widget_get_default_style, gtk_widget_get_default_visual, gtk_widget_get_direction, gtk_widget_get_display, gtk_widget_get_events, gtk_widget_get_extension_events, gtk_widget_get_modifier_style, gtk_widget_get_name, gtk_widget_get_pango_context, gtk_widget_get_parent_window, gtk_widget_get_parent, gtk_widget_get_pointer, gtk_widget_get_root_window, gtk_widget_get_screen, gtk_widget_get_sensitive, gtk_widget_get_settings, gtk_widget_get_size_request, gtk_widget_get_style, gtk_widget_get_toplevel, gtk_widget_get_type, gtk_widget_get_visual, gtk_widget_get_window, gtk_widget_grab_default, gtk_widget_grab_focus, gtk_widget_has_screen, gtk_widget_hide_all, gtk_widget_hide_on_delete, gtk_widget_hide, gtk_widget_intersect, gtk_widget_is_ancestor, gtk_widget_is_focus, gtk_widget_list_accel_closures, gtk_widget_list_mnemonic_labels, gtk_widget_map, gtk_widget_mnemonic_activate, gtk_widget_modify_base, gtk_widget_modify_bg, gtk_widget_modify_fg, gtk_widget_modify_font, gtk_widget_modify_style, gtk_widget_modify_text, gtk_widget_path, gtk_widget_pop_colormap, gtk_widget_pop_composite_child, gtk_widget_push_colormap, gtk_widget_push_composite_child, gtk_widget_queue_draw_area, gtk_widget_queue_draw, gtk_widget_queue_resize, gtk_widget_realize, gtk_widget_ref, gtk_widget_region_intersect, gtk_widget_remove_accelerator, gtk_widget_remove_mnemonic_label, gtk_widget_render_icon, gtk_widget_reparent, gtk_widget_reset_rc_styles, gtk_widget_send_expose, gtk_widget_set_accel_path, gtk_widget_set_app_paintable, gtk_widget_set_child_visible, gtk_widget_set_colormap, gtk_widget_set_composite_name, gtk_widget_set_default_colormap, gtk_widget_set_default_direction, gtk_widget_set_direction, gtk_widget_set_double_buffered, gtk_widget_set_events, gtk_widget_set_extension_events, gtk_widget_set_name, gtk_widget_set_parent_window, gtk_widget_set_parent, gtk_widget_set_redraw_on_allocate, gtk_widget_set_scroll_adjustments, gtk_widget_set_sensitive, gtk_widget_set_size_request, gtk_widget_set_state, gtk_widget_set_style, gtk_widget_shape_combine_mask, gtk_widget_show_all, gtk_widget_show_now, gtk_widget_show, gtk_widget_size_allocate, gtk_widget_size_request, gtk_widget_style_get_property, gtk_widget_thaw_child_notify, gtk_widget_translate_coordinates, gtk_widget_unmap, gtk_widget_unparent, gtk_widget_unrealize, gtk_widget_unref, handleButtonPressed, handleButtonReleased, handleDelete, handleDragDataGet, handleDragDestination, handleExpose, handleFocusIn, handleFocusOut, handleHide, handleKeyPressed, handleKeyReleased, handleMap, handleMouseEnter, handleMouseLeave, handleMouseMotion, handleNoExpose, handleRealize, handleScroll, handleShow, handleUnmap, hasFocus, hasScreen, hide, hideAll, highlight, intersect, isAncestor, makeWidget, modifyStyle, popColormap, pushColormap, realize, removeListener, removeListener, removeListener, removeListener, removeListener, removeListener, removeListener, removeListener, reparent, setBackgroundColor, setBaseColor, setColormap, setDoubleBuffered, setDragDestination, setDragIcon, setDragIconPixbuf, setDragIconStock, setDragSource, setFont, setForegroundColor, setMinimumSize, setName, setNoDragDestination, setNoDragSource, setSensitive, setTextColor, shapeCombineMask, show, showAll, unHighlight`

Methods inherited from class org.gnu.gtk.GtkObject
`getFlags, gtk_object_destroy, gtk_object_get_type, gtk_object_sink, setFlags, sink`

Methods inherited from class org.gnu.glib.GObject

`addEventHandler, addEventHandler, addEventHandler, addEventHandler, addEventHandler, addEventHandler, addListener, equals, freezeNotify, getBooleanProperty, getData, getData, getDoubleProperty, getFloatProperty, getGObjectFromHandle, getHandle, getIntFromHandle, getIntProperty, getJavaObjectProperty, getLongProperty, getNullHandle, getPixbufProperty, getProperty, getStringFromHandle, getStringProperty, hashCode, hasProperty, instantiateJGObjectFromGType, notify, removeEventHandler, removeListener, retrieveGObject, setBooleanProperty, setData, setData, setDoubleProperty, setFloatProperty, setHandle, setIntProperty, setJavaObjectProperty, setLongProperty, setPixbufProperty, setProperty, setStringProperty, thawNotify`

Methods inherited from class java.lang.Object
`clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### Dialog

    public Dialog()

  Construct a new Dialog object

### Dialog

    public Dialog(Handle handle)

  Construct a dialog using a handle to a native resource.

Method Detail

### run

    public int run()

  Blocks in a recursive main loop until the dialog either emits a response signal or is destroyed. The return value can be compared against a `ResponseType` to determine if a standard return value is emitted. The developer can also set the response type when a button or widget is added to the dialog. If the dialog is destroyed the run method will return RESPONSE_NONE.

  Returns:
    The response that indicates which button the user pressed or RESPONSE_NONE if the window was destroyed.

### addButton

    public void addButton(java.lang.String buttonText,
                          int responseId)

  Adds a button with the given text and sets things up so that clicking the button will emit the "response" event with the given `responseId`.

  Parameters:
    `buttonText` - The text string to display on the button.
    `responseId` - The response ID to emit when the user clicks the button that is to be added.

### addButton

    public void addButton(GtkStockItem stockItem,
                          int responseId)

  Adds a button with the given stock button and sets things up so that clicking the button will emit the "response" event with the given `responseId`.

  Parameters:
    `responseId` - The response ID to emit when the user clicks the button that is to be added.

### addWidget

    public void addWidget(Widget child,
                          int responseId)

  Adds an activatable widget to the action area of the Dialog, connecting a signal handler that will emit the "response" signal on the dialog when the widget is activated. The Widget is appended to the end of the Dialog's action area.

  Parameters:
    `child` - An activatable Widget to add to the dialog.
    `responseId` - The response ID to emit when the user clicks the widget.

### setDefaultResponse

    public void setDefaultResponse(int responseId)

  Sets the last widget in the dialog's action area with the given responseId as the default widget for the dialog. Pressing "Enter" normally activates the default widget.

  Parameters:
    `responseId` - The response ID.

### getDialogLayout

    public VBox getDialogLayout()

  The upper area of the Dialog where widgets can be added is a VBox. This method will return that layout control.

  Returns:
    The VBox that is the layout control for the dialog.

### getActionArea

    public HButtonBox getActionArea()

  The lower area of the Dialog where the buttons are located is a HButtonBox. This methos will return that container.

  Returns:
    The HButton box that is known as the action area.

### setHasSeparator

    public void setHasSeparator(boolean setting)

  Sets whether the dialog has a separator above the buttons. This is true by default.

  Parameters:
    `setting` - Indicates if a separator should be added to the dialog.

### getHasSeparator

    public boolean getHasSeparator()

  Access for whether the dialog has a separator.

  Returns:
    true if the Dialog has a separator.

### addListener

    public void addListener(DialogListener listener)

  Register an object to handle dialog events.

  See Also:
    `DialogListener`

### removeListener

    public void removeListener(DialogListener listener)

  Removes a listener

  See Also:
    `addListener(org.gnu.gtk.event.DialogListener)`

### fireButtonEvent

    protected void fireButtonEvent(DialogEvent event)

### getEventListenerClass

    public java.lang.Class getEventListenerClass(java.lang.String signal)

  Overrides:
    `getEventListenerClass` in class `Container`

### getEventType

    public EventType getEventType(java.lang.String signal)

  Overrides:
    `getEventType` in class `Container`

### getType

    public static Type getType()

  Retrieve the runtime type used by the GLib library.

### getVbox

    protected static final Handle getVbox(Handle cptr)

### getActionArea

    protected static final Handle getActionArea(Handle cptr)

### gtk_dialog_get_type

    protected static final int gtk_dialog_get_type()

### gtk_dialog_new

    protected static final Handle gtk_dialog_new()

### gtk_dialog_add_action_widget

    protected static final void gtk_dialog_add_action_widget(Handle dialog,
                                                             Handle child,
                                                             int responseId)

### gtk_dialog_add_button

    protected static final Handle gtk_dialog_add_button(Handle dialog,
                                                        java.lang.String buttonText,
                                                        int responseId)

### gtk_dialog_set_response_sensitive

    protected static final void gtk_dialog_set_response_sensitive(Handle dialog,
                                                                  int responseId,
                                                                  boolean setting)

### gtk_dialog_set_default_response

    protected static final void gtk_dialog_set_default_response(Handle dialog,
                                                                int responseId)

### gtk_dialog_set_has_separator

    protected static final void gtk_dialog_set_has_separator(Handle dialog,
                                                             boolean setting)

### gtk_dialog_get_has_separator

    protected static final boolean gtk_dialog_get_has_separator(Handle dialog)

### gtk_dialog_response

    protected static final void gtk_dialog_response(Handle dialog,
                                                    int responseId)

### gtk_dialog_run

    protected static final int gtk_dialog_run(Handle dialog)