]> Pileus Git - ~andy/gtk/blob - gtk/gtkstyle.h
Add back as wrapper function to restore source/binary compatibility.
[~andy/gtk] / gtk / gtkstyle.h
1 /* GTK - The GIMP Toolkit
2  * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald
3  *
4  * This library is free software; you can redistribute it and/or
5  * modify it under the terms of the GNU Library General Public
6  * License as published by the Free Software Foundation; either
7  * version 2 of the License, or (at your option) any later version.
8  *
9  * This library is distributed in the hope that it will be useful,
10  * but WITHOUT ANY WARRANTY; without even the implied warranty of
11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
12  * Library General Public License for more details.
13  *
14  * You should have received a copy of the GNU Library General Public
15  * License along with this library; if not, write to the
16  * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
17  * Boston, MA 02111-1307, USA.
18  */
19 #ifndef __GTK_STYLE_H__
20 #define __GTK_STYLE_H__
21
22
23 #include <gdk/gdk.h>
24 #include <gtk/gtkenums.h>
25
26 #ifdef __cplusplus
27 extern "C" {
28 #endif /* __cplusplus */
29
30 typedef struct _GtkStyle       GtkStyle;
31 typedef struct _GtkStyleClass  GtkStyleClass;
32
33 /* Some forward declarations needed to rationalize the header
34  * files.
35  */
36
37 typedef struct _GtkThemeEngine GtkThemeEngine;
38 typedef struct _GtkRcStyle     GtkRcStyle;
39
40 /* We make this forward declaration here, since we pass
41  * GtkWidgt's to the draw functions.
42  */
43 typedef struct _GtkWidget      GtkWidget;
44
45 /* This is used for having dynamic style changing stuff */
46 /* fg, bg, light, dark, mid, text, base */
47 #define GTK_STYLE_NUM_STYLECOLORS() 7*5
48
49 #define GTK_STYLE_ATTACHED(style)       (((GtkStyle*)(style))->attach_count > 0)
50
51 struct _GtkStyle
52 {
53   GdkColor fg[5];
54   GdkColor bg[5];
55   GdkColor light[5];
56   GdkColor dark[5];
57   GdkColor mid[5];
58   GdkColor text[5];
59   GdkColor base[5];
60
61   GdkColor black;
62   GdkColor white;
63   GdkFont *font;
64
65   GdkGC *fg_gc[5];
66   GdkGC *bg_gc[5];
67   GdkGC *light_gc[5];
68   GdkGC *dark_gc[5];
69   GdkGC *mid_gc[5];
70   GdkGC *text_gc[5];
71   GdkGC *base_gc[5];
72   GdkGC *black_gc;
73   GdkGC *white_gc;
74
75   GdkPixmap *bg_pixmap[5];
76
77   /* Private */
78   gint ref_count;
79   gint attach_count;
80
81   gint depth;
82   GdkColormap *colormap;
83
84   GtkStyleClass  *klass;        /* Not private - reorder me */
85   GtkThemeEngine *engine;
86
87   gpointer        engine_data;
88
89   GtkRcStyle     *rc_style;     /* the Rc style from which this style
90                                  * was created */
91   GSList         *styles;
92 };
93
94 struct _GtkStyleClass
95 {
96   gint xthickness;
97   gint ythickness;
98
99   void (*draw_hline)   (GtkStyle      *style,
100                         GdkWindow     *window,
101                         GtkStateType   state_type,
102                         GdkRectangle  *area,
103                         GtkWidget     *widget,
104                         gchar         *detail,
105                         gint           x1,
106                         gint           x2,
107                         gint           y);
108   void (*draw_vline)   (GtkStyle      *style,
109                         GdkWindow     *window,
110                         GtkStateType   state_type,
111                         GdkRectangle  *area,
112                         GtkWidget     *widget,
113                         gchar         *detail,
114                         gint           y1,
115                         gint           y2,
116                         gint           x);
117   void (*draw_shadow)  (GtkStyle      *style,
118                         GdkWindow     *window,
119                         GtkStateType   state_type,
120                         GtkShadowType  shadow_type,
121                         GdkRectangle  *area,
122                         GtkWidget     *widget,
123                         gchar         *detail,
124                         gint           x,
125                         gint           y,
126                         gint           width,
127                         gint           height);
128   void (*draw_polygon) (GtkStyle      *style,
129                         GdkWindow     *window,
130                         GtkStateType   state_type,
131                         GtkShadowType  shadow_type,
132                         GdkRectangle  *area,
133                         GtkWidget     *widget,
134                         gchar         *detail,
135                         GdkPoint      *point,
136                         gint           npoints,
137                         gboolean       fill);
138   void (*draw_arrow)   (GtkStyle      *style,
139                         GdkWindow     *window,
140                         GtkStateType   state_type,
141                         GtkShadowType  shadow_type,
142                         GdkRectangle  *area,
143                         GtkWidget     *widget,
144                         gchar         *detail,
145                         GtkArrowType   arrow_type,
146                         gboolean       fill,
147                         gint           x,
148                         gint           y,
149                         gint           width,
150                         gint           height);
151   void (*draw_diamond) (GtkStyle      *style,
152                         GdkWindow     *window,
153                         GtkStateType   state_type,
154                         GtkShadowType  shadow_type,
155                         GdkRectangle  *area,
156                         GtkWidget     *widget,
157                         gchar         *detail,
158                         gint           x,
159                         gint           y,
160                         gint           width,
161                         gint           height);
162   void (*draw_oval)    (GtkStyle      *style,
163                         GdkWindow     *window,
164                         GtkStateType   state_type,
165                         GtkShadowType  shadow_type,
166                         GdkRectangle  *area,
167                         GtkWidget     *widget,
168                         gchar         *detail,
169                         gint           x,
170                         gint           y,
171                         gint           width,
172                         gint           height);
173   void (*draw_string)  (GtkStyle      *style,
174                         GdkWindow     *window,
175                         GtkStateType   state_type,
176                         GdkRectangle  *area,
177                         GtkWidget     *widget,
178                         gchar         *detail,
179                         gint           x,
180                         gint           y,
181                         const gchar   *string);
182   void (*draw_box)     (GtkStyle      *style,
183                         GdkWindow     *window,
184                         GtkStateType   state_type,
185                         GtkShadowType  shadow_type,
186                         GdkRectangle  *area,
187                         GtkWidget     *widget,
188                         gchar         *detail,
189                         gint           x,
190                         gint           y,
191                         gint           width,
192                         gint           height);
193   void (*draw_flat_box) (GtkStyle      *style,
194                         GdkWindow     *window,
195                         GtkStateType   state_type,
196                         GtkShadowType  shadow_type,
197                         GdkRectangle  *area,
198                         GtkWidget     *widget,
199                         gchar         *detail,
200                         gint           x,
201                         gint           y,
202                         gint           width,
203                         gint           height);
204   void (*draw_check)   (GtkStyle      *style,
205                         GdkWindow     *window,
206                         GtkStateType   state_type,
207                         GtkShadowType  shadow_type,
208                         GdkRectangle  *area,
209                         GtkWidget     *widget,
210                         gchar         *detail,
211                         gint           x,
212                         gint           y,
213                         gint           width,
214                         gint           height);
215   void (*draw_option)  (GtkStyle      *style,
216                         GdkWindow     *window,
217                         GtkStateType   state_type,
218                         GtkShadowType  shadow_type,
219                         GdkRectangle  *area,
220                         GtkWidget     *widget,
221                         gchar         *detail,
222                         gint           x,
223                         gint           y,
224                         gint           width,
225                         gint           height);
226   void (*draw_cross)   (GtkStyle      *style,
227                         GdkWindow     *window,
228                         GtkStateType   state_type,
229                         GtkShadowType  shadow_type,
230                         GdkRectangle  *area,
231                         GtkWidget     *widget,
232                         gchar         *detail,
233                         gint           x,
234                         gint           y,
235                         gint           width,
236                         gint           height);
237   void (*draw_ramp)    (GtkStyle      *style,
238                         GdkWindow     *window,
239                         GtkStateType   state_type,
240                         GtkShadowType  shadow_type,
241                         GdkRectangle  *area,
242                         GtkWidget     *widget,
243                         gchar         *detail,
244                         GtkArrowType   arrow_type,
245                         gint           x,
246                         gint           y,
247                         gint           width,
248                         gint           height);
249   void (*draw_tab)     (GtkStyle      *style,
250                         GdkWindow     *window,
251                         GtkStateType   state_type,
252                         GtkShadowType  shadow_type,
253                         GdkRectangle  *area,
254                         GtkWidget     *widget,
255                         gchar         *detail,
256                         gint           x,
257                         gint           y,
258                         gint           width,
259                         gint           height); 
260   void (*draw_shadow_gap) (GtkStyle       *style,
261                            GdkWindow      *window,
262                            GtkStateType    state_type,
263                            GtkShadowType   shadow_type,
264                            GdkRectangle   *area,
265                            GtkWidget      *widget,
266                            gchar          *detail,
267                            gint            x,
268                            gint            y,
269                            gint            width,
270                            gint            height,
271                            GtkPositionType gap_side,
272                            gint            gap_x,
273                            gint            gap_width);
274   void (*draw_box_gap) (GtkStyle       *style,
275                         GdkWindow      *window,
276                         GtkStateType    state_type,
277                         GtkShadowType   shadow_type,
278                         GdkRectangle   *area,
279                         GtkWidget      *widget,
280                         gchar          *detail,
281                         gint            x,
282                         gint            y,
283                         gint            width,
284                         gint            height,
285                         GtkPositionType gap_side,
286                         gint            gap_x,
287                         gint            gap_width);
288  void (*draw_extension) (GtkStyle       *style,
289                          GdkWindow      *window,
290                          GtkStateType    state_type,
291                          GtkShadowType   shadow_type,
292                          GdkRectangle   *area,
293                          GtkWidget      *widget,
294                          gchar          *detail,
295                          gint            x,
296                          gint            y,
297                          gint            width,
298                          gint            height,
299                          GtkPositionType gap_side);
300    void (*draw_focus) (GtkStyle      *style,
301                        GdkWindow     *window,
302                        GdkRectangle  *area,
303                        GtkWidget     *widget,
304                        gchar         *detail,
305                        gint           x,
306                        gint           y,
307                        gint           width,
308                        gint           height);
309    void (*draw_slider)  (GtkStyle      *style,
310                          GdkWindow     *window,
311                          GtkStateType   state_type,
312                          GtkShadowType  shadow_type,
313                          GdkRectangle  *area,
314                          GtkWidget     *widget,
315                          gchar         *detail,
316                          gint           x,
317                          gint           y,
318                          gint           width,
319                          gint           height,
320                          GtkOrientation orientation);
321    void (*draw_handle)  (GtkStyle      *style,
322                          GdkWindow     *window,
323                          GtkStateType   state_type,
324                          GtkShadowType  shadow_type,
325                          GdkRectangle  *area,
326                          GtkWidget     *widget,
327                          gchar         *detail,
328                          gint           x,
329                          gint           y,
330                          gint           width,
331                          gint           height,
332                          GtkOrientation orientation);
333 };
334
335 GtkStyle* gtk_style_new                     (void);
336 GtkStyle* gtk_style_copy                    (GtkStyle      *style);
337 GtkStyle* gtk_style_attach                  (GtkStyle      *style,
338                                              GdkWindow     *window);
339 void      gtk_style_detach                   (GtkStyle     *style);
340 GtkStyle* gtk_style_ref                      (GtkStyle     *style);
341 void      gtk_style_unref                    (GtkStyle     *style);
342 void      gtk_style_set_background           (GtkStyle     *style,
343                                               GdkWindow    *window,
344                                               GtkStateType  state_type);
345 void      gtk_style_apply_default_background (GtkStyle     *style,
346                                               GdkWindow    *window,
347                                               gboolean      copy_area,
348                                               GtkStateType  state_type, 
349                                               GdkRectangle *area, 
350                                               gint          x, 
351                                               gint          y, 
352                                               gint          width, 
353                                               gint          height);
354       
355 void gtk_draw_hline   (GtkStyle      *style,
356                        GdkWindow     *window,
357                        GtkStateType   state_type,
358                        gint           x1,
359                        gint           x2,
360                        gint           y);
361 void gtk_draw_vline   (GtkStyle      *style,
362                        GdkWindow     *window,
363                        GtkStateType   state_type,
364                        gint           y1,
365                        gint           y2,
366                        gint           x);
367 void gtk_draw_shadow  (GtkStyle      *style,
368                        GdkWindow     *window,
369                        GtkStateType   state_type,
370                        GtkShadowType  shadow_type,
371                        gint           x,
372                        gint           y,
373                        gint           width,
374                        gint           height);
375 void gtk_draw_polygon (GtkStyle      *style,
376                        GdkWindow     *window,
377                        GtkStateType   state_type,
378                        GtkShadowType  shadow_type,
379                        GdkPoint      *points,
380                        gint           npoints,
381                        gboolean       fill);
382 void gtk_draw_arrow   (GtkStyle      *style,
383                        GdkWindow     *window,
384                        GtkStateType   state_type,
385                        GtkShadowType  shadow_type,
386                        GtkArrowType   arrow_type,
387                        gboolean       fill,
388                        gint           x,
389                        gint           y,
390                        gint           width,
391                        gint           height);
392 void gtk_draw_diamond (GtkStyle      *style,
393                        GdkWindow     *window,
394                        GtkStateType   state_type,
395                        GtkShadowType  shadow_type,
396                        gint           x,
397                        gint           y,
398                        gint           width,
399                        gint           height);
400 void gtk_draw_oval    (GtkStyle      *style,
401                        GdkWindow     *window,
402                        GtkStateType   state_type,
403                        GtkShadowType  shadow_type,
404                        gint           x,
405                        gint           y,
406                        gint           width,
407                        gint           height);
408 void gtk_draw_string  (GtkStyle      *style,
409                        GdkWindow     *window,
410                        GtkStateType   state_type,
411                        gint           x,
412                        gint           y,
413                        const gchar   *string);
414 void gtk_draw_box     (GtkStyle      *style,
415                        GdkWindow     *window,
416                        GtkStateType   state_type,
417                        GtkShadowType  shadow_type,
418                        gint           x,
419                        gint           y,
420                        gint           width,
421                        gint           height);
422 void gtk_draw_flat_box (GtkStyle      *style,
423                         GdkWindow     *window,
424                         GtkStateType   state_type,
425                         GtkShadowType  shadow_type,
426                         gint           x,
427                         gint           y,
428                         gint           width,
429                         gint           height);
430 void gtk_draw_check   (GtkStyle      *style,
431                        GdkWindow     *window,
432                        GtkStateType   state_type,
433                        GtkShadowType  shadow_type,
434                        gint           x,
435                        gint           y,
436                        gint           width,
437                        gint           height);
438 void gtk_draw_option  (GtkStyle      *style,
439                        GdkWindow     *window,
440                        GtkStateType   state_type,
441                        GtkShadowType  shadow_type,
442                        gint           x,
443                        gint           y,
444                        gint           width,
445                        gint           height);
446 void gtk_draw_cross   (GtkStyle      *style,
447                        GdkWindow     *window,
448                        GtkStateType   state_type,
449                        GtkShadowType  shadow_type,
450                        gint           x,
451                        gint           y,
452                        gint           width,
453                        gint           height);
454 void gtk_draw_ramp    (GtkStyle      *style,
455                        GdkWindow     *window,
456                        GtkStateType   state_type,
457                        GtkShadowType  shadow_type,
458                        GtkArrowType   arrow_type,
459                        gint           x,
460                        gint           y,
461                        gint           width,
462                        gint           height);
463 void gtk_draw_tab     (GtkStyle      *style,
464                        GdkWindow     *window,
465                        GtkStateType   state_type,
466                        GtkShadowType  shadow_type,
467                        gint           x,
468                        gint           y,
469                        gint           width,
470                        gint           height);
471 void gtk_draw_shadow_gap (GtkStyle       *style,
472                           GdkWindow      *window,
473                           GtkStateType    state_type,
474                           GtkShadowType   shadow_type,
475                           gint            x,
476                           gint            y,
477                           gint            width,
478                           gint            height,
479                           GtkPositionType gap_side,
480                           gint            gap_x,
481                           gint            gap_width);
482 void gtk_draw_box_gap (GtkStyle       *style,
483                        GdkWindow      *window,
484                        GtkStateType    state_type,
485                        GtkShadowType   shadow_type,
486                        gint            x,
487                        gint            y,
488                        gint            width,
489                        gint            height,
490                        GtkPositionType gap_side,
491                        gint            gap_x,
492                        gint            gap_width);
493 void gtk_draw_extension (GtkStyle       *style,
494                          GdkWindow      *window,
495                          GtkStateType    state_type,
496                          GtkShadowType   shadow_type,
497                          gint            x,
498                          gint            y,
499                          gint            width,
500                          gint            height,
501                          GtkPositionType gap_side);
502 void gtk_draw_focus   (GtkStyle      *style,
503                        GdkWindow     *window,
504                        gint           x,
505                        gint           y,
506                        gint           width,
507                        gint           height);
508 void gtk_draw_slider  (GtkStyle      *style,
509                        GdkWindow     *window,
510                        GtkStateType   state_type,
511                        GtkShadowType  shadow_type,
512                        gint           x,
513                        gint           y,
514                        gint           width,
515                        gint           height,
516                        GtkOrientation orientation);
517 void gtk_draw_handle  (GtkStyle      *style,
518                        GdkWindow     *window,
519                        GtkStateType   state_type,
520                        GtkShadowType  shadow_type,
521                        gint           x,
522                        gint           y,
523                        gint           width,
524                        gint           height,
525                        GtkOrientation orientation);
526
527 void gtk_paint_hline   (GtkStyle      *style,
528                         GdkWindow     *window,
529                         GtkStateType   state_type,
530                         GdkRectangle  *area,
531                         GtkWidget     *widget,
532                         gchar         *detail,
533                         gint           x1,
534                         gint           x2,
535                         gint           y);
536 void gtk_paint_vline   (GtkStyle      *style,
537                         GdkWindow     *window,
538                         GtkStateType   state_type,
539                         GdkRectangle  *area,
540                         GtkWidget     *widget,
541                         gchar         *detail,
542                         gint           y1,
543                         gint           y2,
544                         gint           x);
545 void gtk_paint_shadow  (GtkStyle     *style,
546                         GdkWindow    *window,
547                         GtkStateType  state_type,
548                         GtkShadowType shadow_type,
549                         GdkRectangle  *area,
550                         GtkWidget     *widget,
551                         gchar         *detail,
552                         gint           x,
553                         gint           y,
554                         gint           width,
555                         gint           height);
556 void gtk_paint_polygon (GtkStyle      *style,
557                         GdkWindow     *window,
558                         GtkStateType   state_type,
559                         GtkShadowType  shadow_type,
560                         GdkRectangle  *area,
561                         GtkWidget     *widget,
562                         gchar         *detail,
563                         GdkPoint      *points,
564                         gint           npoints,
565                         gboolean       fill);
566 void gtk_paint_arrow   (GtkStyle      *style,
567                         GdkWindow     *window,
568                         GtkStateType   state_type,
569                         GtkShadowType  shadow_type,
570                         GdkRectangle  *area,
571                         GtkWidget     *widget,
572                         gchar         *detail,
573                         GtkArrowType   arrow_type,
574                         gboolean       fill,
575                         gint           x,
576                         gint           y,
577                         gint           width,
578                         gint           height);
579 void gtk_paint_diamond (GtkStyle      *style,
580                         GdkWindow     *window,
581                         GtkStateType   state_type,
582                         GtkShadowType  shadow_type,
583                         GdkRectangle  *area,
584                         GtkWidget     *widget,
585                         gchar         *detail,
586                         gint           x,
587                         gint           y,
588                         gint           width,
589                         gint           height);
590 void gtk_paint_oval    (GtkStyle      *style,
591                         GdkWindow     *window,
592                         GtkStateType   state_type,
593                         GtkShadowType  shadow_type,
594                         GdkRectangle  *area,
595                         GtkWidget     *widget,
596                         gchar         *detail,
597                         gint           x,
598                         gint           y,
599                         gint           width,
600                         gint           height);
601 void gtk_paint_string  (GtkStyle      *style,
602                         GdkWindow     *window,
603                         GtkStateType   state_type,
604                         GdkRectangle  *area,
605                         GtkWidget     *widget,
606                         gchar         *detail,
607                         gint           x,
608                         gint           y,
609                         const gchar   *string);
610 void gtk_paint_box     (GtkStyle      *style,
611                         GdkWindow     *window,
612                         GtkStateType   state_type,
613                         GtkShadowType  shadow_type,
614                         GdkRectangle  *area,
615                         GtkWidget     *widget,
616                         gchar         *detail,
617                         gint           x,
618                         gint           y,
619                         gint           width,
620                         gint           height);
621 void gtk_paint_flat_box (GtkStyle      *style,
622                          GdkWindow     *window,
623                          GtkStateType   state_type,
624                          GtkShadowType  shadow_type,
625                          GdkRectangle  *area,
626                          GtkWidget     *widget,
627                          gchar         *detail,
628                          gint           x,
629                          gint           y,
630                          gint           width,
631                          gint           height);
632 void gtk_paint_check   (GtkStyle      *style,
633                         GdkWindow     *window,
634                         GtkStateType   state_type,
635                         GtkShadowType  shadow_type,
636                         GdkRectangle  *area,
637                         GtkWidget     *widget,
638                         gchar         *detail,
639                         gint           x,
640                         gint           y,
641                         gint           width,
642                         gint           height);
643 void gtk_paint_option  (GtkStyle      *style,
644                         GdkWindow     *window,
645                         GtkStateType   state_type,
646                         GtkShadowType  shadow_type,
647                         GdkRectangle  *area,
648                         GtkWidget     *widget,
649                         gchar         *detail,
650                         gint           x,
651                         gint           y,
652                         gint           width,
653                         gint           height);
654 void gtk_paint_cross   (GtkStyle      *style,
655                         GdkWindow     *window,
656                         GtkStateType   state_type,
657                         GtkShadowType  shadow_type,
658                         GdkRectangle  *area,
659                         GtkWidget     *widget,
660                         gchar         *detail,
661                         gint           x,
662                         gint           y,
663                         gint           width,
664                         gint           height);
665 void gtk_paint_ramp    (GtkStyle      *style,
666                         GdkWindow     *window,
667                         GtkStateType   state_type,
668                         GtkShadowType  shadow_type,
669                         GdkRectangle  *area,
670                         GtkWidget     *widget,
671                         gchar         *detail,
672                         GtkArrowType   arrow_type,
673                         gint           x,
674                         gint           y,
675                         gint           width,
676                         gint           height);
677 void gtk_paint_tab     (GtkStyle      *style,
678                         GdkWindow     *window,
679                         GtkStateType   state_type,
680                         GtkShadowType  shadow_type,
681                         GdkRectangle  *area,
682                         GtkWidget     *widget,
683                         gchar         *detail,
684                         gint           x,
685                         gint           y,
686                         gint           width,
687                         gint           height);
688 void gtk_paint_shadow_gap (GtkStyle       *style,
689                            GdkWindow      *window,
690                            GtkStateType    state_type,
691                            GtkShadowType   shadow_type,
692                            GdkRectangle   *area,
693                            GtkWidget      *widget,
694                            gchar          *detail,
695                            gint            x,
696                            gint            y,
697                            gint            width,
698                            gint            height,
699                            GtkPositionType gap_side,
700                            gint            gap_x,
701                            gint            gap_width);
702 void gtk_paint_box_gap (GtkStyle       *style,
703                         GdkWindow      *window,
704                         GtkStateType    state_type,
705                         GtkShadowType   shadow_type,
706                         GdkRectangle   *area,
707                         GtkWidget      *widget,
708                         gchar          *detail,
709                         gint            x,
710                         gint            y,
711                         gint            width,
712                         gint            height,
713                         GtkPositionType gap_side,
714                         gint            gap_x,
715                         gint            gap_width);
716 void gtk_paint_extension (GtkStyle       *style,
717                           GdkWindow      *window,
718                           GtkStateType    state_type,
719                           GtkShadowType   shadow_type,
720                           GdkRectangle   *area,
721                           GtkWidget      *widget,
722                           gchar          *detail,
723                           gint            x,
724                           gint            y,
725                           gint            width,
726                           gint            height,
727                           GtkPositionType gap_side);
728 void gtk_paint_focus   (GtkStyle      *style,
729                         GdkWindow     *window,
730                         GdkRectangle  *area,
731                         GtkWidget     *widget,
732                         gchar         *detail,
733                         gint           x,
734                         gint           y,
735                         gint           width,
736                         gint           height);
737 void gtk_paint_slider  (GtkStyle      *style,
738                         GdkWindow     *window,
739                         GtkStateType   state_type,
740                         GtkShadowType  shadow_type,
741                         GdkRectangle  *area,
742                         GtkWidget     *widget,
743                         gchar         *detail,
744                         gint           x,
745                         gint           y,
746                         gint           width,
747                         gint           height,
748                         GtkOrientation orientation);
749 void gtk_paint_handle  (GtkStyle      *style,
750                         GdkWindow     *window,
751                         GtkStateType   state_type,
752                         GtkShadowType  shadow_type,
753                         GdkRectangle  *area,
754                         GtkWidget     *widget,
755                         gchar         *detail,
756                         gint           x,
757                         gint           y,
758                         gint           width,
759                         gint           height,
760                         GtkOrientation orientation);
761
762 /* Deprecated
763  */
764 void gtk_style_apply_default_pixmap (GtkStyle     *style,
765                                      GdkWindow    *window,
766                                      GtkStateType  state_type, 
767                                      GdkRectangle *area, 
768                                      gint          x, 
769                                      gint          y, 
770                                      gint          width, 
771                                      gint          height);
772
773 #ifdef __cplusplus
774 }
775 #endif /* __cplusplus */
776
777
778 #endif /* __GTK_STYLE_H__ */