fixed bg images adding a table.
[irreco.git] / irreco / src / core / irreco_theme_creator_backgrounds.h
blob40064df3b14846d762f6e1d1bec0d0949c906cae
1 /* -*- Mode: C; indent-tabs-mode: t; c-basic-offset: 4; tab-width: 4 -*- */
2 /*
3 * irreco - Ir Remote Control
4 * Copyright (C) 2008 Pekka Gehör (pegu6@msn.com)
5 *
6 * irreco_theme_creator_backgrounds.c is free software: you can redistribute it and/or modify it
7 * under the terms of the GNU General Public License as published by the
8 * Free Software Foundation, either version 3 of the License, or
9 * (at your option) any later version.
11 * irreco_theme_creator_backgrounds.c is distributed in the hope that it will be useful, but
12 * WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
14 * See the GNU General Public License for more details.
16 * You should have received a copy of the GNU General Public License along
17 * with this program. If not, see <http://www.gnu.org/licenses/>.
20 /**
21 * @addtogroup IrrecoThemeCreatorBackgrounds
22 * @{
25 /**
26 * @file
27 * Header file of @ref IrrecoThemeCreatorBackgrounds.
32 /*=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-*/
33 /* Typedef */
34 /*=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-*/
36 * Make sure that typedefs are available before we include anything elese.
38 * This makes sure that whatever other structures that depend on structures
39 * defined in this file will compile OK recardles of header inclusion order.
41 #ifndef __IRRECO_THEME_CREATOR_BACKGROUNDS_H_TYPEDEF__
42 #define __IRRECO_THEME_CREATOR_BACKGROUNDS_H_TYPEDEF__
44 typedef struct _IrrecoThemeCreatorBackgroundsClass IrrecoThemeCreatorBackgroundsClass;
45 typedef struct _IrrecoThemeCreatorBackgrounds IrrecoThemeCreatorBackgrounds;
47 #define IRRECO_TYPE_THEME_CREATOR_BACKGROUNDS (irreco_theme_creator_backgrounds_get_type ())
48 #define IRRECO_THEME_CREATOR_BACKGROUNDS(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), IRRECO_TYPE_THEME_CREATOR_BACKGROUNDS, IrrecoThemeCreatorBackgrounds))
49 #define IRRECO_THEME_CREATOR_BACKGROUNDS_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), IRRECO_TYPE_THEME_CREATOR_BACKGROUNDS, IrrecoThemeCreatorBackgroundsClass))
50 #define IRRECO_IS_THEME_CREATOR_BACKGROUNDS(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), IRRECO_TYPE_THEME_CREATOR_BACKGROUNDS))
51 #define IRRECO_IS_THEME_CREATOR_BACKGROUNDS_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), IRRECO_TYPE_THEME_CREATOR_BACKGROUNDS))
52 #define IRRECO_THEME_CREATOR_BACKGROUNDS_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), IRRECO_TYPE_THEME_CREATOR_BACKGROUNDS, IrrecoThemeCreatorBackgroundsClass))
54 #endif /* __IRRECO_THEME_CREATOR_BACKGROUNDS_H_TYPEDEF__ */
56 /*=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-*/
57 /* Include */
58 /*=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-*/
59 #ifndef _IRRECO_THEME_CREATOR_BACKGROUNDS_H_TYPEDEF_
60 #define _IRRECO_THEME_CREATOR_BACKGROUNDS_H_TYPEDEF_
61 #include "irreco.h"
62 #include "irreco_internal_widget.h"
63 #include "irreco_listbox.h"
64 #include "irreco_theme.h"
65 #include "irreco_button.h"
66 #include "irreco_listbox_image.h"
67 #include "irreco_bg_browser_widget.h"
71 /*=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-*/
72 /* Datatypes */
73 /*=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-*/
76 struct _IrrecoThemeCreatorBackgrounds
78 IrrecoInternalWidget parent;
79 GtkWindow *parent_window;
80 IrrecoTheme *theme;
81 IrrecoData *irreco_data;
83 GtkCellRenderer *renderer_backgrounds;
84 GtkTreeViewColumn *column_backgrounds;
85 GtkListStore *store_backgrounds;
86 GtkWidget *view_backgrounds;
87 GtkWidget *scroll_backgrounds;
88 GtkTreeSelection *tree_selection;
90 gint loader_index;
91 gint loader_state;
92 gint loader_func_id;
93 GtkTreeIter *loader_iter;
95 IrrecoThemeBg *current_bg;
97 gint sel_index;
100 struct _IrrecoThemeCreatorBackgroundsClass
102 IrrecoInternalWidgetClass parent_class;
105 /*=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-*/
106 /* Macro */
107 /*=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-*/
111 /*=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-*/
112 /* Prototypes */
113 /*=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-*/
114 GType irreco_theme_creator_backgrounds_get_type (void);
115 GtkWidget* irreco_theme_creator_backgrounds_new(GtkWindow *parent,
116 IrrecoData *irreco_data,
117 IrrecoTheme * irreco_theme);
118 void irreco_theme_creator_backgrounds_set_parent_window(
119 IrrecoThemeCreatorBackgrounds *self,
120 GtkWindow *parent);
121 IrrecoThemeBg
122 *irreco_theme_creator_backgrounds_get_selected_bg(IrrecoThemeCreatorBackgrounds
123 *self);
124 gboolean
125 irreco_theme_creator_backgrounds_remove_selected(IrrecoThemeCreatorBackgrounds
126 *self);
127 void
128 irreco_theme_creator_backgrounds_refresh(
129 IrrecoThemeCreatorBackgrounds *self);
131 #endif /* __IRRECO_THEME_CREATOR_BACKGROUNDS_H__ */
133 /** @} */