]> Pileus Git - ~andy/gtk/blob - gtk/gtktipsquery.h
Changed LGPL address for FSF in all .h and .c files
[~andy/gtk] / gtk / gtktipsquery.h
1 /* GTK - The GIMP Toolkit
2  * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald
3  *
4  * GtkQueryTips: Query onscreen widgets for their tooltips
5  * Copyright (C) 1998 Tim Janik
6  *
7  * This library is free software; you can redistribute it and/or
8  * modify it under the terms of the GNU Library General Public
9  * License as published by the Free Software Foundation; either
10  * version 2 of the License, or (at your option) any later version.
11  *
12  * This library is distributed in the hope that it will be useful,
13  * but WITHOUT ANY WARRANTY; without even the implied warranty of
14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
15  * Library General Public License for more details.
16  *
17  * You should have received a copy of the GNU Library General Public
18  * License along with this library; if not, write to the
19  * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
20  * Boston, MA 02111-1307, USA.
21  */
22 #ifndef __GTKTIPSQUERY_H__
23 #define __GTKTIPSQUERY_H__
24
25
26 #include <gtk/gtklabel.h>
27
28
29 #ifdef __cplusplus
30 extern "C" {
31 #pragma }
32 #endif /* __cplusplus */
33
34
35 /* --- type macros --- */
36 #define GTK_TIPS_QUERY(obj)             (GTK_CHECK_CAST (obj, gtk_tips_query_get_type (), GtkTipsQuery))
37 #define GTK_TIPS_QUERY_CLASS(klass)     (GTK_CHECK_CLASS_CAST (klass, gtk_tips_query_get_type (), GtkTipsQueryClass))
38 #define GTK_IS_TIPS_QUERY(obj)          (GTK_CHECK_TYPE (obj, gtk_tips_query_get_type ()))
39
40
41 /* --- typedefs --- */
42 typedef struct  _GtkTipsQuery           GtkTipsQuery;
43 typedef struct  _GtkTipsQueryClass      GtkTipsQueryClass;
44
45
46 /* --- structures --- */
47 struct  _GtkTipsQuery
48 {
49   GtkLabel      label;
50
51   guint         emit_always : 1;
52   guint         in_query : 1;
53   gchar         *label_inactive;
54   gchar         *label_no_tip;
55
56   GtkWidget     *caller;
57   GtkWidget     *last_crossed;
58
59   GdkCursor     *query_cursor;
60 };
61
62 struct  _GtkTipsQueryClass
63 {
64   GtkLabelClass                 parent_class;
65
66   void  (*start_query)          (GtkTipsQuery   *tips_query);
67   void  (*stop_query)           (GtkTipsQuery   *tips_query);
68   void  (*widget_entered)       (GtkTipsQuery   *tips_query,
69                                  GtkWidget      *widget,
70                                  const gchar    *tip_text,
71                                  const gchar    *tip_private);
72   gint  (*widget_selected)      (GtkTipsQuery   *tips_query,
73                                  GtkWidget      *widget,
74                                  const gchar    *tip_text,
75                                  const gchar    *tip_private,
76                                  GdkEventButton *event);
77 };
78
79
80 /* --- prototypes --- */
81 GtkType         gtk_tips_query_get_type         (void);
82 GtkWidget*      gtk_tips_query_new              (void);
83 void            gtk_tips_query_start_query      (GtkTipsQuery   *tips_query);
84 void            gtk_tips_query_stop_query       (GtkTipsQuery   *tips_query);
85 void            gtk_tips_query_set_caller       (GtkTipsQuery   *tips_query,
86                                                  GtkWidget      *caller);
87 void            gtk_tips_query_set_labels       (GtkTipsQuery   *tips_query,
88                                                  const gchar    *label_inactive,
89                                                  const gchar    *label_no_tip);
90      
91
92
93 #ifdef __cplusplus
94 #pragma {
95 }
96 #endif /* __cplusplus */
97
98
99 #endif  /* __GTKTIPSQUERY_H__ */