Sayonara Player
Signals | Public Member Functions | Protected Types | Protected Member Functions | Protected Slots | List of all members
Library::TrackView Class Reference

Signals

void sig_sortorder_changed (SortOrder)
 
void sig_all_selected ()
 
void sig_delete_clicked ()
 
void sig_play_clicked ()
 
void sig_play_next_clicked ()
 
void sig_play_new_tab_clicked ()
 
void sig_append_clicked ()
 
void sig_refresh_clicked ()
 
void sig_reload_clicked ()
 
void sig_import_files (const QStringList &files)
 
void sig_sel_changed (const IndexSet &indexes)
 
void sig_merge (const Util::Set< Id > &ids, int target_id)
 

Public Member Functions

 TrackView (QWidget *parent=nullptr)
 
virtual void init (AbstractLibrary *library)
 
void set_item_model (ItemModel *model)
 
QMimeData * dragable_mimedata () const override
 
QPixmap drag_pixmap () const override
 
void set_metadata_interpretation (MD::Interpretation type)
 
void set_selection_type (SelectionViewInterface::SelectionType type) override
 
void show_clear_button (bool visible)
 
void use_clear_button (bool yesno)
 
bool is_valid_drag_position (const QPoint &p) const override
 
void resize_rows_to_contents ()
 
void resize_rows_to_contents (int first_row, int count)
 
virtual void showEvent (QShowEvent *e) override
 
void info_dialog_closed ()
 this function should not be called from outside. This function is triggered when the info dialog was closed.
 

Protected Types

enum  EditTab {
  TabText,
  TabCover,
  TabTagsFromPath
}
 
enum  ReleaseReason : char {
  Dropped,
  Destroyed
}
 

Protected Member Functions

void resizeEvent (QResizeEvent *e) override
 
void language_changed () override
 
int index_by_model_index (const QModelIndex &idx) const override
 
ModelIndexRange model_indexrange_by_index (int idx) const override
 
virtual void mousePressEvent (QMouseEvent *event) override
 
virtual void mouseMoveEvent (QMouseEvent *event) override
 
virtual void contextMenuEvent (QContextMenuEvent *event) override
 
virtual void dragEnterEvent (QDragEnterEvent *event) override
 
virtual void dragMoveEvent (QDragMoveEvent *event) override
 
virtual void dropEvent (QDropEvent *event) override
 
virtual void changeEvent (QEvent *event) override
 
virtual void keyPressEvent (QKeyEvent *event) override
 
virtual void selected_items_changed (const QItemSelection &selected, const QItemSelection &deselected)
 
virtual void init_context_menu ()
 
virtual void init_context_menu_custom_type (LibraryContextMenu *menu)
 
LibraryContextMenucontext_menu () const
 
ItemModelitem_model () const
 
virtual MD::Interpretation metadata_interpretation () const override final
 get the interpretation for the metadata. Maybe a list of metadata should be intrepeted as albums while others should be considered as tracks More...
 
MetaDataList info_dialog_data () const override
 get the metadata that should be used for the info dialog So for lists, the selected tracks are used here More...
 
virtual void import_requested (const QStringList &files)
 
MergeData calc_mergedata () const
 
virtual void run_merge_operation (const MergeData &md)
 
int viewport_height () const override
 
virtual void skin_changed ()
 
virtual void show_info ()
 Show the Info dialogs' info tab.
 
virtual void show_lyrics ()
 Show the Info dialogs' lyrics tab.
 
virtual void show_edit ()
 Show the tag editor.
 
virtual void drag_pressed (const QPoint &p) final
 
virtual QDrag * drag_moving (const QPoint &p) final
 
virtual void drag_released (ReleaseReason reason)
 
virtual bool has_drag_label () const
 
virtual QString drag_label () const
 

Protected Slots

void header_actions_triggered ()
 
void sort_by_column (int column_idx)
 
void sizes_changed ()
 
virtual void show_context_menu (const QPoint &)
 
virtual void merge_action_triggered ()
 
virtual void delete_clicked ()
 
virtual void reload_clicked ()
 
virtual void cover_view_toggled ()
 
virtual void album_artists_toggled ()
 
virtual void filter_extensions_triggered (const QString &extension, bool b)
 
virtual void fill ()
 

Member Function Documentation

◆ dragable_mimedata()

QMimeData* Library::ItemView::dragable_mimedata ( ) const
overridevirtualinherited

Dragable

Implements Dragable.

◆ info_dialog_data()

MetaDataList Library::ItemView::info_dialog_data ( ) const
overrideprotectedvirtualinherited

get the metadata that should be used for the info dialog So for lists, the selected tracks are used here

Returns
MetaDataList

Implements InfoDialogContainer.

◆ metadata_interpretation()

virtual MD::Interpretation Library::ItemView::metadata_interpretation ( ) const
finaloverrideprotectedvirtualinherited

get the interpretation for the metadata. Maybe a list of metadata should be intrepeted as albums while others should be considered as tracks

Returns
interpretation of metadata

Implements InfoDialogContainer.

Inheritance diagram for Library::TrackView:
Library::TableView Library::ItemView Gui::WidgetTemplate< T > InfoDialogContainer Dragable ShortcutWidget Gui::WidgetTemplateParent SC::TrackView