* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
+ * License along with this library. If not, see <http://www.gnu.org/licenses/>.
*/
#ifndef __GTK_CSS_LOOKUP_PRIVATE_H__
#include "gtk/gtkbitmaskprivate.h"
#include "gtk/gtkcsscomputedvaluesprivate.h"
#include "gtk/gtkcsssection.h"
-#include "gtk/gtkstylecontext.h"
G_BEGIN_DECLS
typedef struct _GtkCssLookup GtkCssLookup;
-GtkCssLookup * _gtk_css_lookup_new (void);
-void _gtk_css_lookup_free (GtkCssLookup *lookup);
-
-const GtkBitmask * _gtk_css_lookup_get_missing (const GtkCssLookup *lookup);
-gboolean _gtk_css_lookup_is_missing (const GtkCssLookup *lookup,
- guint id);
-void _gtk_css_lookup_set (GtkCssLookup *lookup,
- guint id,
- GtkCssSection *section,
- const GValue *value);
-void _gtk_css_lookup_set_computed (GtkCssLookup *lookup,
- guint id,
- GtkCssSection *section,
- const GValue *value);
-void _gtk_css_lookup_resolve (GtkCssLookup *lookup,
- GtkStyleContext *context,
- GtkCssComputedValues *values);
+typedef struct {
+ GtkCssSection *section;
+ GtkCssValue *value;
+ GtkCssValue *computed;
+} GtkCssLookupValue;
+
+struct _GtkCssLookup {
+ GtkBitmask *missing;
+ GtkCssLookupValue values[1];
+};
+
+GtkCssLookup * _gtk_css_lookup_new (const GtkBitmask *relevant);
+void _gtk_css_lookup_free (GtkCssLookup *lookup);
+
+static inline const GtkBitmask *_gtk_css_lookup_get_missing (const GtkCssLookup *lookup);
+gboolean _gtk_css_lookup_is_missing (const GtkCssLookup *lookup,
+ guint id);
+void _gtk_css_lookup_set (GtkCssLookup *lookup,
+ guint id,
+ GtkCssSection *section,
+ GtkCssValue *value);
+void _gtk_css_lookup_set_computed (GtkCssLookup *lookup,
+ guint id,
+ GtkCssSection *section,
+ GtkCssValue *value);
+void _gtk_css_lookup_resolve (GtkCssLookup *lookup,
+ GtkStyleProviderPrivate *provider,
+ GtkCssComputedValues *values,
+ GtkCssComputedValues *parent_values);
+
+static inline const GtkBitmask *
+_gtk_css_lookup_get_missing (const GtkCssLookup *lookup)
+{
+ return lookup->missing;
+}
+
G_END_DECLS