// -*- c++ -*-
//  Generated by gtkmmproc from ./../dock-band.gen_h -- DO NOT MODIFY!
#ifndef _GNOMEMM_DOCK_BAND_H
#define _GNOMEMM_DOCK_BAND_H

/* $Id: dock-band.gen_h,v 1.2 2000/08/29 18:42:22 kenelson Exp $ */


/* dock-band.gen_h
 *
 * Copyright (C) 2000 The Gtk-- Development Team
 *
 * 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 <gnome--/dock-item.h>
#include <gnome--/dock-layout.h>
#include <libgnomeui/gnome-dock-band.h>

namespace Gnome {
class DockBand;
class DockBand_Class;
}
namespace Gtk { Gnome::DockBand *wrap (GnomeDockBand *o); }
namespace Gnome
{

class DockBand : public Gtk::Container
{

public:
  typedef DockBand          CppObjectType;
  typedef DockBand_Class    CppClassType;
  typedef GnomeDockBand           BaseObjectType;
  typedef GnomeDockBandClass      BaseClassType;

private:
  friend class DockBand_Class;
  static CppClassType dock_band_class;

  DockBand(const DockBand&);
  DockBand& operator=(const DockBand&); // not implemented

protected:
  void   initialize_class();
  explicit DockBand(GnomeDockBand *castitem);

public:
  static GtkType get_type();
  GnomeDockBand* gtkobj()             { return (GnomeDockBand*)(gtkobject); }
  const GnomeDockBand* gtkobj() const { return (GnomeDockBand*)(gtkobject); }
  static bool isA(Gtk::Object *checkcast);

  // Hook for proxies
  static const char* const signal_names[];

  virtual ~DockBand();

private:

public:
  DockBand();





  void set_orientation(GtkOrientation orientation);


  GtkOrientation get_orientation();

  bool insert(Gtk::Widget& child,guint offset,gint position);





  bool prepend(Gtk::Widget& child,guint offset);





  bool append(Gtk::Widget& child,guint offset);





  void set_child_offset(Gtk::Widget& child,guint offset);



  guint get_child_offset(Gtk::Widget& child);

  //TODO: What's this GList* old_child about? Maybe it should just be a GtkWidget*




  void move_child(GList* old_child,guint new_num);


  guint get_num_children();

  //- We use the band_ prefix, because Gtk::Widget already has a 'drag_begin' signal.


  void band_drag_begin(Gnome::DockItem& item);





  bool band_drag_to(Gnome::DockItem& item,gint x,gint y);



  void band_drag_end(Gnome::DockItem& item);

  Gnome::DockItem* get_item_by_name(const Gtk::nstring& name,guint& position_return,guint& offset_return);

  void layout_add(Gnome::DockLayout& layout,GnomeDockPlacement placement,guint band_num);

public:

protected:
  // impl functions

};



}


#endif
