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 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
|
/*
* objectbrowser.h, part of VCMI engine
*
* Authors: listed in file AUTHORS in main folder
*
* License: GNU General Public License v2.0 or later
* Full text of license available in license.txt file, in main folder
*
*/
#pragma once
#include <QSortFilterProxyModel>
#include "../lib/Terrain.h"
class ObjectBrowserProxyModel : public QSortFilterProxyModel
{
public:
explicit ObjectBrowserProxyModel(QObject *parent = nullptr);
Qt::ItemFlags flags(const QModelIndex &index) const override;
QMimeData * mimeData(const QModelIndexList & indexes) const override;
TerrainId terrain;
QString filter;
protected:
bool filterAcceptsRow(int source_row, const QModelIndex & source_parent) const override;
bool filterAcceptsRowText(int source_row, const QModelIndex &source_parent) const;
};
class ObjectBrowser : public QTreeView
{
public:
ObjectBrowser(QWidget * parent);
protected:
void startDrag(Qt::DropActions supportedActions) override;
};
|