Added button image data transmission from
[irreco.git] / irreco / src / core / irreco_button_creator_dlg.h
blob2942831cad6099e2a41715ebb6d0d4f445ea92fc
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_button_creator_dlg.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_button_creator_dlg.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 IrrecoButtonCreatorDlg
22 * @{
25 /**
26 * @file
27 * Header file of @ref IrrecoButtonCreatorDlg.
30 /*=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-*/
31 /* Typedef */
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_BUTTON_CREATOR_DLG_H_TYPEDEF_
40 #define _IRRECO_BUTTON_CREATOR_DLG_H_TYPEDEF_
42 #define IRRECO_TYPE_BUTTON_CREATOR_DLG (irreco_button_creator_dlg_get_type ())
43 #define IRRECO_BUTTON_CREATOR_DLG(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), IRRECO_TYPE_BUTTON_CREATOR_DLG, IrrecoButtonCreatorDlg))
44 #define IRRECO_BUTTON_CREATOR_DLG_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), IRRECO_TYPE_BUTTON_CREATOR_DLG, IrrecoButtonCreatorDlgClass))
45 #define IRRECO_IS_BUTTON_CREATOR_DLG(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), IRRECO_TYPE_BUTTON_CREATOR_DLG))
46 #define IRRECO_IS_BUTTON_CREATOR_DLG_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), IRRECO_TYPE_BUTTON_CREATOR_DLG))
47 #define IRRECO_BUTTON_CREATOR_DLG_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), IRRECO_TYPE_BUTTON_CREATOR_DLG, IrrecoButtonCreatorDlgClass))
49 typedef struct _IrrecoButtonCreatorDlgClass IrrecoButtonCreatorDlgClass;
50 typedef struct _IrrecoButtonCreatorDlg IrrecoButtonCreatorDlg;
52 #endif /* __IRRECO_BUTTON_CREATOR_DLG_H_TYPEDEF__ */
55 /*=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-*/
56 /* Include */
57 /*=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-*/
58 #ifndef __IRRECO_BUTTON_CREATOR_DLG_H__
59 #define __IRRECO_BUTTON_CREATOR_DLG_H__
60 #include "irreco.h"
61 #include "irreco_internal_dlg.h"
62 #include "irreco_button.h"
63 #include "irreco_bg_browser_widget.h"
64 #include "irreco_button_browser_widget.h"
68 /*=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-*/
69 /* Datatypes */
70 /*=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-*/
76 struct _IrrecoButtonCreatorDlgClass
78 IrrecoInternalDlgClass parent_class;
81 struct _IrrecoButtonCreatorDlg
84 IrrecoInternalDlg parent_instance;
85 IrrecoTheme *theme;
86 IrrecoData *irreco_data;
87 GtkWindow *parent_window;
89 GtkWidget *notebook;
90 GtkWidget *combobox_name;
91 GtkWidget *select_button;
92 GtkWidget *preview_image_unpressed;
93 GtkWidget *preview_image_pressed;
94 GtkWidget *event_box_pressed;
95 GtkWidget *add_button_unpressed;
96 GtkWidget *add_button_pressed;
97 /* Dialog buttons */
98 GtkWidget *cancel_button;
99 GtkWidget *add_button;
100 /* Settings */
101 GtkWidget *allow_text;
102 GtkWidget *text_format_up;
103 GtkWidget *text_format_down;
104 GtkWidget *text_padding;
105 GtkWidget *text_h_align;
106 GtkWidget *text_v_align;
108 GtkWidget *label_text_format_up;
109 GtkWidget *label_text_format_down;
111 IrrecoBgBrowserWidget *theme_bg_browser;
112 GString *filename;
114 gint loader_state;
115 gint loader_func_id;
121 /*=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-*/
122 /* Macro */
123 /*=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-*/
127 /*=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-*/
128 /* Prototypes */
129 /*=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-*/
131 GType irreco_button_creator_dlg_get_type (void);
132 IrrecoThemeButton *irreco_button_creator_dlg_run(IrrecoData *irreco_data,
133 IrrecoTheme * irreco_theme,
134 GtkWindow *parent_window,
135 IrrecoThemeButton *bg);
137 #endif /* _IRRECO_BUTTON_CREATOR_DLG_H_ */
139 /** @} */