[svn r32] Some adjustments on the performance.
1 #ifndef __MMYTH_EPG_GRID_WIDGET_H__
2 #define __MMYTH_EPG_GRID_WIDGET_H__
4 #include <glib-object.h>
6 #include <gtk/gtkvbox.h>
7 #include <gtk/gtkeventbox.h>
9 #include "gmyth_common.h"
11 #define MAX_DISPLAY_CHANS 4
15 #define MMYTH_EPG_GRID_WIDGET_TYPE (mmyth_epg_grid_widget_get_type ())
16 #define MMYTH_EPG_GRID_WIDGET(obj) (GTK_CHECK_CAST ((obj), MMYTH_EPG_GRID_WIDGET_TYPE, MMythEpgGridWidget))
17 #define MMYTH_EPG_GRID_WIDGET_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), MMYTH_EPG_GRID_WIDGET_TYPE, MMythEpgGridWidgetClass))
18 #define IS_MMYTH_EPG_GRID_WIDGET(obj) (GTK_CHECK_TYPE ((obj), MMYTH_EPG_GRID_WIDGET_TYPE))
19 #define IS_MMYTH_EPG_GRID_WIDGET_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), MMYTH_EPG_GRID_WIDGET_TYPE))
20 #define MMYTH_EPG_GRID_WIDGET_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), MMYTH_EPG_GRID_WIDGET_TYPE, MMythEpgGridWidgetClass))
21 #define MMYTH_EPG_GRID_WIDGET_GET_PRIVATE(obj) (G_TYPE_INSTANCE_GET_PRIVATE ((obj), MMYTH_EPG_GRID_WIDGET_TYPE, MMythEpgGridWidgetPrivate))
24 typedef struct _MMythEpgGridWidget MMythEpgGridWidget;
25 typedef struct _MMythEpgGridWidgetClass MMythEpgGridWidgetClass;
26 typedef struct _MMythEpgGridWidgetPrivate MMythEpgGridWidgetPrivate;
28 struct _MMythEpgGridWidgetClass
30 GtkEventBoxClass parent_class;
36 struct _MMythEpgGridWidget
38 GtkEventBox event_box;
40 /* Selected Widgets Logic*/
41 /* List os Service Model in the current view
42 * the data of this list are GList for the programs
44 GList *epg_view_model;
46 /* Selected Schedule Item*/
47 GList *selected_grid_item;
51 GType mmyth_epg_grid_widget_get_type (void);
52 GtkWidget* mmyth_epg_grid_widget_new (void);
53 /*DVBHScheduleEvent* mmyth_epg_grid_get_selected_schedule (MMythEpgGridWidget * object);*/
54 void mmyth_epg_grid_widget_update_service (MMythEpgGridWidget * object,
55 GList *epg_grid_item_node);
56 gboolean mmyth_epg_grid_widget_key_press (MMythEpgGridWidget * object,
60 typedef struct _EpgGridItem EpgGridItem;
62 /* FIXME: auxiliary struct */
65 GMythProgramInfo *proginfo;
68 /* for callback purposes */
69 MMythEpgGridWidget *object;
74 #endif /* __MMYTH_EPG_GRID_WIDGET_H__ */