예제 #1
0
void
main_playlist_init (GtkWidget *widget) {
    // make listview widget and bind it to data
    DdbListview *listview = DDB_LISTVIEW(widget);
    pl_common_set_group_format (listview, "gtkui.playlist.group_by_tf");
    main_binding.ref = (void (*) (DdbListviewIter))deadbeef->pl_item_ref;
    main_binding.unref = (void (*) (DdbListviewIter))deadbeef->pl_item_unref;
    main_binding.is_selected = (int (*) (DdbListviewIter))deadbeef->pl_is_selected;
    main_binding.select = (void (*) (DdbListviewIter, int))deadbeef->pl_set_selected;
    main_binding.get_for_idx = (DdbListviewIter)deadbeef->pl_get_for_idx;
    main_binding.get_idx = (int (*) (DdbListviewIter))deadbeef->pl_get_idx_of;
    ddb_listview_set_binding (listview, &main_binding);

    deadbeef->conf_lock ();
    if (!deadbeef->conf_get_str_fast ("gtkui.columns.playlist", NULL)) {
        import_column_config_0_6 ("playlist.column.", "gtkui.columns.playlist");
    }
    deadbeef->conf_unlock ();
    // create default set of columns
    if (pl_common_load_column_config (listview, "gtkui.columns.playlist") < 0) {
        pl_common_add_column_helper (listview, "♫", 50, DB_COLUMN_PLAYING, "%playstatus%", 0);
        pl_common_add_column_helper (listview, _("Artist / Album"), 150, -1, COLUMN_FORMAT_ARTISTALBUM, 0);
        pl_common_add_column_helper (listview, _("Track No"), 50, -1, COLUMN_FORMAT_TRACKNUMBER, 1);
        pl_common_add_column_helper (listview, _("Title"), 150, -1, COLUMN_FORMAT_TITLE, 0);
        pl_common_add_column_helper (listview, _("Duration"), 50, -1, COLUMN_FORMAT_LENGTH, 0);
    }
    main_binding.columns_changed = main_columns_changed;
}
예제 #2
0
파일: search.c 프로젝트: proudzhu/deadbeef
void
search_playlist_init (GtkWidget *mainwin) {
    searchwin = create_searchwin ();
    gtk_window_set_transient_for (GTK_WINDOW (searchwin), GTK_WINDOW (mainwin));
    DdbListview *listview = DDB_LISTVIEW (lookup_widget (searchwin, "searchlist"));

    search_binding.ref = (void (*) (DdbListviewIter))deadbeef->pl_item_ref;
    search_binding.unref = (void (*) (DdbListviewIter))deadbeef->pl_item_unref;
    search_binding.is_selected = (int (*) (DdbListviewIter))deadbeef->pl_is_selected;
    search_binding.select = (void (*) (DdbListviewIter, int))deadbeef->pl_set_selected;
    ddb_listview_set_binding (listview, &search_binding);

    // create default set of columns
    if (pl_common_load_column_config (listview, "gtkui.columns.search") < 0) {
        pl_common_add_column_helper (listview, _("Artist / Album"), 150, -1, COLUMN_FORMAT_ARTISTALBUM, 0);
        pl_common_add_column_helper (listview, _("Track No"), 50, -1, COLUMN_FORMAT_TRACKNUMBER, 1);
        pl_common_add_column_helper (listview, _("Title"), 150, -1, COLUMN_FORMAT_TITLE, 0);
        pl_common_add_column_helper (listview, _("Duration"), 50, -1, COLUMN_FORMAT_LENGTH, 0);
    }
    search_binding.columns_changed = search_columns_changed;

    pl_common_set_group_format (listview, "gtkui.search.group_by_tf");
    window_title_bytecode = deadbeef->tf_compile (_("Search [(%list_total% results)]"));
}