[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-commits
Subject:    branches/kdevelop/3.4/buildtools/custommakefiles
From:       Andreas Pakulat <apaku () gmx ! de>
Date:       2007-01-24 0:29:59
Message-ID: 1169598599.744125.5899.nullmailer () svn ! kde ! org
[Download RAW message or body]

SVN commit 626642 by apaku:

activeDirectory returns the directory of the currently opened file
Distinguish between absolute and relative urls by removing the projectdir from absolute ones


 M  +22 -7     customprojectpart.cpp  


--- branches/kdevelop/3.4/buildtools/custommakefiles/customprojectpart.cpp #626641:626642
@@ -302,11 +302,11 @@
     if (m_filelistDir.isEmpty())
        m_filelistDir=dirName;
 
-    if( QFileInfo(m_filelistDir + "/" + projectName.lower() + 
+    if( QFileInfo(m_filelistDir + "/" + projectName.lower() +
 			    ".kdevelop.filelist").exists() )
     {
         QDir( m_filelistDir ).rename(
-			projectName.lower()+".kdevelop.filelist", 
+			projectName.lower()+".kdevelop.filelist",
 			projectName+".kdevelop.filelist");
     }
     QFile f( m_filelistDir + "/" + projectName + ".kdevelop.filelist" );
@@ -498,8 +498,16 @@
 
 QString CustomProjectPart::activeDirectory() const
 {
-    QDomDocument &dom = *projectDom();
-    return DomUtil::readEntry(dom, "/kdevcustomproject/general/activedir");
+	QDomDocument &dom = *projectDom();
+	KParts::ReadOnlyPart* p = dynamic_cast<KParts::ReadOnlyPart*>(partController()->activePart());
+	if( p )
+    {
+		QString relpath = URLUtil::relativePath( projectDirectory(), p->url().directory() );
+		if( relpath.startsWith("/") )
+			relpath = relpath.right( relpath.length()-1 );
+		return relpath;
+	}
+	return DomUtil::readEntry(dom, "/kdevcustomproject/general/activedir", ".");
 }
 
 
@@ -535,10 +543,17 @@
 void CustomProjectPart::addFiles ( const QStringList& fileList )
 {
 	QStringList::ConstIterator it;
-
 	for ( it = fileList.begin(); it != fileList.end(); ++it )
-   {
-      m_sourceFiles.append (*it);
+	{
+		kdDebug(9025) << "Add file: " << *it << endl;
+		if( QDir::isRelativePath( *it ) )
+		{
+			m_sourceFiles.append (*it);
+		}
+		else
+		{
+			m_sourceFiles.append ( URLUtil::getRelativePath(projectDirectory(), *it ) );
+		}
 	}
 
 	saveProject();
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic