ResourcesTreeModel: support for dragging ResourceItems

Added initial support for dragging ResourceItems. This is achieved by
using drag'n'drop support offered by Qt's model/view technology.

Signed-off-by: Tobias Doerffel <tobias.doerffel@gmail.com>
This commit is contained in:
Tobias Doerffel
2009-06-22 23:45:26 +02:00
parent 0c73c5bb17
commit dc90c899aa
3 changed files with 66 additions and 5 deletions

View File

@@ -200,6 +200,11 @@ public:
Type guessType( void ) const;
static const char * mimeKey()
{
return "ResourceItem";
}
static QString getBaseDirectory( BaseDirectory _bd,
const ResourceItem * _item = NULL );

View File

@@ -42,10 +42,7 @@ public:
virtual QVariant data( const QModelIndex & _idx,
int _role = Qt::DisplayRole ) const;
virtual Qt::ItemFlags flags( const QModelIndex & _index ) const
{
return Qt::ItemIsEnabled | Qt::ItemIsSelectable;
}
virtual Qt::ItemFlags flags( const QModelIndex & _index ) const;
int rowCount( const QModelIndex & _parent = QModelIndex() ) const;
@@ -58,7 +55,13 @@ public:
virtual QModelIndex index( int _row, int _col,
const QModelIndex & _parent = QModelIndex() ) const;
virtual QModelIndex parent ( const QModelIndex & index ) const;
virtual QModelIndex parent( const QModelIndex & index ) const;
// return list of possible MIME types for items in this model
virtual QStringList mimeTypes() const;
// used for drag'n'drop - return proper MIME data for indexes
virtual QMimeData * mimeData( const QModelIndexList & _indexes ) const;
void setFilter( const QString & _s );