// -*- c++ -*-
//  Generated by gtkmmproc from ./../inputdialog.gen_h -- DO NOT MODIFY!
#include <gtk--/inputdialog.h>
#include <gtk--/private/inputdialog_p.h>
namespace Gtk {
Gtk::InputDialog *wrap (GtkInputDialog *o)
  {
    return static_cast<Gtk::InputDialog *> (Gtk::wrap_auto ((GtkObject *) (o)));
  }
}

namespace Gtk {
InputDialog_Class InputDialog::input_dialog_class = {0};

Object* InputDialog_Class::wrap_new(GtkObject* o)
  {
    Object* cpp=manage(new InputDialog((GtkInputDialog*)(o)));
    return cpp;
  }

bool InputDialog::isA( Object *checkcast)
  {
    return GTK_IS_INPUT_DIALOG(checkcast->gtkobj());
  }

GtkType InputDialog::get_type()
  {
    return input_dialog_class.get_type();
  }

GtkType InputDialog_Class::get_type()
  {
    if (!type)
      {
        CppClassParent::CppObjectType::get_type();
        GtkTypeInfo info =
          {
            "Gtk__InputDialog",
            sizeof(BaseObjectType),
            sizeof(BaseClassType),
            (GtkClassInitFunc) class_init_function,
            (GtkObjectInitFunc) object_init_function,
            /* reserved_1 */ NULL,
            /* reserved_2 */ NULL,
            /*base_class_init_func */ (GtkClassInitFunc) NULL
          };
        type=gtk_type_unique(gtk_input_dialog_get_type(), &info);
      }
    return type;
  }

const char* const InputDialog::signal_names[]={
   "enable_device",
   "disable_device",
   0};

void InputDialog::initialize_class()
  {

     input_dialog_self=this;

  }

void InputDialog_Class::class_init_function(GtkInputDialogClass *klass)
  {
    CppClassParent::class_init_function((BaseClassParent*)klass);
    klass->enable_device=enable_device_callback;
    klass->disable_device=disable_device_callback;
  }

void InputDialog_Class::object_init_function(GtkInputDialog *)
  {}

}

Gtk::InputDialog::InputDialog()
  :     Gtk::Dialog((GtkDialog*)(gtk_object_new(get_type(),0)))
  {
    initialize_class();
  }

Gtk::InputDialog::InputDialog(GtkInputDialog *castitem)
  :     Gtk::Dialog((GtkDialog*)(castitem))
  {
    initialize_class();
  }

Gtk::InputDialog::~InputDialog() { destroy_(); }

void Gtk::InputDialog_Class::enable_device_callback(GtkInputDialog* o_,guint32 p0)
  {
    CppObjectType *obj=
      static_cast<CppObjectType *>(static_cast<Gtk::Object *>(
        gtk_object_get_data_by_id((GtkObject*)o_,Gtk::quark_)));

    if (obj)
      obj->enable_device_impl(p0);
    else
      {
        BaseClassType* base=
          static_cast<BaseClassType*>(
            gtk_type_parent_class(((GtkObject*)o_)->klass->type));
        if (base->enable_device)
          (base->enable_device)(o_,p0);
      }

  }

void Gtk::InputDialog::enable_device_impl(guint32 p0)
  {
    BaseClassType* base=
      static_cast<BaseClassType*>(
        gtk_type_parent_class(gtkobject->klass->type));
    if (base->enable_device)
      (base->enable_device)(gtkobj(),p0);

  }

void Gtk::InputDialog_Class::disable_device_callback(GtkInputDialog* o_,guint32 p0)
  {
    CppObjectType *obj=
      static_cast<CppObjectType *>(static_cast<Gtk::Object *>(
        gtk_object_get_data_by_id((GtkObject*)o_,Gtk::quark_)));

    if (obj)
      obj->disable_device_impl(p0);
    else
      {
        BaseClassType* base=
          static_cast<BaseClassType*>(
            gtk_type_parent_class(((GtkObject*)o_)->klass->type));
        if (base->disable_device)
          (base->disable_device)(o_,p0);
      }

  }

void Gtk::InputDialog::disable_device_impl(guint32 p0)
  {
    BaseClassType* base=
      static_cast<BaseClassType*>(
        gtk_type_parent_class(gtkobject->klass->type));
    if (base->disable_device)
      (base->disable_device)(gtkobj(),p0);

  }

Gtk::OptionMenu* Gtk::InputDialog::get_mode_optionmenu() const
  { return Gtk::wrap((GtkOptionMenu*)(gtkobj()->mode_optionmenu)); }

Gtk::Button* Gtk::InputDialog::get_close_button() const
  { return Gtk::wrap((GtkButton*)(gtkobj()->close_button)); }

Gtk::Button* Gtk::InputDialog::get_save_button() const
  { return Gtk::wrap((GtkButton*)(gtkobj()->save_button)); }
