Commit f3d5e97b authored by Jean-Paul Saman's avatar Jean-Paul Saman

Sam I hate you ;-)

parent f66d8124
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
* callbacks.c : Callbacks for the Familiar Linux Gtk+ plugin. * callbacks.c : Callbacks for the Familiar Linux Gtk+ plugin.
***************************************************************************** *****************************************************************************
* Copyright (C) 2000, 2001 VideoLAN * Copyright (C) 2000, 2001 VideoLAN
* $Id: callbacks.c,v 1.1 2002/08/04 17:23:43 sam Exp $ * $Id: callbacks.c,v 1.2 2002/08/06 19:31:18 jpsaman Exp $
* *
* Authors: Jean-Paul Saman <jpsaman@wxs.nl> * Authors: Jean-Paul Saman <jpsaman@wxs.nl>
* *
...@@ -47,6 +47,9 @@ ...@@ -47,6 +47,9 @@
//#include "netutils.h" //#include "netutils.h"
static void MediaURLOpenChanged( GtkEditable *editable, gpointer user_data );
static void PreferencesURLOpenChanged( GtkEditable *editable, gpointer user_data );
/***************************************************************************** /*****************************************************************************
* Useful function to retrieve p_intf * Useful function to retrieve p_intf
****************************************************************************/ ****************************************************************************/
...@@ -81,6 +84,50 @@ void * __GtkGetIntf( GtkWidget * widget ) ...@@ -81,6 +84,50 @@ void * __GtkGetIntf( GtkWidget * widget )
return p_data; return p_data;
} }
/*****************************************************************************
* Helper functions for URL changes in Media and Preferences notebook pages.
****************************************************************************/
static void MediaURLOpenChanged( GtkEditable *editable, gpointer user_data )
{
intf_thread_t *p_intf = GtkGetIntf( editable );
playlist_t *p_playlist;
gchar * psz_url;
psz_url = gtk_entry_get_text(GTK_ENTRY(editable));
g_print( "%s\n",psz_url );
// p_url = gtk_editable_get_chars(editable,0,-1);
// Add p_url to playlist .... but how ?
if (p_intf)
{
p_playlist = (playlist_t *)
vlc_object_find( p_intf, VLC_OBJECT_PLAYLIST, FIND_ANYWHERE );
if( p_playlist )
{
playlist_Add( p_playlist, (char*)psz_url,
PLAYLIST_APPEND | PLAYLIST_GO, PLAYLIST_END );
vlc_object_release( p_playlist );
}
}
}
static void PreferencesURLOpenChanged( GtkEditable *editable, gpointer user_data )
{
gchar * p_url;
// GtkWidget * item;
p_url = gtk_entry_get_text(GTK_ENTRY(editable) );
g_print( "%s\n",p_url );
// p_url = gtk_editable_get_chars(editable,0,-1);
// item = gtk_list_item_new();
// gtk_widget_show (item);
// gtk_combo_set_item_string (GTK_COMBO (combo), GTK_ITEM (item), p_url);
// /* Now we simply add the item to the combo's list. */
// gtk_container_add (GTK_CONTAINER (GTK_COMBO (combo)->list), item);
}
/* /*
* Main interface callbacks * Main interface callbacks
*/ */
...@@ -113,7 +160,10 @@ on_toolbar_open_clicked (GtkButton *button, ...@@ -113,7 +160,10 @@ on_toolbar_open_clicked (GtkButton *button,
{ {
intf_thread_t *p_intf = GtkGetIntf( button ); intf_thread_t *p_intf = GtkGetIntf( button );
if (p_intf) if (p_intf)
{
gtk_widget_show( GTK_WIDGET(p_intf->p_sys->p_notebook) ); gtk_widget_show( GTK_WIDGET(p_intf->p_sys->p_notebook) );
gdk_window_raise( p_intf->p_sys->p_window->window );
}
} }
...@@ -122,8 +172,10 @@ on_toolbar_preferences_clicked (GtkButton *button, ...@@ -122,8 +172,10 @@ on_toolbar_preferences_clicked (GtkButton *button,
gpointer user_data) gpointer user_data)
{ {
intf_thread_t *p_intf = GtkGetIntf( button ); intf_thread_t *p_intf = GtkGetIntf( button );
if (p_intf) if (p_intf) {
gtk_widget_show( GTK_WIDGET(p_intf->p_sys->p_notebook) ); gtk_widget_show( GTK_WIDGET(p_intf->p_sys->p_notebook) );
gdk_window_raise( p_intf->p_sys->p_window->window );
}
} }
...@@ -168,6 +220,11 @@ on_toolbar_play_clicked (GtkButton *button, ...@@ -168,6 +220,11 @@ on_toolbar_play_clicked (GtkButton *button,
FIND_ANYWHERE ); FIND_ANYWHERE );
if( p_playlist == NULL ) if( p_playlist == NULL )
{ {
if( p_intf )
{
gtk_widget_show( GTK_WIDGET(p_intf->p_sys->p_notebook) );
gdk_window_raise( p_intf->p_sys->p_window->window );
}
// Display open page // Display open page
} }
...@@ -178,6 +235,7 @@ on_toolbar_play_clicked (GtkButton *button, ...@@ -178,6 +235,7 @@ on_toolbar_play_clicked (GtkButton *button,
vlc_mutex_unlock( &p_playlist->object_lock ); vlc_mutex_unlock( &p_playlist->object_lock );
playlist_Play( p_playlist ); playlist_Play( p_playlist );
vlc_object_release( p_playlist ); vlc_object_release( p_playlist );
gdk_window_lower( p_intf->p_sys->p_window->window );
} }
else else
{ {
...@@ -195,10 +253,11 @@ on_toolbar_stop_clicked (GtkButton *button, ...@@ -195,10 +253,11 @@ on_toolbar_stop_clicked (GtkButton *button,
intf_thread_t * p_intf = GtkGetIntf( button ); intf_thread_t * p_intf = GtkGetIntf( button );
playlist_t * p_playlist = vlc_object_find( p_intf, VLC_OBJECT_PLAYLIST, playlist_t * p_playlist = vlc_object_find( p_intf, VLC_OBJECT_PLAYLIST,
FIND_ANYWHERE ); FIND_ANYWHERE );
if( p_playlist == NULL ) if( p_playlist)
{ {
playlist_Stop( p_playlist ); playlist_Stop( p_playlist );
vlc_object_release( p_playlist ); vlc_object_release( p_playlist );
gdk_window_raise( p_intf->p_sys->p_window->window );
} }
} }
...@@ -225,11 +284,41 @@ on_toolbar_about_clicked (GtkButton *button, ...@@ -225,11 +284,41 @@ on_toolbar_about_clicked (GtkButton *button,
{ {
intf_thread_t *p_intf = GtkGetIntf( button ); intf_thread_t *p_intf = GtkGetIntf( button );
if (p_intf) if (p_intf)
{ // Toggle notebook {// Toggle notebook
if (p_intf->p_sys->p_notebook)
{
// if ( gtk_get_data( GTK_WIDGET(p_intf->p_sys->p_notebook), "visible" ) ) // if ( gtk_get_data( GTK_WIDGET(p_intf->p_sys->p_notebook), "visible" ) )
// gtk_widget_hide( GTK_WIDGET(p_intf->p_sys->p_notebook) ); // gtk_widget_hide( GTK_WIDGET(p_intf->p_sys->p_notebook) );
// else // else
gtk_widget_show( GTK_WIDGET(p_intf->p_sys->p_notebook) ); gtk_widget_show( GTK_WIDGET(p_intf->p_sys->p_notebook) );
}
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( editable );
if (p_intf)
{
MediaURLOpenChanged( editable, NULL );
}
}
void
on_comboPrefs_entry_changed (GtkEditable *editable,
gpointer user_data)
{
intf_thread_t * p_intf = GtkGetIntf( editable );
if (p_intf)
{
PreferencesURLOpenChanged( editable, NULL );
} }
} }
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
* callbacks.h : familiar plugin for vlc * callbacks.h : familiar plugin for vlc
***************************************************************************** *****************************************************************************
* Copyright (C) 2002 VideoLAN * Copyright (C) 2002 VideoLAN
* $Id: callbacks.h,v 1.1 2002/08/04 17:23:43 sam Exp $ * $Id: callbacks.h,v 1.2 2002/08/06 19:31:18 jpsaman Exp $
* *
* Authors: Jean-Paul Saman <jpsaman@wxs.nl> * Authors: Jean-Paul Saman <jpsaman@wxs.nl>
* *
...@@ -61,3 +61,12 @@ on_toolbar_forward_clicked (GtkButton *button, ...@@ -61,3 +61,12 @@ on_toolbar_forward_clicked (GtkButton *button,
void void
on_toolbar_about_clicked (GtkButton *button, on_toolbar_about_clicked (GtkButton *button,
gpointer user_data); gpointer user_data);
void
on_comboURL_entry_changed (GtkEditable *editable,
gpointer user_data);
void
on_comboPrefs_entry_changed (GtkEditable *editable,
gpointer user_data);
...@@ -275,8 +275,13 @@ udp://localhost:1234/ ...@@ -275,8 +275,13 @@ udp://localhost:1234/
<widget> <widget>
<class>GtkEntry</class> <class>GtkEntry</class>
<child_name>GtkCombo:entry</child_name> <child_name>GtkCombo:entry</child_name>
<name>combo-entry1</name> <name>comboURL-entry</name>
<can_focus>True</can_focus> <can_focus>True</can_focus>
<signal>
<name>changed</name>
<handler>on_comboURL-entry_changed</handler>
<last_modification_time>Thu, 01 Aug 2002 19:37:06 GMT</last_modification_time>
</signal>
<editable>True</editable> <editable>True</editable>
<text_visible>True</text_visible> <text_visible>True</text_visible>
<text_max_length>0</text_max_length> <text_max_length>0</text_max_length>
...@@ -357,7 +362,7 @@ udp://localhost:1234/ ...@@ -357,7 +362,7 @@ udp://localhost:1234/
<class>GtkCombo</class> <class>GtkCombo</class>
<name>comboDefaultURL</name> <name>comboDefaultURL</name>
<x>8</x> <x>8</x>
<y>4</y> <y>8</y>
<width>200</width> <width>200</width>
<height>24</height> <height>24</height>
<value_in_list>False</value_in_list> <value_in_list>False</value_in_list>
...@@ -374,8 +379,13 @@ udp://localhost:1234/ ...@@ -374,8 +379,13 @@ udp://localhost:1234/
<widget> <widget>
<class>GtkEntry</class> <class>GtkEntry</class>
<child_name>GtkCombo:entry</child_name> <child_name>GtkCombo:entry</child_name>
<name>combo-entry2</name> <name>comboPrefs-entry</name>
<can_focus>True</can_focus> <can_focus>True</can_focus>
<signal>
<name>changed</name>
<handler>on_comboPrefs-entry_changed</handler>
<last_modification_time>Thu, 01 Aug 2002 20:11:46 GMT</last_modification_time>
</signal>
<editable>True</editable> <editable>True</editable>
<text_visible>True</text_visible> <text_visible>True</text_visible>
<text_max_length>0</text_max_length> <text_max_length>0</text_max_length>
......
...@@ -40,7 +40,7 @@ create_familiar (void) ...@@ -40,7 +40,7 @@ create_familiar (void)
GtkWidget *listMedia; GtkWidget *listMedia;
GtkWidget *comboURL; GtkWidget *comboURL;
GList *comboURL_items = NULL; GList *comboURL_items = NULL;
GtkWidget *combo_entry1; GtkWidget *comboURL_entry;
GtkWidget *media; GtkWidget *media;
GtkWidget *fixedPreferences; GtkWidget *fixedPreferences;
GtkWidget *buttonSave; GtkWidget *buttonSave;
...@@ -50,7 +50,7 @@ create_familiar (void) ...@@ -50,7 +50,7 @@ create_familiar (void)
GtkWidget *fixed3; GtkWidget *fixed3;
GtkWidget *comboDefaultURL; GtkWidget *comboDefaultURL;
GList *comboDefaultURL_items = NULL; GList *comboDefaultURL_items = NULL;
GtkWidget *combo_entry2; GtkWidget *comboPrefs_entry;
GtkWidget *frameIP; GtkWidget *frameIP;
GtkWidget *fixed2; GtkWidget *fixed2;
GSList *fixed2_group = NULL; GSList *fixed2_group = NULL;
...@@ -263,13 +263,13 @@ create_familiar (void) ...@@ -263,13 +263,13 @@ create_familiar (void)
gtk_combo_set_popdown_strings (GTK_COMBO (comboURL), comboURL_items); gtk_combo_set_popdown_strings (GTK_COMBO (comboURL), comboURL_items);
g_list_free (comboURL_items); g_list_free (comboURL_items);
combo_entry1 = GTK_COMBO (comboURL)->entry; comboURL_entry = GTK_COMBO (comboURL)->entry;
gtk_widget_set_name (combo_entry1, "combo_entry1"); gtk_widget_set_name (comboURL_entry, "comboURL_entry");
gtk_widget_ref (combo_entry1); gtk_widget_ref (comboURL_entry);
gtk_object_set_data_full (GTK_OBJECT (familiar), "combo_entry1", combo_entry1, gtk_object_set_data_full (GTK_OBJECT (familiar), "comboURL_entry", comboURL_entry,
(GtkDestroyNotify) gtk_widget_unref); (GtkDestroyNotify) gtk_widget_unref);
gtk_widget_show (combo_entry1); gtk_widget_show (comboURL_entry);
gtk_entry_set_text (GTK_ENTRY (combo_entry1), _("file://")); gtk_entry_set_text (GTK_ENTRY (comboURL_entry), _("file://"));
media = gtk_label_new (_("Media")); media = gtk_label_new (_("Media"));
gtk_widget_set_name (media, "media"); gtk_widget_set_name (media, "media");
...@@ -341,8 +341,8 @@ create_familiar (void) ...@@ -341,8 +341,8 @@ create_familiar (void)
gtk_object_set_data_full (GTK_OBJECT (familiar), "comboDefaultURL", comboDefaultURL, gtk_object_set_data_full (GTK_OBJECT (familiar), "comboDefaultURL", comboDefaultURL,
(GtkDestroyNotify) gtk_widget_unref); (GtkDestroyNotify) gtk_widget_unref);
gtk_widget_show (comboDefaultURL); gtk_widget_show (comboDefaultURL);
gtk_fixed_put (GTK_FIXED (fixed3), comboDefaultURL, 8, 4); gtk_fixed_put (GTK_FIXED (fixed3), comboDefaultURL, 8, 8);
gtk_widget_set_uposition (comboDefaultURL, 8, 4); gtk_widget_set_uposition (comboDefaultURL, 8, 8);
gtk_widget_set_usize (comboDefaultURL, 200, 24); gtk_widget_set_usize (comboDefaultURL, 200, 24);
comboDefaultURL_items = g_list_append (comboDefaultURL_items, (gpointer) _("file://")); comboDefaultURL_items = g_list_append (comboDefaultURL_items, (gpointer) _("file://"));
comboDefaultURL_items = g_list_append (comboDefaultURL_items, (gpointer) _("ftp://localhost")); comboDefaultURL_items = g_list_append (comboDefaultURL_items, (gpointer) _("ftp://localhost"));
...@@ -351,13 +351,13 @@ create_familiar (void) ...@@ -351,13 +351,13 @@ create_familiar (void)
gtk_combo_set_popdown_strings (GTK_COMBO (comboDefaultURL), comboDefaultURL_items); gtk_combo_set_popdown_strings (GTK_COMBO (comboDefaultURL), comboDefaultURL_items);
g_list_free (comboDefaultURL_items); g_list_free (comboDefaultURL_items);
combo_entry2 = GTK_COMBO (comboDefaultURL)->entry; comboPrefs_entry = GTK_COMBO (comboDefaultURL)->entry;
gtk_widget_set_name (combo_entry2, "combo_entry2"); gtk_widget_set_name (comboPrefs_entry, "comboPrefs_entry");
gtk_widget_ref (combo_entry2); gtk_widget_ref (comboPrefs_entry);
gtk_object_set_data_full (GTK_OBJECT (familiar), "combo_entry2", combo_entry2, gtk_object_set_data_full (GTK_OBJECT (familiar), "comboPrefs_entry", comboPrefs_entry,
(GtkDestroyNotify) gtk_widget_unref); (GtkDestroyNotify) gtk_widget_unref);
gtk_widget_show (combo_entry2); gtk_widget_show (comboPrefs_entry);
gtk_entry_set_text (GTK_ENTRY (combo_entry2), _("file://")); gtk_entry_set_text (GTK_ENTRY (comboPrefs_entry), _("file://"));
frameIP = gtk_frame_new (_("IP version:")); frameIP = gtk_frame_new (_("IP version:"));
gtk_widget_set_name (frameIP, "frameIP"); gtk_widget_set_name (frameIP, "frameIP");
...@@ -508,6 +508,12 @@ create_familiar (void) ...@@ -508,6 +508,12 @@ create_familiar (void)
gtk_signal_connect (GTK_OBJECT (toolbar_about), "clicked", gtk_signal_connect (GTK_OBJECT (toolbar_about), "clicked",
GTK_SIGNAL_FUNC (on_toolbar_about_clicked), GTK_SIGNAL_FUNC (on_toolbar_about_clicked),
NULL); NULL);
gtk_signal_connect (GTK_OBJECT (comboURL_entry), "changed",
GTK_SIGNAL_FUNC (on_comboURL_entry_changed),
NULL);
gtk_signal_connect (GTK_OBJECT (comboPrefs_entry), "changed",
GTK_SIGNAL_FUNC (on_comboPrefs_entry_changed),
NULL);
gtk_object_set_data (GTK_OBJECT (familiar), "tooltips", tooltips); gtk_object_set_data (GTK_OBJECT (familiar), "tooltips", tooltips);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment