]> git.sesse.net Git - vlc/commitdiff
Removing files for Familiar interface (Gtk+1.2 and GPE).
authorJean-Paul Saman <jpsaman@videolan.org>
Tue, 5 Aug 2003 11:49:14 +0000 (11:49 +0000)
committerJean-Paul Saman <jpsaman@videolan.org>
Tue, 5 Aug 2003 11:49:14 +0000 (11:49 +0000)
14 files changed:
modules/gui/familiar/Modules.am [deleted file]
modules/gui/familiar/callbacks.c [deleted file]
modules/gui/familiar/callbacks.h [deleted file]
modules/gui/familiar/familiar.c [deleted file]
modules/gui/familiar/familiar.glade [deleted file]
modules/gui/familiar/familiar.h [deleted file]
modules/gui/familiar/interface.c [deleted file]
modules/gui/familiar/interface.h [deleted file]
modules/gui/familiar/network.c [deleted file]
modules/gui/familiar/network.h [deleted file]
modules/gui/familiar/playlist.c [deleted file]
modules/gui/familiar/playlist.h [deleted file]
modules/gui/familiar/support.c [deleted file]
modules/gui/familiar/support.h [deleted file]

diff --git a/modules/gui/familiar/Modules.am b/modules/gui/familiar/Modules.am
deleted file mode 100644 (file)
index 325ab89..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-SOURCES_familiar = \
-       familiar.c \
-       familiar.h \
-       interface.c \
-       interface.h \
-       support.c \
-       support.h \
-       callbacks.c \
-       callbacks.h \
-        network.c \
-        network.h \
-        playlist.c \
-        playlist.h \
-       $(NULL)
-
-EXTRA_DIST += familiar.glade
diff --git a/modules/gui/familiar/callbacks.c b/modules/gui/familiar/callbacks.c
deleted file mode 100644 (file)
index e6f6e90..0000000
+++ /dev/null
@@ -1,609 +0,0 @@
-/*****************************************************************************
- * callbacks.c : Callbacks for the Familiar Linux Gtk+ plugin.
- *****************************************************************************
- * Copyright (C) 2000, 2001 VideoLAN
- * $Id: callbacks.c,v 1.24 2003/07/31 20:47:09 reno Exp $
- *
- * Authors: Jean-Paul Saman <jpsaman@wxs.nl>
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111, USA.
- *****************************************************************************/
-
-/*****************************************************************************
- * Preamble
- *****************************************************************************/
-#include <sys/types.h>                                              /* off_t */
-#include <stdlib.h>
-#include <vlc/vlc.h>
-#include <vlc/intf.h>
-#include <vlc/vout.h>
-
-#include <stdio.h>
-#include <string.h>
-#include <dirent.h>
-#include <sys/stat.h>
-#include <unistd.h>
-
-#ifdef HAVE_CONFIG_H
-#  include <config.h>
-#endif
-
-#include <gtk/gtk.h>
-
-#include "playlist.h"
-#include "callbacks.h"
-#include "interface.h"
-#include "support.h"
-#include "familiar.h"
-
-static char* get_file_perm(const char *path);
-
-/*****************************************************************************
- * Useful function to retrieve p_intf
- ****************************************************************************/
-void * E_(__GtkGetIntf)( GtkWidget * widget )
-{
-    void *p_data;
-
-    if( GTK_IS_MENU_ITEM( widget ) )
-    {
-        /* Look for a GTK_MENU */
-        while( widget->parent && !GTK_IS_MENU( widget ) )
-        {
-            widget = widget->parent;
-        }
-
-        /* Maybe this one has the data */
-        p_data = gtk_object_get_data( GTK_OBJECT( widget ), "p_intf" );
-        if( p_data )
-        {
-            return p_data;
-        }
-
-        /* Otherwise, the parent widget has it */
-        widget = gtk_menu_get_attach_widget( GTK_MENU( widget ) );
-    }
-
-    /* We look for the top widget */
-    widget = gtk_widget_get_toplevel( GTK_WIDGET( widget ) );
-
-    p_data = gtk_object_get_data( GTK_OBJECT( widget ), "p_intf" );
-
-    return p_data;
-}
-
-/*****************************************************************************
- * Helper functions for URL changes in Media and Preferences notebook pages.
- ****************************************************************************/
-void MediaURLOpenChanged( GtkWidget *widget, gchar *psz_url )
-{
-    intf_thread_t *p_intf = GtkGetIntf( widget );
-    playlist_t *p_playlist;
-
-    // Add p_url to playlist .... but how ?
-    p_playlist = (playlist_t *)
-             vlc_object_find( p_intf, VLC_OBJECT_PLAYLIST, FIND_ANYWHERE );
-
-    if( p_playlist ==  NULL)
-    {
-        return;
-    }
-    
-    if( p_playlist )
-    {
-        if (p_intf->p_sys->b_autoplayfile)
-        {
-               playlist_Add( p_playlist, (char*)psz_url, 0, 0,
-                          PLAYLIST_APPEND | PLAYLIST_GO, PLAYLIST_END );
-        }
-        else
-        {
-            playlist_Add( p_playlist, (char*)psz_url, 0, 0,
-                          PLAYLIST_APPEND, PLAYLIST_END );
-        }
-        vlc_object_release(  p_playlist );
-        FamiliarRebuildCList( p_intf->p_sys->p_clistplaylist, p_playlist);
-    }
-}
-
-/*****************************************************************
- * Read directory helper function.
- ****************************************************************/
-void ReadDirectory( GtkCList *clist, char *psz_dir )
-{
-    intf_thread_t *p_intf = GtkGetIntf( GTK_WIDGET(clist) );
-    struct dirent **namelist;
-    int n=-1, status=-1;
-
-    msg_Dbg(p_intf, "changing to dir %s", psz_dir);
-    if (psz_dir)
-    {
-       status = chdir(psz_dir);
-       if (status<0)
-          msg_Err( p_intf, "permision denied" );                       
-    }
-    n = scandir(".", &namelist, 0, alphasort);
-    
-    if (n<0)
-        perror("scandir");
-    else
-    {
-        int i, ctr=0;
-        gchar *ppsz_text[5];
-
-        msg_Dbg( p_intf, "updating interface" );
-        gtk_clist_freeze( clist );
-        gtk_clist_clear( clist );
-
-        /* XXX : kludge temporaire pour yopy */
-        ppsz_text[0]="..";
-        ppsz_text[1] = get_file_perm("..");
-        ppsz_text[2] = "";
-        ppsz_text[3] = "";
-        ppsz_text[4] = "";
-       gtk_clist_insert( GTK_CLIST(clist), ctr++, ppsz_text );
-        /* /kludge */                
-        
-        for (i=0; i<n; i++)
-        {
-            if (namelist[i]->d_name[0] != '.')
-            {
-                /* This is a list of strings. */
-                ppsz_text[0] = namelist[i]->d_name;
-                ppsz_text[1] = get_file_perm(namelist[i]->d_name);
-                ppsz_text[2] = "";
-                ppsz_text[3] = "";
-                ppsz_text[4] = "";
-                //            msg_Dbg(p_intf, "(%d) file: %s permission: %s", i, ppsz_text[0], ppsz_text[1] );
-                gtk_clist_insert( GTK_CLIST(clist), ctr++, ppsz_text );
-            }
-        }
-        gtk_clist_thaw( clist );
-        free(namelist);
-    }
-
-    /* now switch to the "file" tab */
-    if (p_intf->p_sys->p_mediabook)
-    {
-       gtk_widget_show( GTK_WIDGET(p_intf->p_sys->p_mediabook) );
-       gtk_notebook_set_page(p_intf->p_sys->p_mediabook,0);
-    }
-}
-
-static char* get_file_perm(const char *path)
-{
-    struct stat st;
-    char *perm;
-
-    perm = (char *) malloc(sizeof(char)*10);
-    strncpy( perm, "----------", sizeof("----------"));
-    if (lstat(path, &st)==0)
-    {
-        if (S_ISLNK(st.st_mode))
-            perm[0]= 'l';
-        else if (S_ISDIR(st.st_mode))
-            perm[0]= 'd';
-        else if (S_ISCHR(st.st_mode))
-            perm[0]= 'c';
-        else if (S_ISBLK(st.st_mode))
-            perm[0]= 'b';
-        else if (S_ISFIFO(st.st_mode))
-            perm[0]= 'f';
-        else if (S_ISSOCK(st.st_mode))
-            perm[0]= 's';
-        else if (S_ISREG(st.st_mode))
-            perm[0]= '-';
-        else /* Unknown type is an error */
-            perm[0]= '?';
-        /* Get file permissions */
-        /* User */
-        if (st.st_mode & S_IRUSR)
-            perm[1]= 'r';
-        if (st.st_mode & S_IWUSR)
-            perm[2]= 'w';
-        if (st.st_mode & S_IXUSR)
-        {
-            if (st.st_mode & S_ISUID)
-                perm[3] = 's';
-            else
-                perm[3]= 'x';
-        }
-        else if (st.st_mode & S_ISUID)
-            perm[3] = 'S';
-        /* Group */
-        if (st.st_mode & S_IRGRP)
-            perm[4]= 'r';
-        if (st.st_mode & S_IWGRP)
-            perm[5]= 'w';
-        if (st.st_mode & S_IXGRP)
-        {
-            if (st.st_mode & S_ISGID)
-                perm[6] = 's';
-            else
-                perm[6]= 'x';
-        }
-        else if (st.st_mode & S_ISGID)
-            perm[6] = 'S';
-        /* Other */
-        if (st.st_mode & S_IROTH)
-            perm[7]= 'r';
-        if (st.st_mode & S_IWOTH)
-            perm[8]= 'w';
-        if (st.st_mode & S_IXOTH)
-        {
-            // 'sticky' bit
-            if (st.st_mode &S_ISVTX)
-                perm[9] = 't';
-            else
-                perm[9]= 'x';
-        }
-        else if (st.st_mode &S_ISVTX)
-            perm[9]= 'T';
-    }
-    return perm;
-}
-
-/*
- * Main interface callbacks
- */
-
-gboolean FamiliarExit( GtkWidget       *widget,
-                       gpointer         user_data )
-{
-    intf_thread_t *p_intf = GtkGetIntf( widget );
-
-    vlc_mutex_lock( &p_intf->change_lock );
-    p_intf->p_vlc->b_die = VLC_TRUE;
-    vlc_mutex_unlock( &p_intf->change_lock );
-
-    return TRUE;
-}
-
-void
-on_toolbar_open_clicked                (GtkButton       *button,
-                                        gpointer         user_data)
-{
-    intf_thread_t *p_intf = GtkGetIntf( GTK_WIDGET( button ) );
-
-    if (p_intf->p_sys->p_notebook)
-    {
-       gtk_widget_show( GTK_WIDGET(p_intf->p_sys->p_notebook) );
-       gtk_notebook_set_page(p_intf->p_sys->p_notebook,0);
-    }
-    if (p_intf->p_sys->p_mediabook)
-    {
-       gtk_widget_show( GTK_WIDGET(p_intf->p_sys->p_mediabook) );
-       gtk_notebook_set_page(p_intf->p_sys->p_mediabook,0);
-    }
-    gdk_window_raise( p_intf->p_sys->p_window->window );
-    if (p_intf->p_sys->p_clist)
-    {
-       ReadDirectory(p_intf->p_sys->p_clist, ".");
-    }
-}
-
-
-void
-on_toolbar_preferences_clicked         (GtkButton       *button,
-                                        gpointer         user_data)
-{
-    intf_thread_t *p_intf = GtkGetIntf( GTK_WIDGET( button ) );
-
-    if (p_intf->p_sys->p_notebook)
-    {
-       gtk_widget_show( GTK_WIDGET(p_intf->p_sys->p_notebook) );
-       gtk_notebook_set_page(p_intf->p_sys->p_notebook,2);
-    }
-    gdk_window_raise( p_intf->p_sys->p_window->window );
-}
-
-
-void
-on_toolbar_rewind_clicked              (GtkButton       *button,
-                                        gpointer         user_data)
-{
-    intf_thread_t *  p_intf = GtkGetIntf( button );
-
-    if( p_intf->p_sys->p_input != NULL )
-    {
-        input_SetStatus( p_intf->p_sys->p_input, INPUT_STATUS_SLOWER );
-    }
-}
-
-
-void
-on_toolbar_pause_clicked               (GtkButton       *button,
-                                        gpointer         user_data)
-{
-    intf_thread_t *  p_intf = GtkGetIntf( button );
-
-    if( p_intf->p_sys->p_input != NULL )
-    {
-        input_SetStatus( p_intf->p_sys->p_input, INPUT_STATUS_PAUSE );
-    }
-}
-
-
-void
-on_toolbar_play_clicked                (GtkButton       *button,
-                                        gpointer         user_data)
-{
-     intf_thread_t *  p_intf = GtkGetIntf( GTK_WIDGET( button ) );
-     playlist_t * p_playlist = vlc_object_find( p_intf, VLC_OBJECT_PLAYLIST, FIND_ANYWHERE );
-
-     if( p_playlist == NULL )
-     {
-         /* Display open page */
-         on_toolbar_open_clicked(button,user_data);
-     }
-
-     /* If the playlist is empty, open a file requester instead */
-     vlc_mutex_lock( &p_playlist->object_lock );
-     if( p_playlist->i_size )
-     {
-         vlc_mutex_unlock( &p_playlist->object_lock );
-         playlist_Play( p_playlist );
-         vlc_object_release( p_playlist );
-         gdk_window_lower( p_intf->p_sys->p_window->window );
-     }
-     else
-     {
-         vlc_mutex_unlock( &p_playlist->object_lock );
-         vlc_object_release( p_playlist );
-         /* Display open page */
-         on_toolbar_open_clicked(button,user_data);
-    }
-}
-
-
-void
-on_toolbar_stop_clicked                (GtkButton       *button,
-                                        gpointer         user_data)
-{
-    intf_thread_t *  p_intf = GtkGetIntf( GTK_WIDGET( button ) );
-    playlist_t * p_playlist = vlc_object_find( p_intf, VLC_OBJECT_PLAYLIST,
-                                                       FIND_ANYWHERE );
-    if( p_playlist)
-    {
-        playlist_Stop( p_playlist );
-        vlc_object_release( p_playlist );
-        gdk_window_raise( p_intf->p_sys->p_window->window );
-    }
-}
-
-
-void
-on_toolbar_forward_clicked             (GtkButton       *button,
-                                        gpointer         user_data)
-{
-    intf_thread_t *  p_intf = GtkGetIntf( button );
-
-    if( p_intf->p_sys->p_input != NULL )
-    {
-        input_SetStatus( p_intf->p_sys->p_input, INPUT_STATUS_FASTER );
-    }
-}
-
-void
-on_toolbar_playlist_clicked            (GtkButton       *button,
-                                        gpointer         user_data)
-{
-    intf_thread_t *p_intf = GtkGetIntf( GTK_WIDGET(button) );
-
-    // Toggle notebook
-    if (p_intf->p_sys->p_notebook)
-    {
-        gtk_widget_show( GTK_WIDGET(p_intf->p_sys->p_notebook) );
-        gtk_notebook_set_page(p_intf->p_sys->p_notebook,1);
-    }
-    gdk_window_raise( p_intf->p_sys->p_window->window );
-}
-
-
-void
-on_toolbar_about_clicked               (GtkButton       *button,
-                                        gpointer         user_data)
-{
-    intf_thread_t *p_intf = GtkGetIntf( GTK_WIDGET(button) );
-
-    // Toggle notebook
-    if (p_intf->p_sys->p_notebook)
-    {
-        gtk_widget_show( GTK_WIDGET(p_intf->p_sys->p_notebook) );
-        gtk_notebook_set_page(p_intf->p_sys->p_notebook,3);
-    }
-    gdk_window_raise( p_intf->p_sys->p_window->window );
-}
-
-
-void
-on_comboURL_entry_changed              (GtkEditable     *editable,
-                                        gpointer         user_data)
-{
-    intf_thread_t * p_intf = GtkGetIntf( GTK_WIDGET(editable) );
-    gchar *       psz_url;
-    struct stat st;
-
-    
-    psz_url = gtk_entry_get_text(GTK_ENTRY(editable));
-/*    if( (strncmp("file://",(const char *) psz_url,7)==0) ||
-        (strncmp("udp://",(const char *) psz_url,6)==0) ||
-        (strncmp("udp4://",(const char *) psz_url,7)==0) ||
-        (strncmp("udp6://",(const char *) psz_url,7)==0) ||
-        (strncmp("udpstream://",(const char *) psz_url,12)==0) ||
-        (strncmp("rtp://",(const char *) psz_url,6)==0) ||
-        (strncmp("rtp4://",(const char *) psz_url,7)==0) ||
-        (strncmp("rtp6://",(const char *) psz_url,7)==0) ||
-        (strncmp("rtpstream://",(const char *) psz_url,12)==0) ||
-        (strncmp("ftp://",(const char *) psz_url,6)==0) ||
-        (strncmp("mms://",(const char *) psz_url,6)==0) ||
-        (strncmp("http://",(const char *) psz_url,7)==0) )
-    {
-        MediaURLOpenChanged(GTK_WIDGET(editable), psz_url);
-    }
-    else */
-    if (stat((char*)psz_url, &st)==0)
-    {
-        if (S_ISDIR(st.st_mode))
-        {
-            if (!p_intf->p_sys->p_clist)
-                msg_Err(p_intf, "p_clist pointer invalid!!" );
-            ReadDirectory(p_intf->p_sys->p_clist, psz_url);
-        }
-        else if( (S_ISLNK(st.st_mode)) || (S_ISCHR(st.st_mode)) ||
-            (S_ISBLK(st.st_mode)) || (S_ISFIFO(st.st_mode))||
-            (S_ISSOCK(st.st_mode))|| (S_ISREG(st.st_mode)) )
-        {
-            MediaURLOpenChanged(GTK_WIDGET(editable), psz_url);
-        }
-    }
-}
-
-
-void
-on_clistmedia_click_column             (GtkCList        *clist,
-                                        gint             column,
-                                        gpointer         user_data)
-{
-    static GtkSortType sort_type = GTK_SORT_ASCENDING;
-
-    // Should sort on column
-    switch(sort_type)
-    {
-        case GTK_SORT_ASCENDING:
-            sort_type = GTK_SORT_DESCENDING;
-            break;
-        case GTK_SORT_DESCENDING:
-            sort_type = GTK_SORT_ASCENDING;
-            break;
-    }
-    gtk_clist_freeze( clist );
-    gtk_clist_set_sort_type( clist, sort_type );
-    gtk_clist_sort( clist );
-    gtk_clist_thaw( clist );
-}
-
-
-void
-on_clistmedia_select_row               (GtkCList        *clist,
-                                        gint             row,
-                                        gint             column,
-                                        GdkEvent        *event,
-                                        gpointer         user_data)
-{
-    intf_thread_t * p_intf = GtkGetIntf( GTK_WIDGET(clist) );
-    gchar *text[2];
-    gint ret;
-    struct stat st;
-
-    if (!p_intf->p_sys->p_clist)
-               msg_Err(p_intf, "p_clist pointer is invalid.");
-    ret = gtk_clist_get_text (p_intf->p_sys->p_clist, row, 0, text);
-    if (ret)
-    {
-        if (stat((char*)text[0], &st)==0)
-        {
-            if (S_ISDIR(st.st_mode))
-               ReadDirectory(p_intf->p_sys->p_clist, text[0]);
-            else if( (S_ISLNK(st.st_mode)) || (S_ISCHR(st.st_mode)) ||
-                     (S_ISBLK(st.st_mode)) || (S_ISFIFO(st.st_mode))||
-                     (S_ISSOCK(st.st_mode))|| (S_ISREG(st.st_mode)) )
-            {
-               MediaURLOpenChanged(GTK_WIDGET(p_intf->p_sys->p_clist), text[0]);
-            }
-       }
-    }
-}
-
-
-void
-on_cbautoplay_toggled                  (GtkToggleButton *togglebutton,
-                                        gpointer         user_data)
-{
-}
-
-
-gboolean
-on_familiar_delete_event               (GtkWidget       *widget,
-                                        GdkEvent        *event,
-                                        gpointer         user_data)
-{
-    FamiliarExit( GTK_WIDGET( widget ), user_data );
-    return TRUE;
-}
-
-/* Slider Management */
-
-gboolean
-FamiliarSliderRelease                  (GtkWidget       *widget,
-                                        GdkEventButton  *event,
-                                        gpointer         user_data)
-{
-    intf_thread_t *p_intf = GtkGetIntf( widget );
-
-    vlc_mutex_lock( &p_intf->change_lock );
-    p_intf->p_sys->b_slider_free = 1;
-    vlc_mutex_unlock( &p_intf->change_lock );
-
-    return FALSE;
-}
-
-
-gboolean
-FamiliarSliderPress                    (GtkWidget       *widget,
-                                        GdkEventButton  *event,
-                                        gpointer         user_data)
-{
-    intf_thread_t *p_intf = GtkGetIntf( widget );
-
-    vlc_mutex_lock( &p_intf->change_lock );
-    p_intf->p_sys->b_slider_free = 0;
-    vlc_mutex_unlock( &p_intf->change_lock );
-
-    return FALSE;
-}
-
-
-
-
-void
-FamiliarMrlGo                          (GtkButton       *button,
-                                        gpointer         user_data)
-{
-    intf_thread_t *  p_intf = GtkGetIntf( button );
-
-    MediaURLOpenChanged( GTK_WIDGET( button ),
-            gtk_entry_get_text(p_intf->p_sys->p_mrlentry ) );
-}
-
-
-
-void
-FamiliarPreferencesApply               (GtkButton       *button,
-                                        gpointer         user_data)
-{
-    intf_thread_t * p_intf = GtkGetIntf( GTK_WIDGET(button) );
-    
-    GtkToggleButton * p_autopl_button = GTK_GET( TOGGLE_BUTTON, "cbautoplay" );
-    if (gtk_toggle_button_get_active(p_autopl_button))
-    {
-        p_intf->p_sys->b_autoplayfile = 1;
-    }
-    else
-    {
-        p_intf->p_sys->b_autoplayfile = 0;
-    }
-}
-
diff --git a/modules/gui/familiar/callbacks.h b/modules/gui/familiar/callbacks.h
deleted file mode 100644 (file)
index c33bf9c..0000000
+++ /dev/null
@@ -1,116 +0,0 @@
-/*****************************************************************************
- * callbacks.h : familiar plugin for vlc
- *****************************************************************************
- * Copyright (C) 2002 VideoLAN
- * $Id: callbacks.h,v 1.9 2003/03/13 15:50:17 marcari Exp $
- *
- * Authors: Jean-Paul Saman <jpsaman@wxs.nl>
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111, USA.
- *****************************************************************************/
-
-#include <gtk/gtk.h>
-
-#include "network.h"
-#include "playlist.h"
-
-gboolean FamiliarExit           ( GtkWidget *, gpointer );
-
-void ReadDirectory(GtkCList *clist, char *psz_dir);
-void MediaURLOpenChanged( GtkWidget *widget, gchar *psz_url );
-
-void
-on_toolbar_open_clicked                (GtkButton       *button,
-                                        gpointer         user_data);
-
-void
-on_toolbar_preferences_clicked         (GtkButton       *button,
-                                        gpointer         user_data);
-
-void
-on_toolbar_rewind_clicked              (GtkButton       *button,
-                                        gpointer         user_data);
-
-void
-on_toolbar_pause_clicked               (GtkButton       *button,
-                                        gpointer         user_data);
-
-void
-on_toolbar_play_clicked                (GtkButton       *button,
-                                        gpointer         user_data);
-
-void
-on_toolbar_stop_clicked                (GtkButton       *button,
-                                        gpointer         user_data);
-
-void
-on_toolbar_forward_clicked             (GtkButton       *button,
-                                        gpointer         user_data);
-
-void
-on_toolbar_about_clicked               (GtkButton       *button,
-                                        gpointer         user_data);
-
-void
-on_comboURL_entry_changed              (GtkEditable     *editable,
-                                        gpointer         user_data);
-
-
-void
-on_clistmedia_click_column             (GtkCList        *clist,
-                                        gint             column,
-                                        gpointer         user_data);
-
-void
-on_clistmedia_select_row               (GtkCList        *clist,
-                                        gint             row,
-                                        gint             column,
-                                        GdkEvent        *event,
-                                        gpointer         user_data);
-
-void
-on_cbautoplay_toggled                  (GtkToggleButton *togglebutton,
-                                        gpointer         user_data);
-
-
-gboolean
-on_familiar_delete_event               (GtkWidget       *widget,
-                                        GdkEvent        *event,
-                                        gpointer         user_data);
-
-gboolean
-FamiliarSliderRelease                  (GtkWidget       *widget,
-                                        GdkEventButton  *event,
-                                        gpointer         user_data);
-
-gboolean
-FamiliarSliderPress                    (GtkWidget       *widget,
-                                        GdkEventButton  *event,
-                                        gpointer         user_data);
-
-
-
-
-void
-FamiliarMrlGo                          (GtkButton       *button,
-                                        gpointer         user_data);
-
-void
-on_toolbar_playlist_clicked            (GtkButton       *button,
-                                        gpointer         user_data);
-
-void
-FamiliarPreferencesApply               (GtkButton       *button,
-                                        gpointer         user_data);
diff --git a/modules/gui/familiar/familiar.c b/modules/gui/familiar/familiar.c
deleted file mode 100644 (file)
index 3517680..0000000
+++ /dev/null
@@ -1,539 +0,0 @@
-/*****************************************************************************
- * familiar.c : familiar plugin for vlc
- *****************************************************************************
- * Copyright (C) 2002 VideoLAN
- * $Id: familiar.c,v 1.35 2003/05/15 22:27:37 massiot Exp $
- *
- * Authors: Jean-Paul Saman <jpsaman@wxs.nl>
- *          Marc Ariberti <marcari@videolan.org>
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111, USA.
- *****************************************************************************/
-
-/*****************************************************************************
- * Preamble
- *****************************************************************************/
-#include <stdlib.h>                                      /* malloc(), free() */
-#include <errno.h>                                                 /* ENOMEM */
-#include <string.h>                                            /* strerror() */
-#include <stdio.h>
-
-#include <vlc/vlc.h>
-#include <vlc/intf.h>
-
-#include <gtk/gtk.h>
-
-#ifdef HAVE_GPE_INIT_H
-#include <gpe/init.h>
-#endif
-
-#include "callbacks.h"
-#include "interface.h"
-#include "support.h"
-#include "familiar.h"
-
-/*****************************************************************************
- * Local prototypes.
- *****************************************************************************/
-static int  Open         ( vlc_object_t * );
-static void Close        ( vlc_object_t * );
-static void Run          ( intf_thread_t * );
-
-void GtkAutoPlayFile     ( vlc_object_t * );
-static int Manage        ( intf_thread_t *p_intf );
-void E_(GtkDisplayDate)  ( GtkAdjustment *p_adj );
-gint E_(GtkModeManage)   ( intf_thread_t * p_intf );
-
-/*****************************************************************************
- * Module descriptor
- *****************************************************************************/
-#define AUTOPLAYFILE_TEXT  N_("Autoplay selected file")
-#define AUTOPLAYFILE_LONGTEXT N_("Automatically play a file when selected in the "\
-        "file selection list")
-
-/*****************************************************************************
- * Module descriptor
- *****************************************************************************/
-vlc_module_begin();
-    add_category_hint( N_("Miscellaneous"), NULL, VLC_TRUE );
-    add_bool( "familiar-autoplayfile", 1, GtkAutoPlayFile, AUTOPLAYFILE_TEXT, AUTOPLAYFILE_LONGTEXT, VLC_TRUE );
-    set_description( _("Familiar Linux Gtk+ interface") );
-    set_capability( "interface", 70 );
-    set_callbacks( Open, Close );
-vlc_module_end();
-
-/*****************************************************************************
- * Open: initialize and create window
- *****************************************************************************/
-static int Open( vlc_object_t *p_this )
-{
-    intf_thread_t *p_intf = (intf_thread_t *)p_this;
-
-    /* Allocate instance and initialize some members */
-    p_intf->p_sys = malloc( sizeof( intf_sys_t ) );
-    if( p_intf->p_sys == NULL )
-    {
-        msg_Err( p_intf, "out of memory" );
-        return VLC_ENOMEM;
-    }
-
-#ifdef NEED_GTK_MAIN
-    msg_Dbg( p_intf, "Using gui-helper" );
-    p_intf->p_sys->p_gtk_main = module_Need( p_this, "gui-helper", "gtk" );
-    if( p_intf->p_sys->p_gtk_main == NULL )
-    {
-        free( p_intf->p_sys );
-        return VLC_ENOMOD;
-    }
-#endif
-
-    /* Initialize Gtk+ thread */
-    p_intf->p_sys->p_input = NULL;
-
-    p_intf->p_sys->b_autoplayfile = 1;
-    p_intf->p_sys->b_playing = 0;
-    p_intf->p_sys->b_slider_free = 1;
-
-    p_intf->pf_run = Run;
-
-    return VLC_SUCCESS;
-}
-
-/*****************************************************************************
- * Close: destroy interface window
- *****************************************************************************/
-static void Close( vlc_object_t *p_this )
-{
-    intf_thread_t *p_intf = (intf_thread_t *)p_this;
-
-    if( p_intf->p_sys->p_input )
-    {
-        vlc_object_release( p_intf->p_sys->p_input );
-    }
-
-#ifdef NEED_GTK_MAIN
-    msg_Dbg( p_intf, "Releasing gui-helper" );
-    module_Unneed( p_intf, p_intf->p_sys->p_gtk_main );
-#endif
-
-    /* Destroy structure */
-    free( p_intf->p_sys );
-}
-
-/*****************************************************************************
- * Run: Gtk+ thread
- *****************************************************************************
- * this part of the interface is in a separate thread so that we can call
- * gtk_main() from within it without annoying the rest of the program.
- *****************************************************************************/
-static void Run( intf_thread_t *p_intf )
-{
-#ifndef NEED_GTK_MAIN
-    /* gtk_init needs to know the command line. We don't care, so we
-     * give it an empty one */
-    char  *p_args[] = { "", NULL };
-    char **pp_args  = p_args;
-    int    i_args   = 1;
-    int    i_dummy;
-#endif
-
-#ifdef HAVE_GPE_INIT_H
-    /* Initialize GPE interface */
-    msg_Dbg( p_intf, "Starting familiar GPE interface" );
-    if (gpe_application_init(&i_args, &pp_args) == FALSE)
-        exit (1);
-#else
-    gtk_set_locale ();
-#   ifndef NEED_GTK_MAIN
-    msg_Dbg( p_intf, "Starting familiar GTK+ interface" );
-    gtk_init( &i_args, &pp_args );
-#   else
-    /* Initialize Gtk+ */
-    msg_Dbg( p_intf, "Starting familiar GTK+ interface thread" );
-    gdk_threads_enter();
-#   endif
-#endif
-
-    /* Create some useful widgets that will certainly be used */
-// FIXME: magic path
-    add_pixmap_directory("share");
-    add_pixmap_directory("/usr/share/vlc");
-
-    /* Path for pixmaps under linupy 1.4 */
-    add_pixmap_directory("/usr/local/share/pixmaps/vlc");
-
-    /* Path for pixmaps under linupy 2.0 */
-    add_pixmap_directory("/usr/share/pixmaps/vlc");
-
-    p_intf->p_sys->p_window = create_familiar();
-    if (p_intf->p_sys->p_window == NULL)
-    {
-        msg_Err( p_intf, "unable to create familiar interface" );
-    }
-    gtk_widget_set_usize(p_intf->p_sys->p_window, 
-                        gdk_screen_width() , gdk_screen_height() - 30 );
-
-    /* Set the title of the main window */
-    gtk_window_set_title( GTK_WINDOW(p_intf->p_sys->p_window),
-                          VOUT_TITLE " (Familiar Linux interface)");
-
-    p_intf->p_sys->p_notebook = GTK_NOTEBOOK( gtk_object_get_data(
-        GTK_OBJECT( p_intf->p_sys->p_window ), "notebook" ) );
-    p_intf->p_sys->p_mediabook = GTK_NOTEBOOK( gtk_object_get_data(
-        GTK_OBJECT( p_intf->p_sys->p_window ), "mediabook" ) );
-
-    /* Get the slider object */
-    p_intf->p_sys->p_slider = GTK_HSCALE( gtk_object_get_data(
-        GTK_OBJECT( p_intf->p_sys->p_window ), "slider" ) );
-    p_intf->p_sys->p_slider_label = GTK_LABEL( gtk_object_get_data(
-        GTK_OBJECT( p_intf->p_sys->p_window ), "slider_label" ) );
-
-    /* Connect the date display to the slider */
-#define P_SLIDER GTK_RANGE( gtk_object_get_data( \
-                         GTK_OBJECT( p_intf->p_sys->p_window ), "slider" ) )
-    p_intf->p_sys->p_adj = gtk_range_get_adjustment( P_SLIDER );
-
-    gtk_signal_connect ( GTK_OBJECT( p_intf->p_sys->p_adj ), "value_changed",
-                         GTK_SIGNAL_FUNC( E_(GtkDisplayDate) ), NULL );
-    p_intf->p_sys->f_adj_oldvalue = 0;
-    p_intf->p_sys->i_adj_oldvalue = 0;
-#undef P_SLIDER
-
-    p_intf->p_sys->p_clist = GTK_CLIST( gtk_object_get_data(
-        GTK_OBJECT( p_intf->p_sys->p_window ), "clistmedia" ) );
-    gtk_clist_set_column_visibility (GTK_CLIST (p_intf->p_sys->p_clist), 2, FALSE);
-    gtk_clist_set_column_visibility (GTK_CLIST (p_intf->p_sys->p_clist), 3, FALSE);
-    gtk_clist_set_column_visibility (GTK_CLIST (p_intf->p_sys->p_clist), 4, FALSE);
-    gtk_clist_column_titles_show (GTK_CLIST (p_intf->p_sys->p_clist));
-
-    /* the playlist object */
-    p_intf->p_sys->p_clistplaylist = GTK_CLIST( gtk_object_get_data(
-        GTK_OBJECT( p_intf->p_sys->p_window ), "clistplaylist" ) );
-    
-    p_intf->p_sys->p_mrlentry = GTK_ENTRY( gtk_object_get_data(
-        GTK_OBJECT( p_intf->p_sys->p_window ), "mrl_entry" ) );
-
-    /* Store p_intf to keep an eye on it */
-    gtk_object_set_data( GTK_OBJECT(p_intf->p_sys->p_window),
-                         "p_intf", p_intf );
-    gtk_object_set_data( GTK_OBJECT(p_intf->p_sys->p_adj),
-                         "p_intf", p_intf );
-    
-    /* Show the control window */
-    gtk_widget_show( p_intf->p_sys->p_window );
-    ReadDirectory(p_intf->p_sys->p_clist, ".");
-
-    /* update the playlist */
-    FamiliarRebuildCList( p_intf->p_sys->p_clistplaylist, 
-        vlc_object_find( p_intf, VLC_OBJECT_PLAYLIST, FIND_ANYWHERE ));
-    
-#ifdef NEED_GTK_MAIN
-    msg_Dbg( p_intf, "Manage GTK keyboard events using threads" );
-    while( !p_intf->b_die )
-    {
-        Manage( p_intf );
-
-        /* Sleep to avoid using all CPU - since some interfaces need to
-         * access keyboard events, a 100ms delay is a good compromise */
-        gdk_threads_leave();
-        if (p_intf->p_libvlc->i_cpu & CPU_CAPABILITY_FPU)
-            msleep( INTF_IDLE_SLEEP );
-        else
-            msleep( 1000 );
-        gdk_threads_enter();
-    }
-#else
-    msg_Dbg( p_intf, "Manage GTK keyboard events using timeouts" );
-    /* Sleep to avoid using all CPU - since some interfaces needs to access
-     * keyboard events, a 1000ms delay is a good compromise */
-    if (p_intf->p_libvlc->i_cpu & CPU_CAPABILITY_FPU)
-        i_dummy = gtk_timeout_add( INTF_IDLE_SLEEP / 1000, (GtkFunction)Manage, p_intf );
-    else
-        i_dummy = gtk_timeout_add( 1000, (GtkFunction)Manage, p_intf );
-
-    /* Enter Gtk mode */
-    gtk_main();
-    /* Remove the timeout */
-    gtk_timeout_remove( i_dummy );
-#endif
-
-    gtk_object_destroy( GTK_OBJECT(p_intf->p_sys->p_window) );
-#ifdef NEED_GTK_MAIN
-    gdk_threads_leave();
-#endif
-}
-
-/*****************************************************************************
- * GtkAutoplayFile: Autoplay file depending on configuration settings
- *****************************************************************************/
-void GtkAutoPlayFile( vlc_object_t *p_this )
-{
-    GtkWidget *cbautoplay;
-    intf_thread_t *p_intf;
-    int i_index;
-    vlc_list_t *p_list = vlc_list_find( p_this, VLC_OBJECT_INTF,
-                                        FIND_ANYWHERE );
-
-    for( i_index = 0; i_index < p_list->i_count; i_index++ )
-    {
-        p_intf = (intf_thread_t *)p_list->p_values[i_index].p_object ;
-
-        if( strcmp( MODULE_STRING, p_intf->p_module->psz_object_name ) )
-        {
-            continue;
-        }
-        cbautoplay = GTK_WIDGET( gtk_object_get_data(
-                            GTK_OBJECT( p_intf->p_sys->p_window ),
-                            "cbautoplay" ) );
-
-        if( !config_GetInt( p_this, "familiar-autoplayfile" ) )
-        {
-            p_intf->p_sys->b_autoplayfile = VLC_FALSE;
-        }
-        else
-        {
-            p_intf->p_sys->b_autoplayfile = VLC_TRUE;
-        }
-        gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON( cbautoplay ),
-                                      p_intf->p_sys->b_autoplayfile );
-    }
-    vlc_list_release( p_list );
-}
-
-/* following functions are local */
-
-/*****************************************************************************
- * Manage: manage main thread messages
- *****************************************************************************
- * In this function, called approx. 10 times a second, we check what the
- * main program wanted to tell us.
- *****************************************************************************/
-static int Manage( intf_thread_t *p_intf )
-{
-    vlc_mutex_lock( &p_intf->change_lock );
-
-    /* Update the input */
-    if( p_intf->p_sys->p_input == NULL )
-    {
-        p_intf->p_sys->p_input = vlc_object_find( p_intf, VLC_OBJECT_INPUT,
-                                                          FIND_ANYWHERE );
-    }
-    else if( p_intf->p_sys->p_input->b_dead )
-    {
-        vlc_object_release( p_intf->p_sys->p_input );
-        p_intf->p_sys->p_input = NULL;
-    }
-
-    if( p_intf->p_sys->p_input )
-    {
-        input_thread_t *p_input = p_intf->p_sys->p_input;
-
-        vlc_mutex_lock( &p_input->stream.stream_lock );
-        if( !p_input->b_die )
-        {
-            /* New input or stream map change */
-            if( p_input->stream.b_changed )
-            {
-                playlist_t *p_playlist;
-
-                E_(GtkModeManage)( p_intf );
-                p_intf->p_sys->b_playing = 1;
-
-                /* update playlist interface */
-                p_playlist = (playlist_t *) vlc_object_find( 
-                        p_intf, VLC_OBJECT_PLAYLIST, FIND_ANYWHERE );
-                if (p_playlist != NULL)
-                {
-                    FamiliarRebuildCList( p_intf->p_sys->p_clistplaylist, 
-                                          p_playlist );
-                }
-            }
-
-            /* Manage the slider */
-            if (p_intf->p_libvlc->i_cpu & CPU_CAPABILITY_FPU)
-            {
-                /* Manage the slider for CPU_CAPABILITY_FPU hardware */        
-                if( p_input->stream.b_seekable && p_intf->p_sys->b_playing )
-                {
-                    float newvalue = p_intf->p_sys->p_adj->value;
-
-#define p_area p_input->stream.p_selected_area
-                    /* If the user hasn't touched the slider since the last time,
-                     * then the input can safely change it */
-                    if( newvalue == p_intf->p_sys->f_adj_oldvalue )
-                    {
-                        /* Update the value */
-                        p_intf->p_sys->p_adj->value =
-                        p_intf->p_sys->f_adj_oldvalue =
-                            ( 100. * p_area->i_tell ) / p_area->i_size;
-                        gtk_signal_emit_by_name( GTK_OBJECT( p_intf->p_sys->p_adj ),
-                                                 "value_changed" );
-                    }
-                    /* Otherwise, send message to the input if the user has
-                     * finished dragging the slider */
-                    else if( p_intf->p_sys->b_slider_free )
-                    {
-                        off_t i_seek = ( newvalue * p_area->i_size ) / 100;
-
-                        /* release the lock to be able to seek */
-                        vlc_mutex_unlock( &p_input->stream.stream_lock );
-                        input_Seek( p_input, i_seek, INPUT_SEEK_SET );
-                        vlc_mutex_lock( &p_input->stream.stream_lock );
-
-                        /* Update the old value */
-                        p_intf->p_sys->f_adj_oldvalue = newvalue;
-                    }
-#undef p_area
-                }
-            }
-            else
-            {
-                /* Manage the slider without CPU_CAPABILITY_FPU hardware */
-                if( p_input->stream.b_seekable && p_intf->p_sys->b_playing )
-                {
-                    off_t newvalue = p_intf->p_sys->p_adj->value;
-
-#define p_area p_input->stream.p_selected_area
-                    /* If the user hasn't touched the slider since the last time,
-                     * then the input can safely change it */
-                    if( newvalue == p_intf->p_sys->i_adj_oldvalue )
-                    {
-                        /* Update the value */
-                        p_intf->p_sys->p_adj->value =
-                        p_intf->p_sys->i_adj_oldvalue =
-                            ( 100 * p_area->i_tell ) / p_area->i_size;
-                        gtk_signal_emit_by_name( GTK_OBJECT( p_intf->p_sys->p_adj ),
-                                                 "value_changed" );
-                    }
-                    /* Otherwise, send message to the input if the user has
-                     * finished dragging the slider */
-                    else if( p_intf->p_sys->b_slider_free )
-                    {
-                        off_t i_seek = ( newvalue * p_area->i_size ) / 100;
-
-                        /* release the lock to be able to seek */
-                        vlc_mutex_unlock( &p_input->stream.stream_lock );
-                        input_Seek( p_input, i_seek, INPUT_SEEK_SET );
-                        vlc_mutex_lock( &p_input->stream.stream_lock );
-
-                        /* Update the old value */
-                        p_intf->p_sys->i_adj_oldvalue = newvalue;
-                    }
-#undef p_area
-                }
-            }
-        }
-        vlc_mutex_unlock( &p_input->stream.stream_lock );
-    }
-    else if( p_intf->p_sys->b_playing && !p_intf->b_die )
-    {
-        E_(GtkModeManage)( p_intf );
-        p_intf->p_sys->b_playing = 0;
-    }
-
-#ifndef NEED_GTK_MAIN
-    if( p_intf->b_die )
-    {
-        vlc_mutex_unlock( &p_intf->change_lock );
-
-        /* Prepare to die, young Skywalker */
-        gtk_main_quit();
-
-        return FALSE;
-    }
-#endif
-
-    vlc_mutex_unlock( &p_intf->change_lock );
-
-    return TRUE;
-}
-
-/*****************************************************************************
- * GtkDisplayDate: display stream date
- *****************************************************************************
- * This function displays the current date related to the position in
- * the stream. It is called whenever the slider changes its value.
- * The lock has to be taken before you call the function.
- *****************************************************************************/
-void E_(GtkDisplayDate)( GtkAdjustment *p_adj )
-{
-    intf_thread_t *p_intf;
-
-    p_intf = gtk_object_get_data( GTK_OBJECT( p_adj ), "p_intf" );
-
-    if( p_intf->p_sys->p_input )
-    {
-#define p_area p_intf->p_sys->p_input->stream.p_selected_area
-        char psz_time[ OFFSETTOTIME_MAX_SIZE ];
-
-        gtk_label_set_text( GTK_LABEL( p_intf->p_sys->p_slider_label ),
-                        input_OffsetToTime( p_intf->p_sys->p_input, psz_time,
-                                   ( p_area->i_size * p_adj->value ) / 100 ) );
-#undef p_area
-     }
-}
-
-/*****************************************************************************
- * GtkModeManage: actualize the aspect of the interface whenever the input
- *                changes.
- *****************************************************************************
- * The lock has to be taken before you call the function.
- *****************************************************************************/
-gint E_(GtkModeManage)( intf_thread_t * p_intf )
-{
-    GtkWidget *     p_slider;
-    vlc_bool_t      b_control;
-
-#define GETWIDGET( ptr, name ) GTK_WIDGET( gtk_object_get_data( GTK_OBJECT( \
-                           p_intf->p_sys->ptr ) , ( name ) ) )
-    /* hide slider */
-    p_slider = GTK_WIDGET( gtk_object_get_data( GTK_OBJECT(
-                           p_intf->p_sys->p_window ), "slider" ) );
-    gtk_widget_hide( GTK_WIDGET( p_slider ) );
-
-    /* controls unavailable */
-    b_control = 0;
-
-    /* show the box related to current input mode */
-    if( p_intf->p_sys->p_input )
-    {
-        /* initialize and show slider for seekable streams */
-        if( p_intf->p_sys->p_input->stream.b_seekable )
-        {
-            if (p_intf->p_libvlc->i_cpu & CPU_CAPABILITY_FPU)
-                p_intf->p_sys->p_adj->value = p_intf->p_sys->f_adj_oldvalue = 0;
-            else
-                p_intf->p_sys->p_adj->value = p_intf->p_sys->i_adj_oldvalue = 0;
-            gtk_signal_emit_by_name( GTK_OBJECT( p_intf->p_sys->p_adj ),
-                                     "value_changed" );
-            gtk_widget_show( GTK_WIDGET( p_slider ) );
-        }
-
-        /* control buttons for free pace streams */
-        b_control = p_intf->p_sys->p_input->stream.b_pace_control;
-
-        p_intf->p_sys->p_input->stream.b_changed = 0;
-        msg_Dbg( p_intf, "stream has changed, refreshing interface" );
-    }
-
-    /* set control items */
-    gtk_widget_set_sensitive( GETWIDGET(p_window, "toolbar_rewind"), b_control );
-    gtk_widget_set_sensitive( GETWIDGET(p_window, "toolbar_pause"), b_control );
-    gtk_widget_set_sensitive( GETWIDGET(p_window, "toolbar_forward"), b_control );
-
-#undef GETWIDGET
-    return TRUE;
-}
-
diff --git a/modules/gui/familiar/familiar.glade b/modules/gui/familiar/familiar.glade
deleted file mode 100644 (file)
index f6b6c57..0000000
+++ /dev/null
@@ -1,1118 +0,0 @@
-<?xml version="1.0"?>
-<GTK-Interface>
-
-<project>
-  <name>Familiar</name>
-  <program_name>familiar</program_name>
-  <directory></directory>
-  <source_directory></source_directory>
-  <pixmaps_directory>../../../share</pixmaps_directory>
-  <language>C</language>
-  <gnome_support>False</gnome_support>
-  <gettext_support>True</gettext_support>
-  <use_widget_names>True</use_widget_names>
-  <output_main_file>False</output_main_file>
-  <output_build_files>False</output_build_files>
-</project>
-
-<widget>
-  <class>GtkWindow</class>
-  <name>familiar</name>
-  <signal>
-    <name>delete_event</name>
-    <handler>on_familiar_delete_event</handler>
-    <last_modification_time>Wed, 21 Aug 2002 19:12:40 GMT</last_modification_time>
-  </signal>
-  <title>VLC media player</title>
-  <type>GTK_WINDOW_TOPLEVEL</type>
-  <position>GTK_WIN_POS_NONE</position>
-  <modal>False</modal>
-  <allow_shrink>True</allow_shrink>
-  <allow_grow>True</allow_grow>
-  <auto_shrink>True</auto_shrink>
-
-  <widget>
-    <class>GtkVBox</class>
-    <name>vbox</name>
-    <homogeneous>False</homogeneous>
-    <spacing>0</spacing>
-
-    <widget>
-      <class>GtkToolbar</class>
-      <name>toolbar</name>
-      <width>240</width>
-      <height>12</height>
-      <orientation>GTK_ORIENTATION_HORIZONTAL</orientation>
-      <type>GTK_TOOLBAR_ICONS</type>
-      <space_size>5</space_size>
-      <space_style>GTK_TOOLBAR_SPACE_EMPTY</space_style>
-      <relief>GTK_RELIEF_NORMAL</relief>
-      <tooltips>True</tooltips>
-      <child>
-       <padding>5</padding>
-       <expand>False</expand>
-       <fill>False</fill>
-      </child>
-
-      <widget>
-       <class>GtkButton</class>
-       <child_name>Toolbar:button</child_name>
-       <name>toolbar_open</name>
-       <tooltip>Open file</tooltip>
-       <signal>
-         <name>clicked</name>
-         <handler>on_toolbar_open_clicked</handler>
-         <last_modification_time>Wed, 24 Jul 2002 18:28:31 GMT</last_modification_time>
-       </signal>
-       <label></label>
-       <icon>familiar-openb16x16.xpm</icon>
-      </widget>
-
-      <widget>
-       <class>GtkButton</class>
-       <child_name>Toolbar:button</child_name>
-       <name>toolbar_playlist</name>
-       <signal>
-         <name>clicked</name>
-         <handler>on_toolbar_playlist_clicked</handler>
-         <last_modification_time>Wed, 05 Mar 2003 22:04:46 GMT</last_modification_time>
-       </signal>
-       <label></label>
-       <icon>familiar-playlistb16x16.xpm</icon>
-      </widget>
-
-      <widget>
-       <class>GtkButton</class>
-       <child_name>Toolbar:button</child_name>
-       <name>toolbar_preferences</name>
-       <tooltip>Preferences</tooltip>
-       <signal>
-         <name>clicked</name>
-         <handler>on_toolbar_preferences_clicked</handler>
-         <last_modification_time>Wed, 24 Jul 2002 18:29:05 GMT</last_modification_time>
-       </signal>
-       <label>Preferences</label>
-       <icon>familiar-preferencesb16x16.xpm</icon>
-      </widget>
-
-      <widget>
-       <class>GtkButton</class>
-       <child_name>Toolbar:button</child_name>
-       <name>toolbar_rewind</name>
-       <tooltip>Rewind stream</tooltip>
-       <signal>
-         <name>clicked</name>
-         <handler>on_toolbar_rewind_clicked</handler>
-         <last_modification_time>Wed, 24 Jul 2002 18:28:45 GMT</last_modification_time>
-       </signal>
-       <label>Rewind</label>
-       <icon>familiar-rewindb16x16.xpm</icon>
-       <child>
-         <new_group>True</new_group>
-       </child>
-      </widget>
-
-      <widget>
-       <class>GtkButton</class>
-       <child_name>Toolbar:button</child_name>
-       <name>toolbar_pause</name>
-       <tooltip>Pause stream</tooltip>
-       <signal>
-         <name>clicked</name>
-         <handler>on_toolbar_pause_clicked</handler>
-         <last_modification_time>Wed, 24 Jul 2002 18:28:58 GMT</last_modification_time>
-       </signal>
-       <label>Pause</label>
-       <icon>familiar-pauseb16x16.xpm</icon>
-      </widget>
-
-      <widget>
-       <class>GtkButton</class>
-       <child_name>Toolbar:button</child_name>
-       <name>toolbar_play</name>
-       <tooltip>Play stream</tooltip>
-       <signal>
-         <name>clicked</name>
-         <handler>on_toolbar_play_clicked</handler>
-         <last_modification_time>Wed, 24 Jul 2002 18:29:12 GMT</last_modification_time>
-       </signal>
-       <label>Play</label>
-       <icon>familiar-playb16x16.xpm</icon>
-      </widget>
-
-      <widget>
-       <class>GtkButton</class>
-       <child_name>Toolbar:button</child_name>
-       <name>toolbar_stop</name>
-       <tooltip>Stop stream</tooltip>
-       <signal>
-         <name>clicked</name>
-         <handler>on_toolbar_stop_clicked</handler>
-         <last_modification_time>Wed, 24 Jul 2002 18:29:18 GMT</last_modification_time>
-       </signal>
-       <label>Stop</label>
-       <icon>familiar-stopb16x16.xpm</icon>
-      </widget>
-
-      <widget>
-       <class>GtkButton</class>
-       <child_name>Toolbar:button</child_name>
-       <name>toolbar_forward</name>
-       <tooltip>Forward stream</tooltip>
-       <signal>
-         <name>clicked</name>
-         <handler>on_toolbar_forward_clicked</handler>
-         <last_modification_time>Wed, 24 Jul 2002 18:29:25 GMT</last_modification_time>
-       </signal>
-       <label>Forward</label>
-       <icon>familiar-forwardb16x16.xpm</icon>
-      </widget>
-
-      <widget>
-       <class>GtkButton</class>
-       <child_name>Toolbar:button</child_name>
-       <name>toolbar_about</name>
-       <tooltip>About</tooltip>
-       <signal>
-         <name>clicked</name>
-         <handler>on_toolbar_about_clicked</handler>
-         <last_modification_time>Wed, 24 Jul 2002 18:29:31 GMT</last_modification_time>
-       </signal>
-       <label>About</label>
-       <icon>vlc16x16.xpm</icon>
-       <child>
-         <new_group>True</new_group>
-       </child>
-      </widget>
-
-      <widget>
-       <class>GtkLabel</class>
-       <name>slider_label</name>
-       <label>0:00:00</label>
-       <justify>GTK_JUSTIFY_CENTER</justify>
-       <wrap>False</wrap>
-       <xalign>0.5</xalign>
-       <yalign>0.5</yalign>
-       <xpad>0</xpad>
-       <ypad>0</ypad>
-       <child>
-         <new_group>True</new_group>
-       </child>
-      </widget>
-    </widget>
-
-    <widget>
-      <class>GtkHScale</class>
-      <name>slider</name>
-      <can_focus>True</can_focus>
-      <signal>
-       <name>button_release_event</name>
-       <handler>FamiliarSliderRelease</handler>
-       <last_modification_time>Fri, 03 Jan 2003 12:33:38 GMT</last_modification_time>
-      </signal>
-      <signal>
-       <name>button_press_event</name>
-       <handler>FamiliarSliderPress</handler>
-       <last_modification_time>Fri, 03 Jan 2003 12:33:54 GMT</last_modification_time>
-      </signal>
-      <draw_value>False</draw_value>
-      <value_pos>GTK_POS_RIGHT</value_pos>
-      <digits>3</digits>
-      <policy>GTK_UPDATE_CONTINUOUS</policy>
-      <value>0</value>
-      <lower>0</lower>
-      <upper>100</upper>
-      <step>1</step>
-      <page>6.25</page>
-      <page_size>0</page_size>
-      <child>
-       <padding>4</padding>
-       <expand>False</expand>
-       <fill>False</fill>
-      </child>
-    </widget>
-
-    <widget>
-      <class>GtkNotebook</class>
-      <name>notebook</name>
-      <can_focus>True</can_focus>
-      <show_tabs>True</show_tabs>
-      <show_border>True</show_border>
-      <tab_pos>GTK_POS_TOP</tab_pos>
-      <scrollable>False</scrollable>
-      <tab_hborder>2</tab_hborder>
-      <tab_vborder>2</tab_vborder>
-      <popup_enable>False</popup_enable>
-      <child>
-       <padding>0</padding>
-       <expand>True</expand>
-       <fill>True</fill>
-       <pack>GTK_PACK_END</pack>
-      </child>
-
-      <widget>
-       <class>GtkVBox</class>
-       <name>vbox1</name>
-       <homogeneous>False</homogeneous>
-       <spacing>0</spacing>
-
-       <widget>
-         <class>GtkHBox</class>
-         <name>hbox1</name>
-         <homogeneous>False</homogeneous>
-         <spacing>0</spacing>
-         <child>
-           <padding>0</padding>
-           <expand>False</expand>
-           <fill>True</fill>
-         </child>
-
-         <widget>
-           <class>GtkButton</class>
-           <name>buttonMrlGo</name>
-           <can_focus>True</can_focus>
-           <signal>
-             <name>clicked</name>
-             <handler>FamiliarMrlGo</handler>
-             <last_modification_time>Wed, 05 Mar 2003 21:47:31 GMT</last_modification_time>
-           </signal>
-           <label>Add</label>
-           <relief>GTK_RELIEF_NORMAL</relief>
-           <child>
-             <padding>0</padding>
-             <expand>False</expand>
-             <fill>False</fill>
-           </child>
-         </widget>
-
-         <widget>
-           <class>GtkLabel</class>
-           <name>labelUrl</name>
-           <label>MRL :</label>
-           <justify>GTK_JUSTIFY_CENTER</justify>
-           <wrap>False</wrap>
-           <xalign>0.5</xalign>
-           <yalign>0.5</yalign>
-           <xpad>0</xpad>
-           <ypad>0</ypad>
-           <child>
-             <padding>2</padding>
-             <expand>False</expand>
-             <fill>False</fill>
-           </child>
-         </widget>
-
-         <widget>
-           <class>GtkCombo</class>
-           <name>mrl_combo</name>
-           <value_in_list>False</value_in_list>
-           <ok_if_empty>True</ok_if_empty>
-           <case_sensitive>False</case_sensitive>
-           <use_arrows>True</use_arrows>
-           <use_arrows_always>False</use_arrows_always>
-           <items>file://
-ftp://
-http://
-udp://@:1234
-udp6://@:1234
-rtp://
-rtp6://
-</items>
-           <child>
-             <padding>3</padding>
-             <expand>True</expand>
-             <fill>True</fill>
-           </child>
-
-           <widget>
-             <class>GtkEntry</class>
-             <child_name>GtkCombo:entry</child_name>
-             <name>mrl_entry</name>
-             <can_focus>True</can_focus>
-             <signal>
-               <name>changed</name>
-               <handler>on_comboURL-entry_changed</handler>
-               <last_modification_time>Sun, 09 Feb 2003 13:32:46 GMT</last_modification_time>
-             </signal>
-             <editable>True</editable>
-             <text_visible>True</text_visible>
-             <text_max_length>0</text_max_length>
-             <text>file://</text>
-           </widget>
-         </widget>
-       </widget>
-
-       <widget>
-         <class>GtkNotebook</class>
-         <name>mediabook</name>
-         <can_focus>True</can_focus>
-         <show_tabs>True</show_tabs>
-         <show_border>True</show_border>
-         <tab_pos>GTK_POS_TOP</tab_pos>
-         <scrollable>False</scrollable>
-         <tab_hborder>2</tab_hborder>
-         <tab_vborder>2</tab_vborder>
-         <popup_enable>False</popup_enable>
-         <child>
-           <padding>0</padding>
-           <expand>True</expand>
-           <fill>True</fill>
-         </child>
-
-         <widget>
-           <class>GtkScrolledWindow</class>
-           <name>scrolledwindow4</name>
-           <hscrollbar_policy>GTK_POLICY_AUTOMATIC</hscrollbar_policy>
-           <vscrollbar_policy>GTK_POLICY_AUTOMATIC</vscrollbar_policy>
-           <hupdate_policy>GTK_UPDATE_CONTINUOUS</hupdate_policy>
-           <vupdate_policy>GTK_UPDATE_CONTINUOUS</vupdate_policy>
-
-           <widget>
-             <class>GtkViewport</class>
-             <name>viewport2</name>
-             <shadow_type>GTK_SHADOW_IN</shadow_type>
-
-             <widget>
-               <class>GtkCList</class>
-               <name>clistmedia</name>
-               <can_focus>True</can_focus>
-               <signal>
-                 <name>select_row</name>
-                 <handler>on_clistmedia_select_row</handler>
-                 <last_modification_time>Sun, 09 Feb 2003 13:33:18 GMT</last_modification_time>
-               </signal>
-               <signal>
-                 <name>click_column</name>
-                 <handler>on_clistmedia_click_column</handler>
-                 <last_modification_time>Sun, 09 Feb 2003 13:33:22 GMT</last_modification_time>
-               </signal>
-               <columns>2</columns>
-               <column_widths>129,80</column_widths>
-               <selection_mode>GTK_SELECTION_SINGLE</selection_mode>
-               <show_titles>True</show_titles>
-               <shadow_type>GTK_SHADOW_IN</shadow_type>
-
-               <widget>
-                 <class>GtkLabel</class>
-                 <child_name>CList:title</child_name>
-                 <name>labelname</name>
-                 <label>Name</label>
-                 <justify>GTK_JUSTIFY_CENTER</justify>
-                 <wrap>False</wrap>
-                 <xalign>0.5</xalign>
-                 <yalign>0.5</yalign>
-                 <xpad>0</xpad>
-                 <ypad>0</ypad>
-               </widget>
-
-               <widget>
-                 <class>GtkLabel</class>
-                 <child_name>CList:title</child_name>
-                 <name>labeltype</name>
-                 <label>Type</label>
-                 <justify>GTK_JUSTIFY_CENTER</justify>
-                 <wrap>False</wrap>
-                 <xalign>0.5</xalign>
-                 <yalign>0.5</yalign>
-                 <xpad>0</xpad>
-                 <ypad>0</ypad>
-               </widget>
-             </widget>
-           </widget>
-         </widget>
-
-         <widget>
-           <class>GtkLabel</class>
-           <child_name>Notebook:tab</child_name>
-           <name>label13</name>
-           <label>File</label>
-           <justify>GTK_JUSTIFY_CENTER</justify>
-           <wrap>False</wrap>
-           <xalign>0.5</xalign>
-           <yalign>0.5</yalign>
-           <xpad>0</xpad>
-           <ypad>0</ypad>
-         </widget>
-
-         <widget>
-           <class>GtkVBox</class>
-           <name>vbox3</name>
-           <homogeneous>False</homogeneous>
-           <spacing>2</spacing>
-
-           <widget>
-             <class>GtkRadioButton</class>
-             <name>network_multicast</name>
-             <can_focus>True</can_focus>
-             <signal>
-               <name>toggled</name>
-               <handler>on_network_multicast_toggled</handler>
-               <last_modification_time>Sat, 01 Mar 2003 21:44:26 GMT</last_modification_time>
-             </signal>
-             <label>UDP/RTP (Adress when Multicast)</label>
-             <active>False</active>
-             <draw_indicator>True</draw_indicator>
-             <group>network</group>
-             <child>
-               <padding>0</padding>
-               <expand>False</expand>
-               <fill>False</fill>
-             </child>
-           </widget>
-
-           <widget>
-             <class>GtkTable</class>
-             <name>table1</name>
-             <rows>2</rows>
-             <columns>2</columns>
-             <homogeneous>False</homogeneous>
-             <row_spacing>0</row_spacing>
-             <column_spacing>5</column_spacing>
-             <child>
-               <padding>0</padding>
-               <expand>False</expand>
-               <fill>True</fill>
-             </child>
-
-             <widget>
-               <class>GtkLabel</class>
-               <name>label21</name>
-               <label>Address</label>
-               <justify>GTK_JUSTIFY_CENTER</justify>
-               <wrap>False</wrap>
-               <xalign>0</xalign>
-               <yalign>0.5</yalign>
-               <xpad>0</xpad>
-               <ypad>0</ypad>
-               <child>
-                 <left_attach>0</left_attach>
-                 <right_attach>1</right_attach>
-                 <top_attach>0</top_attach>
-                 <bottom_attach>1</bottom_attach>
-                 <xpad>0</xpad>
-                 <ypad>0</ypad>
-                 <xexpand>False</xexpand>
-                 <yexpand>False</yexpand>
-                 <xshrink>False</xshrink>
-                 <yshrink>False</yshrink>
-                 <xfill>True</xfill>
-                 <yfill>False</yfill>
-               </child>
-             </widget>
-
-             <widget>
-               <class>GtkLabel</class>
-               <name>label22</name>
-               <label>Port</label>
-               <justify>GTK_JUSTIFY_CENTER</justify>
-               <wrap>False</wrap>
-               <xalign>0</xalign>
-               <yalign>0.5</yalign>
-               <xpad>0</xpad>
-               <ypad>0</ypad>
-               <child>
-                 <left_attach>0</left_attach>
-                 <right_attach>1</right_attach>
-                 <top_attach>1</top_attach>
-                 <bottom_attach>2</bottom_attach>
-                 <xpad>0</xpad>
-                 <ypad>0</ypad>
-                 <xexpand>False</xexpand>
-                 <yexpand>False</yexpand>
-                 <xshrink>False</xshrink>
-                 <yshrink>False</yshrink>
-                 <xfill>True</xfill>
-                 <yfill>False</yfill>
-               </child>
-             </widget>
-
-             <widget>
-               <class>GtkSpinButton</class>
-               <name>network_multicast_port</name>
-               <can_focus>True</can_focus>
-               <signal>
-                 <name>changed</name>
-                 <handler>on_network_multicast_port_changed</handler>
-                 <last_modification_time>Sat, 01 Mar 2003 21:45:26 GMT</last_modification_time>
-               </signal>
-               <climb_rate>1</climb_rate>
-               <digits>0</digits>
-               <numeric>False</numeric>
-               <update_policy>GTK_UPDATE_ALWAYS</update_policy>
-               <snap>False</snap>
-               <wrap>False</wrap>
-               <value>1234</value>
-               <lower>1</lower>
-               <upper>65536</upper>
-               <step>1</step>
-               <page>10</page>
-               <page_size>10</page_size>
-               <child>
-                 <left_attach>1</left_attach>
-                 <right_attach>2</right_attach>
-                 <top_attach>1</top_attach>
-                 <bottom_attach>2</bottom_attach>
-                 <xpad>0</xpad>
-                 <ypad>0</ypad>
-                 <xexpand>True</xexpand>
-                 <yexpand>False</yexpand>
-                 <xshrink>False</xshrink>
-                 <yshrink>False</yshrink>
-                 <xfill>True</xfill>
-                 <yfill>False</yfill>
-               </child>
-             </widget>
-
-             <widget>
-               <class>GtkCombo</class>
-               <name>combo2</name>
-               <value_in_list>False</value_in_list>
-               <ok_if_empty>True</ok_if_empty>
-               <case_sensitive>False</case_sensitive>
-               <use_arrows>True</use_arrows>
-               <use_arrows_always>False</use_arrows_always>
-               <items></items>
-               <child>
-                 <left_attach>1</left_attach>
-                 <right_attach>2</right_attach>
-                 <top_attach>0</top_attach>
-                 <bottom_attach>1</bottom_attach>
-                 <xpad>0</xpad>
-                 <ypad>0</ypad>
-                 <xexpand>True</xexpand>
-                 <yexpand>False</yexpand>
-                 <xshrink>False</xshrink>
-                 <yshrink>False</yshrink>
-                 <xfill>True</xfill>
-                 <yfill>False</yfill>
-               </child>
-
-               <widget>
-                 <class>GtkEntry</class>
-                 <child_name>GtkCombo:entry</child_name>
-                 <name>network_multicast_address</name>
-                 <can_focus>True</can_focus>
-                 <signal>
-                   <name>changed</name>
-                   <handler>on_network_multicast_address_changed</handler>
-                   <last_modification_time>Sat, 01 Mar 2003 21:45:32 GMT</last_modification_time>
-                 </signal>
-                 <editable>True</editable>
-                 <text_visible>True</text_visible>
-                 <text_max_length>0</text_max_length>
-                 <text></text>
-               </widget>
-             </widget>
-           </widget>
-
-           <widget>
-             <class>GtkHSeparator</class>
-             <name>hseparator10</name>
-             <child>
-               <padding>0</padding>
-               <expand>False</expand>
-               <fill>True</fill>
-             </child>
-           </widget>
-
-           <widget>
-             <class>GtkHBox</class>
-             <name>hbox9</name>
-             <homogeneous>True</homogeneous>
-             <spacing>0</spacing>
-             <child>
-               <padding>0</padding>
-               <expand>False</expand>
-               <fill>True</fill>
-             </child>
-
-             <widget>
-               <class>GtkRadioButton</class>
-               <name>network_http</name>
-               <sensitive>False</sensitive>
-               <can_focus>True</can_focus>
-               <signal>
-                 <name>toggled</name>
-                 <handler>on_network_http_toggled</handler>
-                 <last_modification_time>Sat, 01 Mar 2003 21:45:55 GMT</last_modification_time>
-               </signal>
-               <label>HTTP</label>
-               <active>False</active>
-               <draw_indicator>True</draw_indicator>
-               <group>network</group>
-               <child>
-                 <padding>0</padding>
-                 <expand>False</expand>
-                 <fill>True</fill>
-               </child>
-             </widget>
-
-             <widget>
-               <class>GtkRadioButton</class>
-               <name>network_ftp</name>
-               <sensitive>False</sensitive>
-               <can_focus>True</can_focus>
-               <signal>
-                 <name>toggled</name>
-                 <handler>on_network_ftp_toggled</handler>
-                 <last_modification_time>Sat, 01 Mar 2003 21:46:07 GMT</last_modification_time>
-               </signal>
-               <label>FTP</label>
-               <active>False</active>
-               <draw_indicator>True</draw_indicator>
-               <group>network</group>
-               <child>
-                 <padding>0</padding>
-                 <expand>False</expand>
-                 <fill>True</fill>
-               </child>
-             </widget>
-
-             <widget>
-               <class>GtkRadioButton</class>
-               <name>network_mms</name>
-               <sensitive>False</sensitive>
-               <can_focus>True</can_focus>
-               <signal>
-                 <name>toggled</name>
-                 <handler>on_network_mms_toggled</handler>
-                 <last_modification_time>Sat, 01 Mar 2003 21:46:17 GMT</last_modification_time>
-               </signal>
-               <label>MMS</label>
-               <active>False</active>
-               <draw_indicator>True</draw_indicator>
-               <group>network</group>
-               <child>
-                 <padding>0</padding>
-                 <expand>False</expand>
-                 <fill>True</fill>
-               </child>
-             </widget>
-           </widget>
-
-           <widget>
-             <class>GtkHSeparator</class>
-             <name>hseparator11</name>
-             <child>
-               <padding>0</padding>
-               <expand>True</expand>
-               <fill>True</fill>
-             </child>
-           </widget>
-
-           <widget>
-             <class>Placeholder</class>
-           </widget>
-
-           <widget>
-             <class>Placeholder</class>
-           </widget>
-         </widget>
-
-         <widget>
-           <class>GtkLabel</class>
-           <child_name>Notebook:tab</child_name>
-           <name>label20</name>
-           <label>Network</label>
-           <justify>GTK_JUSTIFY_CENTER</justify>
-           <wrap>False</wrap>
-           <xalign>0.5</xalign>
-           <yalign>0.5</yalign>
-           <xpad>0</xpad>
-           <ypad>0</ypad>
-         </widget>
-       </widget>
-      </widget>
-
-      <widget>
-       <class>GtkLabel</class>
-       <child_name>Notebook:tab</child_name>
-       <name>media2</name>
-       <label>Media</label>
-       <justify>GTK_JUSTIFY_CENTER</justify>
-       <wrap>False</wrap>
-       <xalign>0.5</xalign>
-       <yalign>0.5</yalign>
-       <xpad>0</xpad>
-       <ypad>0</ypad>
-      </widget>
-
-      <widget>
-       <class>GtkVBox</class>
-       <name>vbox4</name>
-       <homogeneous>False</homogeneous>
-       <spacing>0</spacing>
-
-       <widget>
-         <class>GtkScrolledWindow</class>
-         <name>scrolledwindow5</name>
-         <hscrollbar_policy>GTK_POLICY_AUTOMATIC</hscrollbar_policy>
-         <vscrollbar_policy>GTK_POLICY_AUTOMATIC</vscrollbar_policy>
-         <hupdate_policy>GTK_UPDATE_CONTINUOUS</hupdate_policy>
-         <vupdate_policy>GTK_UPDATE_CONTINUOUS</vupdate_policy>
-         <child>
-           <padding>0</padding>
-           <expand>True</expand>
-           <fill>True</fill>
-         </child>
-
-         <widget>
-           <class>GtkCList</class>
-           <name>clistplaylist</name>
-           <can_focus>True</can_focus>
-           <signal>
-             <name>event</name>
-             <handler>FamiliarPlaylistEvent</handler>
-             <last_modification_time>Tue, 04 Mar 2003 21:47:16 GMT</last_modification_time>
-           </signal>
-           <columns>2</columns>
-           <column_widths>140,80</column_widths>
-           <selection_mode>GTK_SELECTION_SINGLE</selection_mode>
-           <show_titles>True</show_titles>
-           <shadow_type>GTK_SHADOW_IN</shadow_type>
-
-           <widget>
-             <class>GtkLabel</class>
-             <child_name>CList:title</child_name>
-             <name>label25</name>
-             <label>MRL</label>
-             <justify>GTK_JUSTIFY_LEFT</justify>
-             <wrap>False</wrap>
-             <xalign>0.5</xalign>
-             <yalign>0.5</yalign>
-             <xpad>0</xpad>
-             <ypad>0</ypad>
-           </widget>
-
-           <widget>
-             <class>GtkLabel</class>
-             <child_name>CList:title</child_name>
-             <name>label26</name>
-             <label>Time</label>
-             <justify>GTK_JUSTIFY_RIGHT</justify>
-             <wrap>False</wrap>
-             <xalign>0.5</xalign>
-             <yalign>0.5</yalign>
-             <xpad>0</xpad>
-             <ypad>0</ypad>
-           </widget>
-         </widget>
-       </widget>
-
-       <widget>
-         <class>GtkHBox</class>
-         <name>hbox11</name>
-         <homogeneous>True</homogeneous>
-         <spacing>0</spacing>
-         <child>
-           <padding>2</padding>
-           <expand>False</expand>
-           <fill>False</fill>
-         </child>
-
-         <widget>
-           <class>GtkButton</class>
-           <name>update_playlist</name>
-           <can_focus>True</can_focus>
-           <signal>
-             <name>clicked</name>
-             <handler>FamiliarPlaylistUpdate</handler>
-             <last_modification_time>Wed, 05 Mar 2003 16:52:19 GMT</last_modification_time>
-           </signal>
-           <label>Update</label>
-           <relief>GTK_RELIEF_NORMAL</relief>
-           <child>
-             <padding>0</padding>
-             <expand>False</expand>
-             <fill>False</fill>
-           </child>
-         </widget>
-
-         <widget>
-           <class>GtkButton</class>
-           <name>playlist_del</name>
-           <can_focus>True</can_focus>
-           <signal>
-             <name>clicked</name>
-             <handler>FamiliarPlaylistDel</handler>
-             <last_modification_time>Wed, 05 Mar 2003 16:44:52 GMT</last_modification_time>
-           </signal>
-           <label> Del </label>
-           <relief>GTK_RELIEF_NORMAL</relief>
-           <child>
-             <padding>5</padding>
-             <expand>False</expand>
-             <fill>False</fill>
-           </child>
-         </widget>
-
-         <widget>
-           <class>GtkButton</class>
-           <name>playlist_clear</name>
-           <can_focus>True</can_focus>
-           <signal>
-             <name>clicked</name>
-             <handler>FamiliarPlaylistClear</handler>
-             <last_modification_time>Wed, 05 Mar 2003 16:26:29 GMT</last_modification_time>
-           </signal>
-           <label> Clear </label>
-           <relief>GTK_RELIEF_NORMAL</relief>
-           <child>
-             <padding>5</padding>
-             <expand>False</expand>
-             <fill>False</fill>
-           </child>
-         </widget>
-       </widget>
-      </widget>
-
-      <widget>
-       <class>GtkLabel</class>
-       <child_name>Notebook:tab</child_name>
-       <name>playlist</name>
-       <label>Playlist</label>
-       <justify>GTK_JUSTIFY_CENTER</justify>
-       <wrap>False</wrap>
-       <xalign>0.5</xalign>
-       <yalign>0.5</yalign>
-       <xpad>0</xpad>
-       <ypad>0</ypad>
-      </widget>
-
-      <widget>
-       <class>GtkVBox</class>
-       <name>vbox2</name>
-       <homogeneous>False</homogeneous>
-       <spacing>0</spacing>
-
-       <widget>
-         <class>GtkCheckButton</class>
-         <name>cbautoplay</name>
-         <can_focus>True</can_focus>
-         <signal>
-           <name>toggled</name>
-           <handler>on_cbautoplay_toggled</handler>
-           <last_modification_time>Sun, 09 Feb 2003 22:37:17 GMT</last_modification_time>
-         </signal>
-         <label>Automatically play file</label>
-         <active>True</active>
-         <draw_indicator>True</draw_indicator>
-         <child>
-           <padding>0</padding>
-           <expand>False</expand>
-           <fill>False</fill>
-         </child>
-       </widget>
-
-       <widget>
-         <class>Placeholder</class>
-       </widget>
-
-       <widget>
-         <class>GtkHBox</class>
-         <name>hbox2</name>
-         <homogeneous>True</homogeneous>
-         <spacing>0</spacing>
-         <child>
-           <padding>2</padding>
-           <expand>False</expand>
-           <fill>False</fill>
-           <pack>GTK_PACK_END</pack>
-         </child>
-
-         <widget>
-           <class>GtkButton</class>
-           <name>buttonSave</name>
-           <can_focus>True</can_focus>
-           <label> Save </label>
-           <relief>GTK_RELIEF_NORMAL</relief>
-           <child>
-             <padding>0</padding>
-             <expand>False</expand>
-             <fill>False</fill>
-           </child>
-         </widget>
-
-         <widget>
-           <class>GtkButton</class>
-           <name>buttonApply</name>
-           <can_focus>True</can_focus>
-           <signal>
-             <name>clicked</name>
-             <handler>FamiliarPreferencesApply</handler>
-             <last_modification_time>Thu, 13 Mar 2003 15:03:49 GMT</last_modification_time>
-           </signal>
-           <label> Apply </label>
-           <relief>GTK_RELIEF_NORMAL</relief>
-           <child>
-             <padding>0</padding>
-             <expand>False</expand>
-             <fill>False</fill>
-           </child>
-         </widget>
-
-         <widget>
-           <class>Placeholder</class>
-         </widget>
-
-         <widget>
-           <class>GtkButton</class>
-           <name>buttonCancel</name>
-           <can_focus>True</can_focus>
-           <label> Cancel </label>
-           <relief>GTK_RELIEF_NORMAL</relief>
-           <child>
-             <padding>0</padding>
-             <expand>False</expand>
-             <fill>False</fill>
-             <pack>GTK_PACK_END</pack>
-           </child>
-         </widget>
-       </widget>
-      </widget>
-
-      <widget>
-       <class>GtkLabel</class>
-       <child_name>Notebook:tab</child_name>
-       <name>preferences</name>
-       <label>Preference</label>
-       <justify>GTK_JUSTIFY_CENTER</justify>
-       <wrap>False</wrap>
-       <xalign>0.5</xalign>
-       <yalign>0.5</yalign>
-       <xpad>0</xpad>
-       <ypad>0</ypad>
-      </widget>
-
-      <widget>
-       <class>GtkScrolledWindow</class>
-       <name>scrolledwindow3</name>
-       <hscrollbar_policy>GTK_POLICY_AUTOMATIC</hscrollbar_policy>
-       <vscrollbar_policy>GTK_POLICY_AUTOMATIC</vscrollbar_policy>
-       <hupdate_policy>GTK_UPDATE_CONTINUOUS</hupdate_policy>
-       <vupdate_policy>GTK_UPDATE_CONTINUOUS</vupdate_policy>
-
-       <widget>
-         <class>GtkViewport</class>
-         <name>viewport1</name>
-         <shadow_type>GTK_SHADOW_NONE</shadow_type>
-
-         <widget>
-           <class>GtkFixed</class>
-           <name>fixed2</name>
-
-           <widget>
-             <class>GtkPixmap</class>
-             <name>pixmap2</name>
-             <x>8</x>
-             <y>0</y>
-             <width>50</width>
-             <height>50</height>
-             <filename>vlc32x32.xpm</filename>
-             <xalign>0.5</xalign>
-             <yalign>0.5</yalign>
-             <xpad>0</xpad>
-             <ypad>0</ypad>
-             <build_insensitive>True</build_insensitive>
-           </widget>
-
-           <widget>
-             <class>GtkLabel</class>
-             <name>label8</name>
-             <x>16</x>
-             <y>56</y>
-             <width>200</width>
-             <height>18</height>
-             <label>(c) 1996-2003 the VideoLAN team</label>
-             <justify>GTK_JUSTIFY_CENTER</justify>
-             <wrap>False</wrap>
-             <xalign>0.5</xalign>
-             <yalign>0.5</yalign>
-             <xpad>0</xpad>
-             <ypad>0</ypad>
-           </widget>
-
-           <widget>
-             <class>GtkLabel</class>
-             <name>label9</name>
-             <x>16</x>
-             <y>80</y>
-             <width>200</width>
-             <height>40</height>
-             <label>Authors: The VideoLAN Team, http://www.videolan.org</label>
-             <justify>GTK_JUSTIFY_CENTER</justify>
-             <wrap>True</wrap>
-             <xalign>0.5</xalign>
-             <yalign>0.5</yalign>
-             <xpad>0</xpad>
-             <ypad>0</ypad>
-           </widget>
-
-           <widget>
-             <class>GtkLabel</class>
-             <name>label11</name>
-             <x>64</x>
-             <y>8</y>
-             <width>120</width>
-             <height>40</height>
-             <label>VLC media player</label>
-             <justify>GTK_JUSTIFY_CENTER</justify>
-             <wrap>True</wrap>
-             <xalign>0.5</xalign>
-             <yalign>0.5</yalign>
-             <xpad>0</xpad>
-             <ypad>0</ypad>
-           </widget>
-
-           <widget>
-             <class>GtkLabel</class>
-             <name>label27</name>
-             <x>16</x>
-             <y>200</y>
-             <width>208</width>
-             <height>16</height>
-             <label>http://www.videolan.org</label>
-             <justify>GTK_JUSTIFY_CENTER</justify>
-             <wrap>False</wrap>
-             <xalign>0.5</xalign>
-             <yalign>0.5</yalign>
-             <xpad>0</xpad>
-             <ypad>0</ypad>
-           </widget>
-
-           <widget>
-             <class>GtkLabel</class>
-             <name>label10</name>
-             <x>16</x>
-             <y>128</y>
-             <width>200</width>
-             <height>70</height>
-             <label>The VideoLAN Client is a MPEG, MPEG 2, MP3, DivX player, that accepts input from local or network sources.</label>
-             <justify>GTK_JUSTIFY_LEFT</justify>
-             <wrap>True</wrap>
-             <xalign>0.5</xalign>
-             <yalign>0.5</yalign>
-             <xpad>0</xpad>
-             <ypad>0</ypad>
-           </widget>
-         </widget>
-       </widget>
-      </widget>
-
-      <widget>
-       <class>GtkLabel</class>
-       <child_name>Notebook:tab</child_name>
-       <name>about</name>
-       <label>About</label>
-       <justify>GTK_JUSTIFY_CENTER</justify>
-       <wrap>False</wrap>
-       <xalign>0.5</xalign>
-       <yalign>0.5</yalign>
-       <xpad>0</xpad>
-       <ypad>0</ypad>
-      </widget>
-    </widget>
-  </widget>
-</widget>
-
-</GTK-Interface>
diff --git a/modules/gui/familiar/familiar.h b/modules/gui/familiar/familiar.h
deleted file mode 100644 (file)
index c09323f..0000000
+++ /dev/null
@@ -1,69 +0,0 @@
-/*****************************************************************************
- * familiar.h: private Gtk+ interface description
- *****************************************************************************
- * Copyright (C) 1999, 2000 VideoLAN
- * $Id: familiar.h,v 1.13 2003/03/13 15:50:17 marcari Exp $
- *
- * Authors: Jean-Paul Saman <jpsaman@wxs.nl>
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111, USA.
- *****************************************************************************/
-
-#define MAX_ATEXIT                 10
-
-/*****************************************************************************
- * intf_sys_t: description and status of Gtk+ interface
- *****************************************************************************/
-struct intf_sys_t
-{
-    /* The gtk_main module */
-    module_t *          p_gtk_main;
-
-    /* windows and widgets */
-    GtkWidget   *       p_window;                             /* main window */
-    GtkEntry    *       p_mrlentry;
-    GtkNotebook *       p_notebook;
-    GtkNotebook *       p_mediabook;
-    GtkHScale   *       p_slider;
-    GtkCList    *       p_clist;
-    GtkCList    *       p_clistplaylist;
-
-    /* slider */
-    GtkLabel *          p_slider_label;
-    GtkAdjustment *     p_adj;                   /* slider adjustment object */
-    off_t               i_adj_oldvalue;  /* previous value -no FPU hardware  */
-    float               f_adj_oldvalue;  /* previous value -with FPU hardware*/
-
-    /* special actions */
-    vlc_bool_t          b_playing;
-    vlc_bool_t          b_window_changed;        /* window display toggled ? */
-    vlc_bool_t          b_slider_free;                      /* slider status */
-
-    /* Preference settings */
-    vlc_bool_t          b_autoplayfile;
-
-    /* The input thread */
-    input_thread_t *    p_input;
-};
-
-/*****************************************************************************
- * Useful macro
- ****************************************************************************/
-#define GTK_GET( type, nom ) GTK_##type( gtk_object_get_data( \
-        GTK_OBJECT( p_intf->p_sys->p_window ), nom ) )
-
-            
-#define  GtkGetIntf( widget ) E_(__GtkGetIntf)( GTK_WIDGET( widget ) )
-void * E_(__GtkGetIntf)( GtkWidget * );
diff --git a/modules/gui/familiar/interface.c b/modules/gui/familiar/interface.c
deleted file mode 100644 (file)
index 8cb9a80..0000000
+++ /dev/null
@@ -1,860 +0,0 @@
-/* This file was created automatically by glade and fixed by bootstrap */
-
-#include <vlc/vlc.h>
-
-#include <sys/types.h>
-#include <sys/stat.h>
-#include <unistd.h>
-#include <string.h>
-
-#include <gdk/gdkkeysyms.h>
-#include <gtk/gtk.h>
-
-#include "callbacks.h"
-#include "interface.h"
-#include "support.h"
-
-GtkWidget*
-create_familiar (void)
-{
-  GtkWidget *familiar;
-  GtkWidget *vbox;
-  GtkWidget *toolbar;
-  GtkWidget *tmp_toolbar_icon;
-  GtkWidget *toolbar_open;
-  GtkWidget *toolbar_playlist;
-  GtkWidget *toolbar_preferences;
-  GtkWidget *toolbar_rewind;
-  GtkWidget *toolbar_pause;
-  GtkWidget *toolbar_play;
-  GtkWidget *toolbar_stop;
-  GtkWidget *toolbar_forward;
-  GtkWidget *toolbar_about;
-  GtkWidget *slider_label;
-  GtkWidget *slider;
-  GtkWidget *notebook;
-  GtkWidget *vbox1;
-  GtkWidget *hbox1;
-  GtkWidget *buttonMrlGo;
-  GtkWidget *labelUrl;
-  GtkWidget *mrl_combo;
-  GList *mrl_combo_items = NULL;
-  GtkWidget *mrl_entry;
-  GtkWidget *mediabook;
-  GtkWidget *scrolledwindow4;
-  GtkWidget *viewport2;
-  GtkWidget *clistmedia;
-  GtkWidget *labelname;
-  GtkWidget *labeltype;
-  GtkWidget *label13;
-  GtkWidget *vbox3;
-  GSList *network_group = NULL;
-  GtkWidget *network_multicast;
-  GtkWidget *table1;
-  GtkWidget *label21;
-  GtkWidget *label22;
-  GtkObject *network_multicast_port_adj;
-  GtkWidget *network_multicast_port;
-  GtkWidget *combo2;
-  GtkWidget *network_multicast_address;
-  GtkWidget *hseparator10;
-  GtkWidget *hbox9;
-  GtkWidget *network_http;
-  GtkWidget *network_ftp;
-  GtkWidget *network_mms;
-  GtkWidget *hseparator11;
-  GtkWidget *label20;
-  GtkWidget *media2;
-  GtkWidget *vbox4;
-  GtkWidget *scrolledwindow5;
-  GtkWidget *clistplaylist;
-  GtkWidget *label25;
-  GtkWidget *label26;
-  GtkWidget *hbox11;
-  GtkWidget *update_playlist;
-  GtkWidget *playlist_del;
-  GtkWidget *playlist_clear;
-  GtkWidget *playlist;
-  GtkWidget *vbox2;
-  GtkWidget *cbautoplay;
-  GtkWidget *hbox2;
-  GtkWidget *buttonSave;
-  GtkWidget *buttonApply;
-  GtkWidget *buttonCancel;
-  GtkWidget *preferences;
-  GtkWidget *scrolledwindow3;
-  GtkWidget *viewport1;
-  GtkWidget *fixed2;
-  GtkWidget *pixmap2;
-  GtkWidget *label8;
-  GtkWidget *label9;
-  GtkWidget *label11;
-  GtkWidget *label27;
-  GtkWidget *label10;
-  GtkWidget *about;
-
-  familiar = gtk_window_new (GTK_WINDOW_TOPLEVEL);
-  gtk_widget_set_name (familiar, "familiar");
-  gtk_object_set_data (GTK_OBJECT (familiar), "familiar", familiar);
-  gtk_window_set_title (GTK_WINDOW (familiar), _("VLC media player"));
-  gtk_window_set_policy (GTK_WINDOW (familiar), TRUE, TRUE, TRUE);
-
-  vbox = gtk_vbox_new (FALSE, 0);
-  gtk_widget_set_name (vbox, "vbox");
-  gtk_widget_ref (vbox);
-  gtk_object_set_data_full (GTK_OBJECT (familiar), "vbox", vbox,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (vbox);
-  gtk_container_add (GTK_CONTAINER (familiar), vbox);
-
-  toolbar = gtk_toolbar_new (GTK_ORIENTATION_HORIZONTAL, GTK_TOOLBAR_ICONS);
-  gtk_widget_set_name (toolbar, "toolbar");
-  gtk_widget_ref (toolbar);
-  gtk_object_set_data_full (GTK_OBJECT (familiar), "toolbar", toolbar,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (toolbar);
-  gtk_box_pack_start (GTK_BOX (vbox), toolbar, FALSE, FALSE, 5);
-  gtk_widget_set_usize (toolbar, 240, 12);
-
-  tmp_toolbar_icon = create_pixmap (familiar, "familiar-openb16x16.xpm");
-  toolbar_open = gtk_toolbar_append_element (GTK_TOOLBAR (toolbar),
-                                GTK_TOOLBAR_CHILD_BUTTON,
-                                NULL,
-                                "",
-                                _("Open file"), NULL,
-                                tmp_toolbar_icon, NULL, NULL);
-  gtk_widget_set_name (toolbar_open, "toolbar_open");
-  gtk_widget_ref (toolbar_open);
-  gtk_object_set_data_full (GTK_OBJECT (familiar), "toolbar_open", toolbar_open,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (toolbar_open);
-
-  tmp_toolbar_icon = create_pixmap (familiar, "familiar-playlistb16x16.xpm");
-  toolbar_playlist = gtk_toolbar_append_element (GTK_TOOLBAR (toolbar),
-                                GTK_TOOLBAR_CHILD_BUTTON,
-                                NULL,
-                                "",
-                                NULL, NULL,
-                                tmp_toolbar_icon, NULL, NULL);
-  gtk_widget_set_name (toolbar_playlist, "toolbar_playlist");
-  gtk_widget_ref (toolbar_playlist);
-  gtk_object_set_data_full (GTK_OBJECT (familiar), "toolbar_playlist", toolbar_playlist,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (toolbar_playlist);
-
-  tmp_toolbar_icon = create_pixmap (familiar, "familiar-preferencesb16x16.xpm");
-  toolbar_preferences = gtk_toolbar_append_element (GTK_TOOLBAR (toolbar),
-                                GTK_TOOLBAR_CHILD_BUTTON,
-                                NULL,
-                                _("Preferences"),
-                                _("Preferences"), NULL,
-                                tmp_toolbar_icon, NULL, NULL);
-  gtk_widget_set_name (toolbar_preferences, "toolbar_preferences");
-  gtk_widget_ref (toolbar_preferences);
-  gtk_object_set_data_full (GTK_OBJECT (familiar), "toolbar_preferences", toolbar_preferences,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (toolbar_preferences);
-
-  gtk_toolbar_append_space (GTK_TOOLBAR (toolbar));
-
-  tmp_toolbar_icon = create_pixmap (familiar, "familiar-rewindb16x16.xpm");
-  toolbar_rewind = gtk_toolbar_append_element (GTK_TOOLBAR (toolbar),
-                                GTK_TOOLBAR_CHILD_BUTTON,
-                                NULL,
-                                _("Rewind"),
-                                _("Rewind stream"), NULL,
-                                tmp_toolbar_icon, NULL, NULL);
-  gtk_widget_set_name (toolbar_rewind, "toolbar_rewind");
-  gtk_widget_ref (toolbar_rewind);
-  gtk_object_set_data_full (GTK_OBJECT (familiar), "toolbar_rewind", toolbar_rewind,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (toolbar_rewind);
-
-  tmp_toolbar_icon = create_pixmap (familiar, "familiar-pauseb16x16.xpm");
-  toolbar_pause = gtk_toolbar_append_element (GTK_TOOLBAR (toolbar),
-                                GTK_TOOLBAR_CHILD_BUTTON,
-                                NULL,
-                                _("Pause"),
-                                _("Pause stream"), NULL,
-                                tmp_toolbar_icon, NULL, NULL);
-  gtk_widget_set_name (toolbar_pause, "toolbar_pause");
-  gtk_widget_ref (toolbar_pause);
-  gtk_object_set_data_full (GTK_OBJECT (familiar), "toolbar_pause", toolbar_pause,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (toolbar_pause);
-
-  tmp_toolbar_icon = create_pixmap (familiar, "familiar-playb16x16.xpm");
-  toolbar_play = gtk_toolbar_append_element (GTK_TOOLBAR (toolbar),
-                                GTK_TOOLBAR_CHILD_BUTTON,
-                                NULL,
-                                _("Play"),
-                                _("Play stream"), NULL,
-                                tmp_toolbar_icon, NULL, NULL);
-  gtk_widget_set_name (toolbar_play, "toolbar_play");
-  gtk_widget_ref (toolbar_play);
-  gtk_object_set_data_full (GTK_OBJECT (familiar), "toolbar_play", toolbar_play,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (toolbar_play);
-
-  tmp_toolbar_icon = create_pixmap (familiar, "familiar-stopb16x16.xpm");
-  toolbar_stop = gtk_toolbar_append_element (GTK_TOOLBAR (toolbar),
-                                GTK_TOOLBAR_CHILD_BUTTON,
-                                NULL,
-                                _("Stop"),
-                                _("Stop stream"), NULL,
-                                tmp_toolbar_icon, NULL, NULL);
-  gtk_widget_set_name (toolbar_stop, "toolbar_stop");
-  gtk_widget_ref (toolbar_stop);
-  gtk_object_set_data_full (GTK_OBJECT (familiar), "toolbar_stop", toolbar_stop,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (toolbar_stop);
-
-  tmp_toolbar_icon = create_pixmap (familiar, "familiar-forwardb16x16.xpm");
-  toolbar_forward = gtk_toolbar_append_element (GTK_TOOLBAR (toolbar),
-                                GTK_TOOLBAR_CHILD_BUTTON,
-                                NULL,
-                                _("Forward"),
-                                _("Forward stream"), NULL,
-                                tmp_toolbar_icon, NULL, NULL);
-  gtk_widget_set_name (toolbar_forward, "toolbar_forward");
-  gtk_widget_ref (toolbar_forward);
-  gtk_object_set_data_full (GTK_OBJECT (familiar), "toolbar_forward", toolbar_forward,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (toolbar_forward);
-
-  gtk_toolbar_append_space (GTK_TOOLBAR (toolbar));
-
-  tmp_toolbar_icon = create_pixmap (familiar, "vlc16x16.xpm");
-  toolbar_about = gtk_toolbar_append_element (GTK_TOOLBAR (toolbar),
-                                GTK_TOOLBAR_CHILD_BUTTON,
-                                NULL,
-                                _("About"),
-                                _("About"), NULL,
-                                tmp_toolbar_icon, NULL, NULL);
-  gtk_widget_set_name (toolbar_about, "toolbar_about");
-  gtk_widget_ref (toolbar_about);
-  gtk_object_set_data_full (GTK_OBJECT (familiar), "toolbar_about", toolbar_about,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (toolbar_about);
-
-  slider_label = gtk_label_new ("0:00:00");
-  gtk_widget_set_name (slider_label, "slider_label");
-  gtk_widget_ref (slider_label);
-  gtk_object_set_data_full (GTK_OBJECT (familiar), "slider_label", slider_label,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (slider_label);
-  gtk_toolbar_append_space (GTK_TOOLBAR (toolbar));
-
-  gtk_toolbar_append_widget (GTK_TOOLBAR (toolbar), slider_label, NULL, NULL);
-
-  slider = gtk_hscale_new (GTK_ADJUSTMENT (gtk_adjustment_new (0, 0, 100, 1, 6.25, 0)));
-  gtk_widget_set_name (slider, "slider");
-  gtk_widget_ref (slider);
-  gtk_object_set_data_full (GTK_OBJECT (familiar), "slider", slider,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (slider);
-  gtk_box_pack_start (GTK_BOX (vbox), slider, FALSE, FALSE, 4);
-  gtk_scale_set_draw_value (GTK_SCALE (slider), FALSE);
-  gtk_scale_set_value_pos (GTK_SCALE (slider), GTK_POS_RIGHT);
-  gtk_scale_set_digits (GTK_SCALE (slider), 3);
-
-  notebook = gtk_notebook_new ();
-  gtk_widget_set_name (notebook, "notebook");
-  gtk_widget_ref (notebook);
-  gtk_object_set_data_full (GTK_OBJECT (familiar), "notebook", notebook,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (notebook);
-  gtk_box_pack_end (GTK_BOX (vbox), notebook, TRUE, TRUE, 0);
-
-  vbox1 = gtk_vbox_new (FALSE, 0);
-  gtk_widget_set_name (vbox1, "vbox1");
-  gtk_widget_ref (vbox1);
-  gtk_object_set_data_full (GTK_OBJECT (familiar), "vbox1", vbox1,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (vbox1);
-  gtk_container_add (GTK_CONTAINER (notebook), vbox1);
-
-  hbox1 = gtk_hbox_new (FALSE, 0);
-  gtk_widget_set_name (hbox1, "hbox1");
-  gtk_widget_ref (hbox1);
-  gtk_object_set_data_full (GTK_OBJECT (familiar), "hbox1", hbox1,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (hbox1);
-  gtk_box_pack_start (GTK_BOX (vbox1), hbox1, FALSE, TRUE, 0);
-
-  buttonMrlGo = gtk_button_new_with_label (_("Add"));
-  gtk_widget_set_name (buttonMrlGo, "buttonMrlGo");
-  gtk_widget_ref (buttonMrlGo);
-  gtk_object_set_data_full (GTK_OBJECT (familiar), "buttonMrlGo", buttonMrlGo,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (buttonMrlGo);
-  gtk_box_pack_start (GTK_BOX (hbox1), buttonMrlGo, FALSE, FALSE, 0);
-
-  labelUrl = gtk_label_new (_("MRL :"));
-  gtk_widget_set_name (labelUrl, "labelUrl");
-  gtk_widget_ref (labelUrl);
-  gtk_object_set_data_full (GTK_OBJECT (familiar), "labelUrl", labelUrl,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (labelUrl);
-  gtk_box_pack_start (GTK_BOX (hbox1), labelUrl, FALSE, FALSE, 2);
-
-  mrl_combo = gtk_combo_new ();
-  gtk_widget_set_name (mrl_combo, "mrl_combo");
-  gtk_widget_ref (mrl_combo);
-  gtk_object_set_data_full (GTK_OBJECT (familiar), "mrl_combo", mrl_combo,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (mrl_combo);
-  gtk_box_pack_start (GTK_BOX (hbox1), mrl_combo, TRUE, TRUE, 3);
-  mrl_combo_items = g_list_append (mrl_combo_items, (gpointer) "file://");
-  mrl_combo_items = g_list_append (mrl_combo_items, (gpointer) "ftp://");
-  mrl_combo_items = g_list_append (mrl_combo_items, (gpointer) "http://");
-  mrl_combo_items = g_list_append (mrl_combo_items, (gpointer) "udp://@:1234");
-  mrl_combo_items = g_list_append (mrl_combo_items, (gpointer) "udp6://@:1234");
-  mrl_combo_items = g_list_append (mrl_combo_items, (gpointer) "rtp://");
-  mrl_combo_items = g_list_append (mrl_combo_items, (gpointer) "rtp6://");
-  gtk_combo_set_popdown_strings (GTK_COMBO (mrl_combo), mrl_combo_items);
-  g_list_free (mrl_combo_items);
-
-  mrl_entry = GTK_COMBO (mrl_combo)->entry;
-  gtk_widget_set_name (mrl_entry, "mrl_entry");
-  gtk_widget_ref (mrl_entry);
-  gtk_object_set_data_full (GTK_OBJECT (familiar), "mrl_entry", mrl_entry,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (mrl_entry);
-  gtk_entry_set_text (GTK_ENTRY (mrl_entry), "file://");
-
-  mediabook = gtk_notebook_new ();
-  gtk_widget_set_name (mediabook, "mediabook");
-  gtk_widget_ref (mediabook);
-  gtk_object_set_data_full (GTK_OBJECT (familiar), "mediabook", mediabook,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (mediabook);
-  gtk_box_pack_start (GTK_BOX (vbox1), mediabook, TRUE, TRUE, 0);
-
-  scrolledwindow4 = gtk_scrolled_window_new (NULL, NULL);
-  gtk_widget_set_name (scrolledwindow4, "scrolledwindow4");
-  gtk_widget_ref (scrolledwindow4);
-  gtk_object_set_data_full (GTK_OBJECT (familiar), "scrolledwindow4", scrolledwindow4,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (scrolledwindow4);
-  gtk_container_add (GTK_CONTAINER (mediabook), scrolledwindow4);
-  gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolledwindow4), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC);
-
-  viewport2 = gtk_viewport_new (NULL, NULL);
-  gtk_widget_set_name (viewport2, "viewport2");
-  gtk_widget_ref (viewport2);
-  gtk_object_set_data_full (GTK_OBJECT (familiar), "viewport2", viewport2,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (viewport2);
-  gtk_container_add (GTK_CONTAINER (scrolledwindow4), viewport2);
-
-  clistmedia = gtk_clist_new (2);
-  gtk_widget_set_name (clistmedia, "clistmedia");
-  gtk_widget_ref (clistmedia);
-  gtk_object_set_data_full (GTK_OBJECT (familiar), "clistmedia", clistmedia,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (clistmedia);
-  gtk_container_add (GTK_CONTAINER (viewport2), clistmedia);
-  gtk_clist_set_column_width (GTK_CLIST (clistmedia), 0, 129);
-  gtk_clist_set_column_width (GTK_CLIST (clistmedia), 1, 80);
-  gtk_clist_column_titles_show (GTK_CLIST (clistmedia));
-
-  labelname = gtk_label_new (_("Name"));
-  gtk_widget_set_name (labelname, "labelname");
-  gtk_widget_ref (labelname);
-  gtk_object_set_data_full (GTK_OBJECT (familiar), "labelname", labelname,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (labelname);
-  gtk_clist_set_column_widget (GTK_CLIST (clistmedia), 0, labelname);
-
-  labeltype = gtk_label_new (_("Type"));
-  gtk_widget_set_name (labeltype, "labeltype");
-  gtk_widget_ref (labeltype);
-  gtk_object_set_data_full (GTK_OBJECT (familiar), "labeltype", labeltype,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (labeltype);
-  gtk_clist_set_column_widget (GTK_CLIST (clistmedia), 1, labeltype);
-
-  label13 = gtk_label_new (_("File"));
-  gtk_widget_set_name (label13, "label13");
-  gtk_widget_ref (label13);
-  gtk_object_set_data_full (GTK_OBJECT (familiar), "label13", label13,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (label13);
-  gtk_notebook_set_tab_label (GTK_NOTEBOOK (mediabook), gtk_notebook_get_nth_page (GTK_NOTEBOOK (mediabook), 0), label13);
-
-  vbox3 = gtk_vbox_new (FALSE, 2);
-  gtk_widget_set_name (vbox3, "vbox3");
-  gtk_widget_ref (vbox3);
-  gtk_object_set_data_full (GTK_OBJECT (familiar), "vbox3", vbox3,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (vbox3);
-  gtk_container_add (GTK_CONTAINER (mediabook), vbox3);
-
-  network_multicast = gtk_radio_button_new_with_label (network_group, _("UDP/RTP (Address when Multicast)"));
-  network_group = gtk_radio_button_group (GTK_RADIO_BUTTON (network_multicast));
-  gtk_widget_set_name (network_multicast, "network_multicast");
-  gtk_widget_ref (network_multicast);
-  gtk_object_set_data_full (GTK_OBJECT (familiar), "network_multicast", network_multicast,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (network_multicast);
-  gtk_box_pack_start (GTK_BOX (vbox3), network_multicast, FALSE, FALSE, 0);
-
-  table1 = gtk_table_new (2, 2, FALSE);
-  gtk_widget_set_name (table1, "table1");
-  gtk_widget_ref (table1);
-  gtk_object_set_data_full (GTK_OBJECT (familiar), "table1", table1,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (table1);
-  gtk_box_pack_start (GTK_BOX (vbox3), table1, FALSE, TRUE, 0);
-  gtk_table_set_col_spacings (GTK_TABLE (table1), 5);
-
-  label21 = gtk_label_new (_("Address"));
-  gtk_widget_set_name (label21, "label21");
-  gtk_widget_ref (label21);
-  gtk_object_set_data_full (GTK_OBJECT (familiar), "label21", label21,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (label21);
-  gtk_table_attach (GTK_TABLE (table1), label21, 0, 1, 0, 1,
-                    (GtkAttachOptions) (GTK_FILL),
-                    (GtkAttachOptions) (0), 0, 0);
-  gtk_misc_set_alignment (GTK_MISC (label21), 0, 0.5);
-
-  label22 = gtk_label_new (_("Port"));
-  gtk_widget_set_name (label22, "label22");
-  gtk_widget_ref (label22);
-  gtk_object_set_data_full (GTK_OBJECT (familiar), "label22", label22,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (label22);
-  gtk_table_attach (GTK_TABLE (table1), label22, 0, 1, 1, 2,
-                    (GtkAttachOptions) (GTK_FILL),
-                    (GtkAttachOptions) (0), 0, 0);
-  gtk_misc_set_alignment (GTK_MISC (label22), 0, 0.5);
-
-  network_multicast_port_adj = gtk_adjustment_new (1234, 1, 65536, 1, 10, 10);
-  network_multicast_port = gtk_spin_button_new (GTK_ADJUSTMENT (network_multicast_port_adj), 1, 0);
-  gtk_widget_set_name (network_multicast_port, "network_multicast_port");
-  gtk_widget_ref (network_multicast_port);
-  gtk_object_set_data_full (GTK_OBJECT (familiar), "network_multicast_port", network_multicast_port,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (network_multicast_port);
-  gtk_table_attach (GTK_TABLE (table1), network_multicast_port, 1, 2, 1, 2,
-                    (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
-                    (GtkAttachOptions) (0), 0, 0);
-
-  combo2 = gtk_combo_new ();
-  gtk_widget_set_name (combo2, "combo2");
-  gtk_widget_ref (combo2);
-  gtk_object_set_data_full (GTK_OBJECT (familiar), "combo2", combo2,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (combo2);
-  gtk_table_attach (GTK_TABLE (table1), combo2, 1, 2, 0, 1,
-                    (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
-                    (GtkAttachOptions) (0), 0, 0);
-
-  network_multicast_address = GTK_COMBO (combo2)->entry;
-  gtk_widget_set_name (network_multicast_address, "network_multicast_address");
-  gtk_widget_ref (network_multicast_address);
-  gtk_object_set_data_full (GTK_OBJECT (familiar), "network_multicast_address", network_multicast_address,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (network_multicast_address);
-
-  hseparator10 = gtk_hseparator_new ();
-  gtk_widget_set_name (hseparator10, "hseparator10");
-  gtk_widget_ref (hseparator10);
-  gtk_object_set_data_full (GTK_OBJECT (familiar), "hseparator10", hseparator10,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (hseparator10);
-  gtk_box_pack_start (GTK_BOX (vbox3), hseparator10, FALSE, TRUE, 0);
-
-  hbox9 = gtk_hbox_new (TRUE, 0);
-  gtk_widget_set_name (hbox9, "hbox9");
-  gtk_widget_ref (hbox9);
-  gtk_object_set_data_full (GTK_OBJECT (familiar), "hbox9", hbox9,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (hbox9);
-  gtk_box_pack_start (GTK_BOX (vbox3), hbox9, FALSE, TRUE, 0);
-
-  network_http = gtk_radio_button_new_with_label (network_group, _("HTTP"));
-  network_group = gtk_radio_button_group (GTK_RADIO_BUTTON (network_http));
-  gtk_widget_set_name (network_http, "network_http");
-  gtk_widget_ref (network_http);
-  gtk_object_set_data_full (GTK_OBJECT (familiar), "network_http", network_http,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (network_http);
-  gtk_box_pack_start (GTK_BOX (hbox9), network_http, FALSE, TRUE, 0);
-  gtk_widget_set_sensitive (network_http, FALSE);
-
-  network_ftp = gtk_radio_button_new_with_label (network_group, _("FTP"));
-  network_group = gtk_radio_button_group (GTK_RADIO_BUTTON (network_ftp));
-  gtk_widget_set_name (network_ftp, "network_ftp");
-  gtk_widget_ref (network_ftp);
-  gtk_object_set_data_full (GTK_OBJECT (familiar), "network_ftp", network_ftp,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (network_ftp);
-  gtk_box_pack_start (GTK_BOX (hbox9), network_ftp, FALSE, TRUE, 0);
-  gtk_widget_set_sensitive (network_ftp, FALSE);
-
-  network_mms = gtk_radio_button_new_with_label (network_group, _("MMS"));
-  network_group = gtk_radio_button_group (GTK_RADIO_BUTTON (network_mms));
-  gtk_widget_set_name (network_mms, "network_mms");
-  gtk_widget_ref (network_mms);
-  gtk_object_set_data_full (GTK_OBJECT (familiar), "network_mms", network_mms,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (network_mms);
-  gtk_box_pack_start (GTK_BOX (hbox9), network_mms, FALSE, TRUE, 0);
-  gtk_widget_set_sensitive (network_mms, FALSE);
-
-  hseparator11 = gtk_hseparator_new ();
-  gtk_widget_set_name (hseparator11, "hseparator11");
-  gtk_widget_ref (hseparator11);
-  gtk_object_set_data_full (GTK_OBJECT (familiar), "hseparator11", hseparator11,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (hseparator11);
-  gtk_box_pack_start (GTK_BOX (vbox3), hseparator11, TRUE, TRUE, 0);
-
-  label20 = gtk_label_new (_("Network"));
-  gtk_widget_set_name (label20, "label20");
-  gtk_widget_ref (label20);
-  gtk_object_set_data_full (GTK_OBJECT (familiar), "label20", label20,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (label20);
-  gtk_notebook_set_tab_label (GTK_NOTEBOOK (mediabook), gtk_notebook_get_nth_page (GTK_NOTEBOOK (mediabook), 1), label20);
-
-  media2 = gtk_label_new (_("Media"));
-  gtk_widget_set_name (media2, "media2");
-  gtk_widget_ref (media2);
-  gtk_object_set_data_full (GTK_OBJECT (familiar), "media2", media2,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (media2);
-  gtk_notebook_set_tab_label (GTK_NOTEBOOK (notebook), gtk_notebook_get_nth_page (GTK_NOTEBOOK (notebook), 0), media2);
-
-  vbox4 = gtk_vbox_new (FALSE, 0);
-  gtk_widget_set_name (vbox4, "vbox4");
-  gtk_widget_ref (vbox4);
-  gtk_object_set_data_full (GTK_OBJECT (familiar), "vbox4", vbox4,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (vbox4);
-  gtk_container_add (GTK_CONTAINER (notebook), vbox4);
-
-  scrolledwindow5 = gtk_scrolled_window_new (NULL, NULL);
-  gtk_widget_set_name (scrolledwindow5, "scrolledwindow5");
-  gtk_widget_ref (scrolledwindow5);
-  gtk_object_set_data_full (GTK_OBJECT (familiar), "scrolledwindow5", scrolledwindow5,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (scrolledwindow5);
-  gtk_box_pack_start (GTK_BOX (vbox4), scrolledwindow5, TRUE, TRUE, 0);
-  gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolledwindow5), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC);
-
-  clistplaylist = gtk_clist_new (2);
-  gtk_widget_set_name (clistplaylist, "clistplaylist");
-  gtk_widget_ref (clistplaylist);
-  gtk_object_set_data_full (GTK_OBJECT (familiar), "clistplaylist", clistplaylist,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (clistplaylist);
-  gtk_container_add (GTK_CONTAINER (scrolledwindow5), clistplaylist);
-  gtk_clist_set_column_width (GTK_CLIST (clistplaylist), 0, 140);
-  gtk_clist_set_column_width (GTK_CLIST (clistplaylist), 1, 80);
-  gtk_clist_column_titles_show (GTK_CLIST (clistplaylist));
-
-  label25 = gtk_label_new (_("MRL"));
-  gtk_widget_set_name (label25, "label25");
-  gtk_widget_ref (label25);
-  gtk_object_set_data_full (GTK_OBJECT (familiar), "label25", label25,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (label25);
-  gtk_clist_set_column_widget (GTK_CLIST (clistplaylist), 0, label25);
-  gtk_label_set_justify (GTK_LABEL (label25), GTK_JUSTIFY_LEFT);
-
-  label26 = gtk_label_new (_("Time"));
-  gtk_widget_set_name (label26, "label26");
-  gtk_widget_ref (label26);
-  gtk_object_set_data_full (GTK_OBJECT (familiar), "label26", label26,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (label26);
-  gtk_clist_set_column_widget (GTK_CLIST (clistplaylist), 1, label26);
-  gtk_label_set_justify (GTK_LABEL (label26), GTK_JUSTIFY_RIGHT);
-
-  hbox11 = gtk_hbox_new (TRUE, 0);
-  gtk_widget_set_name (hbox11, "hbox11");
-  gtk_widget_ref (hbox11);
-  gtk_object_set_data_full (GTK_OBJECT (familiar), "hbox11", hbox11,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (hbox11);
-  gtk_box_pack_start (GTK_BOX (vbox4), hbox11, FALSE, FALSE, 2);
-
-  update_playlist = gtk_button_new_with_label (_("Update"));
-  gtk_widget_set_name (update_playlist, "update_playlist");
-  gtk_widget_ref (update_playlist);
-  gtk_object_set_data_full (GTK_OBJECT (familiar), "update_playlist", update_playlist,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (update_playlist);
-  gtk_box_pack_start (GTK_BOX (hbox11), update_playlist, FALSE, FALSE, 0);
-
-  playlist_del = gtk_button_new_with_label (_(" Del "));
-  gtk_widget_set_name (playlist_del, "playlist_del");
-  gtk_widget_ref (playlist_del);
-  gtk_object_set_data_full (GTK_OBJECT (familiar), "playlist_del", playlist_del,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (playlist_del);
-  gtk_box_pack_start (GTK_BOX (hbox11), playlist_del, FALSE, FALSE, 5);
-
-  playlist_clear = gtk_button_new_with_label (_(" Clear "));
-  gtk_widget_set_name (playlist_clear, "playlist_clear");
-  gtk_widget_ref (playlist_clear);
-  gtk_object_set_data_full (GTK_OBJECT (familiar), "playlist_clear", playlist_clear,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (playlist_clear);
-  gtk_box_pack_start (GTK_BOX (hbox11), playlist_clear, FALSE, FALSE, 5);
-
-  playlist = gtk_label_new (_("Playlist"));
-  gtk_widget_set_name (playlist, "playlist");
-  gtk_widget_ref (playlist);
-  gtk_object_set_data_full (GTK_OBJECT (familiar), "playlist", playlist,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (playlist);
-  gtk_notebook_set_tab_label (GTK_NOTEBOOK (notebook), gtk_notebook_get_nth_page (GTK_NOTEBOOK (notebook), 1), playlist);
-
-  vbox2 = gtk_vbox_new (FALSE, 0);
-  gtk_widget_set_name (vbox2, "vbox2");
-  gtk_widget_ref (vbox2);
-  gtk_object_set_data_full (GTK_OBJECT (familiar), "vbox2", vbox2,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (vbox2);
-  gtk_container_add (GTK_CONTAINER (notebook), vbox2);
-
-  cbautoplay = gtk_check_button_new_with_label (_("Automatically play file"));
-  gtk_widget_set_name (cbautoplay, "cbautoplay");
-  gtk_widget_ref (cbautoplay);
-  gtk_object_set_data_full (GTK_OBJECT (familiar), "cbautoplay", cbautoplay,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (cbautoplay);
-  gtk_box_pack_start (GTK_BOX (vbox2), cbautoplay, FALSE, FALSE, 0);
-  gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (cbautoplay), TRUE);
-
-  hbox2 = gtk_hbox_new (TRUE, 0);
-  gtk_widget_set_name (hbox2, "hbox2");
-  gtk_widget_ref (hbox2);
-  gtk_object_set_data_full (GTK_OBJECT (familiar), "hbox2", hbox2,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (hbox2);
-  gtk_box_pack_end (GTK_BOX (vbox2), hbox2, FALSE, FALSE, 2);
-
-  buttonSave = gtk_button_new_with_label (_(" Save "));
-  gtk_widget_set_name (buttonSave, "buttonSave");
-  gtk_widget_ref (buttonSave);
-  gtk_object_set_data_full (GTK_OBJECT (familiar), "buttonSave", buttonSave,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (buttonSave);
-  gtk_box_pack_start (GTK_BOX (hbox2), buttonSave, FALSE, FALSE, 0);
-
-  buttonApply = gtk_button_new_with_label (_(" Apply "));
-  gtk_widget_set_name (buttonApply, "buttonApply");
-  gtk_widget_ref (buttonApply);
-  gtk_object_set_data_full (GTK_OBJECT (familiar), "buttonApply", buttonApply,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (buttonApply);
-  gtk_box_pack_start (GTK_BOX (hbox2), buttonApply, FALSE, FALSE, 0);
-
-  buttonCancel = gtk_button_new_with_label (_(" Cancel "));
-  gtk_widget_set_name (buttonCancel, "buttonCancel");
-  gtk_widget_ref (buttonCancel);
-  gtk_object_set_data_full (GTK_OBJECT (familiar), "buttonCancel", buttonCancel,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (buttonCancel);
-  gtk_box_pack_end (GTK_BOX (hbox2), buttonCancel, FALSE, FALSE, 0);
-
-  preferences = gtk_label_new (_("Preference"));
-  gtk_widget_set_name (preferences, "preferences");
-  gtk_widget_ref (preferences);
-  gtk_object_set_data_full (GTK_OBJECT (familiar), "preferences", preferences,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (preferences);
-  gtk_notebook_set_tab_label (GTK_NOTEBOOK (notebook), gtk_notebook_get_nth_page (GTK_NOTEBOOK (notebook), 2), preferences);
-
-  scrolledwindow3 = gtk_scrolled_window_new (NULL, NULL);
-  gtk_widget_set_name (scrolledwindow3, "scrolledwindow3");
-  gtk_widget_ref (scrolledwindow3);
-  gtk_object_set_data_full (GTK_OBJECT (familiar), "scrolledwindow3", scrolledwindow3,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (scrolledwindow3);
-  gtk_container_add (GTK_CONTAINER (notebook), scrolledwindow3);
-  gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolledwindow3), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC);
-
-  viewport1 = gtk_viewport_new (NULL, NULL);
-  gtk_widget_set_name (viewport1, "viewport1");
-  gtk_widget_ref (viewport1);
-  gtk_object_set_data_full (GTK_OBJECT (familiar), "viewport1", viewport1,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (viewport1);
-  gtk_container_add (GTK_CONTAINER (scrolledwindow3), viewport1);
-  gtk_viewport_set_shadow_type (GTK_VIEWPORT (viewport1), GTK_SHADOW_NONE);
-
-  fixed2 = gtk_fixed_new ();
-  gtk_widget_set_name (fixed2, "fixed2");
-  gtk_widget_ref (fixed2);
-  gtk_object_set_data_full (GTK_OBJECT (familiar), "fixed2", fixed2,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (fixed2);
-  gtk_container_add (GTK_CONTAINER (viewport1), fixed2);
-
-  pixmap2 = create_pixmap (familiar, "vlc32x32.xpm");
-  gtk_widget_set_name (pixmap2, "pixmap2");
-  gtk_widget_ref (pixmap2);
-  gtk_object_set_data_full (GTK_OBJECT (familiar), "pixmap2", pixmap2,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (pixmap2);
-  gtk_fixed_put (GTK_FIXED (fixed2), pixmap2, 8, 0);
-  gtk_widget_set_uposition (pixmap2, 8, 0);
-  gtk_widget_set_usize (pixmap2, 50, 50);
-
-  label8 = gtk_label_new (_("(c) 1996-2003 the VideoLAN team"));
-  gtk_widget_set_name (label8, "label8");
-  gtk_widget_ref (label8);
-  gtk_object_set_data_full (GTK_OBJECT (familiar), "label8", label8,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (label8);
-  gtk_fixed_put (GTK_FIXED (fixed2), label8, 16, 56);
-  gtk_widget_set_uposition (label8, 16, 56);
-  gtk_widget_set_usize (label8, 200, 18);
-
-  label9 = gtk_label_new (_("Authors: The VideoLAN Team, http://www.videolan.org"));
-  gtk_widget_set_name (label9, "label9");
-  gtk_widget_ref (label9);
-  gtk_object_set_data_full (GTK_OBJECT (familiar), "label9", label9,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (label9);
-  gtk_fixed_put (GTK_FIXED (fixed2), label9, 16, 80);
-  gtk_widget_set_uposition (label9, 16, 80);
-  gtk_widget_set_usize (label9, 200, 40);
-  gtk_label_set_line_wrap (GTK_LABEL (label9), TRUE);
-
-  label11 = gtk_label_new (_("VLC media player"));
-  gtk_widget_set_name (label11, "label11");
-  gtk_widget_ref (label11);
-  gtk_object_set_data_full (GTK_OBJECT (familiar), "label11", label11,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (label11);
-  gtk_fixed_put (GTK_FIXED (fixed2), label11, 64, 8);
-  gtk_widget_set_uposition (label11, 64, 8);
-  gtk_widget_set_usize (label11, 120, 40);
-  gtk_label_set_line_wrap (GTK_LABEL (label11), TRUE);
-
-  label27 = gtk_label_new ("http://www.videolan.org");
-  gtk_widget_set_name (label27, "label27");
-  gtk_widget_ref (label27);
-  gtk_object_set_data_full (GTK_OBJECT (familiar), "label27", label27,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (label27);
-  gtk_fixed_put (GTK_FIXED (fixed2), label27, 16, 200);
-  gtk_widget_set_uposition (label27, 16, 200);
-  gtk_widget_set_usize (label27, 208, 16);
-
-  label10 = gtk_label_new (_("The VideoLAN Client is a MPEG, MPEG 2, MP3, DivX player, that accepts input from local or network sources."));
-  gtk_widget_set_name (label10, "label10");
-  gtk_widget_ref (label10);
-  gtk_object_set_data_full (GTK_OBJECT (familiar), "label10", label10,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (label10);
-  gtk_fixed_put (GTK_FIXED (fixed2), label10, 16, 128);
-  gtk_widget_set_uposition (label10, 16, 128);
-  gtk_widget_set_usize (label10, 200, 70);
-  gtk_label_set_justify (GTK_LABEL (label10), GTK_JUSTIFY_LEFT);
-  gtk_label_set_line_wrap (GTK_LABEL (label10), TRUE);
-
-  about = gtk_label_new (_("About"));
-  gtk_widget_set_name (about, "about");
-  gtk_widget_ref (about);
-  gtk_object_set_data_full (GTK_OBJECT (familiar), "about", about,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (about);
-  gtk_notebook_set_tab_label (GTK_NOTEBOOK (notebook), gtk_notebook_get_nth_page (GTK_NOTEBOOK (notebook), 3), about);
-
-  gtk_signal_connect (GTK_OBJECT (familiar), "delete_event",
-                      GTK_SIGNAL_FUNC (on_familiar_delete_event),
-                      NULL);
-  gtk_signal_connect (GTK_OBJECT (toolbar_open), "clicked",
-                      GTK_SIGNAL_FUNC (on_toolbar_open_clicked),
-                      NULL);
-  gtk_signal_connect (GTK_OBJECT (toolbar_playlist), "clicked",
-                      GTK_SIGNAL_FUNC (on_toolbar_playlist_clicked),
-                      NULL);
-  gtk_signal_connect (GTK_OBJECT (toolbar_preferences), "clicked",
-                      GTK_SIGNAL_FUNC (on_toolbar_preferences_clicked),
-                      NULL);
-  gtk_signal_connect (GTK_OBJECT (toolbar_rewind), "clicked",
-                      GTK_SIGNAL_FUNC (on_toolbar_rewind_clicked),
-                      NULL);
-  gtk_signal_connect (GTK_OBJECT (toolbar_pause), "clicked",
-                      GTK_SIGNAL_FUNC (on_toolbar_pause_clicked),
-                      NULL);
-  gtk_signal_connect (GTK_OBJECT (toolbar_play), "clicked",
-                      GTK_SIGNAL_FUNC (on_toolbar_play_clicked),
-                      NULL);
-  gtk_signal_connect (GTK_OBJECT (toolbar_stop), "clicked",
-                      GTK_SIGNAL_FUNC (on_toolbar_stop_clicked),
-                      NULL);
-  gtk_signal_connect (GTK_OBJECT (toolbar_forward), "clicked",
-                      GTK_SIGNAL_FUNC (on_toolbar_forward_clicked),
-                      NULL);
-  gtk_signal_connect (GTK_OBJECT (toolbar_about), "clicked",
-                      GTK_SIGNAL_FUNC (on_toolbar_about_clicked),
-                      NULL);
-  gtk_signal_connect (GTK_OBJECT (slider), "button_release_event",
-                      GTK_SIGNAL_FUNC (FamiliarSliderRelease),
-                      NULL);
-  gtk_signal_connect (GTK_OBJECT (slider), "button_press_event",
-                      GTK_SIGNAL_FUNC (FamiliarSliderPress),
-                      NULL);
-  gtk_signal_connect (GTK_OBJECT (buttonMrlGo), "clicked",
-                      GTK_SIGNAL_FUNC (FamiliarMrlGo),
-                      NULL);
-  gtk_signal_connect (GTK_OBJECT (mrl_entry), "changed",
-                      GTK_SIGNAL_FUNC (on_comboURL_entry_changed),
-                      NULL);
-  gtk_signal_connect (GTK_OBJECT (clistmedia), "select_row",
-                      GTK_SIGNAL_FUNC (on_clistmedia_select_row),
-                      NULL);
-  gtk_signal_connect (GTK_OBJECT (clistmedia), "click_column",
-                      GTK_SIGNAL_FUNC (on_clistmedia_click_column),
-                      NULL);
-  gtk_signal_connect (GTK_OBJECT (network_multicast), "toggled",
-                      GTK_SIGNAL_FUNC (on_network_multicast_toggled),
-                      NULL);
-  gtk_signal_connect (GTK_OBJECT (network_multicast_port), "changed",
-                      GTK_SIGNAL_FUNC (on_network_multicast_port_changed),
-                      NULL);
-  gtk_signal_connect (GTK_OBJECT (network_multicast_address), "changed",
-                      GTK_SIGNAL_FUNC (on_network_multicast_address_changed),
-                      NULL);
-  gtk_signal_connect (GTK_OBJECT (network_http), "toggled",
-                      GTK_SIGNAL_FUNC (on_network_http_toggled),
-                      NULL);
-  gtk_signal_connect (GTK_OBJECT (network_ftp), "toggled",
-                      GTK_SIGNAL_FUNC (on_network_ftp_toggled),
-                      NULL);
-  gtk_signal_connect (GTK_OBJECT (network_mms), "toggled",
-                      GTK_SIGNAL_FUNC (on_network_mms_toggled),
-                      NULL);
-  gtk_signal_connect (GTK_OBJECT (clistplaylist), "event",
-                      GTK_SIGNAL_FUNC (FamiliarPlaylistEvent),
-                      NULL);
-  gtk_signal_connect (GTK_OBJECT (update_playlist), "clicked",
-                      GTK_SIGNAL_FUNC (FamiliarPlaylistUpdate),
-                      NULL);
-  gtk_signal_connect (GTK_OBJECT (playlist_del), "clicked",
-                      GTK_SIGNAL_FUNC (FamiliarPlaylistDel),
-                      NULL);
-  gtk_signal_connect (GTK_OBJECT (playlist_clear), "clicked",
-                      GTK_SIGNAL_FUNC (FamiliarPlaylistClear),
-                      NULL);
-  gtk_signal_connect (GTK_OBJECT (cbautoplay), "toggled",
-                      GTK_SIGNAL_FUNC (on_cbautoplay_toggled),
-                      NULL);
-  gtk_signal_connect (GTK_OBJECT (buttonApply), "clicked",
-                      GTK_SIGNAL_FUNC (FamiliarPreferencesApply),
-                      NULL);
-
-  return familiar;
-}
-
diff --git a/modules/gui/familiar/interface.h b/modules/gui/familiar/interface.h
deleted file mode 100644 (file)
index 27a3bcf..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-/*
- * DO NOT EDIT THIS FILE - it is generated by Glade.
- */
-
-GtkWidget* create_familiar (void);
diff --git a/modules/gui/familiar/network.c b/modules/gui/familiar/network.c
deleted file mode 100644 (file)
index e64eaa6..0000000
+++ /dev/null
@@ -1,136 +0,0 @@
-/*****************************************************************************
- * network.c : Network interface of the gtk-familiar plugin.
- *****************************************************************************
- * Copyright (C) 2000, 2001 VideoLAN
- * $Id: network.c,v 1.1 2003/03/13 15:50:17 marcari Exp $
- *
- * Authors: Marc Ariberti <marcari@videolan.org>
- *      
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- * 
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111, USA.
- *****************************************************************************/
-
-
-/*****************************************************************************
- * Preamble
- *****************************************************************************/
-#include <sys/types.h>                                              /* off_t */
-#include <stdlib.h>
-
-#include <vlc/vlc.h>
-#include <vlc/intf.h>
-#include <vlc/vout.h>
-
-#include <stdio.h>
-#include <string.h>
-#include <dirent.h>
-#include <sys/stat.h>
-#include <unistd.h>
-
-#ifdef HAVE_CONFIG_H
-#  include <config.h>
-#endif
-
-#include <gtk/gtk.h>
-
-#include "callbacks.h"
-#include "interface.h"
-#include "support.h"
-#include "familiar.h"
-
-static void update_network_multicast(GtkWidget * widget);
-
-static void update_network_multicast(GtkWidget * widget)
-{
-    intf_thread_t *  p_intf = GtkGetIntf( widget );
-    GtkToggleButton * p_network_multicast = 
-        GTK_GET( TOGGLE_BUTTON, "network_multicast" );
-    GtkEditable * p_network_multicast_address = 
-        GTK_GET( EDITABLE, "network_multicast_address" );
-    GtkEditable * p_network_multicast_port = 
-        GTK_GET( EDITABLE, "network_multicast_port" );
-        
-    if (gtk_toggle_button_get_active(p_network_multicast))
-    {
-        gchar * str = g_strconcat( "udp://@",
-            gtk_editable_get_chars(p_network_multicast_address, 0, -1), ":",
-            gtk_editable_get_chars(p_network_multicast_port, 0, -1), NULL );
-        gtk_entry_set_text(p_intf->p_sys->p_mrlentry, str);
-        g_free( str );
-    }
-}
-
-
-void
-on_network_multicast_toggled           (GtkToggleButton *togglebutton,
-                                        gpointer         user_data)
-{
-    update_network_multicast(GTK_WIDGET(togglebutton));
-}
-
-
-void
-on_network_multicast_port_changed      (GtkEditable     *editable,
-                                        gpointer         user_data)
-{
-    update_network_multicast(GTK_WIDGET(editable));
-}
-
-
-void
-on_network_multicast_address_changed   (GtkEditable     *editable,
-                                        gpointer         user_data)
-{
-    update_network_multicast(GTK_WIDGET(editable));
-}
-
-
-void
-on_network_http_toggled                (GtkToggleButton *togglebutton,
-                                        gpointer         user_data)
-{
-    intf_thread_t *  p_intf = GtkGetIntf( togglebutton );
-
-    if (gtk_toggle_button_get_active(togglebutton))
-    {
-        gtk_entry_set_text(p_intf->p_sys->p_mrlentry, "http://");
-    }
-}
-
-
-void
-on_network_ftp_toggled                 (GtkToggleButton *togglebutton,
-                                        gpointer         user_data)
-{
-    intf_thread_t *  p_intf = GtkGetIntf( togglebutton );
-    
-    if (gtk_toggle_button_get_active(togglebutton))
-    {
-        gtk_entry_set_text(p_intf->p_sys->p_mrlentry, "ftp://");
-    }
-}
-
-
-void
-on_network_mms_toggled                 (GtkToggleButton *togglebutton,
-                                        gpointer         user_data)
-{
-    intf_thread_t *  p_intf = GtkGetIntf( togglebutton );
-    
-    if (gtk_toggle_button_get_active(togglebutton))
-    {
-        gtk_entry_set_text(p_intf->p_sys->p_mrlentry, "mms://");
-    }
-}
-
diff --git a/modules/gui/familiar/network.h b/modules/gui/familiar/network.h
deleted file mode 100644 (file)
index d72e50a..0000000
+++ /dev/null
@@ -1,58 +0,0 @@
-/*****************************************************************************
- * network.h : Network part of the gtk-familiar plugin.
- *****************************************************************************
- * Copyright (C) 2000, 2001 VideoLAN
- * $Id: network.h,v 1.1 2003/03/13 15:50:17 marcari Exp $
- *
- * Authors: Marc Ariberti <marcari@videolan.org>
- *      
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- * 
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111, USA.
- *****************************************************************************/
-
-void
-on_network_udp_toggled                 (GtkToggleButton *togglebutton,
-                                        gpointer         user_data);
-
-void
-on_network_udp_port_changed            (GtkEditable     *editable,
-                                        gpointer         user_data);
-
-void
-on_network_multicast_toggled           (GtkToggleButton *togglebutton,
-                                        gpointer         user_data);
-
-void
-on_network_multicast_port_changed      (GtkEditable     *editable,
-                                        gpointer         user_data);
-
-void
-on_network_multicast_address_changed   (GtkEditable     *editable,
-                                        gpointer         user_data);
-
-void
-on_network_http_toggled                (GtkToggleButton *togglebutton,
-                                        gpointer         user_data);
-
-void
-on_network_ftp_toggled                 (GtkToggleButton *togglebutton,
-                                        gpointer         user_data);
-
-void
-on_network_mms_toggled                 (GtkToggleButton *togglebutton,
-                                        gpointer         user_data);
-
-void
-FamiliarNetworkGo                      (GtkButton       *button,
-                                        gpointer         user_data);
diff --git a/modules/gui/familiar/playlist.c b/modules/gui/familiar/playlist.c
deleted file mode 100644 (file)
index baab652..0000000
+++ /dev/null
@@ -1,203 +0,0 @@
-/*****************************************************************************
- * playlist.c : Playlist interface of the gtk-familiar plugin.
- *****************************************************************************
- * Copyright (C) 2000, 2001 VideoLAN
- * $Id: playlist.c,v 1.1 2003/03/13 15:50:17 marcari Exp $
- *
- * Authors: Marc Ariberti <marcari@videolan.org>
- *      
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- * 
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111, USA.
- *****************************************************************************/
-
-
-/*****************************************************************************
- * Preamble
- *****************************************************************************/
-#include <sys/types.h>                                              /* off_t */
-#include <stdlib.h>
-
-#include <vlc/vlc.h>
-#include <vlc/intf.h>
-#include <vlc/vout.h>
-
-#include <stdio.h>
-#include <string.h>
-#include <dirent.h>
-#include <sys/stat.h>
-#include <unistd.h>
-
-#ifdef HAVE_CONFIG_H
-#  include <config.h>
-#endif
-#include <gtk/gtk.h>
-
-#include "interface.h"
-#include "support.h"
-#include "familiar.h"
-#include "playlist.h"
-
-gboolean
-FamiliarPlaylistEvent                  (GtkWidget       *widget,
-                                        GdkEvent        *event,
-                                        gpointer         user_data)
-{
-    intf_thread_t *  p_intf = GtkGetIntf( widget );
-    playlist_t * p_playlist = vlc_object_find( p_intf, VLC_OBJECT_PLAYLIST,
-                                                       FIND_ANYWHERE );
-    if( p_playlist == NULL )
-    {
-        return FALSE;
-    }
-
-    if( ( event->button ).type == GDK_2BUTTON_PRESS )
-    {
-        GtkCList *  p_clist;
-        gint        i_row;
-        gint        i_col;
-
-        p_clist = p_intf->p_sys->p_clistplaylist;
-
-        if( gtk_clist_get_selection_info( p_clist, (event->button).x,
-                    (event->button).y, &i_row, &i_col ) == 1 )
-        {
-            playlist_Goto( p_playlist, i_row );
-        }
-
-        vlc_object_release( p_playlist );
-        FamiliarRebuildCList( p_clist, p_playlist );
-        return TRUE;
-    }
-
-    vlc_object_release( p_playlist );
-
-  return FALSE;
-}
-
-void
-FamiliarPlaylistClear                  (GtkButton       *button,
-                                        gpointer         user_data)
-{
-    intf_thread_t *  p_intf = GtkGetIntf( button );
-    playlist_t * p_playlist = vlc_object_find( p_intf, VLC_OBJECT_PLAYLIST,
-                                                       FIND_ANYWHERE );
-    int item;
-    
-    if( p_playlist == NULL )
-    {
-        return;
-    }
-
-    for(item = p_playlist->i_size - 1 ; item >= 0 ; item-- )
-    {
-        playlist_Delete( p_playlist, item);
-    }
-    
-    vlc_object_release( p_playlist );
-    FamiliarRebuildCList( p_intf->p_sys->p_clistplaylist, p_playlist);
-}
-
-void FamiliarRebuildCList( GtkCList * p_clist, playlist_t * p_playlist )
-{
-    int         i_dummy;
-    gchar *     ppsz_text[2];
-    GdkColor    red;
-    red.red     = 65535;
-    red.blue    = 0;
-    red.green   = 0;
-
-    gtk_clist_freeze( p_clist );
-    gtk_clist_clear( p_clist );
-
-    vlc_mutex_lock( &p_playlist->object_lock );
-    for( i_dummy = p_playlist->i_size ; i_dummy-- ; )
-    {
-        ppsz_text[0] = p_playlist->pp_items[i_dummy]->psz_name;
-        ppsz_text[1] = "no info";
-        gtk_clist_insert( p_clist, 0, ppsz_text );
-    }
-    vlc_mutex_unlock( &p_playlist->object_lock );
-
-    gtk_clist_set_background( p_clist, p_playlist->i_index, &red);
-    gtk_clist_thaw( p_clist );
-}
-
-
-void
-FamiliarPlaylistUpdate                 (GtkButton       *button,
-                                        gpointer         user_data)
-{
-    intf_thread_t *  p_intf = GtkGetIntf( button );
-    playlist_t * p_playlist = vlc_object_find( p_intf, VLC_OBJECT_PLAYLIST,
-                                                       FIND_ANYWHERE );
-    if( p_playlist == NULL )
-    {
-        return;
-    }
-
-
-    FamiliarRebuildCList( p_intf->p_sys->p_clistplaylist, p_playlist );
-}
-
-static void FamiliarDeleteGListItem( gpointer data, gpointer param )
-{
-    int i_cur_row = (long)data;
-    playlist_t * p_playlist = param;
-
-    playlist_Delete( p_playlist, i_cur_row );
-}
-
-static gint FamiliarCompareItems( gconstpointer a, gconstpointer b )
-{
-    return (ptrdiff_t) ( (int *)b - (int *)a );
-}
-
-
-void
-FamiliarPlaylistDel                    (GtkButton       *button,
-                                        gpointer         user_data)
-{
-    /* user wants to delete a file in the queue */
-    GList *     p_selection;
-    
-    intf_thread_t *  p_intf = GtkGetIntf( button );
-    playlist_t * p_playlist = vlc_object_find( p_intf, VLC_OBJECT_PLAYLIST,
-                                                       FIND_ANYWHERE );
-    if( p_playlist == NULL )
-    {
-        return;
-    }
-
-    
-    /* lock the struct */
-    vlc_mutex_lock( &p_intf->change_lock );
-
-    p_selection = p_intf->p_sys->p_clistplaylist->selection;
-
-    if( g_list_length( p_selection ) )
-    {
-        /* reverse-sort so that we can delete from the furthest
-         * to the closest item to delete...
-         */
-        p_selection = g_list_sort( p_selection, FamiliarCompareItems );
-        g_list_foreach( p_selection, FamiliarDeleteGListItem, p_playlist );
-    }
-
-    vlc_mutex_unlock( &p_intf->change_lock );
-
-
-    vlc_object_release( p_playlist );
-    FamiliarRebuildCList( p_intf->p_sys->p_clistplaylist, p_playlist );
-}
-
diff --git a/modules/gui/familiar/playlist.h b/modules/gui/familiar/playlist.h
deleted file mode 100644 (file)
index e76b475..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-
-
-gboolean
-FamiliarPlaylistEvent                  (GtkWidget       *widget,
-                                        GdkEvent        *event,
-                                        gpointer         user_data);
-
-void FamiliarRebuildCList( GtkCList * p_clist, playlist_t * p_playlist );
-
-void FamiliarPlaylistClear             (GtkButton       *button,
-                                        gpointer         user_data);
-
-
-void
-FamiliarPlaylistUpdate                 (GtkButton       *button,
-                                        gpointer         user_data);
-
-void
-FamiliarPlaylistDel                    (GtkButton       *button,
-                                        gpointer         user_data);
diff --git a/modules/gui/familiar/support.c b/modules/gui/familiar/support.c
deleted file mode 100644 (file)
index 5077e59..0000000
+++ /dev/null
@@ -1,162 +0,0 @@
-/*
- * DO NOT EDIT THIS FILE - it is generated by Glade.
- */
-
-#ifdef HAVE_CONFIG_H
-#  include <config.h>
-#endif
-
-#include <sys/types.h>
-#include <sys/stat.h>
-#include <unistd.h>
-#include <string.h>
-
-#include <gtk/gtk.h>
-
-#include "support.h"
-
-/* This is an internally used function to check if a pixmap file exists. */
-static gchar* check_file_exists        (const gchar     *directory,
-                                        const gchar     *filename);
-
-/* This is an internally used function to create pixmaps. */
-static GtkWidget* create_dummy_pixmap  (GtkWidget       *widget);
-
-GtkWidget*
-lookup_widget                          (GtkWidget       *widget,
-                                        const gchar     *widget_name)
-{
-  GtkWidget *parent, *found_widget;
-
-  for (;;)
-    {
-      if (GTK_IS_MENU (widget))
-        parent = gtk_menu_get_attach_widget (GTK_MENU (widget));
-      else
-        parent = widget->parent;
-      if (parent == NULL)
-        break;
-      widget = parent;
-    }
-
-  found_widget = (GtkWidget*) gtk_object_get_data (GTK_OBJECT (widget),
-                                                   widget_name);
-  if (!found_widget)
-    g_warning ("Widget not found: %s", widget_name);
-  return found_widget;
-}
-
-/* This is a dummy pixmap we use when a pixmap can't be found. */
-static char *dummy_pixmap_xpm[] = {
-/* columns rows colors chars-per-pixel */
-"1 1 1 1",
-"  c None",
-/* pixels */
-" "
-};
-
-/* This is an internally used function to create pixmaps. */
-static GtkWidget*
-create_dummy_pixmap                    (GtkWidget       *widget)
-{
-  GdkColormap *colormap;
-  GdkPixmap *gdkpixmap;
-  GdkBitmap *mask;
-  GtkWidget *pixmap;
-
-  colormap = gtk_widget_get_colormap (widget);
-  gdkpixmap = gdk_pixmap_colormap_create_from_xpm_d (NULL, colormap, &mask,
-                                                     NULL, dummy_pixmap_xpm);
-  if (gdkpixmap == NULL)
-    g_error ("Couldn't create replacement pixmap.");
-  pixmap = gtk_pixmap_new (gdkpixmap, mask);
-  gdk_pixmap_unref (gdkpixmap);
-  gdk_bitmap_unref (mask);
-  return pixmap;
-}
-
-static GList *pixmaps_directories = NULL;
-
-/* Use this function to set the directory containing installed pixmaps. */
-void
-add_pixmap_directory                   (const gchar     *directory)
-{
-  pixmaps_directories = g_list_prepend (pixmaps_directories,
-                                        g_strdup (directory));
-}
-
-/* This is an internally used function to create pixmaps. */
-GtkWidget*
-create_pixmap                          (GtkWidget       *widget,
-                                        const gchar     *filename)
-{
-  gchar *found_filename = NULL;
-  GdkColormap *colormap;
-  GdkPixmap *gdkpixmap;
-  GdkBitmap *mask;
-  GtkWidget *pixmap;
-  GList *elem;
-
-  if (!filename || !filename[0])
-      return create_dummy_pixmap (widget);
-
-  /* We first try any pixmaps directories set by the application. */
-  elem = pixmaps_directories;
-  while (elem)
-    {
-      found_filename = check_file_exists ((gchar*)elem->data, filename);
-      if (found_filename)
-        break;
-      elem = elem->next;
-    }
-
-  /* If we haven't found the pixmap, try the source directory. */
-  if (!found_filename)
-    {
-      found_filename = check_file_exists ("../../../share", filename);
-    }
-
-  if (!found_filename)
-    {
-      g_warning (_("Couldn't find pixmap file: %s"), filename);
-      return create_dummy_pixmap (widget);
-    }
-
-  colormap = gtk_widget_get_colormap (widget);
-  gdkpixmap = gdk_pixmap_colormap_create_from_xpm (NULL, colormap, &mask,
-                                                   NULL, found_filename);
-  if (gdkpixmap == NULL)
-    {
-      g_warning (_("Error loading pixmap file: %s"), found_filename);
-      g_free (found_filename);
-      return create_dummy_pixmap (widget);
-    }
-  g_free (found_filename);
-  pixmap = gtk_pixmap_new (gdkpixmap, mask);
-  gdk_pixmap_unref (gdkpixmap);
-  gdk_bitmap_unref (mask);
-  return pixmap;
-}
-
-/* This is an internally used function to check if a pixmap file exists. */
-static gchar*
-check_file_exists                      (const gchar     *directory,
-                                        const gchar     *filename)
-{
-  gchar *full_filename;
-  struct stat s;
-  gint status;
-
-  full_filename = (gchar*) g_malloc (strlen (directory) + 1
-                                     + strlen (filename) + 1);
-  strcpy (full_filename, directory);
-  strcat (full_filename, G_DIR_SEPARATOR_S);
-  strcat (full_filename, filename);
-
-  status = stat (full_filename, &s);
-  if (status == 0 && S_ISREG (s.st_mode))
-    return full_filename;
-  g_free (full_filename);
-  return NULL;
-}
-
diff --git a/modules/gui/familiar/support.h b/modules/gui/familiar/support.h
deleted file mode 100644 (file)
index 7a13025..0000000
+++ /dev/null
@@ -1,61 +0,0 @@
-/*
- * Created by glade, fixed by bootstrap
- */
-
-#ifdef HAVE_CONFIG_H
-#  include <vlc/vlc.h>
-#endif
-
-#include <gtk/gtk.h>
-
-/*
- * Standard gettext macros.
- */
-#if 0 /* Disabled by bootstrap */
-#  include <libintl.h>
-#  undef _
-#  define _(String) dgettext (PACKAGE, String)
-#  ifdef gettext_noop
-#    define N_(String) gettext_noop (String)
-#  else
-#    define N_(String) (String)
-#  endif
-/* #else */
-#  define textdomain(String) (String)
-#  define gettext(String) (String)
-#  define dgettext(Domain,Message) (Message)
-#  define dcgettext(Domain,Message,Type) (Message)
-#  define bindtextdomain(Domain,Directory) (Domain)
-#  define _(String) (String)
-#  define N_(String) (String)
-#endif
-
-
-/*
- * Public Functions.
- */
-
-/*
- * This function returns a widget in a component created by Glade.
- * Call it with the toplevel widget in the component (i.e. a window/dialog),
- * or alternatively any widget in the component, and the name of the widget
- * you want returned.
- */
-GtkWidget*  lookup_widget              (GtkWidget       *widget,
-                                        const gchar     *widget_name);
-
-/* get_widget() is deprecated. Use lookup_widget instead. */
-#define get_widget lookup_widget
-
-/* Use this function to set the directory containing installed pixmaps. */
-void        add_pixmap_directory       (const gchar     *directory);
-
-
-/*
- * Private Functions.
- */
-
-/* This is used to create the pixmaps in the interface. */
-GtkWidget*  create_pixmap              (GtkWidget       *widget,
-                                        const gchar     *filename);
-