Commit 8d9c1ec6 authored by Jean-Paul Saman's avatar Jean-Paul Saman
Browse files

Non-functional Familiar Linux user interface.

parent 10f8855d
......@@ -2,7 +2,7 @@
* familiar.c : familiar plugin for vlc
*****************************************************************************
* Copyright (C) 2002 VideoLAN
* $Id: familiar.c,v 1.2 2002/07/22 19:49:40 jpsaman Exp $
* $Id: familiar.c,v 1.3 2002/07/22 20:52:42 jpsaman Exp $
*
* Authors: Jean-Paul Saman <jpsaman@wxs.nl>
*
......@@ -61,7 +61,7 @@ MODULE_CONFIG_STOP
MODULE_INIT_START
SET_DESCRIPTION( _("Familiar Linux Gtk+ interface module") )
ADD_CAPABILITY( INTF, 590 )
ADD_CAPABILITY( INTF, 70 )
MODULE_INIT_STOP
MODULE_ACTIVATE_START
......
......@@ -23,6 +23,11 @@
<name>familiar</name>
<width>240</width>
<height>320</height>
<signal>
<name>destroy</name>
<handler>on_familiar_destroy</handler>
<last_modification_time>Mon, 22 Jul 2002 18:58:45 GMT</last_modification_time>
</signal>
<title>vlc (familiar)</title>
<type>GTK_WINDOW_TOPLEVEL</type>
<position>GTK_WIN_POS_NONE</position>
......@@ -215,7 +220,65 @@
</child>
<widget>
<class>Placeholder</class>
<class>GtkFixed</class>
<name>fixedMedia</name>
<widget>
<class>GtkLabel</class>
<name>labelUrl</name>
<x>4</x>
<y>8</y>
<width>38</width>
<height>18</height>
<label>URL:</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>GtkList</class>
<name>listMedia</name>
<x>8</x>
<y>40</y>
<width>220</width>
<height>200</height>
<tooltip>Select multimedia file.</tooltip>
<selection_mode>GTK_SELECTION_MULTIPLE</selection_mode>
</widget>
<widget>
<class>GtkCombo</class>
<name>comboURL</name>
<x>46</x>
<y>6</y>
<width>185</width>
<height>24</height>
<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://localhost
http://localhost
udp://localhost:1234/
</items>
<widget>
<class>GtkEntry</class>
<child_name>GtkCombo:entry</child_name>
<name>combo-entry1</name>
<can_focus>True</can_focus>
<editable>True</editable>
<text_visible>True</text_visible>
<text_max_length>0</text_max_length>
<text>file://</text>
</widget>
</widget>
</widget>
<widget>
......@@ -232,13 +295,142 @@
</widget>
<widget>
<class>Placeholder</class>
<class>GtkFixed</class>
<name>fixedPreferences</name>
<widget>
<class>GtkButton</class>
<name>buttonSave</name>
<x>8</x>
<y>216</y>
<width>54</width>
<height>24</height>
<can_focus>True</can_focus>
<label>Save</label>
<relief>GTK_RELIEF_NORMAL</relief>
</widget>
<widget>
<class>GtkButton</class>
<name>buttonApply</name>
<x>64</x>
<y>216</y>
<width>54</width>
<height>24</height>
<can_focus>True</can_focus>
<label>Apply</label>
<relief>GTK_RELIEF_NORMAL</relief>
</widget>
<widget>
<class>GtkButton</class>
<name>buttonCancel</name>
<x>176</x>
<y>216</y>
<width>54</width>
<height>24</height>
<can_focus>True</can_focus>
<label>Cancel</label>
<relief>GTK_RELIEF_NORMAL</relief>
</widget>
<widget>
<class>GtkFrame</class>
<name>frameDefaultURL</name>
<x>8</x>
<y>8</y>
<width>220</width>
<height>60</height>
<label>Default URL:</label>
<label_xalign>0</label_xalign>
<shadow_type>GTK_SHADOW_ETCHED_IN</shadow_type>
<widget>
<class>GtkFixed</class>
<name>fixed3</name>
<widget>
<class>GtkCombo</class>
<name>comboDefaultURL</name>
<x>8</x>
<y>4</y>
<width>200</width>
<height>24</height>
<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://localhost
http://localhost
udp://localhost:1234/
</items>
<widget>
<class>GtkEntry</class>
<child_name>GtkCombo:entry</child_name>
<name>combo-entry2</name>
<can_focus>True</can_focus>
<editable>True</editable>
<text_visible>True</text_visible>
<text_max_length>0</text_max_length>
<text>file://</text>
</widget>
</widget>
</widget>
</widget>
<widget>
<class>GtkFrame</class>
<name>frameIP</name>
<x>8</x>
<y>72</y>
<width>220</width>
<height>60</height>
<label>IP version:</label>
<label_xalign>0</label_xalign>
<shadow_type>GTK_SHADOW_ETCHED_IN</shadow_type>
<widget>
<class>GtkFixed</class>
<name>fixed2</name>
<widget>
<class>GtkRadioButton</class>
<name>rbIPv6</name>
<x>112</x>
<y>8</y>
<width>104</width>
<height>26</height>
<can_focus>True</can_focus>
<label>IPv6</label>
<active>False</active>
<draw_indicator>True</draw_indicator>
<group>IPversion</group>
</widget>
<widget>
<class>GtkRadioButton</class>
<name>rbIPv4</name>
<x>8</x>
<y>8</y>
<width>104</width>
<height>26</height>
<can_focus>True</can_focus>
<label>IPv4</label>
<active>True</active>
<draw_indicator>True</draw_indicator>
<group>IPversion</group>
</widget>
</widget>
</widget>
</widget>
<widget>
<class>GtkLabel</class>
<child_name>Notebook:tab</child_name>
<name>preference</name>
<name>preferences</name>
<label>Preference</label>
<justify>GTK_JUSTIFY_CENTER</justify>
<wrap>False</wrap>
......@@ -249,14 +441,49 @@
</widget>
<widget>
<class>Placeholder</class>
<class>GtkFixed</class>
<name>fixedAbout</name>
<widget>
<class>GtkPixmap</class>
<name>logo</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>
<child_name>Notebook:tab</child_name>
<name>help</name>
<label>Help</label>
<name>labelVlc</name>
<x>64</x>
<y>8</y>
<width>120</width>
<height>40</height>
<label>VideoLAN Client
for familiar Linux</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>labelCopyright</name>
<x>16</x>
<y>56</y>
<width>200</width>
<height>18</height>
<label>(c) 2002, the VideoLAN Team</label>
<justify>GTK_JUSTIFY_CENTER</justify>
<wrap>False</wrap>
<xalign>0.5</xalign>
......@@ -266,7 +493,36 @@
</widget>
<widget>
<class>Placeholder</class>
<class>GtkLabel</class>
<name>labelAuthors</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>labelAbout</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>
......
......@@ -77,3 +77,11 @@ on_xpm_forward_button_press_event (GtkWidget *widget,
return FALSE;
}
void
on_familiar_destroy (GtkObject *object,
gpointer user_data)
{
gtk_main_quit();
}
......@@ -34,3 +34,7 @@ gboolean
on_xpm_forward_button_press_event (GtkWidget *widget,
GdkEventButton *event,
gpointer user_data);
void
on_familiar_destroy (GtkObject *object,
gpointer user_data);
......@@ -33,11 +33,38 @@ create_familiar (void)
GtkWidget *xpm_forward;
GtkWidget *progress;
GtkWidget *notebook;
GtkWidget *empty_notebook_page;
GtkWidget *fixedMedia;
GtkWidget *labelUrl;
GtkWidget *listMedia;
GtkWidget *comboURL;
GList *comboURL_items = NULL;
GtkWidget *combo_entry1;
GtkWidget *media;
GtkWidget *preference;
GtkWidget *help;
GtkWidget *fixedPreferences;
GtkWidget *buttonSave;
GtkWidget *buttonApply;
GtkWidget *buttonCancel;
GtkWidget *frameDefaultURL;
GtkWidget *fixed3;
GtkWidget *comboDefaultURL;
GList *comboDefaultURL_items = NULL;
GtkWidget *combo_entry2;
GtkWidget *frameIP;
GtkWidget *fixed2;
GSList *IPversion_group = NULL;
GtkWidget *rbIPv6;
GtkWidget *rbIPv4;
GtkWidget *preferences;
GtkWidget *fixedAbout;
GtkWidget *logo;
GtkWidget *labelVlc;
GtkWidget *labelCopyright;
GtkWidget *labelAuthors;
GtkWidget *labelAbout;
GtkWidget *about;
GtkTooltips *tooltips;
tooltips = gtk_tooltips_new ();
familiar = gtk_window_new (GTK_WINDOW_TOPLEVEL);
gtk_object_set_data (GTK_OBJECT (familiar), "familiar", familiar);
......@@ -133,9 +160,54 @@ create_familiar (void)
gtk_widget_show (notebook);
gtk_box_pack_start (GTK_BOX (vbox), notebook, TRUE, TRUE, 0);
empty_notebook_page = gtk_vbox_new (FALSE, 0);
gtk_widget_show (empty_notebook_page);
gtk_container_add (GTK_CONTAINER (notebook), empty_notebook_page);
fixedMedia = gtk_fixed_new ();
gtk_widget_ref (fixedMedia);
gtk_object_set_data_full (GTK_OBJECT (familiar), "fixedMedia", fixedMedia,
(GtkDestroyNotify) gtk_widget_unref);
gtk_widget_show (fixedMedia);
gtk_container_add (GTK_CONTAINER (notebook), fixedMedia);
labelUrl = gtk_label_new (_("URL:"));
gtk_widget_ref (labelUrl);
gtk_object_set_data_full (GTK_OBJECT (familiar), "labelUrl", labelUrl,
(GtkDestroyNotify) gtk_widget_unref);
gtk_widget_show (labelUrl);
gtk_fixed_put (GTK_FIXED (fixedMedia), labelUrl, 4, 8);
gtk_widget_set_uposition (labelUrl, 4, 8);
gtk_widget_set_usize (labelUrl, 38, 18);
listMedia = gtk_list_new ();
gtk_widget_ref (listMedia);
gtk_object_set_data_full (GTK_OBJECT (familiar), "listMedia", listMedia,
(GtkDestroyNotify) gtk_widget_unref);
gtk_widget_show (listMedia);
gtk_fixed_put (GTK_FIXED (fixedMedia), listMedia, 8, 40);
gtk_widget_set_uposition (listMedia, 8, 40);
gtk_widget_set_usize (listMedia, 220, 200);
gtk_tooltips_set_tip (tooltips, listMedia, _("Select multimedia file."), NULL);
gtk_list_set_selection_mode (GTK_LIST (listMedia), GTK_SELECTION_MULTIPLE);
comboURL = gtk_combo_new ();
gtk_widget_ref (comboURL);
gtk_object_set_data_full (GTK_OBJECT (familiar), "comboURL", comboURL,
(GtkDestroyNotify) gtk_widget_unref);
gtk_widget_show (comboURL);
gtk_fixed_put (GTK_FIXED (fixedMedia), comboURL, 46, 6);
gtk_widget_set_uposition (comboURL, 46, 6);
gtk_widget_set_usize (comboURL, 185, 24);
comboURL_items = g_list_append (comboURL_items, (gpointer) _("file://"));
comboURL_items = g_list_append (comboURL_items, (gpointer) _("ftp://localhost"));
comboURL_items = g_list_append (comboURL_items, (gpointer) _("http://localhost"));
comboURL_items = g_list_append (comboURL_items, (gpointer) _("udp://localhost:1234/"));
gtk_combo_set_popdown_strings (GTK_COMBO (comboURL), comboURL_items);
g_list_free (comboURL_items);
combo_entry1 = GTK_COMBO (comboURL)->entry;
gtk_widget_ref (combo_entry1);
gtk_object_set_data_full (GTK_OBJECT (familiar), "combo_entry1", combo_entry1,
(GtkDestroyNotify) gtk_widget_unref);
gtk_widget_show (combo_entry1);
gtk_entry_set_text (GTK_ENTRY (combo_entry1), _("file://"));
media = gtk_label_new (_("Media"));
gtk_widget_ref (media);
......@@ -144,39 +216,188 @@ create_familiar (void)
gtk_widget_show (media);
gtk_notebook_set_tab_label (GTK_NOTEBOOK (notebook), gtk_notebook_get_nth_page (GTK_NOTEBOOK (notebook), 0), media);
empty_notebook_page = gtk_vbox_new (FALSE, 0);
gtk_widget_show (empty_notebook_page);
gtk_container_add (GTK_CONTAINER (notebook), empty_notebook_page);
fixedPreferences = gtk_fixed_new ();
gtk_widget_ref (fixedPreferences);
gtk_object_set_data_full (GTK_OBJECT (familiar), "fixedPreferences", fixedPreferences,
(GtkDestroyNotify) gtk_widget_unref);
gtk_widget_show (fixedPreferences);
gtk_container_add (GTK_CONTAINER (notebook), fixedPreferences);
buttonSave = gtk_button_new_with_label (_("Save"));
gtk_widget_ref (buttonSave);
gtk_object_set_data_full (GTK_OBJECT (familiar), "buttonSave", buttonSave,
(GtkDestroyNotify) gtk_widget_unref);
gtk_widget_show (buttonSave);
gtk_fixed_put (GTK_FIXED (fixedPreferences), buttonSave, 8, 216);
gtk_widget_set_uposition (buttonSave, 8, 216);
gtk_widget_set_usize (buttonSave, 54, 24);
buttonApply = gtk_button_new_with_label (_("Apply"));
gtk_widget_ref (buttonApply);
gtk_object_set_data_full (GTK_OBJECT (familiar), "buttonApply", buttonApply,
(GtkDestroyNotify) gtk_widget_unref);
gtk_widget_show (buttonApply);
gtk_fixed_put (GTK_FIXED (fixedPreferences), buttonApply, 64, 216);
gtk_widget_set_uposition (buttonApply, 64, 216);
gtk_widget_set_usize (buttonApply, 54, 24);
preference = gtk_label_new (_("Preference"));
gtk_widget_ref (preference);
gtk_object_set_data_full (GTK_OBJECT (familiar), "preference", preference,
buttonCancel = gtk_button_new_with_label (_("Cancel"));
gtk_widget_ref (buttonCancel);
gtk_object_set_data_full (GTK_OBJECT (familiar), "buttonCancel", buttonCancel,
(GtkDestroyNotify) gtk_widget_unref);
gtk_widget_show (preference);
gtk_notebook_set_tab_label (GTK_NOTEBOOK (notebook), gtk_notebook_get_nth_page (GTK_NOTEBOOK (notebook), 1), preference);
gtk_widget_show (buttonCancel);
gtk_fixed_put (GTK_FIXED (fixedPreferences), buttonCancel, 176, 216);
gtk_widget_set_uposition (buttonCancel, 176, 216);
gtk_widget_set_usize (buttonCancel, 54, 24);
empty_notebook_page = gtk_vbox_new (FALSE, 0);
gtk_widget_show (empty_notebook_page);
gtk_container_add (GTK_CONTAINER (notebook), empty_notebook_page);
frameDefaultURL = gtk_frame_new (_("Default URL:"));
gtk_widget_ref (frameDefaultURL);
gtk_object_set_data_full (GTK_OBJECT (familiar), "frameDefaultURL", frameDefaultURL,
(GtkDestroyNotify) gtk_widget_unref);
gtk_widget_show (frameDefaultURL);
gtk_fixed_put (GTK_FIXED (fixedPreferences), frameDefaultURL, 8, 8);
gtk_widget_set_uposition (frameDefaultURL, 8, 8);
gtk_widget_set_usize (frameDefaultURL, 220, 60);
help = gtk_label_new (_("Help"));
gtk_widget_ref (help);
gtk_object_set_data_full (GTK_OBJECT (familiar), "help", help,
fixed3 = gtk_fixed_new ();
gtk_widget_ref (fixed3);
gtk_object_set_data_full (GTK_OBJECT (familiar), "fixed3", fixed3,
(GtkDestroyNotify) gtk_widget_unref);
gtk_widget_show (help);
gtk_notebook_set_tab_label (GTK_NOTEBOOK (notebook), gtk_notebook_get_nth_page (GTK_NOTEBOOK (notebook), 2), help);
gtk_widget_show (fixed3);
gtk_container_add (GTK_CONTAINER (frameDefaultURL), fixed3);
empty_notebook_page = gtk_vbox_new (FALSE, 0);
gtk_widget_show (empty_notebook_page);
gtk_container_add (GTK_CONTAINER (notebook), empty_notebook_page);
comboDefaultURL = gtk_combo_new ();
gtk_widget_ref (comboDefaultURL);
gtk_object_set_data_full (GTK_OBJECT (familiar), "comboDefaultURL", comboDefaultURL,
(GtkDestroyNotify) gtk_widget_unref);
gtk_widget_show (comboDefaultURL);
gtk_fixed_put (GTK_FIXED (fixed3), comboDefaultURL, 8, 4);
gtk_widget_set_uposition (comboDefaultURL, 8, 4);
gtk_widget_set_usize (comboDefaultURL, 200, 24);
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) _("http://localhost"));
comboDefaultURL_items = g_list_append (comboDefaultURL_items, (gpointer) _("udp://localhost:1234/"));
gtk_combo_set_popdown_strings (GTK_COMBO (comboDefaultURL), comboDefaultURL_items);
g_list_free (comboDefaultURL_items);
combo_entry2 = GTK_COMBO (comboDefaultURL)->entry;
gtk_widget_ref (combo_entry2);
gtk_object_set_data_full (GTK_OBJECT (familiar), "combo_entry2", combo_entry2,
(GtkDestroyNotify) gtk_widget_unref);
gtk_widget_show (combo_entry2);
gtk_entry_set_text (GTK_ENTRY (combo_entry2), _("file://"));
frameIP = gtk_frame_new (_("IP version:"));
gtk_widget_ref (frameIP);
gtk_object_set_data_full (GTK_OBJECT (familiar), "frameIP", frameIP,
(GtkDestroyNotify) gtk_widget_unref);
gtk_widget_show (frameIP);
gtk_fixed_put (GTK_FIXED (fixedPreferences), frameIP, 8, 72);
gtk_widget_set_uposition (frameIP, 8, 72);
gtk_widget_set_usize (frameIP, 220, 60);
fixed2 = gtk_fixed_new ();
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 (frameIP), fixed2);
rbIPv6 = gtk_radio_button_new_with_label (IPversion_group, _("IPv6"));
IPversion_group = gtk_radio_button_group (GTK_RADIO_BUTTON (rbIPv6));
gtk_widget_ref (rbIPv6);
gtk_object_set_data_full (GTK_OBJECT (familiar), "rbIPv6", rbIPv6,
(GtkDestroyNotify) gtk_widget_unref);
gtk_widget_show (rbIPv6);
gtk_fixed_put (GTK_FIXED (fixed2), rbIPv6, 112, 8);
gtk_widget_set_uposition (rbIPv6, 112, 8);
gtk_widget_set_usize (rbIPv6, 104, 26);
rbIPv4 = gtk_radio_button_new_with_label (IPversion_group, _("IPv4"));
IPversion_group = gtk_radio_button_group (GTK_RADIO_BUTTON (rbIPv4));
gtk_widget_ref (rbIPv4);
gtk_object_set_data_full (GTK_OBJECT (familiar), "rbIPv4", rbIPv4,
(GtkDestroyNotify) gtk_widget_unref);
gtk_widget_show (rbIPv4);
gtk_fixed_put (GTK_FIXED (fixed2), rbIPv4, 8, 8);
gtk_widget_set_uposition (rbIPv4, 8, 8);
gtk_widget_set_usize (rbIPv4, 104, 26);
gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (rbIPv4), TRUE);
preferences = gtk_label_new (_("Preference"));
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), 1), preferences);
fixedAbout = gtk_fixed_new ();
gtk_widget_ref (fixedAbout);
gtk_object_set_data_full (GTK_OBJECT (familiar), "fixedAbout", fixedAbout,
(GtkDestroyNotify) gtk_widget_unref);
gtk_widget_show (fixedAbout);
gtk_container_add (GTK_CONTAINER (notebook), fixedAbout);
logo = create_pixmap (familiar, "vlc32x32.xpm");
gtk_widget_ref (logo);
gtk_object_set_data_full (GTK_OBJECT (familiar), "logo", logo,
(GtkDestroyNotify) gtk_widget_unref);
gtk_widget_show (logo);
gtk_fixed_put (GTK_FIXED (fixedAbout), logo, 8, 0);