source: trunk/third/gtkhtml3/src/htmldrawqueue.h @ 19539

Revision 19539, 2.6 KB checked in by ghudson, 21 years ago (diff)
This commit was generated by cvs2svn to compensate for changes in r19538, which included commits to RCS files with non-trunk default branches.
Line 
1/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */
2/* This file is part of the GtkHTML library
3   Copyright (C) 1999 Helix Code, Inc.
4   
5   This library is free software; you can redistribute it and/or
6   modify it under the terms of the GNU Library General Public
7   License as published by the Free Software Foundation; either
8   version 2 of the License, or (at your option) any later version.
9   
10   This library is distributed in the hope that it will be useful,
11   but WITHOUT ANY WARRANTY; without even the implied warranty of
12   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
13   Library General Public License for more details.
14   
15   You should have received a copy of the GNU Library General Public License
16   along with this library; see the file COPYING.LIB.  If not, write to
17   the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
18   Boston, MA 02111-1307, USA.
19*/
20
21#ifndef _HTMLDRAWQUEUE_H
22#define _HTMLDRAWQUEUE_H
23
24#include "htmltypes.h"
25#include <gdk/gdktypes.h>
26#include <gdk-pixbuf/gdk-pixbuf.h>
27
28struct _HTMLDrawQueueClearElement {
29        gint x, y;
30        guint width, height;
31        GdkColor *background_color;
32        GdkPixbuf *background_image;
33        guint background_image_x_offset, background_image_y_offset;
34};
35
36struct _HTMLDrawQueue {
37        /* The associated engine.  */
38        HTMLEngine *engine;
39
40        /* Elements to be drawn.  */
41        GList *elems;
42        /* Pointer to the last element in the list, for faster appending.  */
43        GList *last;
44
45        /* Elements to be cleared (HTMLDrawQueueClearElement).  */
46        GList *clear_elems;
47        /* Pointer to the last element.  */
48        GList *clear_last;
49};
50
51
52/* Creation/destruction.  */
53HTMLDrawQueue *html_draw_queue_new      (HTMLEngine    *engine);
54void           html_draw_queue_destroy  (HTMLDrawQueue *queue);
55void           html_draw_queue_flush    (HTMLDrawQueue *queue);
56void           html_draw_queue_clear    (HTMLDrawQueue *queue);
57
58/* Adding objects.  */
59void           html_draw_queue_add      (HTMLDrawQueue *queue,
60                                         HTMLObject    *object);
61
62/* Adding clear areas.  */
63void  html_draw_queue_add_clear                  (HTMLDrawQueue  *queue,
64                                                  gint            x,
65                                                  gint            y,
66                                                  guint           width,
67                                                  guint           height,
68                                                  const GdkColor *background_color);
69void  html_draw_queue_add_clear_with_background  (HTMLDrawQueue  *queue,
70                                                  gint            x,
71                                                  gint            y,
72                                                  guint           width,
73                                                  guint           height,
74                                                  GdkPixbuf      *background_image,
75                                                  guint           image_x_offset,
76                                                  guint           image_y_offset);
77
78#endif /* _HTMLDRAWQUEUE_H */
Note: See TracBrowser for help on using the repository browser.