// -*- c++ -*-
/*  Generated by gensig from layout.gen_h. DO NOT MODIFY!!! */
#ifndef GTKMM_LAYOUT_HEADER
#define GTKMM_LAYOUT_HEADER
/* $Id: layout.gen_h,v 1.9.2.2 1999/03/20 04:59:40 terop Exp $ */

/* layout.h
 * 
 * Copyright (C) 1998 EMC Capital Management Inc.
 * Developed by Havoc Pennington <hp@pobox.com>
 *
 * This library is free software; you can redistribute it and/or
 * modify it under the terms of the GNU Library General Public
 * License as published by the Free Software Foundation; either
 * version 2 of the License, or (at your option) any later version.
 *
 * This library is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 * Library General Public License for more details.
 *
 * You should have received a copy of the GNU Library General Public
 * License along with this library; if not, write to the Free
 * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
 */

#include <gtk--/container.h>
#include <gtk--/adjustment.h>
#include <gtk/gtklayout.h>

class Gtk_Layout_Class;
#line 27 "layout.gen_h"


class Gtk_Layout : public Gtk_Container
{
public:
protected:
  typedef Gtk_Layout_Class    CppClassType;
  typedef GtkLayout           BaseObjectType;
  typedef GtkLayoutClass      BaseClassType;

  virtual void *get_parent_class();

private:
  friend CppClassType;
  static CppClassType layout_class; 
  GtkType get_type(); 

public:


  //SIGNAL_XXSPEC(void set_scroll_adjustments(Gtk_Adjustment*,Gtk_Adjustment*)



  Gtk_Layout                           (Gtk_Adjustment &hadjustment,
					Gtk_Adjustment &vadjustment);
  Gtk_Layout                           (GtkLayout *castitem);
  ~Gtk_Layout() {}
  
  void put                             (const Gtk_Widget &widget,
					gint x,
					gint y);

  void move                            (const Gtk_Widget &widget,
					gint x,
					gint y);
  
  void set_size                        (guint width,
					guint height);
  
  //: These disable and enable moving and repainting the scrolling
  //: window of the GtkLayout, respectively.  If you want to update the
  //: layout's offsets but do not want it to repaint itself, you should
  //: use these functions.
  void freeze                          ();
  void thaw                            ();

  const Gtk_Adjustment* get_hadjustment() const { return hadjustment_.get_object(); }
  const Gtk_Adjustment* get_vadjustment() const { return vadjustment_.get_object(); }
  Gtk_Adjustment* get_hadjustment() { return hadjustment_.get_object(); }
  Gtk_Adjustment* get_vadjustment() { return vadjustment_.get_object(); }

  void set_hadjustment                 (Gtk_Adjustment &hadj);
  void set_vadjustment                 (Gtk_Adjustment &hadj);

protected:
  /* impl functions */
public:
  GtkLayout* gtkobj() { return GTK_LAYOUT(gtkobject); }
  const GtkLayout* gtkobj() const { return GTK_LAYOUT(gtkobject); }
  static bool isGtkLayout(Gtk_Object *checkcast);
#line 69 "layout.gen_h"


protected:
  Gtk_ObjectHandle<Gtk_Adjustment> hadjustment_, vadjustment_;
  
};

#endif
