Mixxx

/home/maxime/Projets/Mixxx/1.10/mixxx/src/library/librarytablemodel.h

Go to the documentation of this file.
00001 #ifndef LIBRARYTABLEMODEL_H
00002 #define LIBRARYTABLEMODEL_H
00003 
00004 #include <QtSql>
00005 #include <QtCore>
00006 
00007 #include "library/basesqltablemodel.h"
00008 #include "library/trackmodel.h"
00009 #include "library/dao/trackdao.h"
00010 
00011 class TrackCollection;
00012 
00013 class LibraryTableModel : public BaseSqlTableModel {
00014     Q_OBJECT
00015   public:
00016     LibraryTableModel(QObject* parent, TrackCollection* pTrackCollection,
00017                       QString settingsNamespace="mixxx.db.model.library");
00018     virtual ~LibraryTableModel();
00019 
00020     virtual TrackPointer getTrack(const QModelIndex& index) const;
00021     virtual void search(const QString& searchText);
00022     virtual bool isColumnInternal(int column);
00023     virtual bool isColumnHiddenByDefault(int column);
00024     virtual void removeTrack(const QModelIndex& index);
00025     virtual void removeTracks(const QModelIndexList& indices);
00026     virtual bool addTrack(const QModelIndex& index, QString location);
00027     virtual void moveTrack(const QModelIndex& sourceIndex,
00028                            const QModelIndex& destIndex);
00029 
00030     QItemDelegate* delegateForColumn(const int i);
00031     TrackModel::CapabilitiesFlags getCapabilities() const;
00032     static const QString DEFAULT_LIBRARYFILTER;
00033 
00034   private:
00035     TrackDAO& m_trackDao;
00036 
00037   private slots:
00038     void slotSearch(const QString& searchText);
00039 
00040   signals:
00041     void doSearch(const QString& searchText);
00042 };
00043 
00044 #endif
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Defines