maemo-ui/src/mmyth_epg_grid_widget.h
branchtrunk
changeset 53 26845a19d06e
child 208 c3c073032757
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/maemo-ui/src/mmyth_epg_grid_widget.h	Thu Oct 26 02:04:40 2006 +0100
     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__ */