1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
1.2 +++ b/maemo-ui-old/src/mmyth_epg_grid_widget.h Wed Jan 23 20:09:09 2008 +0000
1.3 @@ -0,0 +1,87 @@
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/gmyth_common.h>
1.13 +#include <gmyth/gmyth_backendinfo.h>
1.14 +#define MAX_DISPLAY_CHANS 4
1.15 +
1.16 +G_BEGIN_DECLS
1.17 +#define MMYTH_EPG_GRID_WIDGET_TYPE (mmyth_epg_grid_widget_get_type ())
1.18 +#define MMYTH_EPG_GRID_WIDGET(obj) (GTK_CHECK_CAST ((obj), MMYTH_EPG_GRID_WIDGET_TYPE, MMythEpgGridWidget))
1.19 +#define MMYTH_EPG_GRID_WIDGET_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), MMYTH_EPG_GRID_WIDGET_TYPE, MMythEpgGridWidgetClass))
1.20 +#define IS_MMYTH_EPG_GRID_WIDGET(obj) (GTK_CHECK_TYPE ((obj), MMYTH_EPG_GRID_WIDGET_TYPE))
1.21 +#define IS_MMYTH_EPG_GRID_WIDGET_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), MMYTH_EPG_GRID_WIDGET_TYPE))
1.22 +#define MMYTH_EPG_GRID_WIDGET_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), MMYTH_EPG_GRID_WIDGET_TYPE, MMythEpgGridWidgetClass))
1.23 +#define MMYTH_EPG_GRID_WIDGET_GET_PRIVATE(obj) (G_TYPE_INSTANCE_GET_PRIVATE ((obj), MMYTH_EPG_GRID_WIDGET_TYPE, MMythEpgGridWidgetPrivate))
1.24 +typedef struct _MMythEpgGridWidget MMythEpgGridWidget;
1.25 +typedef struct _MMythEpgGridWidgetClass MMythEpgGridWidgetClass;
1.26 +typedef struct _MMythEpgGridWidgetPrivate MMythEpgGridWidgetPrivate;
1.27 +
1.28 +struct _MMythEpgGridWidgetClass {
1.29 + GtkEventBoxClass parent_class;
1.30 +
1.31 + /*
1.32 + * callbacks
1.33 + */
1.34 + /*
1.35 + * no one for now
1.36 + */
1.37 +};
1.38 +
1.39 +struct _MMythEpgGridWidget {
1.40 + GtkEventBox event_box;
1.41 +
1.42 + /*
1.43 + * Selected Widgets Logic
1.44 + */
1.45 + /*
1.46 + * List os Service Model in the current view the data of this list are
1.47 + * GList for the programs of each service
1.48 + */
1.49 + GList *epg_view_model;
1.50 +
1.51 + /*
1.52 + * Selected Schedule Item
1.53 + */
1.54 + GList *selected_grid_item;
1.55 +
1.56 +};
1.57 +
1.58 +
1.59 +GType mmyth_epg_grid_widget_get_type(void);
1.60 +GtkWidget *mmyth_epg_grid_widget_new(void);
1.61 +/*
1.62 + * DVBHScheduleEvent* mmyth_epg_grid_get_selected_schedule
1.63 + * (MMythEpgGridWidget * object);
1.64 + */
1.65 +void mmyth_epg_grid_widget_update_service(MMythEpgGridWidget *
1.66 + object,
1.67 + GList *
1.68 + epg_grid_item_node);
1.69 +gboolean mmyth_epg_grid_widget_key_press(MMythEpgGridWidget *
1.70 + object, GtkWidget * widget,
1.71 + GdkEventKey * event);
1.72 +
1.73 +typedef struct _EpgGridItem EpgGridItem;
1.74 +
1.75 +/*
1.76 + * FIXME: auxiliary struct
1.77 + */
1.78 +struct _EpgGridItem {
1.79 +
1.80 + GMythProgramInfo *proginfo;
1.81 + GtkWidget *event_box;
1.82 +
1.83 + /*
1.84 + * for callback purposes
1.85 + */
1.86 + MMythEpgGridWidget *object;
1.87 +};
1.88 +
1.89 +G_END_DECLS
1.90 +#endif /* __MMYTH_EPG_GRID_WIDGET_H__ */