libcss
Loading...
Searching...
No Matches
stylesheet.h
Go to the documentation of this file.
1/*
2 * This file is part of LibCSS.
3 * Licensed under the MIT License,
4 * http://www.opensource.org/licenses/mit-license.php
5 * Copyright 2008 John-Mark Bell <jmb@netsurf-browser.org>
6 */
7
8#ifndef libcss_stylesheet_h_
9#define libcss_stylesheet_h_
10
11#ifdef __cplusplus
12extern "C"
13{
14#endif
15
16#include <libcss/errors.h>
17#include <libcss/types.h>
18#include <libcss/properties.h>
19
30typedef css_error (*css_url_resolution_fn)(void *pw,
31 const char *base, lwc_string *rel, lwc_string **abs);
32
48 css_stylesheet *parent, lwc_string *url);
49
60 lwc_string *name, css_color *color);
61
63typedef struct css_system_font {
67 struct {
71 struct {
75 /* Note: must be a single family name only */
76 lwc_string *family;
78
89 lwc_string *name, css_system_font *system_font);
90
94
137
139 css_stylesheet **stylesheet);
141
143 const uint8_t *data, size_t len);
145
147 lwc_string **url);
149 css_stylesheet *child);
150
152 css_language_level *level);
153css_error css_stylesheet_get_url(css_stylesheet *sheet, const char **url);
154css_error css_stylesheet_get_title(css_stylesheet *sheet, const char **title);
157
160
161css_error css_stylesheet_size(css_stylesheet *sheet, size_t *size);
162
163#ifdef __cplusplus
164}
165#endif
166
167#endif
168
css_error
Definition errors.h:18
int32_t css_fixed
Definition fpmath.h:23
css_font_style_e
Definition properties.h:524
css_font_weight_e
Definition properties.h:537
css_font_variant_e
Definition properties.h:531
css_error css_stylesheet_get_url(css_stylesheet *sheet, const char **url)
Definition stylesheet.c:488
css_error(* css_color_resolution_fn)(void *pw, lwc_string *name, css_color *color)
Definition stylesheet.h:59
css_error css_stylesheet_get_title(css_stylesheet *sheet, const char **title)
Definition stylesheet.c:505
css_error css_stylesheet_used_quirks(css_stylesheet *sheet, bool *quirks)
Definition stylesheet.c:540
css_error css_stylesheet_size(css_stylesheet *sheet, size_t *size)
Definition stylesheet.c:596
css_error css_stylesheet_data_done(css_stylesheet *sheet)
Definition stylesheet.c:334
css_error(* css_import_notification_fn)(void *pw, css_stylesheet *parent, lwc_string *url)
Definition stylesheet.h:47
css_stylesheet_params_version
Definition stylesheet.h:91
@ CSS_STYLESHEET_PARAMS_VERSION_1
Definition stylesheet.h:92
css_error css_stylesheet_append_data(css_stylesheet *sheet, const uint8_t *data, size_t len)
Definition stylesheet.c:314
css_error css_stylesheet_quirks_allowed(css_stylesheet *sheet, bool *allowed)
Definition stylesheet.c:522
css_error css_stylesheet_register_import(css_stylesheet *parent, css_stylesheet *child)
Definition stylesheet.c:437
css_error css_stylesheet_get_disabled(css_stylesheet *sheet, bool *disabled)
Definition stylesheet.c:557
css_error css_stylesheet_destroy(css_stylesheet *sheet)
Definition stylesheet.c:255
css_error(* css_font_resolution_fn)(void *pw, lwc_string *name, css_system_font *system_font)
Definition stylesheet.h:88
css_error css_stylesheet_create(const css_stylesheet_params *params, css_stylesheet **stylesheet)
Definition stylesheet.c:128
css_error(* css_url_resolution_fn)(void *pw, const char *base, lwc_string *rel, lwc_string **abs)
Definition stylesheet.h:30
css_error css_stylesheet_set_disabled(css_stylesheet *sheet, bool disabled)
Definition stylesheet.c:574
css_error css_stylesheet_get_language_level(css_stylesheet *sheet, css_language_level *level)
Definition stylesheet.c:470
css_error css_stylesheet_next_pending_import(css_stylesheet *parent, lwc_string **url)
Definition stylesheet.c:400
Definition stylesheet.h:98
const char * url
Definition stylesheet.h:108
css_font_resolution_fn font
Definition stylesheet.h:133
css_color_resolution_fn color
Definition stylesheet.h:128
const char * charset
Definition stylesheet.h:106
bool allow_quirks
Definition stylesheet.h:113
void * import_pw
Definition stylesheet.h:125
void * color_pw
Definition stylesheet.h:130
const char * title
Definition stylesheet.h:110
void * resolve_pw
Definition stylesheet.h:120
uint32_t params_version
Definition stylesheet.h:100
css_url_resolution_fn resolve
Definition stylesheet.h:118
void * font_pw
Definition stylesheet.h:135
css_language_level level
Definition stylesheet.h:103
bool inline_style
Definition stylesheet.h:115
Definition stylesheet.h:170
Definition stylesheet.h:63
enum css_font_style_e style
Definition stylesheet.h:64
struct css_system_font::@6 line_height
enum css_font_weight_e weight
Definition stylesheet.h:66
css_unit unit
Definition stylesheet.h:69
css_fixed size
Definition stylesheet.h:68
lwc_string * family
Definition stylesheet.h:76
enum css_font_variant_e variant
Definition stylesheet.h:65
css_language_level
Definition types.h:40
css_unit
Definition types.h:82
uint32_t css_color
Definition types.h:79