mirror of
https://github.com/YACReader/yacreader
synced 2025-07-22 15:04:40 -04:00
added new history navigation for supporting different source containers
This commit is contained in:
@ -5,6 +5,35 @@
|
||||
|
||||
#include <QModelIndex>
|
||||
|
||||
class YACReaderHistoryController;
|
||||
|
||||
class YACReaderLibrarySourceContainer
|
||||
{
|
||||
public:
|
||||
enum SourceType {
|
||||
None,
|
||||
Folder,
|
||||
List
|
||||
};
|
||||
|
||||
explicit YACReaderLibrarySourceContainer();
|
||||
explicit YACReaderLibrarySourceContainer(const QModelIndex & sourceModelIndex, YACReaderLibrarySourceContainer::SourceType type);
|
||||
QModelIndex getSourceModelIndex() const;
|
||||
YACReaderLibrarySourceContainer::SourceType getType() const;
|
||||
|
||||
bool operator==(const YACReaderLibrarySourceContainer& other) const;
|
||||
bool operator!=(const YACReaderLibrarySourceContainer& other) const;
|
||||
|
||||
protected:
|
||||
QModelIndex sourceModelIndex;
|
||||
YACReaderLibrarySourceContainer::SourceType type;
|
||||
|
||||
friend class YACReaderHistoryController;
|
||||
|
||||
};
|
||||
|
||||
Q_DECLARE_METATYPE(YACReaderLibrarySourceContainer)
|
||||
|
||||
class YACReaderHistoryController : public QObject
|
||||
{
|
||||
Q_OBJECT
|
||||
@ -14,19 +43,19 @@ public:
|
||||
signals:
|
||||
void enabledForward(bool enabled);
|
||||
void enabledBackward(bool enabled);
|
||||
void modelIndexSelected(QModelIndex mi);
|
||||
void modelIndexSelected(YACReaderLibrarySourceContainer);
|
||||
|
||||
public slots:
|
||||
void clear();
|
||||
void backward();
|
||||
void forward();
|
||||
void updateHistory(const QModelIndex & mi);
|
||||
QModelIndex lastIndex();
|
||||
QModelIndex currentIndex();
|
||||
void updateHistory(const YACReaderLibrarySourceContainer & source);
|
||||
YACReaderLibrarySourceContainer lastSourceContainer();
|
||||
YACReaderLibrarySourceContainer currentSourceContainer();
|
||||
|
||||
protected:
|
||||
int currentFolderNavigation;
|
||||
QList<QModelIndex> history;
|
||||
QList<YACReaderLibrarySourceContainer> history;
|
||||
|
||||
};
|
||||
|
||||
|
Reference in New Issue
Block a user