// -*- c++ -*-
//  Generated by gtkmmproc from ./../tooltips.gen_h -- DO NOT MODIFY!
#ifndef _GTKMM_TOOLTIPS_H
#define _GTKMM_TOOLTIPS_H

/* $Id: tooltips.gen_h,v 1.44 2000/04/14 22:34:04 kenelson Exp $ */


/* tooltips.h
 *
 * Copyright (C) 1998-1999 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--/data.h>
#include <gtk--/widget.h>
#include <gtk/gtktooltips.h>

namespace Gtk {
class Tooltips;
class Tooltips_Class;
}
namespace Gtk { Gtk::Tooltips *wrap (GtkTooltips *o); }
namespace Gtk
{

//: Tooltip group
//- This widget holds tooltips for other widgets.  You should only need
//- one Tooltip widget for all widgets you wish to add tips to.
class Tooltips : public Data
{

public:
  typedef Tooltips          CppObjectType;
  typedef Tooltips_Class    CppClassType;
  typedef GtkTooltips           BaseObjectType;
  typedef GtkTooltipsClass      BaseClassType;

private:
  friend class Tooltips_Class;
  static CppClassType tooltips_class;

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

protected:
  void   initialize_class();
  explicit Tooltips(GtkTooltips *castitem);

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

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

  virtual ~Tooltips();

private:

public:
  Tooltips();



  //: enable this tooltip group


  void enable();

  //: disable this tooltip group


  void disable();

  //: set the time before tooltips are displayed
  //- {delay} is in seconds.


  void set_delay(guint delay);

  //: set a tip for a widget




  void set_tip(const Gtk::Widget& widget,const nstring& tip_text=0,const nstring& tip_private=0);



  void set_colors(const Gdk_Color& background,const Gdk_Color& foreground);

protected:
  //: get tips data from a widget {\i (internal)}


  static GtkTooltipsData* data_get(Gtk::Widget& widget);

public:


  void force_window();

public:

protected:
  // impl functions

};

}


//+ PROPERTIES(Gtk_ToolTips)
//. name: tip_window
//. type: Gtk_Widget*
//. get:
//. set:
//. desc:

//. name: active_tips_data
//. type: GtkTooltipsData*
//. get:
//. set:
//. desc:

//. name: tips_data_list
//. type: GList*
//. get:
//. set:
//. desc:

//. name: gc
//. type: GdkGC*
//. get:
//. set:
//. desc:

//. name: foreground
//. type: GdkColor*
//. get:
//. set:
//. desc:

//. name: background
//. type: GdkColor*
//. get:
//. set:
//. desc:

//. name: delay
//. type: guint:30
//. get:
//. set:
//. desc:

//. name: enabled
//. type: guint:1
//. get:
//. set:
//. desc:

//. name: timer_tag
//. type: gint
//. get:
//. set:
//. desc:

#endif
