aboutsummaryrefslogtreecommitdiff
path: root/include/completion/TabsModel.hpp
blob: 4b4518f1ca8ece54679b608e0fb46ce31d9e53da (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#pragma once

#include <QAbstractListModel>
#include <QWidget>
#include <QtCore>

struct Tab {
  QString url;
  QString title;
};

class TabsModel : public QAbstractListModel {
  Q_OBJECT

public:
  TabsModel(QList<Tab> tabs, QObject *parent = nullptr);
  int rowCount(const QModelIndex &parent = QModelIndex()) const override;
  int columnCount(const QModelIndex &parent = QModelIndex()) const override;
  QHash<int, QByteArray> roleNames() const override;
  QVariant data(const QModelIndex &index,
                int role = Qt::DisplayRole) const override;

private:
  QList<Tab> items;
};