ResourcesItem: if base()==BaseURL, try to return URL of provider in

getBaseDirectory()
This commit is contained in:
Tobias Doerffel
2009-03-10 23:28:36 +01:00
parent 2385a921eb
commit d794789210
2 changed files with 12 additions and 3 deletions

View File

@@ -106,7 +106,7 @@ public:
QString fullPath( void ) const
{
return getBaseDirectory( m_baseDir ) + m_path;
return getBaseDirectory( m_baseDir, this ) + m_path;
}
QString fullName( void ) const
@@ -183,7 +183,8 @@ public:
Type guessType( void ) const;
static QString getBaseDirectory( BaseDirectory _bd );
static QString getBaseDirectory( BaseDirectory _bd,
const ResourcesItem * _item = NULL );
private:

View File

@@ -243,7 +243,8 @@ void ResourcesItem::init( void )
QString ResourcesItem::getBaseDirectory( BaseDirectory _bd )
QString ResourcesItem::getBaseDirectory( BaseDirectory _bd,
const ResourcesItem * _item )
{
QString d;
switch( _bd )
@@ -260,6 +261,13 @@ QString ResourcesItem::getBaseDirectory( BaseDirectory _bd )
d = configManager::inst()->dataDir();
break;
case BaseURL:
if( _item )
{
d = _item->provider()->url();
break;
}
case BaseHome:
default:
d = QDir::homePath();