[Xfce4-commits] <parole:master> Added Playlist button back and F9 accelerator to show playlist.
Sean Davis
noreply at xfce.org
Mon Jul 23 01:26:17 CEST 2012
Updating branch refs/heads/master
to e93282510b786826babdc331a10463219a124dc4 (commit)
from 6d4b70dde04a8b4296a712d00c3bb579aa8ab594 (commit)
commit e93282510b786826babdc331a10463219a124dc4
Author: Sean Davis <smd.seandavis at gmail.com>
Date: Thu Jul 19 15:40:29 2012 -0400
Added Playlist button back and F9 accelerator to show playlist.
data/interfaces/parole.ui | 27 +++++++++++++++++++-
src/parole-player.c | 59 +++++++++++++++++++++++++-------------------
2 files changed, 58 insertions(+), 28 deletions(-)
diff --git a/data/interfaces/parole.ui b/data/interfaces/parole.ui
index b4ca5d2..0139fb5 100644
--- a/data/interfaces/parole.ui
+++ b/data/interfaces/parole.ui
@@ -343,12 +343,13 @@
<property name="visible">True</property>
<property name="can_focus">False</property>
<child>
- <object class="GtkMenuItem" id="show-hide-list">
+ <object class="GtkCheckMenuItem" id="show-hide-list">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="use_action_appearance">False</property>
- <property name="label" translatable="yes">Hide playlist</property>
+ <property name="label" translatable="yes">Show playlist</property>
<property name="use_underline">True</property>
+ <accelerator key="F9" signal="activate"/>
<signal name="activate" handler="parole_player_show_hide_playlist" swapped="no"/>
</object>
</child>
@@ -906,6 +907,23 @@ audio-volume-medium</property>
<property name="position">2</property>
</packing>
</child>
+ <child>
+ <object class="GtkButton" id="show-hide-list-button">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">True</property>
+ <property name="use_action_appearance">False</property>
+ <property name="image">show-hide-list-image</property>
+ <property name="relief">none</property>
+ <property name="focus_on_click">False</property>
+ <signal name="clicked" handler="parole_player_show_hide_playlist" swapped="no"/>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">3</property>
+ </packing>
+ </child>
</object>
<packing>
<property name="expand">False</property>
@@ -996,4 +1014,9 @@ audio-volume-medium</property>
</object>
</child>
</object>
+ <object class="GtkImage" id="show-hide-list-image">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="stock">gtk-go-back</property>
+ </object>
</interface>
diff --git a/src/parole-player.c b/src/parole-player.c
index a4b7cfb..77282ef 100644
--- a/src/parole-player.c
+++ b/src/parole-player.c
@@ -149,7 +149,7 @@ gboolean parole_player_delete_event_cb (GtkWidget *widget,
GdkEvent *ev,
ParolePlayer *player);
-void parole_player_show_hide_playlist (GtkMenuItem *widget,
+void parole_player_show_hide_playlist (GtkWidget *widget,
ParolePlayer *player);
/*Menu items callbacks*/
@@ -260,6 +260,8 @@ struct ParolePlayerPrivate
GtkWidget *playlist_nt;
GtkWidget *main_nt; /*Main notebook*/
GtkWidget *show_hide_playlist;
+ GtkWidget *show_hide_playlist_button;
+ GtkWidget *show_hide_playlist_image;
GtkWidget *shuffle_menu_item;
GtkWidget *repeat_menu_item;
GtkWidget *play_pause;
@@ -363,28 +365,36 @@ void ratio_20_9_toggled_cb (GtkWidget *widget, ParolePlayer *player)
NULL);
}
-void parole_player_show_hide_playlist (GtkMenuItem *widget, ParolePlayer *player)
+void parole_player_set_playlist_visible (ParolePlayer *player, gboolean visibility)
+{
+ gtk_check_menu_item_set_active( GTK_CHECK_MENU_ITEM(player->priv->show_hide_playlist), visibility );
+ if ( visibility )
+ {
+ gtk_widget_show_all (player->priv->playlist_nt);
+ gtk_image_set_from_stock( GTK_IMAGE( player->priv->show_hide_playlist_image ), "gtk-go-forward", GTK_ICON_SIZE_BUTTON );
+ gtk_widget_set_tooltip_text( GTK_WIDGET( player->priv->show_hide_playlist_button ), "Hide playlist");
+ g_object_set (G_OBJECT (player->priv->conf),
+ "showhide-playlist", TRUE,
+ NULL);
+ }
+ else
+ {
+ gtk_widget_hide_all (player->priv->playlist_nt);
+ gtk_image_set_from_stock( GTK_IMAGE( player->priv->show_hide_playlist_image ), "gtk-go-back", GTK_ICON_SIZE_BUTTON );
+ gtk_widget_set_tooltip_text( GTK_WIDGET( player->priv->show_hide_playlist_button ), "Show playlist");
+ g_object_set (G_OBJECT (player->priv->conf),
+ "showhide-playlist", FALSE,
+ NULL);
+ }
+}
+
+void parole_player_show_hide_playlist (GtkWidget *widget, ParolePlayer *player)
{
gboolean visible;
visible = GTK_WIDGET_VISIBLE (player->priv->playlist_nt);
- if ( !visible )
- {
- gtk_widget_show_all (player->priv->playlist_nt);
- gtk_menu_item_set_label (GTK_MENU_ITEM (player->priv->show_hide_playlist), _("Hide playlist"));
- g_object_set (G_OBJECT (player->priv->conf),
- "showhide-playlist", FALSE,
- NULL);
- }
- else
- {
- gtk_widget_hide_all (player->priv->playlist_nt);
- gtk_menu_item_set_label (GTK_MENU_ITEM (player->priv->show_hide_playlist), _("Show playlist"));
- g_object_set (G_OBJECT (player->priv->conf),
- "showhide-playlist", TRUE,
- NULL);
- }
+ parole_player_set_playlist_visible( player, !visible );
}
typedef enum
@@ -1306,7 +1316,7 @@ parole_player_full_screen (ParolePlayer *player, gboolean fullscreen)
gtk_widget_show (player->priv->play_box);
gtk_widget_show (player->priv->menu_bar);
gtk_widget_show (player->priv->playlist_nt);
- gtk_widget_show (player->priv->show_hide_playlist);
+ parole_player_set_playlist_visible(player, TRUE);
gtk_widget_show (player->priv->go_fs);
gtk_widget_hide (player->priv->leave_fs);
@@ -1324,7 +1334,7 @@ parole_player_full_screen (ParolePlayer *player, gboolean fullscreen)
gtk_widget_hide (player->priv->play_box);
gtk_widget_hide (player->priv->menu_bar);
gtk_widget_hide (player->priv->playlist_nt);
- gtk_widget_hide (player->priv->show_hide_playlist);
+ parole_player_set_playlist_visible(player, FALSE);
gtk_widget_hide (player->priv->go_fs);
gtk_widget_show (player->priv->leave_fs);
@@ -2218,6 +2228,8 @@ parole_player_init (ParolePlayer *player)
player->priv->play_box = GTK_WIDGET (gtk_builder_get_object (builder, "play-box"));
player->priv->playlist_nt = GTK_WIDGET (gtk_builder_get_object (builder, "notebook-playlist"));
player->priv->show_hide_playlist = GTK_WIDGET (gtk_builder_get_object (builder, "show-hide-list"));
+ player->priv->show_hide_playlist_image = GTK_WIDGET (gtk_builder_get_object (builder, "show-hide-list-image"));
+ player->priv->show_hide_playlist_button = GTK_WIDGET (gtk_builder_get_object (builder, "show-hide-list-button"));
player->priv->shuffle_menu_item = GTK_WIDGET (gtk_builder_get_object (builder, "shuffle"));
player->priv->repeat_menu_item = GTK_WIDGET (gtk_builder_get_object (builder, "repeat"));
@@ -2284,12 +2296,7 @@ parole_player_init (ParolePlayer *player)
g_object_get (G_OBJECT (player->priv->conf),
"showhide-playlist", &showhide,
NULL);
- if ( showhide ) {
- gtk_widget_hide_all (player->priv->playlist_nt);
- }
- else {
- gtk_widget_show_all (player->priv->playlist_nt);
- }
+ parole_player_set_playlist_visible(player, showhide);
parole_player_set_wm_opacity_hint (player->priv->window);
More information about the Xfce4-commits
mailing list