return appropriate icon for Qt::DecorationRole

git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@1882 0778d3d1-df1d-0410-868b-ea421aaaa00d
This commit is contained in:
Tobias Doerffel
2008-12-08 01:35:05 +00:00
parent 0f26564149
commit 689ee4cb14
2 changed files with 67 additions and 4 deletions

View File

@@ -1,5 +1,20 @@
2008-12-08 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
* src/core/resources_tree_model.cpp:
return appropriate icon for Qt::DecorationRole
* data/themes/default/mimetypes/plugin.png:
* data/themes/default/mimetypes/unknown.png:
* data/themes/default/mimetypes/folder-datadir.png:
* data/themes/default/mimetypes/sample.png:
* data/themes/default/mimetypes/image.png:
* data/themes/default/mimetypes/midi.png:
* data/themes/default/mimetypes/preset.png:
* data/themes/default/mimetypes/folder-lsp.png:
* data/themes/default/mimetypes/folder-workingdir.png:
* data/themes/default/mimetypes/folder.png:
added new icons for various MIME types
* include/resources_db.h:
* src/core/resources_db.cpp:
added ResourcesDB::Item::TypeMidiFile

View File

@@ -24,6 +24,7 @@
#include "resources_tree_model.h"
#include "embed.h"
ResourcesTreeModel::ResourcesTreeModel( ResourcesDB * _db, QObject * _parent ) :
@@ -32,8 +33,6 @@ ResourcesTreeModel::ResourcesTreeModel( ResourcesDB * _db, QObject * _parent ) :
{
connect( m_db, SIGNAL( itemsChanged() ),
this, SIGNAL( itemsChanged() ) );
/* connect( m_db, SIGNAL( itemsChanged() ),
this, SIGNAL( layoutChanged() ) );*/
}
@@ -41,12 +40,61 @@ ResourcesTreeModel::ResourcesTreeModel( ResourcesDB * _db, QObject * _parent ) :
QVariant ResourcesTreeModel::data( const QModelIndex & _idx, int _role ) const
{
if( _idx.isValid() && _role == Qt::DisplayRole )
if( _idx.isValid() )
{
ResourcesDB::TreeItem * item =
static_cast<ResourcesDB::TreeItem *>(
_idx.internalPointer() );
return item->item()->name();
if( _role == Qt::DisplayRole )
{
if( item->parent() == m_db->topLevelNode() )
{
switch( item->item()->baseDir() )
{
case ResourcesDB::Item::BaseWorkingDir:
return tr( "My LMMS files" );
case ResourcesDB::Item::BaseDataDir:
return tr( "Shipped LMMS files" );
default:
break;
}
}
return item->item()->name();
}
else if( _role == Qt::DecorationRole )
{
if( item->parent() == m_db->topLevelNode() )
{
switch( item->item()->baseDir() )
{
case ResourcesDB::Item::BaseWorkingDir:
return embed::getIconPixmap( "mimetypes/folder-workingdir", 24, 24 );
case ResourcesDB::Item::BaseDataDir:
return embed::getIconPixmap( "mimetypes/folder-datadir", 24, 24 );
default:
break;
}
}
switch( item->item()->type() )
{
case ResourcesDB::Item::TypeDirectory:
return embed::getIconPixmap( "mimetypes/folder", 24, 24 );
case ResourcesDB::Item::TypeSample:
return embed::getIconPixmap( "mimetypes/sample", 24, 24 );
case ResourcesDB::Item::TypePreset:
return embed::getIconPixmap( "mimetypes/preset", 24, 24 );
case ResourcesDB::Item::TypeProject:
return embed::getIconPixmap( "project_file", 24, 24 );
case ResourcesDB::Item::TypeMidiFile:
return embed::getIconPixmap( "mimetypes/midi", 24, 24 );
case ResourcesDB::Item::TypeImage:
return embed::getIconPixmap( "mimetypes/image", 24, 24 );
case ResourcesDB::Item::TypePlugin:
return embed::getIconPixmap( "mimetypes/plugin", 24, 24 );
default:
return embed::getIconPixmap( "mimetypes/unknown", 24, 24 );
}
}
}
return QVariant();
}