00001 /* -*- Mode: C; indent-tabs-mode:nil; c-basic-offset: 8-*- */ 00002 00003 /* 00004 * This file is part of The Croco Library 00005 * 00006 * Copyright (C) 2002-2003 Dodji Seketeli <dodji@seketeli.org> 00007 * 00008 * This program is free software; you can redistribute it and/or 00009 * modify it under the terms of version 2.1 of the 00010 * GNU Lesser General Public 00011 * License as published by the Free Software Foundation. 00012 * 00013 * This program is distributed in the hope that it will be useful, 00014 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00015 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00016 * GNU General Public License for more details. 00017 * 00018 * You should have received a copy of the 00019 * GNU Lesser General Public License 00020 * along with this program; if not, write to the Free Software 00021 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 00022 * USA 00023 */ 00024 00025 /* 00026 *$Id: cr-cascade.h,v 1.2 2003/05/20 20:03:33 dodji Exp $ 00027 */ 00028 00029 #ifndef __CR_CASCADE_H__ 00030 #define __CR_CASCADE_H__ 00031 00032 #include "cr-stylesheet.h" 00033 00034 /** 00035 *@file 00036 *the declaration of the #CRCascade class. 00037 */ 00038 00039 G_BEGIN_DECLS 00040 00041 00042 typedef struct _CRCascadePriv CRCascadePriv ; 00043 00044 /** 00045 *An abstraction of the "Cascade" defined 00046 *in the css2 spec, chapter 6.4. 00047 */ 00048 typedef struct 00049 { 00050 CRCascadePriv *priv ; 00051 } CRCascade ; 00052 00053 00054 CRCascade * 00055 cr_cascade_new (CRStyleSheet *a_author_sheet, 00056 CRStyleSheet *a_user_sheet, 00057 CRStyleSheet *a_ua_sheet) ; 00058 00059 CRStyleSheet * 00060 cr_cascade_get_sheet (CRCascade *a_this, 00061 enum CRStyleOrigin a_origin) ; 00062 00063 enum CRStatus 00064 cr_cascade_set_sheet (CRCascade *a_this, 00065 CRStyleSheet *a_sheet, 00066 enum CRStyleOrigin a_origin) ; 00067 void 00068 cr_cascade_destroy (CRCascade *a_this) ; 00069 00070 G_END_DECLS 00071 00072 #endif /*__CR_CASCADE_H__*/