Save the stylesheet
[colloquium.git] / src / stylesheet.h
1 /*
2  * stylesheet.h
3  *
4  * Copyright © 2013-2018 Thomas White <taw@bitwiz.org.uk>
5  *
6  * This file is part of Colloquium.
7  *
8  * Colloquium is free software: you can redistribute it and/or modify
9  * it under the terms of the GNU General Public License as published by
10  * the Free Software Foundation, either version 3 of the License, or
11  * (at your option) any later version.
12  *
13  * This program is distributed in the hope that it will be useful,
14  * but WITHOUT ANY WARRANTY; without even the implied warranty of
15  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
16  * GNU General Public License for more details.
17  *
18  * You should have received a copy of the GNU General Public License
19  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
20  *
21  */
22
23 #ifndef STYLESHEET_H
24 #define STYLESHEET_H
25
26 #ifdef HAVE_CONFIG_H
27 #include <config.h>
28 #endif
29
30 #include <gio/gio.h>
31 #include <gdk/gdk.h>
32
33 typedef struct _stylesheet Stylesheet;
34
35 extern Stylesheet *stylesheet_load(GFile *file);
36
37 extern int stylesheet_save(Stylesheet *ss, GFile *file);
38
39 extern int parse_colour_duo(const char *a, GdkRGBA *col1, GdkRGBA *col2);
40
41 extern char *stylesheet_lookup(Stylesheet *ss, const char *path, const char *key);
42
43 extern int stylesheet_set(Stylesheet *ss, const char *path, const char *key,
44                           const char *new_val);
45
46 extern int stylesheet_delete(Stylesheet *ss, const char *path, const char *key);
47
48 extern void stylesheet_free(Stylesheet *ss);
49
50 #endif  /* STYLESHEET_H */