## rb-entry-view

rb-entry-view

## Synopsis

    enum                RBEntryViewColumn;
    typedef             RBEntryViewPrivate;
    RBEntryView*        rb_entry_view_new                   (RhythmDB *db,
                                                             GObject *shell_player,
                                                             const char *sort_key,
                                                             gboolean drag_source,
                                                             gboolean drag_dest);
    void                rb_entry_view_append_column         (RBEntryView *view,
                                                             RBEntryViewColumn coltype,
                                                             gboolean always_visible);
    void                rb_entry_view_append_column_custom  (RBEntryView *view,
                                                             GtkTreeViewColumn *column,
                                                             const char *title,
                                                             const char *key,
                                                             GCompareDataFunc sort_func,
                                                             gpointer data,
                                                             GDestroyNotify data_destroy);
    void                rb_entry_view_set_columns_clickable (RBEntryView *view,
                                                             gboolean clickable);
    void                rb_entry_view_set_model             (RBEntryView *view,
                                                             RhythmDBQueryModel *model);
    gboolean            rb_entry_view_have_selection        (RBEntryView *view);
    GList*              rb_entry_view_get_selected_entries  (RBEntryView *view);
    void                rb_entry_view_select_all            (RBEntryView *view);
    void                rb_entry_view_select_none           (RBEntryView *view);
    void                rb_entry_view_select_entry          (RBEntryView *view,
                                                             RhythmDBEntry *entry);
    gboolean            rb_entry_view_get_entry_contained   (RBEntryView *view,
                                                             RhythmDBEntry *entry);
    gboolean            rb_entry_view_get_entry_visible     (RBEntryView *view,
                                                             RhythmDBEntry *entry);
    void                rb_entry_view_scroll_to_entry       (RBEntryView *view,
                                                             RhythmDBEntry *entry);
    void                rb_entry_view_enable_drag_source    (RBEntryView *view,
                                                             const GtkTargetEntry *targets,
                                                             int n_targets);
    void                rb_entry_view_get_sorting_order     (RBEntryView *view,
                                                             char **column_name,
                                                             gint *sort_order);
    void                rb_entry_view_set_sorting_order     (RBEntryView *view,
                                                             const char *column_name,
                                                             gint sort_order);
    const char*         rb_entry_view_get_sorting_type      (RBEntryView *view);
    void                rb_entry_view_set_sorting_type      (RBEntryView *view,
                                                             const char *sorttype);

## Description

## Details

### enum RBEntryViewColumn

    typedef enum {
    	RB_ENTRY_VIEW_COL_TRACK_NUMBER,
    	RB_ENTRY_VIEW_COL_TITLE,
    	RB_ENTRY_VIEW_COL_ARTIST,
    	RB_ENTRY_VIEW_COL_ALBUM,
    	RB_ENTRY_VIEW_COL_GENRE,
    	RB_ENTRY_VIEW_COL_DURATION,
    	RB_ENTRY_VIEW_COL_QUALITY,
    	RB_ENTRY_VIEW_COL_RATING,
    	RB_ENTRY_VIEW_COL_PLAY_COUNT,
    	RB_ENTRY_VIEW_COL_YEAR,
    	RB_ENTRY_VIEW_COL_LAST_PLAYED,
    	RB_ENTRY_VIEW_COL_FIRST_SEEN,
    	RB_ENTRY_VIEW_COL_LAST_SEEN,
    	RB_ENTRY_VIEW_COL_LOCATION,
    	RB_ENTRY_VIEW_COL_ERROR
    } RBEntryViewColumn;

### RBEntryViewPrivate

    typedef struct RBEntryViewPrivate RBEntryViewPrivate;

### rb_entry_view_new ()

    RBEntryView*        rb_entry_view_new                   (RhythmDB *db,
                                                             GObject *shell_player,
                                                             const char *sort_key,
                                                             gboolean drag_source,
                                                             gboolean drag_dest);

`db` : |
`shell_player` : |
`sort_key` : |
`drag_source` : |
`drag_dest` : |
Returns : |

### rb_entry_view_append_column ()

    void                rb_entry_view_append_column         (RBEntryView *view,
                                                             RBEntryViewColumn coltype,
                                                             gboolean always_visible);

`view` : |
`coltype` : |
`always_visible` : |

### rb_entry_view_append_column_custom ()

    void                rb_entry_view_append_column_custom  (RBEntryView *view,
                                                             GtkTreeViewColumn *column,
                                                             const char *title,
                                                             const char *key,
                                                             GCompareDataFunc sort_func,
                                                             gpointer data,
                                                             GDestroyNotify data_destroy);

`view` : |
`column` : |
`title` : |
`key` : |
`sort_func` : |
`data` : |
`data_destroy` : |

### rb_entry_view_set_columns_clickable ()

    void                rb_entry_view_set_columns_clickable (RBEntryView *view,
                                                             gboolean clickable);

`view` : |
`clickable` : |

### rb_entry_view_set_model ()

    void                rb_entry_view_set_model             (RBEntryView *view,
                                                             RhythmDBQueryModel *model);

`view` : |
`model` : |

### rb_entry_view_have_selection ()

    gboolean            rb_entry_view_have_selection        (RBEntryView *view);

`view` : |
Returns : |

### rb_entry_view_get_selected_entries ()

    GList*              rb_entry_view_get_selected_entries  (RBEntryView *view);

`view` : |
Returns : |

### rb_entry_view_select_all ()

    void                rb_entry_view_select_all            (RBEntryView *view);

`view` : |

### rb_entry_view_select_none ()

    void                rb_entry_view_select_none           (RBEntryView *view);

`view` : |

### rb_entry_view_select_entry ()

    void                rb_entry_view_select_entry          (RBEntryView *view,
                                                             RhythmDBEntry *entry);

`view` : |
`entry` : |

### rb_entry_view_get_entry_contained ()

    gboolean            rb_entry_view_get_entry_contained   (RBEntryView *view,
                                                             RhythmDBEntry *entry);

`view` : |
`entry` : |
Returns : |

### rb_entry_view_get_entry_visible ()

    gboolean            rb_entry_view_get_entry_visible     (RBEntryView *view,
                                                             RhythmDBEntry *entry);

`view` : |
`entry` : |
Returns : |

### rb_entry_view_scroll_to_entry ()

    void                rb_entry_view_scroll_to_entry       (RBEntryView *view,
                                                             RhythmDBEntry *entry);

`view` : |
`entry` : |

### rb_entry_view_enable_drag_source ()

    void                rb_entry_view_enable_drag_source    (RBEntryView *view,
                                                             const GtkTargetEntry *targets,
                                                             int n_targets);

`view` : |
`targets` : |
`n_targets` : |

### rb_entry_view_get_sorting_order ()

    void                rb_entry_view_get_sorting_order     (RBEntryView *view,
                                                             char **column_name,
                                                             gint *sort_order);

`view` : |
`column_name` : |
`sort_order` : |

### rb_entry_view_set_sorting_order ()

    void                rb_entry_view_set_sorting_order     (RBEntryView *view,
                                                             const char *column_name,
                                                             gint sort_order);

`view` : |
`column_name` : |
`sort_order` : |

### rb_entry_view_get_sorting_type ()

    const char*         rb_entry_view_get_sorting_type      (RBEntryView *view);

`view` : |
Returns : |

### rb_entry_view_set_sorting_type ()

    void                rb_entry_view_set_sorting_type      (RBEntryView *view,
                                                             const char *sorttype);

`view` : |
`sorttype` : |