1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
1.2 +++ b/maemo-ui/src/mmyth_epg_grid_widget.h Wed Dec 06 00:10:35 2006 +0000
1.3 @@ -0,0 +1,74 @@
1.4 +#ifndef __MMYTH_EPG_GRID_WIDGET_H__
1.5 +#define __MMYTH_EPG_GRID_WIDGET_H__
1.6 +
1.7 +#include <glib-object.h>
1.8 +#include <gdk/gdk.h>
1.9 +#include <gtk/gtkvbox.h>
1.10 +#include <gtk/gtkeventbox.h>
1.11 +
1.12 +#include "gmyth_common.h"
1.13 +
1.14 +#define MAX_DISPLAY_CHANS 4
1.15 +
1.16 +G_BEGIN_DECLS
1.17 +
1.18 +#define MMYTH_EPG_GRID_WIDGET_TYPE (mmyth_epg_grid_widget_get_type ())
1.19 +#define MMYTH_EPG_GRID_WIDGET(obj) (GTK_CHECK_CAST ((obj), MMYTH_EPG_GRID_WIDGET_TYPE, MMythEpgGridWidget))
1.20 +#define MMYTH_EPG_GRID_WIDGET_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), MMYTH_EPG_GRID_WIDGET_TYPE, MMythEpgGridWidgetClass))
1.21 +#define IS_MMYTH_EPG_GRID_WIDGET(obj) (GTK_CHECK_TYPE ((obj), MMYTH_EPG_GRID_WIDGET_TYPE))
1.22 +#define IS_MMYTH_EPG_GRID_WIDGET_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), MMYTH_EPG_GRID_WIDGET_TYPE))
1.23 +#define MMYTH_EPG_GRID_WIDGET_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), MMYTH_EPG_GRID_WIDGET_TYPE, MMythEpgGridWidgetClass))
1.24 +#define MMYTH_EPG_GRID_WIDGET_GET_PRIVATE(obj) (G_TYPE_INSTANCE_GET_PRIVATE ((obj), MMYTH_EPG_GRID_WIDGET_TYPE, MMythEpgGridWidgetPrivate))
1.25 +
1.26 +
1.27 +typedef struct _MMythEpgGridWidget MMythEpgGridWidget;
1.28 +typedef struct _MMythEpgGridWidgetClass MMythEpgGridWidgetClass;
1.29 +typedef struct _MMythEpgGridWidgetPrivate MMythEpgGridWidgetPrivate;
1.30 +
1.31 +struct _MMythEpgGridWidgetClass
1.32 +{
1.33 + GtkEventBoxClass parent_class;
1.34 +
1.35 + /* callbacks */
1.36 + /* no one for now */
1.37 +};
1.38 +
1.39 +struct _MMythEpgGridWidget
1.40 +{
1.41 + GtkEventBox event_box;
1.42 +
1.43 + /* Selected Widgets Logic*/
1.44 + /* List os Service Model in the current view
1.45 + * the data of this list are GList for the programs
1.46 + * of each service */
1.47 + GList *epg_view_model;
1.48 +
1.49 + /* Selected Schedule Item*/
1.50 + GList *selected_grid_item;
1.51 +};
1.52 +
1.53 +
1.54 +GType mmyth_epg_grid_widget_get_type (void);
1.55 +GtkWidget* mmyth_epg_grid_widget_new (void);
1.56 +/*DVBHScheduleEvent* mmyth_epg_grid_get_selected_schedule (MMythEpgGridWidget * object);*/
1.57 +void mmyth_epg_grid_widget_update_service (MMythEpgGridWidget * object,
1.58 + GList *epg_grid_item_node);
1.59 +gboolean mmyth_epg_grid_widget_key_press (MMythEpgGridWidget * object,
1.60 + GtkWidget * widget,
1.61 + GdkEventKey * event);
1.62 +
1.63 +typedef struct _EpgGridItem EpgGridItem;
1.64 +
1.65 +/* FIXME: auxiliary struct */
1.66 +struct _EpgGridItem {
1.67 +
1.68 + GMythProgramInfo *proginfo;
1.69 + GtkWidget *event_box;
1.70 +
1.71 + /* for callback purposes */
1.72 + MMythEpgGridWidget *object;
1.73 +};
1.74 +
1.75 +G_END_DECLS
1.76 +
1.77 +#endif /* __MMYTH_EPG_GRID_WIDGET_H__ */