diff options
| -rw-r--r-- | config.mk | 2 | ||||
| -rw-r--r-- | dmenu_mocp/.dmenu_mocp.swp | bin | 12288 -> 0 bytes | |||
| -rwxr-xr-x | dmenu_mocp/dmenu_mocp | 19 | ||||
| -rwxr-xr-x | dmenu_mocp/dmenu_mocp~ | 51 | ||||
| -rw-r--r-- | mocicon.c | 189 | 
5 files changed, 105 insertions, 156 deletions
| @@ -17,7 +17,7 @@ INCS = -I. -I/usr/include ${GTKINC}  LIBS = -L/usr/lib -lc ${GTKLIB}  # flags  CPPFLAGS = -DVERSION=\"${VERSION}\" ${XINERAMAFLAGS} -CFLAGS = -std=c99 -Wall -O2 ${INCS} ${CPPFLAGS} +CFLAGS = -std=c99 -Wall -Wextra  -O2 ${INCS} ${CPPFLAGS}  LDFLAGS = -s ${LIBS}  # Solaris diff --git a/dmenu_mocp/.dmenu_mocp.swp b/dmenu_mocp/.dmenu_mocp.swpBinary files differ deleted file mode 100644 index e5d304b..0000000 --- a/dmenu_mocp/.dmenu_mocp.swp +++ /dev/null diff --git a/dmenu_mocp/dmenu_mocp b/dmenu_mocp/dmenu_mocp index 72c4024..467e58f 100755 --- a/dmenu_mocp/dmenu_mocp +++ b/dmenu_mocp/dmenu_mocp @@ -12,7 +12,7 @@ if [ "$ACTION" == 'pause/play' ]; then  fi  if [ "$ACTION" == 'next' ]; then - mocp -f   +  mocp -f    fi  if [ "$ACTION" == 'previous' ]; then @@ -20,27 +20,28 @@ if [ "$ACTION" == 'previous' ]; then  fi  if [ "$ACTION" == 'start' ]; then - mocp -S - dmenu_mocp +  mocp -S +  dmenu_mocp  fi  if [ "$ACTION" == 'exit' ]; then - mocp -x +  mocp -x  fi  if [ "$ACTION" == 'open' ]; then  - xterm -e mocp +  xterm -e mocp  fi  if [ "$ACTION" == 'load' ]; then -    mocp -c && -  play=$(find ~/ -name *.m3u | dmenu -i $*) +  mocp -c && +  play=`find ~/ -name *.m3u | dmenu -i $*`    echo $play    mocp -a "$play" -    mocp -p +  mocp -p  fi +  if [ "$ACTION" == 'shuffle' ]; then - mocp -t shuffle +  mocp -t shuffle  fi  if [ "$ACTION" == 'repeat' ]; then diff --git a/dmenu_mocp/dmenu_mocp~ b/dmenu_mocp/dmenu_mocp~ deleted file mode 100755 index 2fd167e..0000000 --- a/dmenu_mocp/dmenu_mocp~ +++ /dev/null @@ -1,51 +0,0 @@ -#!/bin/sh -#thanks to dpm i just changed up the commands xD - -status=$(mocp -Q %state) -status=${status,,} -ACTION=`printf "playlist\n$status\nnext\nprevious\nstart\nexit\nopen\nload\nshuffle\nrepeat\n" | dmenu -i $*` - -if [ "$ACTION" == 'playlist' ]; then -  mocp -p -fi - -if [ "$ACTION" == 'pause/play' ]; then -  mocp -G -fi - -if [ "$ACTION" == 'next' ]; then - mocp -f   -fi - -if [ "$ACTION" == 'previous' ]; then -  mocp -r -fi - -if [ "$ACTION" == 'start' ]; then - mocp -S - dmenu_mocp -fi - -if [ "$ACTION" == 'exit' ]; then - mocp -x -fi - -if [ "$ACTION" == 'open' ]; then  - xterm -e mocp -fi - -if [ "$ACTION" == 'load' ]; then -    mocp -c && -  play=$(find ~/ -name *.m3u | dmenu -i $*) -  echo $play -  mocp -a "$play" -    mocp -p -fi -if [ "$ACTION" == 'shuffle' ]; then - mocp -t shuffle -fi - -if [ "$ACTION" == 'repeat' ]; then -  mocp -t repeat	 -fi - @@ -4,117 +4,116 @@  #define TERMINAL "xterm -C mocp" -//CONFIG ::: user defined information  -//static char *notify = "bash -c 'notify-send -t 2000 \"$(mocp -i)\" -i gtk-cdrom"; -//static char *notify = "bash -c 'notify-send -t 2000 \"$(mocp -Q %artist)\" \"$(mocp -Q %song)\" -i gtk-cdrom'";  static char *notify = "bash -c 'notify-send -t 2000 \"$(mocp -i 2>/dev/null | grep Artist)\" \"$(mocp -i 2>/dev/null | grep Song)\" -i gtk-cdrom'";  GtkWidget *menu, *quit_item, *launch_item, *play_item, *stop_item, *start_item, *next_item, *prev_item;  +/*char * query() { +  gchar *stdoutput=NULL; +  g_spawn_command_line_sync("mocp -Q %artist", &stdoutput, NULL, NULL, NULL); +  temp = g_strconcat(stdoutput, NULL); +  g_spawn_command_line_sync("mocp -Q %song", &stdoutput, NULL, NULL, NULL); +  temp = g_strconcat(temp, " ", stdoutput, NULL); +  g_free(stdoutput); +  return (char *)temp; +  }*/ -/*char * query() { -     -    gchar *stdoutput=NULL; -     -		g_spawn_command_line_sync("mocp -Q %artist", &stdoutput, NULL, NULL, NULL); -		temp = g_strconcat(stdoutput, NULL); -		g_spawn_command_line_sync("mocp -Q %song", &stdoutput, NULL, NULL, NULL); -		temp = g_strconcat(temp, " ", stdoutput, NULL); -		g_free(stdoutput); -		return (char *)temp; -}*/ - -static void send( GtkMenuItem *item, int data) { - -		switch(data) { -			case 0: g_spawn_command_line_async("mocp --play", NULL); -					break; -			case 1: g_spawn_command_line_async("mocp --toggle-pause", NULL); -					break; -			case 2:	g_spawn_command_line_async("mocp --exit", NULL); -					break; -			case 3:	g_spawn_command_line_async("mocp --next", NULL); -					break; -			case 4:	g_spawn_command_line_async("mocp --previous", NULL); -					break; -			case 5: g_spawn_command_line_async(notify, NULL);			 -					break; -			case 6:	g_spawn_command_line_async(TERMINAL, NULL); -					break; -			case 7: -    //	    	dialog = gtk_file_chooser_dialog_new( "Select file",  NULL, GTK_FILE_CHOOSER_ACTION_SAVE, GTK_STOCK_SAVE, 1, GTK_STOCK_CANCEL, 0, NULL );  -    //          gtk_dialog_run( GTK_DIALOG( dialog )); -    //    playlist = gtk_file_chooser_get_filename( GTK_FILE_CHOOSER( dialog ) );  -		//g_spawn_command_line_sync("mocp -c",  NULL, NULL, NULL, NULL); -		//g_spawn_command_line_sync(g_strconcat("mocp -a ", playlist),  NULL, NULL, NULL, NULL); -		//g_spawn_command_line_sync("mocp -p",  NULL, NULL, NULL, NULL);         -				break; -		default: -				break; -		} +static void send(int data) { + +  switch(data) { +    case 0:  +      g_spawn_command_line_async("mocp --play", NULL); +      break; +    case 1:  +      g_spawn_command_line_async("mocp --toggle-pause", NULL); +      break; +    case 2: +      g_spawn_command_line_async("mocp --exit", NULL); +      break; +    case 3: +      g_spawn_command_line_async("mocp --next", NULL); +      break; +    case 4: +      g_spawn_command_line_async("mocp --previous", NULL); +      break; +    case 5: +      g_spawn_command_line_async(notify, NULL);			 +      break; +    case 6: +      g_spawn_command_line_async(TERMINAL, NULL); +      break; +    case 7: +      //	    	dialog = gtk_file_chooser_dialog_new( "Select file",  NULL, GTK_FILE_CHOOSER_ACTION_SAVE, GTK_STOCK_SAVE, 1, GTK_STOCK_CANCEL, 0, NULL );  +      //          gtk_dialog_run( GTK_DIALOG( dialog )); +      //    playlist = gtk_file_chooser_get_filename( GTK_FILE_CHOOSER( dialog ) );  +      //g_spawn_command_line_sync("mocp -c",  NULL, NULL, NULL, NULL); +      //g_spawn_command_line_sync(g_strconcat("mocp -a ", playlist),  NULL, NULL, NULL, NULL); +      //g_spawn_command_line_sync("mocp -p",  NULL, NULL, NULL, NULL);         +      break; +    default: +      break; +  }  } -gboolean button_press_cb(GtkStatusIcon *icon, GdkEventButton *ev, gpointer user_data)  + +gboolean button_press_cb(GtkStatusIcon *icon, GdkEventButton *ev)   {   -   -  // CONFIG ::: user defined mouseclicks    -    if(ev->button == 3) { gtk_menu_popup(GTK_MENU(menu), NULL, NULL, NULL, NULL, ev->button, ev->time); }  -    if(ev->button == 2) { send(NULL, 5); } -    if(ev->button == 1) {	send(NULL, 1); }	 -	 +  if(ev->button == 3) { gtk_menu_popup(GTK_MENU(menu), NULL, NULL, NULL, NULL, ev->button, ev->time); }  +  if(ev->button == 2) { send(5); } +  if(ev->button == 1) {	send(1); }	 +    return FALSE;  }   static void setup() { -	GtkStatusIcon *icon;  -	icon = gtk_status_icon_new_from_stock(GTK_STOCK_MEDIA_PLAY);  -	g_signal_connect(icon,"button-press-event", G_CALLBACK(button_press_cb), NULL);  +  GtkStatusIcon *icon;  +  icon = gtk_status_icon_new_from_stock(GTK_STOCK_MEDIA_PLAY);  +  g_signal_connect(icon,"button-press-event", G_CALLBACK(button_press_cb), NULL);  -	menu = gtk_menu_new();  +  menu = gtk_menu_new();     // init items    start_item = gtk_image_menu_item_new_with_label("Start Server"); -	stop_item  = gtk_image_menu_item_new_with_label("Stop Server"); -	next_item  = gtk_image_menu_item_new_with_label("Next"); -	prev_item  = gtk_image_menu_item_new_with_label("Previous"); -	play_item  = gtk_image_menu_item_new_with_label("Play/Pause"); -	launch_item = gtk_image_menu_item_new_with_label("Launch Moc"); -	quit_item  = gtk_image_menu_item_new_with_label("Quit MocIcon"); -	 -  // Comment this section out if you don't want icons. -  // CONFIG::: icons size, icons on/off  - 	gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(start_item), gtk_image_new_from_stock(GTK_STOCK_YES, GTK_ICON_SIZE_MENU)); -	gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(stop_item), gtk_image_new_from_stock(GTK_STOCK_NO, GTK_ICON_SIZE_MENU)); -	gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(next_item), gtk_image_new_from_stock(GTK_STOCK_MEDIA_FORWARD, GTK_ICON_SIZE_MENU)); -	gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(prev_item), gtk_image_new_from_stock(GTK_STOCK_MEDIA_REWIND, GTK_ICON_SIZE_MENU)); -	gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(play_item), gtk_image_new_from_stock(GTK_STOCK_MEDIA_PLAY, GTK_ICON_SIZE_MENU)); -	gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(launch_item), gtk_image_new_from_stock(GTK_STOCK_EXECUTE, GTK_ICON_SIZE_MENU)); -	gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(quit_item), gtk_image_new_from_stock(GTK_STOCK_QUIT, GTK_ICON_SIZE_MENU)); - - 	g_signal_connect(G_OBJECT(quit_item), "activate", G_CALLBACK(gtk_main_quit), NULL); -	g_signal_connect(G_OBJECT(play_item), "activate", G_CALLBACK(send), GINT_TO_POINTER( 1 )); -	g_signal_connect(G_OBJECT(start_item),"activate", G_CALLBACK(send), GINT_TO_POINTER( 0 )); -	g_signal_connect(G_OBJECT(stop_item), "activate", G_CALLBACK(send), GINT_TO_POINTER( 2 )); -	g_signal_connect(G_OBJECT(next_item), "activate", G_CALLBACK(send), GINT_TO_POINTER( 3 )); -	g_signal_connect(G_OBJECT(prev_item), "activate", G_CALLBACK(send), GINT_TO_POINTER( 4 )); -	g_signal_connect(G_OBJECT(launch_item),"activate", G_CALLBACK(send), GINT_TO_POINTER( 6 )); -         -	 gtk_menu_shell_append(GTK_MENU_SHELL(menu), stop_item);  -	 gtk_menu_shell_append(GTK_MENU_SHELL(menu), start_item);  -   gtk_menu_shell_append(GTK_MENU_SHELL(menu), play_item);  -	 gtk_menu_shell_append(GTK_MENU_SHELL(menu), next_item); 	 -	 gtk_menu_shell_append(GTK_MENU_SHELL(menu), prev_item);  -	 gtk_menu_shell_append(GTK_MENU_SHELL(menu), launch_item); 	 -	 gtk_menu_shell_append(GTK_MENU_SHELL(menu), quit_item);  - 	 // show widgets -        gtk_widget_show_all(menu); -         +  stop_item  = gtk_image_menu_item_new_with_label("Stop Server"); +  next_item  = gtk_image_menu_item_new_with_label("Next"); +  prev_item  = gtk_image_menu_item_new_with_label("Previous"); +  play_item  = gtk_image_menu_item_new_with_label("Play/Pause"); +  launch_item = gtk_image_menu_item_new_with_label("Launch Moc"); +  quit_item  = gtk_image_menu_item_new_with_label("Quit MocIcon"); + +  gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(start_item), gtk_image_new_from_stock(GTK_STOCK_YES, GTK_ICON_SIZE_MENU)); +  gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(stop_item), gtk_image_new_from_stock(GTK_STOCK_NO, GTK_ICON_SIZE_MENU)); +  gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(next_item), gtk_image_new_from_stock(GTK_STOCK_MEDIA_FORWARD, GTK_ICON_SIZE_MENU)); +  gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(prev_item), gtk_image_new_from_stock(GTK_STOCK_MEDIA_REWIND, GTK_ICON_SIZE_MENU)); +  gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(play_item), gtk_image_new_from_stock(GTK_STOCK_MEDIA_PLAY, GTK_ICON_SIZE_MENU)); +  gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(launch_item), gtk_image_new_from_stock(GTK_STOCK_EXECUTE, GTK_ICON_SIZE_MENU)); +  gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(quit_item), gtk_image_new_from_stock(GTK_STOCK_QUIT, GTK_ICON_SIZE_MENU)); + +  g_signal_connect(G_OBJECT(quit_item), "activate", G_CALLBACK(gtk_main_quit), NULL); + +  g_signal_connect(G_OBJECT(play_item), "activate", G_CALLBACK(send), GINT_TO_POINTER( 1 )); +  g_signal_connect(G_OBJECT(start_item),"activate", G_CALLBACK(send), GINT_TO_POINTER( 0 )); +  g_signal_connect(G_OBJECT(stop_item), "activate", G_CALLBACK(send), GINT_TO_POINTER( 2 )); +  g_signal_connect(G_OBJECT(next_item), "activate", G_CALLBACK(send), GINT_TO_POINTER( 3 )); +  g_signal_connect(G_OBJECT(prev_item), "activate", G_CALLBACK(send), GINT_TO_POINTER( 4 )); +  g_signal_connect(G_OBJECT(launch_item),"activate", G_CALLBACK(send), GINT_TO_POINTER( 6 )); + +  gtk_menu_shell_append(GTK_MENU_SHELL(menu), stop_item);  +  gtk_menu_shell_append(GTK_MENU_SHELL(menu), start_item);  +  gtk_menu_shell_append(GTK_MENU_SHELL(menu), play_item);  +  gtk_menu_shell_append(GTK_MENU_SHELL(menu), next_item); 	 +  gtk_menu_shell_append(GTK_MENU_SHELL(menu), prev_item);  +  gtk_menu_shell_append(GTK_MENU_SHELL(menu), launch_item); 	 +  gtk_menu_shell_append(GTK_MENU_SHELL(menu), quit_item);  + +  gtk_widget_show_all(menu); +  }; -  -gint main(gint argc, gchar **argv)  + +int main(gint argc, gchar **argv)   {  -    gtk_init(&argc, &argv);  -    setup(); -    gtk_main();  +  gtk_init(&argc, &argv);  +  setup(); +  gtk_main();  -    return 0;  +  return 0;   } | 
