21 #ifndef DIRECTORYTREEVIEW_H 22 #define DIRECTORYTREEVIEW_H 24 #include "DirectoryModel.h" 25 #include "Gui/Utils/SearchableWidget/SearchableView.h" 26 #include "Gui/Utils/Widgets/WidgetTemplate.h" 27 #include "Gui/Utils/Widgets/Dragable.h" 28 #include "Utils/Pimpl.h" 31 #include <QModelIndexList> 39 class LibraryContextMenu;
62 void sig_info_clicked();
63 void sig_edit_clicked();
64 void sig_lyrics_clicked();
65 void sig_delete_clicked();
66 void sig_play_clicked();
67 void sig_play_new_tab_clicked();
68 void sig_play_next_clicked();
69 void sig_append_clicked();
70 void sig_directory_loaded(
const QModelIndex& index);
71 void sig_current_index_changed(
const QModelIndex& index);
73 void sig_enter_pressed();
74 void sig_import_requested(LibraryId lib_id,
const QStringList& v_md,
const QString& target_dir);
76 void sig_copy_started();
77 void sig_copy_finished();
83 QModelIndex search(
const QString& search_term);
84 QString directory_name(
const QModelIndex& index);
85 QString directory_name_origin(
const QModelIndex& index);
87 QModelIndexList selected_indexes()
const;
88 QStringList selected_paths()
const;
90 QMimeData* dragable_mimedata()
const override;
91 LibraryId library_id(
const QModelIndex& index)
const;
101 void init_context_menu();
102 DropAction show_drop_menu(
const QPoint& pos);
105 void selection_changed(
const QItemSelection& selected,
const QItemSelection& deselected);
106 void drag_move_timer_finished();
107 void create_dir_clicked();
108 void rename_dir_clicked();
110 void copy_finished();
113 void keyPressEvent(QKeyEvent* event)
override;
114 void mousePressEvent(QMouseEvent* event)
override;
115 void mouseMoveEvent(QMouseEvent *event)
override;
117 void dragEnterEvent(QDragEnterEvent *event)
override;
118 void dragLeaveEvent(QDragLeaveEvent* event)
override;
119 void dragMoveEvent(QDragMoveEvent *event)
override;
120 void dropEvent(QDropEvent *event)
override;
123 int index_by_model_index(
const QModelIndex& idx)
const override;
126 void select_match(
const QString& str, SearchDirection direction)
override;
129 bool has_drag_label()
const override;
130 QString drag_label()
const override;
132 void skin_changed()
override;
133 void language_changed()
override;
140 #endif // DIRECTORYTREEVIEW_H The DirectoryTreeView class.
Definition: DirectoryTreeView.h:54
Mimedata class for drag and dropping metadata.
Definition: CustomMimeData.h:35
The IconProvider class.
Definition: DirectoryIconProvider.h:32
The SearchableFileTreeModel class.
Definition: DirectoryModel.h:34
Definition: typedefs.h:32
The Dragable class.
Definition: Dragable.h:38
An interface class needed when implementing a library plugin.
Definition: LocalLibraryWatcher.h:32