# HG changeset patch # User leo_sobral # Date 1158794152 -3600 # Node ID 259b9773e5c307fcd37d3fa5c185cf7736dda55f # Parent 265cdb1c59e393b28f0692f738415a39208b56a0 [svn r5] Deleted files that are not needed anymore diff -r 265cdb1c59e3 -r 259b9773e5c3 gmyth/AUTHORS --- a/gmyth/AUTHORS Thu Sep 21 00:05:27 2006 +0100 +++ b/gmyth/AUTHORS Thu Sep 21 00:15:52 2006 +0100 @@ -0,0 +1,4 @@ +Alexsandro Jose Virginio dos Santos +Hallyson Luiz de Morais Melo +Leonardo Sobral Cunha +Rosfran Lins Borges diff -r 265cdb1c59e3 -r 259b9773e5c3 gmyth/pixmaps/Makefile.am --- a/gmyth/pixmaps/Makefile.am Thu Sep 21 00:05:27 2006 +0100 +++ b/gmyth/pixmaps/Makefile.am Thu Sep 21 00:15:52 2006 +0100 @@ -1,7 +1,7 @@ # Adding the application icon -#icondir = $(datadir)/miptv/pixmaps +#icondir = $(datadir)/mmyth/pixmaps #icon_DATA = \ -# miptv.png +# mmyth.png # Adding the application resources diff -r 265cdb1c59e3 -r 259b9773e5c3 gmyth/src/gui/mmyth_ui.c.mine --- a/gmyth/src/gui/mmyth_ui.c.mine Thu Sep 21 00:05:27 2006 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,451 +0,0 @@ - -#include -#include -#include - -#include "mmyth_ui.h" -#include "mmyth_uicommon.h" -/* FIXME -#include "mmyth_videoplayer.h" -*/ -#include "mmyth_esg_grid_view.h" - -static gint button_press_handler (GtkWidget *widget, GdkEvent *event); - -MMythUiCommon *create_main_view (MMythUi * mmyth_ui); -MMythUiCommon *create_video_view (MMythUi * mmyth_ui); -MMythUiCommon *create_esg_grid_view (MMythUi * mmyth_ui); -static void cb_video_close_button (GtkButton * button, gpointer user_data); - -/* main box from button box separator*/ -static GtkWidget *main_vseparator = NULL; - -GdkPixbuf *icon_sports, *icon_news, - *icon_movies, *icon_shows, *icon_default; - -/* FIXME: UGLY HACK */ -MMythUi *popup_mmyth_ui; - -void -mmyth_ui_initialize_icons () -{ - GError *error = NULL; - -#ifdef MMYTH_DEVEL - icon_sports = - gdk_pixbuf_new_from_file ("../pixmaps/ico_sports.png", &error); -#else - icon_sports = gdk_pixbuf_new_from_file (PIX_DIR "ico_sports.png", &error); -#endif - - if (error) { - g_warning ("Could not load icon sports: %s\n", error->message); - g_error_free (error); - error = NULL; - } - -#ifdef MMYTH_DEVEL - icon_news = gdk_pixbuf_new_from_file ("../pixmaps/ico_news.png", &error); -#else - icon_news = gdk_pixbuf_new_from_file (PIX_DIR "ico_news.png", &error); -#endif - - if (error) { - g_warning ("Could not load icon news: %s\n", error->message); - g_error_free (error); - error = NULL; - } - -#ifdef MMYTH_DEVEL - icon_movies = - gdk_pixbuf_new_from_file ("../pixmaps/ico_movies.png", &error); -#else - icon_movies = gdk_pixbuf_new_from_file (PIX_DIR "ico_movies.png", &error); -#endif - if (error) { - g_warning ("Could not load icon movies: %s\n", error->message); - g_error_free (error); - error = NULL; - } - -#ifdef MMYTH_DEVEL - icon_shows = gdk_pixbuf_new_from_file ("../pixmaps/ico_shows.png", &error); -#else - icon_shows = gdk_pixbuf_new_from_file (PIX_DIR "ico_shows.png", &error); -#endif - if (error) { - g_warning ("Could not load icon shows: %s\n", error->message); - g_error_free (error); - error = NULL; - } - -#ifdef MMYTH_DEVEL - icon_default = - gdk_pixbuf_new_from_file ("../pixmaps/ico_default.png", &error); -#else - icon_default = gdk_pixbuf_new_from_file (PIX_DIR "ico_default.png", &error); -#endif - - if (error) { - g_warning ("Could not load icon default: %s\n", error->message); - g_error_free (error); - error = NULL; - } - -} - -MMythUi * -mmyth_ui_initialize (GtkWidget * main_window) -{ - MMythUi *mmyth_ui; - - // FIXME: REMOVE ME - //mmyth_settings_load ( ); - - mmyth_ui = g_new0 (MMythUi, 1); - - mmyth_ui->main_window = main_window; - - /* Horizontal box that divides the view into control and video area */ - mmyth_ui->main_hbox = gtk_hbox_new (FALSE, 0); - gtk_widget_show (mmyth_ui->main_hbox); - g_object_ref (mmyth_ui->main_hbox); - - mmyth_ui_initialize_icons (); - - main_bg_color.red = 65000; - main_bg_color.green = 65000; - main_bg_color.blue = 65000; - - // Main widget is mmyth_ui->main_hbox - mmyth_ui->main_uicommon = create_main_view (mmyth_ui); - mmyth_ui->video_uicommon = create_video_view (mmyth_ui); - mmyth_ui->esg_grid_uicommon = create_esg_grid_view (mmyth_ui); - - /* Popup menu */ - /* FIXME: URGENT ugly, ugly hack */ - popup_mmyth_ui = mmyth_ui; - g_signal_connect (G_OBJECT (mmyth_ui->main_hbox), "event", - G_CALLBACK (button_press_handler), - G_OBJECT (mmyth_ui->main_hbox)); - - gtk_container_add (GTK_CONTAINER (mmyth_ui->main_window), - mmyth_ui->main_hbox); - - /* Add the gst video widget to hbox. It should never be removed. */ - /* FIXME: mmyth_ui->video_alignment == NULL when mmyth_player_init fails */ - if(mmyth_ui->video_alignment != NULL) - gtk_box_pack_start (GTK_BOX (mmyth_ui->main_hbox), - mmyth_ui->video_alignment, TRUE, TRUE, 0); - - mmyth_ui_set_widget (mmyth_ui, mmyth_ui->main_uicommon); - - return mmyth_ui; -} - -void -mmyth_ui_finalize (MMythUi * mmyth_ui) -{ - if (mmyth_ui != NULL) - g_free (mmyth_ui); - - mmyth_uicommon_unref_all (mmyth_ui->main_uicommon); - mmyth_uicommon_unref_all (mmyth_ui->video_uicommon); - mmyth_uicommon_unref_all (mmyth_ui->esgcurrent_uicommon); -} - -void -mmyth_ui_set_widget (MMythUi * mmyth_ui, MMythUiCommon * new_uicommon) -{ - if (mmyth_ui->current_uicommon) { - if (mmyth_ui->current_uicommon == mmyth_ui->video_uicommon) { - gtk_widget_hide (mmyth_ui->current_uicommon->main_widget); - gtk_widget_hide (mmyth_ui->videow); - } - else { - gtk_container_remove (GTK_CONTAINER (mmyth_ui->main_hbox), - mmyth_ui->current_uicommon->main_widget); - } - - gtk_container_remove (GTK_CONTAINER (mmyth_ui->main_hbox), - mmyth_ui->current_uicommon->event_box); - gtk_container_remove (GTK_CONTAINER (mmyth_ui->main_hbox), - main_vseparator); - - } - - if (new_uicommon->main_widget == mmyth_ui->video_alignment) { - //gst_player_video_show (GST_PLAYER_VIDEO(mmyth_ui->videow)); - gtk_widget_show (mmyth_ui->video_alignment); - gtk_widget_show (mmyth_ui->videow); - } - else { - /* FIXME: Fst call is NULL when mmyth_player_init fails */ - if(mmyth_ui->video_alignment != NULL) - gtk_widget_hide (mmyth_ui->video_alignment); - /* FIXME: Fst call is NULL when mmyth_player_init fails */ - if(mmyth_ui->videow != NULL) - gtk_widget_hide (mmyth_ui->videow); - - gtk_box_pack_start (GTK_BOX (mmyth_ui->main_hbox), - new_uicommon->main_widget, TRUE, TRUE, 0); - } - - if(main_vseparator == NULL) { - /* FIXME: should free this variable*/ - main_vseparator = gtk_vseparator_new(); - g_object_ref (main_vseparator); - } - gtk_box_pack_start (GTK_BOX (mmyth_ui->main_hbox), - main_vseparator, FALSE, FALSE, 0); - gtk_widget_show (main_vseparator); - - gtk_box_pack_end (GTK_BOX (mmyth_ui->main_hbox), new_uicommon->event_box, FALSE, - FALSE, 0); - - mmyth_ui->current_uicommon = new_uicommon; - -} - -/* The close callback is the same for all windows*/ -static void -cb_not_impl_button (GtkButton * button, gpointer user_data) -{ - MMythUi *mmyth_ui = (MMythUi *) user_data; - - GtkWidget *msg_dialog = gtk_message_dialog_new ( - GTK_WINDOW(mmyth_ui->main_window), - GTK_DIALOG_MODAL | - GTK_DIALOG_DESTROY_WITH_PARENT, - GTK_MESSAGE_INFO, - GTK_BUTTONS_OK, - "Feature not implemented yet"); - gtk_widget_set_size_request (msg_dialog, 300, 120); - - gtk_dialog_run (GTK_DIALOG (msg_dialog)); - - gtk_widget_destroy(GTK_WIDGET(msg_dialog)); -} - -/****************************************************************************** - * POPUP MENU WIDGET METHODS * - *****************************************************************************/ - -void -detacher (GtkWidget *attach_widget,GtkMenu *menu) -{ -} - -void -menu_item_settings_cb (GtkMenuItem *menuitem, - gpointer user_data) -{ - /* MMythUi *mmyth_ui = (MMythUi *) user_data; */ - - /* FIXME - MMythUi *mmyth_ui = popup_mmyth_ui; - - settings_show_dialog (GTK_WINDOW (mmyth_ui->main_window)); - */ -} - -static void -do_popup_menu (GtkWidget *my_widget, GdkEventButton *event) -{ - GtkWidget *popup; - int button, event_time; - - popup = gtk_menu_new (); - - /* ... add menu items ... */ - GtkWidget *menu_item = gtk_menu_item_new_with_label("Settings"); - gtk_menu_append(popup, menu_item); - - g_signal_connect (G_OBJECT(menu_item), "activate", - G_CALLBACK (menu_item_settings_cb), NULL); - - if (event) - { - button = event->button; - event_time = event->time; - } - else - { - button = 0; - event_time = gtk_get_current_event_time (); - } - - //gtk_menu_attach_to_widget (GTK_MENU (popup), my_widget, detacher); - gtk_menu_popup (GTK_MENU (popup), NULL, NULL, NULL, NULL, - button, event_time); - gtk_widget_show_all(popup); -} - -/* Respond to a button-press by posting a menu passed in as widget. - * - * Note that the "widget" argument is the menu being posted, NOT - * the button that was pressed. - */ - -static gint -button_press_handler (GtkWidget *widget, GdkEvent *event) -{ - - if (event->type == GDK_BUTTON_PRESS) { - GdkEventButton *bevent = (GdkEventButton *) event; - /* Ignore double-clicks and triple-clicks */ - if (bevent->button == 3) - { - do_popup_menu (widget, bevent); - return TRUE; - } - } - - /* Tell calling code that we have not handled this event; pass it on. */ - return FALSE; -} - - -/****************************************************************************** - * MAIN APP VIEW METHODS * - *****************************************************************************/ - -/* The close callback is the same for all windows*/ -static void -cb_close_button (GtkButton * button, gpointer user_data) -{ - MMythUi *mmyth_ui = (MMythUi *) user_data; - - mmyth_ui_set_widget (mmyth_ui, mmyth_ui->main_uicommon); -} - -static void -cb_esg_today_button (GtkButton * button, gpointer user_data) -{ - MMythUi *mmyth_ui = (MMythUi *) user_data; - - mmyth_ui_set_widget (mmyth_ui, mmyth_ui->esg_grid_uicommon); -} - -MMythUiCommon * -create_main_view (MMythUi * mmyth_ui) -{ - MMythUiCommon *ui_common; - GtkWidget *main_widget; - GtkWidget *image; - - // FIXME: file path -#ifdef MMYTH_DEV - image = gtk_image_new_from_file ("../pixmaps/main_logo.gif"); -#else - image = gtk_image_new_from_file ("../pixmaps/main_logo.gif"); -#endif - - main_widget = gtk_event_box_new(); - - gtk_container_add (GTK_CONTAINER (main_widget), - image); - - - gtk_widget_show_all (main_widget); - g_object_ref (main_widget); - - ui_common = mmyth_uicommon_new (main_widget, - "Channels", "Current", "Today"); - - /* Button signals */ - /* FIXME - g_signal_connect (G_OBJECT (ui_common->button1), "clicked", - G_CALLBACK (cb_channels_button), mmyth_ui); - g_signal_connect (G_OBJECT (ui_common->button2), "clicked", - G_CALLBACK (cb_esg_current_button), mmyth_ui); - */ - g_signal_connect (G_OBJECT (ui_common->button3), "clicked", - G_CALLBACK (cb_esg_today_button), mmyth_ui); - - return ui_common; - -} - -/****************************************************************************** - * ESG GRID VIEW METHODS * - *****************************************************************************/ - -static void -cb_esg_grid_view_button (GtkButton * button, gpointer user_data) -{ - /* FIXME - MMythUi *mmyth_ui = (MMythUi *) user_data; - guint32 service_id = -1; - - // Retrieves the user selected service ID - DVBHScheduleEvent *schedule = (DVBHScheduleEvent *) mmyth_esg_grid_view_get_selected_schedule(); - - if(schedule != NULL) { - service_id = schedule->service->number; - mmyth_play_channel (mmyth_ui, service_id); - } - */ -} - -MMythUiCommon * -create_esg_grid_view (MMythUi * mmyth_ui) -{ - MMythUiCommon *ui_common; - GtkWidget *esg_grid_view = GTK_WIDGET (esg_grid_view_new (mmyth_ui)); - - - ui_common = mmyth_uicommon_new (esg_grid_view, - "View", "Remind", - "Close"); - - /* Button signals */ - g_signal_connect (G_OBJECT (ui_common->button1), "clicked", - G_CALLBACK (cb_esg_grid_view_button), mmyth_ui); - g_signal_connect (G_OBJECT (ui_common->button2), "clicked", - G_CALLBACK (cb_not_impl_button), mmyth_ui); - g_signal_connect (G_OBJECT (ui_common->button3), "clicked", - G_CALLBACK (cb_close_button), mmyth_ui); - - return ui_common; -} - -/****************************************************************************** - * GST VIDEO WIDGET METHODS * - *****************************************************************************/ - -static void -cb_video_close_button (GtkButton * button, gpointer user_data) -{ - MMythUi *mmyth_ui = (MMythUi *) user_data; - - /* FIXME - mmyth_player_stop (mmyth_ui); - */ - - mmyth_ui_set_widget (mmyth_ui, mmyth_ui->main_uicommon); -} - -MMythUiCommon * -create_video_view (MMythUi * mmyth_ui) -{ - - MMythUiCommon *ui_common; - - /* FIXME - mmyth_player_init (mmyth_ui); - */ - - ui_common = mmyth_uicommon_new (mmyth_ui->video_alignment, - " Full\nScreen", "Other\nServices", - "Close"); - - g_signal_connect (G_OBJECT (ui_common->button1), "clicked", - G_CALLBACK (cb_not_impl_button), mmyth_ui); - g_signal_connect (G_OBJECT (ui_common->button2), "clicked", - G_CALLBACK (cb_not_impl_button), mmyth_ui); - g_signal_connect (G_OBJECT (ui_common->button3), "clicked", - G_CALLBACK (cb_video_close_button), mmyth_ui); - - return ui_common; -} diff -r 265cdb1c59e3 -r 259b9773e5c3 gmyth/src/gui/mmyth_ui.c.r2518 --- a/gmyth/src/gui/mmyth_ui.c.r2518 Thu Sep 21 00:05:27 2006 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,456 +0,0 @@ - -#include -#include -#include - -#include "mmyth_ui.h" -#include "mmyth_uicommon.h" -/* FIXME -#include "mmyth_videoplayer.h" -#include "mmyth_esg_grid_view.h" -#include "mmyth_common.h" -*/ - -static gint button_press_handler (GtkWidget *widget, GdkEvent *event); - -MMythUiCommon *create_main_view (MMythUi * mmyth_ui); -MMythUiCommon *create_video_view (MMythUi * mmyth_ui); -MMythUiCommon *create_esg_grid_view (MMythUi * mmyth_ui); -static void cb_video_close_button (GtkButton * button, gpointer user_data); - -/* main box from button box separator*/ -static GtkWidget *main_vseparator = NULL; - -GdkPixbuf *icon_sports, *icon_news, - *icon_movies, *icon_shows, *icon_default; - -/* FIXME: UGLY HACK */ -MMythUi *popup_mmyth_ui; - -void -mmyth_ui_initialize_icons () -{ - GError *error = NULL; - -#ifdef MMYTH_DEVEL - icon_sports = - gdk_pixbuf_new_from_file ("../pixmaps/ico_sports.png", &error); -#else - icon_sports = gdk_pixbuf_new_from_file (PIX_DIR "ico_sports.png", &error); -#endif - - if (error) { - g_warning ("Could not load icon sports: %s\n", error->message); - g_error_free (error); - error = NULL; - } - -#ifdef MMYTH_DEVEL - icon_news = gdk_pixbuf_new_from_file ("../pixmaps/ico_news.png", &error); -#else - icon_news = gdk_pixbuf_new_from_file (PIX_DIR "ico_news.png", &error); -#endif - - if (error) { - g_warning ("Could not load icon news: %s\n", error->message); - g_error_free (error); - error = NULL; - } - -#ifdef MMYTH_DEVEL - icon_movies = - gdk_pixbuf_new_from_file ("../pixmaps/ico_movies.png", &error); -#else - icon_movies = gdk_pixbuf_new_from_file (PIX_DIR "ico_movies.png", &error); -#endif - if (error) { - g_warning ("Could not load icon movies: %s\n", error->message); - g_error_free (error); - error = NULL; - } - -#ifdef MMYTH_DEVEL - icon_shows = gdk_pixbuf_new_from_file ("../pixmaps/ico_shows.png", &error); -#else - icon_shows = gdk_pixbuf_new_from_file (PIX_DIR "ico_shows.png", &error); -#endif - if (error) { - g_warning ("Could not load icon shows: %s\n", error->message); - g_error_free (error); - error = NULL; - } - -#ifdef MMYTH_DEVEL - icon_default = - gdk_pixbuf_new_from_file ("../pixmaps/ico_default.png", &error); -#else - icon_default = gdk_pixbuf_new_from_file (PIX_DIR "ico_default.png", &error); -#endif - - if (error) { - g_warning ("Could not load icon default: %s\n", error->message); - g_error_free (error); - error = NULL; - } - -} - -MMythUi * -mmyth_ui_initialize (GtkWidget * main_window) -{ - MMythUi *mmyth_ui; - - // FIXME: REMOVE ME - //mmyth_settings_load ( ); - - mmyth_ui = g_new0 (MMythUi, 1); - - mmyth_ui->main_window = main_window; - - /* Horizontal box that divides the view into control and video area */ - mmyth_ui->main_hbox = gtk_hbox_new (FALSE, 0); - gtk_widget_show (mmyth_ui->main_hbox); - g_object_ref (mmyth_ui->main_hbox); - - mmyth_ui_initialize_icons (); - - main_bg_color.red = 65000; - main_bg_color.green = 65000; - main_bg_color.blue = 65000; - - // Main widget is mmyth_ui->main_hbox - mmyth_ui->main_uicommon = create_main_view (mmyth_ui); - mmyth_ui->video_uicommon = create_video_view (mmyth_ui); - mmyth_ui->esg_grid_uicommon = create_esg_grid_view (mmyth_ui); - - /* Popup menu */ - /* FIXME: URGENT ugly, ugly hack */ - popup_mmyth_ui = mmyth_ui; - g_signal_connect (G_OBJECT (mmyth_ui->main_hbox), "event", - G_CALLBACK (button_press_handler), - G_OBJECT (mmyth_ui->main_hbox)); - - gtk_container_add (GTK_CONTAINER (mmyth_ui->main_window), - mmyth_ui->main_hbox); - - /* Add the gst video widget to hbox. It should never be removed. */ - /* FIXME: mmyth_ui->video_alignment == NULL when mmyth_player_init fails */ - if(mmyth_ui->video_alignment != NULL) - gtk_box_pack_start (GTK_BOX (mmyth_ui->main_hbox), - mmyth_ui->video_alignment, TRUE, TRUE, 0); - - mmyth_ui_set_widget (mmyth_ui, mmyth_ui->main_uicommon); - - return mmyth_ui; -} - -void -mmyth_ui_finalize (MMythUi * mmyth_ui) -{ - if (mmyth_ui != NULL) - g_free (mmyth_ui); - - mmyth_uicommon_unref_all (mmyth_ui->main_uicommon); - mmyth_uicommon_unref_all (mmyth_ui->video_uicommon); - mmyth_uicommon_unref_all (mmyth_ui->esgcurrent_uicommon); -} - -void -mmyth_ui_set_widget (MMythUi * mmyth_ui, MMythUiCommon * new_uicommon) -{ - if (mmyth_ui->current_uicommon) { - if (mmyth_ui->current_uicommon == mmyth_ui->video_uicommon) { - gtk_widget_hide (mmyth_ui->current_uicommon->main_widget); - gtk_widget_hide (mmyth_ui->videow); - } - else { - gtk_container_remove (GTK_CONTAINER (mmyth_ui->main_hbox), - mmyth_ui->current_uicommon->main_widget); - } - - gtk_container_remove (GTK_CONTAINER (mmyth_ui->main_hbox), - mmyth_ui->current_uicommon->event_box); - gtk_container_remove (GTK_CONTAINER (mmyth_ui->main_hbox), - main_vseparator); - - } - - if (new_uicommon->main_widget == mmyth_ui->video_alignment) { - //gst_player_video_show (GST_PLAYER_VIDEO(mmyth_ui->videow)); - gtk_widget_show (mmyth_ui->video_alignment); - gtk_widget_show (mmyth_ui->videow); - } - else { - /* FIXME: Fst call is NULL when mmyth_player_init fails */ - if(mmyth_ui->video_alignment != NULL) - gtk_widget_hide (mmyth_ui->video_alignment); - /* FIXME: Fst call is NULL when mmyth_player_init fails */ - if(mmyth_ui->videow != NULL) - gtk_widget_hide (mmyth_ui->videow); - - gtk_box_pack_start (GTK_BOX (mmyth_ui->main_hbox), - new_uicommon->main_widget, TRUE, TRUE, 0); - } - - if(main_vseparator == NULL) { - /* FIXME: should free this variable*/ - main_vseparator = gtk_vseparator_new(); - g_object_ref (main_vseparator); - } - gtk_box_pack_start (GTK_BOX (mmyth_ui->main_hbox), - main_vseparator, FALSE, FALSE, 0); - gtk_widget_show (main_vseparator); - - gtk_box_pack_end (GTK_BOX (mmyth_ui->main_hbox), new_uicommon->event_box, FALSE, - FALSE, 0); - - mmyth_ui->current_uicommon = new_uicommon; - -} - -/* The close callback is the same for all windows*/ -static void -cb_not_impl_button (GtkButton * button, gpointer user_data) -{ - MMythUi *mmyth_ui = (MMythUi *) user_data; - - GtkWidget *msg_dialog = gtk_message_dialog_new ( - GTK_WINDOW(mmyth_ui->main_window), - GTK_DIALOG_MODAL | - GTK_DIALOG_DESTROY_WITH_PARENT, - GTK_MESSAGE_INFO, - GTK_BUTTONS_OK, - "Feature not implemented yet"); - gtk_widget_set_size_request (msg_dialog, 300, 120); - - gtk_dialog_run (GTK_DIALOG (msg_dialog)); - - gtk_widget_destroy(GTK_WIDGET(msg_dialog)); -} - -/****************************************************************************** - * POPUP MENU WIDGET METHODS * - *****************************************************************************/ - -void -detacher (GtkWidget *attach_widget,GtkMenu *menu) -{ -} - -void -menu_item_settings_cb (GtkMenuItem *menuitem, - gpointer user_data) -{ - /* MMythUi *mmyth_ui = (MMythUi *) user_data; */ - - /* FIXME - MMythUi *mmyth_ui = popup_mmyth_ui; - - settings_show_dialog (GTK_WINDOW (mmyth_ui->main_window)); - */ -} - -static void -do_popup_menu (GtkWidget *my_widget, GdkEventButton *event) -{ - GtkWidget *popup; - int button, event_time; - - popup = gtk_menu_new (); - - /* ... add menu items ... */ - GtkWidget *menu_item = gtk_menu_item_new_with_label("Settings"); - gtk_menu_append(popup, menu_item); - - g_signal_connect (G_OBJECT(menu_item), "activate", - G_CALLBACK (menu_item_settings_cb), NULL); - - if (event) - { - button = event->button; - event_time = event->time; - } - else - { - button = 0; - event_time = gtk_get_current_event_time (); - } - - //gtk_menu_attach_to_widget (GTK_MENU (popup), my_widget, detacher); - gtk_menu_popup (GTK_MENU (popup), NULL, NULL, NULL, NULL, - button, event_time); - gtk_widget_show_all(popup); -} - -/* Respond to a button-press by posting a menu passed in as widget. - * - * Note that the "widget" argument is the menu being posted, NOT - * the button that was pressed. - */ - -static gint -button_press_handler (GtkWidget *widget, GdkEvent *event) -{ - - if (event->type == GDK_BUTTON_PRESS) { - GdkEventButton *bevent = (GdkEventButton *) event; - /* Ignore double-clicks and triple-clicks */ - if (bevent->button == 3) - { - do_popup_menu (widget, bevent); - return TRUE; - } - } - - /* Tell calling code that we have not handled this event; pass it on. */ - return FALSE; -} - - -/****************************************************************************** - * MAIN APP VIEW METHODS * - *****************************************************************************/ - -/* The close callback is the same for all windows*/ -static void -cb_close_button (GtkButton * button, gpointer user_data) -{ - MMythUi *mmyth_ui = (MMythUi *) user_data; - - mmyth_ui_set_widget (mmyth_ui, mmyth_ui->main_uicommon); -} - -/* FIXME -static void -cb_esg_today_button (GtkButton * button, gpointer user_data) -{ - MMythUi *mmyth_ui = (MMythUi *) user_data; - - mmyth_ui_set_widget (mmyth_ui, mmyth_ui->esg_grid_uicommon); -} -*/ - -MMythUiCommon * -create_main_view (MMythUi * mmyth_ui) -{ - MMythUiCommon *ui_common; - GtkWidget *main_widget; - GtkWidget *image; - - // FIXME: file path -#ifdef MMYTH_DEV - image = gtk_image_new_from_file ("../pixmaps/main_logo.gif"); -#else - image = gtk_image_new_from_file ("../pixmaps/main_logo.gif"); -#endif - - main_widget = gtk_event_box_new(); - - gtk_container_add (GTK_CONTAINER (main_widget), - image); - - - gtk_widget_show_all (main_widget); - g_object_ref (main_widget); - - ui_common = mmyth_uicommon_new (main_widget, - "Channels", "Current", "Today"); - - /* Button signals */ - /* FIXME - g_signal_connect (G_OBJECT (ui_common->button1), "clicked", - G_CALLBACK (cb_channels_button), mmyth_ui); - g_signal_connect (G_OBJECT (ui_common->button2), "clicked", - G_CALLBACK (cb_esg_current_button), mmyth_ui); - g_signal_connect (G_OBJECT (ui_common->button3), "clicked", - G_CALLBACK (cb_esg_today_button), mmyth_ui); - */ - - return ui_common; - -} - -/****************************************************************************** - * ESG GRID VIEW METHODS * - *****************************************************************************/ - -static void -cb_esg_grid_view_button (GtkButton * button, gpointer user_data) -{ - /* FIXME - MMythUi *mmyth_ui = (MMythUi *) user_data; - guint32 service_id = -1; - - // Retrieves the user selected service ID - DVBHScheduleEvent *schedule = (DVBHScheduleEvent *) mmyth_esg_grid_view_get_selected_schedule(); - - if(schedule != NULL) { - service_id = schedule->service->number; - mmyth_play_channel (mmyth_ui, service_id); - } - */ -} - -MMythUiCommon * -create_esg_grid_view (MMythUi * mmyth_ui) -{ - MMythUiCommon *ui_common; - /* FIXME - GtkWidget *esg_grid_view = GTK_WIDGET (esg_grid_view_new (mmyth_ui)); - - - ui_common = mmyth_uicommon_new (esg_grid_view, - "View", "Remind", - "Close"); - */ - - /* Button signals */ - g_signal_connect (G_OBJECT (ui_common->button1), "clicked", - G_CALLBACK (cb_esg_grid_view_button), mmyth_ui); - g_signal_connect (G_OBJECT (ui_common->button2), "clicked", - G_CALLBACK (cb_not_impl_button), mmyth_ui); - g_signal_connect (G_OBJECT (ui_common->button3), "clicked", - G_CALLBACK (cb_close_button), mmyth_ui); - - return ui_common; -} - -/****************************************************************************** - * GST VIDEO WIDGET METHODS * - *****************************************************************************/ - -static void -cb_video_close_button (GtkButton * button, gpointer user_data) -{ - MMythUi *mmyth_ui = (MMythUi *) user_data; - - /* FIXME - mmyth_player_stop (mmyth_ui); - */ - - mmyth_ui_set_widget (mmyth_ui, mmyth_ui->main_uicommon); -} - -MMythUiCommon * -create_video_view (MMythUi * mmyth_ui) -{ - - MMythUiCommon *ui_common; - - /* FIXME - mmyth_player_init (mmyth_ui); - */ - - ui_common = mmyth_uicommon_new (mmyth_ui->video_alignment, - " Full\nScreen", "Other\nServices", - "Close"); - - g_signal_connect (G_OBJECT (ui_common->button1), "clicked", - G_CALLBACK (cb_not_impl_button), mmyth_ui); - g_signal_connect (G_OBJECT (ui_common->button2), "clicked", - G_CALLBACK (cb_not_impl_button), mmyth_ui); - g_signal_connect (G_OBJECT (ui_common->button3), "clicked", - G_CALLBACK (cb_video_close_button), mmyth_ui); - - return ui_common; -} diff -r 265cdb1c59e3 -r 259b9773e5c3 gmyth/src/gui/mmyth_ui.c.r2535 --- a/gmyth/src/gui/mmyth_ui.c.r2535 Thu Sep 21 00:05:27 2006 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,567 +0,0 @@ -#include -#include -#include - -#include "mmyth_ui.h" -#include "mmyth_uicommon.h" -#include "mmyth_uischedulerecording.h" -#include "mmyth_uirecord.h" -/* FIXME -#include "mmyth_videoplayer.h" -#include "mmyth_esg_grid_view.h" -#include "mmyth_common.h" -*/ - -static gint button_press_handler (GtkWidget *widget, GdkEvent *event); - -MMythUiCommon *create_main_view (MMythUi * mmyth_ui); -MMythUiCommon *create_video_view (MMythUi * mmyth_ui); -MMythUiCommon *create_esg_grid_view (MMythUi * mmyth_ui); -MMythUiCommon *create_record_view (MMythUi * mmyth_ui); -MMythUiCommon *create_schedule_view (MMythUi * mmyth_ui); -static void cb_video_close_button (GtkButton * button, gpointer user_data); -static void cb_record_button (GtkButton * button, gpointer user_data); - -/* main box from button box separator*/ -static GtkWidget *main_vseparator = NULL; - -GdkPixbuf *icon_sports, *icon_news, - *icon_movies, *icon_shows, *icon_default; - -/* FIXME: UGLY HACK */ -MMythUi *popup_mmyth_ui; - -void -mmyth_ui_initialize_icons () -{ - GError *error = NULL; - -#ifdef MMYTH_DEVEL - icon_sports = - gdk_pixbuf_new_from_file ("../pixmaps/ico_sports.png", &error); -#else - icon_sports = gdk_pixbuf_new_from_file (PIX_DIR "ico_sports.png", &error); -#endif - - if (error) { - g_warning ("Could not load icon sports: %s\n", error->message); - g_error_free (error); - error = NULL; - } - -#ifdef MMYTH_DEVEL - icon_news = gdk_pixbuf_new_from_file ("../pixmaps/ico_news.png", &error); -#else - icon_news = gdk_pixbuf_new_from_file (PIX_DIR "ico_news.png", &error); -#endif - - if (error) { - g_warning ("Could not load icon news: %s\n", error->message); - g_error_free (error); - error = NULL; - } - -#ifdef MMYTH_DEVEL - icon_movies = - gdk_pixbuf_new_from_file ("../pixmaps/ico_movies.png", &error); -#else - icon_movies = gdk_pixbuf_new_from_file (PIX_DIR "ico_movies.png", &error); -#endif - if (error) { - g_warning ("Could not load icon movies: %s\n", error->message); - g_error_free (error); - error = NULL; - } - -#ifdef MMYTH_DEVEL - icon_shows = gdk_pixbuf_new_from_file ("../pixmaps/ico_shows.png", &error); -#else - icon_shows = gdk_pixbuf_new_from_file (PIX_DIR "ico_shows.png", &error); -#endif - if (error) { - g_warning ("Could not load icon shows: %s\n", error->message); - g_error_free (error); - error = NULL; - } - -#ifdef MMYTH_DEVEL - icon_default = - gdk_pixbuf_new_from_file ("../pixmaps/ico_default.png", &error); -#else - icon_default = gdk_pixbuf_new_from_file (PIX_DIR "ico_default.png", &error); -#endif - - if (error) { - g_warning ("Could not load icon default: %s\n", error->message); - g_error_free (error); - error = NULL; - } - -} - -MMythUi * -mmyth_ui_initialize (GtkWidget * main_window) -{ - MMythUi *mmyth_ui; - - // FIXME: REMOVE ME - //mmyth_settings_load ( ); - - mmyth_ui = g_new0 (MMythUi, 1); - - mmyth_ui->main_window = main_window; - - /* Horizontal box that divides the view into control and video area */ - mmyth_ui->main_hbox = gtk_hbox_new (FALSE, 0); - gtk_widget_show (mmyth_ui->main_hbox); - g_object_ref (mmyth_ui->main_hbox); - - mmyth_ui_initialize_icons (); - - main_bg_color.red = 65000; - main_bg_color.green = 65000; - main_bg_color.blue = 65000; - - // Main widget is mmyth_ui->main_hbox - mmyth_ui->main_uicommon = create_main_view (mmyth_ui); - mmyth_ui->video_uicommon = create_video_view (mmyth_ui); - mmyth_ui->esg_grid_uicommon = create_esg_grid_view (mmyth_ui); - mmyth_ui->record_uicommon = create_record_view (mmyth_ui); - mmyth_ui->schedule_uicommon = create_schedule_view (mmyth_ui); - /* Popup menu */ - /* FIXME: URGENT ugly, ugly hack */ - popup_mmyth_ui = mmyth_ui; - g_signal_connect (G_OBJECT (mmyth_ui->main_hbox), "event", - G_CALLBACK (button_press_handler), - G_OBJECT (mmyth_ui->main_hbox)); - - gtk_container_add (GTK_CONTAINER (mmyth_ui->main_window), - mmyth_ui->main_hbox); - - /* Add the gst video widget to hbox. It should never be removed. */ - /* FIXME: mmyth_ui->video_alignment == NULL when mmyth_player_init fails */ - if(mmyth_ui->video_alignment != NULL) - gtk_box_pack_start (GTK_BOX (mmyth_ui->main_hbox), - mmyth_ui->video_alignment, TRUE, TRUE, 0); - - mmyth_ui_set_widget (mmyth_ui, mmyth_ui->main_uicommon); - - return mmyth_ui; -} - -void -mmyth_ui_finalize (MMythUi * mmyth_ui) -{ - if (mmyth_ui != NULL) - g_free (mmyth_ui); - - mmyth_uicommon_unref_all (mmyth_ui->main_uicommon); - mmyth_uicommon_unref_all (mmyth_ui->video_uicommon); - mmyth_uicommon_unref_all (mmyth_ui->esgcurrent_uicommon); -} - -void -mmyth_ui_set_widget (MMythUi * mmyth_ui, MMythUiCommon * new_uicommon) -{ - if (mmyth_ui->current_uicommon) { - if (mmyth_ui->current_uicommon == mmyth_ui->video_uicommon) { - gtk_widget_hide (mmyth_ui->current_uicommon->main_widget); - gtk_widget_hide (mmyth_ui->videow); - } - else { - gtk_container_remove (GTK_CONTAINER (mmyth_ui->main_hbox), - mmyth_ui->current_uicommon->main_widget); - } - - gtk_container_remove (GTK_CONTAINER (mmyth_ui->main_hbox), - mmyth_ui->current_uicommon->event_box); - gtk_container_remove (GTK_CONTAINER (mmyth_ui->main_hbox), - main_vseparator); - - } - - if (new_uicommon->main_widget == mmyth_ui->video_alignment) { - //gst_player_video_show (GST_PLAYER_VIDEO(mmyth_ui->videow)); - gtk_widget_show (mmyth_ui->video_alignment); - gtk_widget_show (mmyth_ui->videow); - } - else { - /* FIXME: Fst call is NULL when mmyth_player_init fails */ - if(mmyth_ui->video_alignment != NULL) - gtk_widget_hide (mmyth_ui->video_alignment); - /* FIXME: Fst call is NULL when mmyth_player_init fails */ - if(mmyth_ui->videow != NULL) - gtk_widget_hide (mmyth_ui->videow); - - gtk_box_pack_start (GTK_BOX (mmyth_ui->main_hbox), - new_uicommon->main_widget, TRUE, TRUE, 0); - } - - if(main_vseparator == NULL) { - /* FIXME: should free this variable*/ - main_vseparator = gtk_vseparator_new(); - g_object_ref (main_vseparator); - } - gtk_box_pack_start (GTK_BOX (mmyth_ui->main_hbox), - main_vseparator, FALSE, FALSE, 0); - gtk_widget_show (main_vseparator); - - gtk_box_pack_end (GTK_BOX (mmyth_ui->main_hbox), new_uicommon->event_box, FALSE, - FALSE, 0); - - mmyth_ui->current_uicommon = new_uicommon; - -} - -/* The close callback is the same for all windows*/ -static void -cb_not_impl_button (GtkButton * button, gpointer user_data) -{ - MMythUi *mmyth_ui = (MMythUi *) user_data; - - GtkWidget *msg_dialog = gtk_message_dialog_new ( - GTK_WINDOW(mmyth_ui->main_window), - GTK_DIALOG_MODAL | - GTK_DIALOG_DESTROY_WITH_PARENT, - GTK_MESSAGE_INFO, - GTK_BUTTONS_OK, - "Feature not implemented yet"); - gtk_widget_set_size_request (msg_dialog, 300, 120); - - gtk_dialog_run (GTK_DIALOG (msg_dialog)); - - gtk_widget_destroy(GTK_WIDGET(msg_dialog)); -} - -/****************************************************************************** - * POPUP MENU WIDGET METHODS * - *****************************************************************************/ - -void -detacher (GtkWidget *attach_widget,GtkMenu *menu) -{ -} - -void -menu_item_settings_cb (GtkMenuItem *menuitem, - gpointer user_data) -{ - /* MMythUi *mmyth_ui = (MMythUi *) user_data; */ - - /* FIXME - MMythUi *mmyth_ui = popup_mmyth_ui; - - settings_show_dialog (GTK_WINDOW (mmyth_ui->main_window)); - */ -} - -static void -do_popup_menu (GtkWidget *my_widget, GdkEventButton *event) -{ - GtkWidget *popup; - int button, event_time; - - popup = gtk_menu_new (); - - /* ... add menu items ... */ - GtkWidget *menu_item = gtk_menu_item_new_with_label("Settings"); - gtk_menu_append(popup, menu_item); - - g_signal_connect (G_OBJECT(menu_item), "activate", - G_CALLBACK (menu_item_settings_cb), NULL); - - if (event) - { - button = event->button; - event_time = event->time; - } - else - { - button = 0; - event_time = gtk_get_current_event_time (); - } - - //gtk_menu_attach_to_widget (GTK_MENU (popup), my_widget, detacher); - gtk_menu_popup (GTK_MENU (popup), NULL, NULL, NULL, NULL, - button, event_time); - gtk_widget_show_all(popup); -} - -/* Respond to a button-press by posting a menu passed in as widget. - * - * Note that the "widget" argument is the menu being posted, NOT - * the button that was pressed. - */ - -static gint -button_press_handler (GtkWidget *widget, GdkEvent *event) -{ - - if (event->type == GDK_BUTTON_PRESS) { - GdkEventButton *bevent = (GdkEventButton *) event; - /* Ignore double-clicks and triple-clicks */ - if (bevent->button == 3) - { - do_popup_menu (widget, bevent); - return TRUE; - } - } - - /* Tell calling code that we have not handled this event; pass it on. */ - return FALSE; -} - - -/****************************************************************************** - * MAIN APP VIEW METHODS * - *****************************************************************************/ - -/* The close callback is the same for all windows*/ -static void -cb_close_button (GtkButton * button, gpointer user_data) -{ - MMythUi *mmyth_ui = (MMythUi *) user_data; - - mmyth_ui_set_widget (mmyth_ui, mmyth_ui->main_uicommon); -} - -// FIXME -//static void -//cb_record_button (GtkButton * button, gpointer user_data) -//{ -// MMythUi *mmyth_ui = (MMythUi *) user_data; -// -// mmyth_ui_set_widget (mmyth_ui, mmyth_ui->record_uicommon); -//} - - -MMythUiCommon * -create_main_view (MMythUi * mmyth_ui) -{ - MMythUiCommon *ui_common; - GtkWidget *main_widget; - GtkWidget *image; - - // FIXME: file path -#ifdef MMYTH_DEV - image = gtk_image_new_from_file ("../pixmaps/main_logo.gif"); -#else - image = gtk_image_new_from_file ("../pixmaps/main_logo.gif"); -#endif - - main_widget = gtk_event_box_new(); - - gtk_container_add (GTK_CONTAINER (main_widget), - image); - - - gtk_widget_show_all (main_widget); - g_object_ref (main_widget); - - ui_common = mmyth_uicommon_new (main_widget, - "Channels", "Current", "Recording"); - - /* Button signals */ - // FIXME - g_signal_connect (G_OBJECT (ui_common->button1), "clicked", - G_CALLBACK (cb_record_button), mmyth_ui); - g_signal_connect (G_OBJECT (ui_common->button2), "clicked", - G_CALLBACK (cb_record_button), mmyth_ui); - g_signal_connect (G_OBJECT (ui_common->button3), "clicked", - G_CALLBACK (cb_record_button), mmyth_ui); - - - return ui_common; - -} - -/****************************************************************************** - * ESG GRID VIEW METHODS * - *****************************************************************************/ - -static void -cb_esg_grid_view_button (GtkButton * button, gpointer user_data) -{ - /* FIXME - MMythUi *mmyth_ui = (MMythUi *) user_data; - guint32 service_id = -1; - - // Retrieves the user selected service ID - DVBHScheduleEvent *schedule = (DVBHScheduleEvent *) mmyth_esg_grid_view_get_selected_schedule(); - - if(schedule != NULL) { - service_id = schedule->service->number; - mmyth_play_channel (mmyth_ui, service_id); - } - */ -} - -MMythUiCommon * -create_esg_grid_view (MMythUi * mmyth_ui) -{ - MMythUiCommon *ui_common; - /* FIXME - GtkWidget *esg_grid_view = GTK_WIDGET (esg_grid_view_new (mmyth_ui)); - - - ui_common = mmyth_uicommon_new (esg_grid_view, - "View", "Remind", - "Close"); - */ - - /* Button signals */ - g_signal_connect (G_OBJECT (ui_common->button1), "clicked", - G_CALLBACK (cb_esg_grid_view_button), mmyth_ui); - g_signal_connect (G_OBJECT (ui_common->button2), "clicked", - G_CALLBACK (cb_not_impl_button), mmyth_ui); - g_signal_connect (G_OBJECT (ui_common->button3), "clicked", - G_CALLBACK (cb_close_button), mmyth_ui); - - return ui_common; -} -/****************************************************************************** - * SCHEDULE VIEW METHODS * - ******************************************************************************/ - -static void -cb_schedule_button (GtkButton * button, gpointer user_data) -{ - MMythUi *mmyth_ui = (MMythUi *) user_data; - - mmyth_ui_set_widget (mmyth_ui, mmyth_ui->schedule_uicommon); - /* FIXME - MMythUi *mmyth_ui = (MMythUi *) user_data; - guint32 service_id = -1; - - // Retrieves the user selected service ID - DVBHScheduleEvent *schedule = (DVBHScheduleEvent *) mmyth_esg_grid_view_get_selected_schedule(); - - if(schedule != NULL) { - service_id = schedule->service->number; - mmyth_play_channel (mmyth_ui, service_id); - } - */ -} - -MMythUiCommon * -create_schedule_view (MMythUi * mmyth_ui) -{ - MMythUiCommon *ui_common; - - GtkWidget *schedule_view = GTK_WIDGET (schedule_view_new ()); - //record_view = gtk_event_box_new(); - - - gtk_widget_show_all (schedule_view); - g_object_ref (schedule_view); - - ui_common = mmyth_uicommon_new (schedule_view, - "Save", "Clear", - "Cancel"); - - //ui-> - - /* Button signals */ - g_signal_connect (G_OBJECT (ui_common->button1), "clicked", - G_CALLBACK (cb_not_impl_button), mmyth_ui); - g_signal_connect (G_OBJECT (ui_common->button2), "clicked", - G_CALLBACK (cb_not_impl_button), mmyth_ui); - g_signal_connect (G_OBJECT (ui_common->button3), "clicked", - G_CALLBACK (cb_close_button), mmyth_ui); - - return ui_common; -} -/****************************************************************************** - * RECORD VIEW METHODS * - ******************************************************************************/ - -static void -cb_record_button (GtkButton * button, gpointer user_data) -{ - MMythUi *mmyth_ui = (MMythUi *) user_data; - - mmyth_ui_set_widget (mmyth_ui, mmyth_ui->record_uicommon); - /* FIXME - MMythUi *mmyth_ui = (MMythUi *) user_data; - guint32 service_id = -1; - - // Retrieves the user selected service ID - DVBHScheduleEvent *schedule = (DVBHScheduleEvent *) mmyth_esg_grid_view_get_selected_schedule(); - - if(schedule != NULL) { - service_id = schedule->service->number; - mmyth_play_channel (mmyth_ui, service_id); - } - */ -} - -MMythUiCommon * -create_record_view (MMythUi * mmyth_ui) -{ - MMythUiCommon *ui_common; - - GtkWidget *record_view = GTK_WIDGET (record_view_new ()); - //record_view = gtk_event_box_new(); - - - - - gtk_widget_show_all (record_view); - g_object_ref (record_view); - - ui_common = mmyth_uicommon_new (record_view, - "Play (!)", "Schedule", - "Delete(!)"); - - //ui-> - - - /* Button signals */ - g_signal_connect (G_OBJECT (ui_common->button1), "clicked", - G_CALLBACK (cb_not_impl_button), mmyth_ui); - g_signal_connect (G_OBJECT (ui_common->button2), "clicked", - G_CALLBACK (cb_schedule_button), mmyth_ui); - g_signal_connect (G_OBJECT (ui_common->button3), "clicked", - G_CALLBACK (cb_close_button), mmyth_ui); - - return ui_common; -} -/****************************************************************************** - * GST VIDEO WIDGET METHODS * - *****************************************************************************/ - -static void -cb_video_close_button (GtkButton * button, gpointer user_data) -{ - MMythUi *mmyth_ui = (MMythUi *) user_data; - - /* FIXME - mmyth_player_stop (mmyth_ui); - */ - - mmyth_ui_set_widget (mmyth_ui, mmyth_ui->main_uicommon); -} - -MMythUiCommon * -create_video_view (MMythUi * mmyth_ui) -{ - - MMythUiCommon *ui_common; - - /* FIXME - mmyth_player_init (mmyth_ui); - */ - - ui_common = mmyth_uicommon_new (mmyth_ui->video_alignment, - " Full\nScreen", "Other\nServices", - "Close"); - - g_signal_connect (G_OBJECT (ui_common->button1), "clicked", - G_CALLBACK (cb_not_impl_button), mmyth_ui); - g_signal_connect (G_OBJECT (ui_common->button2), "clicked", - G_CALLBACK (cb_not_impl_button), mmyth_ui); - g_signal_connect (G_OBJECT (ui_common->button3), "clicked", - G_CALLBACK (cb_video_close_button), mmyth_ui); - - return ui_common; -} diff -r 265cdb1c59e3 -r 259b9773e5c3 gst-plugins-mythtv/AUTHORS --- a/gst-plugins-mythtv/AUTHORS Thu Sep 21 00:05:27 2006 +0100 +++ b/gst-plugins-mythtv/AUTHORS Thu Sep 21 00:15:52 2006 +0100 @@ -1,2 +1,4 @@ -Rosfran Borges -and the GMyth Team +Alexsandro Jose Virginio dos Santos +Hallyson Luiz de Morais Melo +Leonardo Sobral Cunha +Rosfran Lins Borges