// -*- c++ -*-
/*  Generated by gensig from frame.gen_h. DO NOT MODIFY!!! */
#ifndef GTKMM_FRAME_HEADER
#define GTKMM_FRAME_HEADER
/* $Id: frame.gen_h,v 1.27.2.2 1999/05/01 18:02:21 terop Exp $ */

/* frame.h
 * 
 * Copyright (C) 1998-1999 
 *
 * 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--/bin.h>
#include <gtk/gtkframe.h>
class Gtk_Frame_Class;
#line 25 "frame.gen_h"

class Gtk_Frame : public Gtk_Bin {
public:
protected:
  typedef Gtk_Frame_Class    CppClassType;
  typedef GtkFrame           BaseObjectType;
  typedef GtkFrameClass      BaseClassType;

  virtual void *get_parent_class();

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

public:


  Gtk_Frame();
  Gtk_Frame(const _gtk_string &label);
  Gtk_Frame(GtkFrame *castitem);

  // Removes the label from a frame.
  void set_label();

  // Adds a label to appear in the top edge of the frame.
  // Label alignment defaults to the upper left corner of the frame.
  // <i>str</i> can not be a NULL pointer. 
  void set_label(const _gtk_string &str);

  // Returns a copy of the label which appears in the frame.
  // If there is no label, the string will be empty.
  const string get_label() const; 

  // Sets the alignment of a frame's label.  
  // <i>xalign</i> sets the horizontal label position and  
  // should be between 0 (left) and 1.0 (right).
  // <i>yalign</i> does not appear to have any effect in this
  // version of gtk+.  Defaults to (0.0,0.5).
  void set_label_align(gfloat xalign=0.0,
		       gfloat yalign=0.5);

  // Returns the current horizontal label position.  
  // Range from 0 (left) to 1.0 (right).
  gfloat get_label_xalign() const;

  // Returns the current vertical label position.  
  // Range from 0 (top) to 1.0 (bottom).
  gfloat get_label_yalign() const; 
    
  // Sets shadow type of the frame. The possible choices are:
  //<ul><li>   GTK_SHADOW_NONE,
  //   <li>GTK_SHADOW_IN,
  //   <li>GTK_SHADOW_OUT,
  //   <li>GTK_SHADOW_ETCHED_IN,
  //   <li>GTK_SHADOW_ETCHED_OUT
  // </ul>
  // declaration of the enum GtkShadowType can be found from gtkenums.h<p>
  // Returns the previous shadow type.
  GtkShadowType set_shadow_type(GtkShadowType type);

  // Returns the current shadow type of a frame.
  GtkShadowType get_shadow_type() const; 
    
protected:
  /* impl functions */
public:
  GtkFrame* gtkobj() { return GTK_FRAME(gtkobject); }
  const GtkFrame* gtkobj() const { return GTK_FRAME(gtkobject); }
  static bool isGtkFrame(Gtk_Object *checkcast);
#line 76 "frame.gen_h"


};

#endif
