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.
21 * @addtogroup IrrecoWindowEdit
27 * Header file of @ref IrrecoWindowEdit.
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_WINDOW_EDIT_H_TYPEDEF__
40 #define __IRRECO_WINDOW_EDIT_H_TYPEDEF__
41 typedef struct _IrrecoWindowEdit IrrecoWindowEdit
;
42 #endif /* __IRRECO_WINDOW_EDIT_H_TYPEDEF__ */
46 /*=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-*/
48 /*=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-*/
49 #ifndef __IRRECO_WINDOW_EDIT_H__
50 #define __IRRECO_WINDOW_EDIT_H__
52 #include "irreco_data.h"
53 #include "irreco_button.h"
54 #include "irreco_window.h"
55 #include "irreco_window_manager.h"
59 /*=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-*/
61 /*=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-*/
62 struct _IrrecoWindowEdit
{
65 IrrecoWindowManager
*manager
;
66 IrrecoData
*irreco_data
;
69 gulong expose_handler_id
;
71 /* Buttonlayout being displayed. */
72 IrrecoButtonLayout
*irreco_layout
;
77 GtkWidget
*menu_controllers
;
78 GtkWidget
*menu_devices
;
79 GtkWidget
*menu_download_device
;
80 GtkWidget
*menu_background
;
81 GtkWidget
*menu_hardkeys
;
82 GtkWidget
*menu_buttons
;
83 GtkWidget
*menu_newbutton
;
85 GtkWidget
*menu_grid_1
;
86 GtkWidget
*menu_grid_2
;
87 GtkWidget
*menu_grid_4
;
88 GtkWidget
*menu_grid_8
;
89 GtkWidget
*menu_grid_16
;
91 GtkWidget
*button_menu
;
92 IrrecoButton
*button_menu_target
;
94 GtkWidget
*menu_theme_manager
;
97 GTimeVal drag_start_time
;
102 GdkModifierType drag_pointer_mask
;
104 gboolean drag_button_moved
;
105 gboolean drag_handler_set
;
106 IrrecoButton
*drag_target
;
107 gint drag_pointer_offset_x
;
108 gint drag_pointer_offset_y
;
110 /* Grid image buffers. */
111 GdkPixbuf
*image_background
;
112 GdkPixbuf
*image_grid_1
;
113 GdkPixbuf
*image_grid_2
;
114 GdkPixbuf
*image_grid_4
;
115 GdkPixbuf
*image_grid_8
;
116 GdkPixbuf
*image_grid_16
;
121 /*=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-*/
123 /*=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-*/
124 IrrecoWindowEdit
*irreco_window_edit_create(IrrecoWindowManager
* manager
);
125 void irreco_window_edit_destroy(IrrecoWindowEdit
* edit_ui
);
126 void irreco_window_edit_set_layout(IrrecoWindowEdit
* edit_ui
,
127 IrrecoButtonLayout
* irreco_layout
);
131 #endif /* __IRRECO_WINDOW_EDIT_H__ */