Functions | |
Etk_Bool | cb_quit (Etk_Object *object, void *data) |
Quit the main loop. | |
void | cb_button_stop_clicked (Etk_Object *object, void *data) |
Stop the playing. | |
void | cb_button_prev_clicked (Etk_Object *object, void *data) |
Re-play the song from the start or play the previous song. | |
void | cb_button_play_clicked (Etk_Object *object, void *data) |
Toggle play/pause the current song. | |
void | cb_button_next_clicked (Etk_Object *object, void *data) |
Play the next song. | |
void | cb_toggle_random (Etk_Object *object, void *data) |
Toggle the random mode. | |
void | cb_toggle_repeat (Etk_Object *object, void *data) |
Toggle the repeat mode. | |
void | cb_seek_time (Etk_Object *object, Etk_Event_Mouse_Down *event, void *data) |
Seek in the song the same percent position than the progress bar click. | |
void | cb_vol_slider_value_changed (Etk_Object *object, double value, void *data) |
Changed the mpd output volume level. | |
void | cb_tree_artist_selected (Etk_Object *object, Etk_Tree_Row *row, void *data) |
Get the name of the selected artists, search for his albums. And set the album tree with. | |
void | cb_tree_album_selected (Etk_Object *object, Etk_Tree_Row *row, void *data) |
Get the selected albums and search for songs wich matches with these albums. Then set the tree track with that stuff. | |
void | cb_drag_artist (Etk_Object *object, void *data) |
Set a drag widget from a list of artist selected. | |
void | cb_drag_album (Etk_Object *object, void *data) |
Set a drag widget from a list of albums selected. | |
void | cb_drag_track (Etk_Object *object, void *data) |
Set a drag widget from a list of selected song's row. | |
void | cb_drop_song (Etk_Object *object, void *event, void *data) |
Get the playlist draged. Add it to the current playlist. And set the playlist tree up to date. | |
void | cb_tree_mlib_clicked (Etk_Object *object, Etk_Tree_Row *row, Etk_Event_Mouse_Down *event, void *data) |
Double-click on a row add the artist's song to the playlist. | |
void | cb_tree_pls_clicked (Etk_Object *object, Etk_Tree_Row *row, Etk_Event_Mouse_Down *event, void *data) |
Play the song double-clicked. | |
void | cb_mlib_bindings_key (Etk_Object *object, Etk_Event_Key_Down *event, void *data) |
Fast find in mlib tree. | |
void | cb_pls_contextual_menu (Etk_Object *object, Etk_Event_Mouse_Down *event, void *data) |
If right-clicked: popdown the contextual menu on the playlist. | |
void | cb_playlist_clear (Etk_Object *object, Etk_Event_Mouse_Down *event, void *data) |
Clear the playlist. | |
void | cb_pls_bindings_key (Etk_Object *object, Etk_Event_Key_Down *event, void *data) |
Callback function of bindings key on the playlist. | |
void | cb_playlist_delete (Etk_Object *object, void *data) |
Delete all the selected item from the playlist. | |
void | cb_playlist_shuffle (Etk_Object *object, void *data) |
Shuffle the playlist. | |
void | cb_database_update (Etk_Object *object, void *data) |
Request an database update. |
void cb_drag_album | ( | Etk_Object * | object, | |
void * | data | |||
) |
Set a drag widget from a list of albums selected.
data | An Emphasis_Gui |
00446 { 00447 #if 0 00448 Etk_Widget *drag_menu, *menu_item; 00449 Etk_Drag *drag; 00450 Etk_Tree *tree; 00451 Evas_List *rowlist; 00452 char **album; 00453 const char **types; 00454 unsigned int num_types; 00455 Evas_List *playlist = NULL, *tmplist; 00456 00457 if(!data) return; 00458 00459 tree = ETK_TREE(object); 00460 drag = ETK_DRAG((ETK_WIDGET(object))->drag); 00461 rowlist = etk_tree_selected_rows_get(tree); 00462 00463 drag_menu = etk_menu_new(); 00464 00465 while (rowlist) 00466 { 00467 album = etk_tree_row_data_get(evas_list_data(rowlist)); 00468 if (album != NULL) 00469 { 00470 tmplist = mpc_mlib_track_get(album[1], album[0]); 00471 00472 if (album[0]) 00473 { 00474 menu_item = etk_menu_item_new_with_label(album[0]); 00475 } 00476 else 00477 { 00478 menu_item = etk_menu_item_new_with_label(LABEL_MLIB_ALL); 00479 } 00480 00481 etk_menu_shell_append(ETK_MENU_SHELL(drag_menu), 00482 ETK_MENU_ITEM(menu_item)); 00483 if (!playlist) 00484 { 00485 playlist = tmplist; 00486 } 00487 else 00488 { 00489 playlist = evas_list_concatenate(playlist, tmplist); 00490 } 00491 rowlist = evas_list_next(rowlist); 00492 } 00493 else 00494 { 00495 Etk_Tree_Row *row; 00496 00497 row = etk_tree_first_row_get(tree); 00498 row = etk_tree_row_next_get(row); 00499 rowlist = evas_list_free(rowlist); 00500 rowlist = NULL; 00501 emphasis_list_free(playlist); 00502 playlist = NULL; 00503 while (row) 00504 { 00505 rowlist = evas_list_append(rowlist, row); 00506 row = etk_tree_row_next_get(row); 00507 } 00508 } 00509 } 00510 00511 types = calloc(1, sizeof(char)); 00512 if(!types) return; 00513 num_types = 1; 00514 types[0] = strdup("Emphasis_Playlist"); 00515 00516 etk_drag_types_set(drag, types, num_types); 00517 etk_drag_data_set(drag, playlist, 1); 00518 00519 etk_container_add(ETK_CONTAINER(drag), drag_menu); 00520 00521 ((Emphasis_Player_Gui*)data)->media.drag = ETK_WIDGET(drag); 00522 #endif 00523 }
void cb_drag_artist | ( | Etk_Object * | object, | |
void * | data | |||
) |
Set a drag widget from a list of artist selected.
data | A common drag widget |
00377 { 00378 #if 0 00379 Etk_Widget *drag_menu, *menu_item; 00380 Etk_Drag *drag; 00381 Etk_Tree *tree; 00382 Evas_List *rowlist, *next; 00383 char *artist; 00384 const char **types; 00385 unsigned int num_types; 00386 Evas_List *playlist = NULL, *tmplist; 00387 00388 if(!data) return; 00389 00390 tree = ETK_TREE(object); 00391 drag = ETK_DRAG((ETK_WIDGET(tree))->drag); 00392 rowlist = etk_tree_selected_rows_get(tree); 00393 00394 drag_menu = etk_menu_new(); 00395 00396 while(rowlist) 00397 { 00398 artist = etk_tree_row_data_get(evas_list_data(rowlist)); 00399 tmplist = mpc_mlib_track_get(artist, NULL); 00400 00401 if(artist) 00402 { 00403 menu_item = etk_menu_item_new_with_label(artist); 00404 } 00405 else 00406 { 00407 menu_item = etk_menu_item_new_with_label(LABEL_MLIB_ALL); 00408 } 00409 00410 etk_menu_shell_append(ETK_MENU_SHELL(drag_menu), 00411 ETK_MENU_ITEM(menu_item)); 00412 00413 if(!playlist) 00414 { 00415 playlist = tmplist; 00416 } 00417 else 00418 { 00419 playlist = evas_list_concatenate(playlist, tmplist); 00420 } 00421 00422 next = evas_list_next(rowlist); 00423 rowlist = next; 00424 } 00425 evas_list_free(rowlist); 00426 00427 types = calloc(1, sizeof(char)); 00428 if(!types) return; 00429 num_types = 1; 00430 types[0] = strdup("Emphasis_Playlist"); 00431 00432 etk_drag_types_set(drag, types, num_types); 00433 etk_drag_data_set(drag, playlist, 1); 00434 00435 etk_container_add(ETK_CONTAINER(drag), drag_menu); 00436 ((Emphasis_Player_Gui*)data)->media.drag = ETK_WIDGET(drag); 00437 #endif 00438 }
void cb_drag_track | ( | Etk_Object * | object, | |
void * | data | |||
) |
Set a drag widget from a list of selected song's row.
data | A drag widget |
00532 { 00533 #if 0 00534 Etk_Widget *drag_menu, *menu_item; 00535 Etk_Drag *drag; 00536 Etk_Tree *tree; 00537 Evas_List *rowlist; 00538 char *title; 00539 const char **types; 00540 unsigned int num_types; 00541 Evas_List *playlist; 00542 00543 if(!data) return; 00544 00545 tree = ETK_TREE(object); 00546 drag = ETK_DRAG((ETK_WIDGET(object))->drag); 00547 00548 drag_menu = etk_menu_new(); 00549 00550 rowlist = etk_tree_selected_rows_get(tree); 00551 playlist = convert_rowlist_in_playlist_with_file(rowlist); 00552 while (rowlist) 00553 { 00554 etk_tree_row_fields_get(evas_list_data(rowlist), 00555 etk_tree_nth_col_get(tree, 0), &title, NULL); 00556 00557 menu_item = etk_menu_item_new_with_label(title); 00558 etk_menu_shell_append(ETK_MENU_SHELL(drag_menu), 00559 ETK_MENU_ITEM(menu_item)); 00560 00561 rowlist = evas_list_next(rowlist); 00562 } 00563 00564 types = calloc(1, sizeof(char)); 00565 if(!types) return; 00566 num_types = 1; 00567 types[0] = strdup("Emphasis_Playlist"); 00568 00569 etk_drag_types_set(drag, types, num_types); 00570 etk_drag_data_set(drag, playlist, 1); 00571 00572 etk_tree_row_fields_get(evas_list_data(rowlist), 00573 etk_tree_nth_col_get(tree, 0), &title, NULL); 00574 00575 etk_container_add(ETK_CONTAINER(drag), drag_menu); 00576 00577 ((Emphasis_Player_Gui*)data)->media.drag = ETK_WIDGET(drag); 00578 #endif 00579 }
void cb_drop_song | ( | Etk_Object * | object, | |
void * | event, | |||
void * | data | |||
) |
Get the playlist draged. Add it to the current playlist. And set the playlist tree up to date.
data | A drag widget with a playlist in his data |
00588 { 00589 #if 0 00590 UNUSED(event) 00591 Etk_Tree *tree; 00592 Etk_Drag *drag; 00593 Evas_List *list; 00594 00595 if(!data) return; 00596 00597 tree = ETK_TREE(object); 00598 00599 drag = ETK_DRAG(((Emphasis_Player_Gui*)data)->media.drag); 00600 if (drag == NULL || 00601 drag->types == NULL || 00602 drag->types[0] == NULL || 00603 strcmp("Emphasis_Playlist", drag->types[0])) 00604 { 00605 return; 00606 } 00607 00608 list = drag->data; 00609 mpc_playlist_add(list); 00610 00611 free(drag->types[0]); 00612 free(drag->types); 00613 00614 /* 00615 Etk_Widget *wid; 00616 Evas_List *evaslist; 00617 evaslist = etk_container_children_get(ETK_CONTAINER(drag)); 00618 while (evaslist) 00619 { 00620 etk_container_remove(evas_list_data(evaslist)); 00621 etk_object_destroy(ETK_OBJECT(evas_list_data(evaslist))); 00622 evaslist = evas_list_next(evaslist); 00623 } 00624 */ 00625 #endif 00626 }
void cb_playlist_shuffle | ( | Etk_Object * | object, | |
void * | data | |||
) |
Shuffle the playlist.
*
00904 { 00905 UNUSED_CLICKED_PARAM; 00906 00907 mpc_playlist_shuffle(); 00908 }