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

List:       kde-commits
Subject:    kdesdk/kbabel/catalogmanager
From:       Stanislav Višňovský <visnovsky () nenya ! ms ! mff ! cuni ! cz
Date:       2005-02-22 19:53:21
Message-ID: 20050222195321.F2551ED8A () office ! kde ! org
[Download RAW message or body]

CVS commit by nanulo: 

Try harder to find out if PO or POT directory is changed/deleted


  M +54 -8     catalogmanagerview.cpp   1.104


--- kdesdk/kbabel/catalogmanager/catalogmanagerview.cpp  #1.103:1.104
@@ -2066,12 +2066,35 @@ void CatalogManagerView::directoryChange
    _dirWatch->stopScan();
 
-   QString relDir;
+   QString relDir, relDirPo, relDirPot;
    if(dir.contains(QRegExp("^"+_settings.poBaseDir)))
    {
-      relDir=dir.right(dir.length()-_settings.poBaseDir.length());
+      relDirPo=dir.right(dir.length()-_settings.poBaseDir.length());
    }
-   else if(dir.contains(QRegExp("^"+_settings.potBaseDir)))
+   if(dir.contains(QRegExp("^"+_settings.potBaseDir)))
    {
-      relDir=dir.right(dir.length()-_settings.potBaseDir.length());
+      relDirPot=dir.right(dir.length()-_settings.potBaseDir.length());
+   }
+   
+   if( relDirPo.isEmpty() )
+   {
+    // use POT
+    relDir = relDirPot;
+   }
+   else if( relDirPot.isEmpty() )
+   {
+    // use PO
+    relDir = relDirPo;
+   }
+   else 
+   {
+    // both PO and POT usable, find out the correct one
+    if( relDirPo.left(1) == "/" )
+    {
+        relDir = relDirPo;
+    }
+    else
+    {
+        relDir = relDirPot;
+    }
    }
 
@@ -2140,12 +2163,35 @@ void CatalogManagerView::directoryDelete
    _dirWatch->stopScan();
 
-   QString relDir;
+   QString relDir, relDirPo, relDirPot;
    if(dir.contains(QRegExp("^"+_settings.poBaseDir)))
    {
-      relDir=dir.right(dir.length()-_settings.poBaseDir.length());
+      relDirPo=dir.right(dir.length()-_settings.poBaseDir.length());
    }
-   else if(dir.contains(QRegExp("^"+_settings.potBaseDir)))
+   if(dir.contains(QRegExp("^"+_settings.potBaseDir)))
    {
-      relDir=dir.right(dir.length()-_settings.potBaseDir.length());
+      relDirPot=dir.right(dir.length()-_settings.potBaseDir.length());
+   }
+   
+   if( relDirPo.isEmpty() )
+   {
+    // use POT
+    relDir = relDirPot;
+   }
+   else if( relDirPot.isEmpty() )
+   {
+    // use PO
+    relDir = relDirPo;
+   }
+   else 
+   {
+    // both PO and POT usable, find out the correct one
+    if( relDirPo.left(1) == "/" )
+    {
+        relDir = relDirPo;
+    }
+    else
+    {
+        relDir = relDirPot;
+    }
    }
 


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

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