2 * irreco - Ir Remote Control
3 * Copyright (C) 2008 Joni Kokko (t5kojo01@students.oamk.fi)
5 * This program is free software; you can redistribute it and/or
6 * modify it under the terms of the GNU General Public License
7 * as published by the Free Software Foundation; either version 2
8 * of the License, or (at your option) any later version.
10 * This program 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
13 * GNU General Public License for more details.
15 * You should have received a copy of the GNU General Public License
16 * along with this program; if not, write to the Free Software Foundation,
17 * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
21 * @addtogroup IrrecoTheme
27 * Header file of @ref IrrecoTheme.
30 /*=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-*/
32 /*=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-*/
34 * Make sure that typedefs are available before we include anything elese.
36 * This makes sure that whatever other structures that depend on structures
37 * defined in this file will compile OK recardles of header inclusion order.
39 #ifndef __IRRECO_THEME_H_TYPEDEF__
40 #define __IRRECO_THEME_H_TYPEDEF__
41 typedef struct _IrrecoTheme IrrecoTheme
;
42 #endif /* __IRRECO_THEME_H_TYPEDEF__ */
46 /*=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-*/
48 /*=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-*/
49 #ifndef __IRRECO_THEME_H__
50 #define __IRRECO_THEME_H__
52 #include "irreco_theme_bg.h"
53 #include "irreco_theme_button.h"
54 #include "irreco_config.h"
55 #include <irreco_string_table.h>
60 /*=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-*/
62 /*=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-*/
71 GString
*preview_button_name
;
73 IrrecoStringTable
*backgrounds
;
74 IrrecoStringTable
*buttons
;
77 /*=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-*/
79 /*=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-*/
83 /*=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-*/
85 /*=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-*/
87 IrrecoTheme
*irreco_theme_new();
88 void irreco_theme_free(IrrecoTheme
*self
);
89 void irreco_theme_print(IrrecoTheme
*self
);
90 IrrecoStringTable
* irreco_theme_get_buttons(IrrecoTheme
*self
);
91 IrrecoThemeButton
*irreco_theme_get_button(IrrecoTheme
*self
,
92 const char *button_name
);
93 IrrecoStringTable
* irreco_theme_get_backgrounds(IrrecoTheme
*self
);
94 IrrecoThemeBg
*irreco_theme_get_background(IrrecoTheme
*self
,
96 void irreco_theme_set_author(IrrecoTheme
*self
, const char * author
);
97 void irreco_theme_set_comment(IrrecoTheme
*self
, const char * comment
);
98 void irreco_theme_set_preview_button(IrrecoTheme
*self
,
99 const char * button_name
);
100 void irreco_theme_update_keyfile(IrrecoTheme
*self
);
101 /*void irreco_theme_set_name(IrrecoTheme *self, IrrecoData *irreco_data,
102 const char * name);*/
103 void irreco_theme_set(IrrecoTheme
*self
, const char *name
, const char *path
,
104 const char *source
, const char *author
,
105 const char *comment
, const char *preview_button_name
,
106 const char *version
);
107 void irreco_theme_check(IrrecoTheme
*self
);
108 IrrecoTheme
*irreco_theme_copy(IrrecoTheme
*self
);
109 IrrecoTheme
*theme_new_from_dir();
110 void irreco_theme_read(IrrecoTheme
*self
, const gchar
*dir
);
111 IrrecoTheme
*irreco_theme_new_from_dir(const gchar
*dir
);
112 gboolean
irreco_theme_save(IrrecoTheme
*self
,
113 const gchar
*theme_path
);
114 #endif /* __IRRECO_THEME_H__ */