yacreader/YACReaderLibrary/grid_comics_view.h
Luis Ángel San Martín 664dac3401 code refactoring for adding support to multiple "comics views"
two "comics views" added, classic (flow+table_view) and grid (based on qml/qtquick)
TODO: the views are only interchangeable in compilation time, some more work is needed for doing it in run time.
fixed reloadCovers
2014-07-06 14:50:28 +02:00

59 lines
1.4 KiB
C++

#ifndef GRID_COMICS_VIEW_H
#define GRID_COMICS_VIEW_H
#include "comics_view.h"
#include <QModelIndex>
class QAbstractListModel;
class QItemSelectionModel;
class QQuickView;
class QQuickView;
class GridComicsView : public ComicsView
{
Q_OBJECT
public:
explicit GridComicsView(QWidget *parent = 0);
virtual ~GridComicsView();
void setToolBar(QToolBar * toolBar);
void setModel(TableModel *model);
void setCurrentIndex(const QModelIndex &index);
QModelIndex currentIndex();
QItemSelectionModel * selectionModel();
void scrollTo(const QModelIndex & mi, QAbstractItemView::ScrollHint hint );
void toFullScreen();
void toNormal();
void updateConfig(QSettings * settings);
void setItemActions(const QList<QAction *> & actions);
void setViewActions(const QList<QAction *> & actions);
QSize sizeHint();
signals:
signals:
void comicRated(int,QModelIndex);
void doubleClicked(QModelIndex);
public slots:
//selection helper
void selectIndex(int index);
bool isSelectedIndex(int index);
void clear();
//double clicked item
void selectedItem(int index);
//ComicsView
void setShowMarks(bool show);
private:
QItemSelectionModel * _selectionModel;
QQuickView *view;
QWidget *container;
bool dummy;
void closeEvent ( QCloseEvent * event );
};
#endif // GRID_COMICS_VIEW_H