Added button image data transmission from
[irreco.git] / irreco / src / core / irreco_window_manager.h
blob33a9bade7caa97a1601517ca0d94156bd41acd9a
1 /*
2 * irreco - Ir Remote Control
3 * Copyright (C) 2007 Arto Karppinen (arto.karppinen@iki.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.
20 /**
21 * @addtogroup IrrecoWindowManager
22 * @{
25 /**
26 * @file
27 * Header file of @ref IrrecoWindowManager.
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_WINDOW_MANAGER_H_TYPEDEF__
40 #define __IRRECO_WINDOW_MANAGER_H_TYPEDEF__
41 typedef struct _IrrecoWindowManager IrrecoWindowManager;
42 typedef enum {
43 IRRECO_WINDOW_USER = 1,
44 IRRECO_WINDOW_EDIT
45 } IrrecoWindowId;
46 #endif /* __IRRECO_WINDOW_MANAGER_H_TYPEDEF__ */
50 /*=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-*/
51 /* Include */
52 /*=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-*/
53 #ifndef __IRRECO_WINDOW_MANAGER_H__
54 #define __IRRECO_WINDOW_MANAGER_H__
55 #include "irreco.h"
56 #include "irreco_window_edit.h"
57 #include "irreco_window_user.h"
61 /*=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-*/
62 /* Datatypes */
63 /*=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-*/
64 struct _IrrecoWindowManager {
66 IrrecoData *irreco_data;
68 IrrecoWindowEdit *edit_window;
69 IrrecoWindowUser *user_window;
71 IrrecoWindowId current_window;
72 IrrecoButtonLayout *current_layout;
74 IrrecoWindowId to_be_destroyed;
79 /*=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-*/
80 /* Macro */
81 /*=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-*/
85 /*=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-*/
86 /* Prototypes */
87 /*=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-*/
88 IrrecoWindowManager *irreco_window_manager_create(IrrecoData * irreco_data);
89 void irreco_window_manager_destroy(IrrecoWindowManager * manager);
90 void irreco_window_manager_show(IrrecoWindowManager * manager,
91 IrrecoWindowId id);
92 void irreco_window_manager_set_layout(IrrecoWindowManager * manager,
93 IrrecoButtonLayout * layout);
94 GtkWindow *irreco_window_manager_get_gtk_window(IrrecoWindowManager * manager);
97 #endif /* __IRRECO_WINDOW_MANAGER_H__ */
99 /** @} */