User: obo     
Date: 05/12/21 05:36:44

Modified:
 /dba/dbaccess/source/ui/dlg/
  dbwizsetup.cxx

Log:
 INTEGRATION: CWS dba202a (1.13.32); FILE MERGED
 2005/11/28 12:15:51 fs 1.13.32.1: #i58413# properly declare (at the 
FileDialogHelper) which part of the URL is a path, and which one a file name

File Changes:

Directory: /dba/dbaccess/source/ui/dlg/
=======================================

File [changed]: dbwizsetup.cxx
Url: 
http://dba.openoffice.org/source/browse/dba/dbaccess/source/ui/dlg/dbwizsetup.cxx?r1=1.14&r2=1.15
Delta lines:  +22 -18
---------------------
--- dbwizsetup.cxx      19 Dec 2005 17:17:18 -0000      1.14
+++ dbwizsetup.cxx      21 Dec 2005 13:36:41 -0000      1.15
@@ -1082,15 +1082,16 @@
                const SfxFilter* pFilter = getStandardDatabaseFilter();
                if ( pFilter )
                {
-            INetURLObject aWorkURL(m_sWorkPath);
-            String sBase = String(ModuleRes(STR_DATABASEDEFAULTNAME));
-                       aWorkURL.Append(sBase);
-//            aWorkURL.setBase(sBase);
+            INetURLObject aWorkURL( m_sWorkPath );
+            aFileDlg.SetDisplayFolder( aWorkURL.GetMainURL( 
INetURLObject::NO_DECODE ));
+
+            ::rtl::OUString sDefaultName = String( ModuleRes( 
STR_DATABASEDEFAULTNAME ) );
             ::rtl::OUString sExtension = pFilter->GetDefaultExtension();
-            sExtension = sExtension.replaceAt( 0, 2, ::rtl::OUString());
-            aWorkURL.setExtension(sExtension);
-                       createUniqueFileName(&aWorkURL);
-            aFileDlg.SetDisplayDirectory( aWorkURL.GetMainURL( 
INetURLObject::NO_DECODE ));
+            sDefaultName += sExtension.replaceAt( 0, 1, ::rtl::OUString() );
+            aWorkURL.Append( sDefaultName );
+                       sDefaultName = createUniqueFileName( aWorkURL );
+            aFileDlg.SetFileName( sDefaultName );
+
             
aFileDlg.AddFilter(pFilter->GetUIName(),pFilter->GetDefaultExtension());
                        aFileDlg.SetCurrentFilter(pFilter->GetUIName());
                }
@@ -1129,23 +1130,26 @@
     }
 
     //-------------------------------------------------------------------------
-    void ODbTypeWizDialogSetup::createUniqueFileName(INetURLObject* pURL)
+    String ODbTypeWizDialogSetup::createUniqueFileName(const INetURLObject& 
_rURL)
     {
         Reference< XSimpleFileAccess > 
xSimpleFileAccess(getORB()->createInstance(::rtl::OUString::createFromAscii( 
"com.sun.star.ucb.SimpleFileAccess" )), UNO_QUERY);
-        :: rtl::OUString sFilename = pURL->getName();
-        ::rtl::OUString BaseName = pURL->getBase();
-        ::rtl::OUString sExtension = pURL->getExtension();
+        :: rtl::OUString sFilename = _rURL.getName();
+        ::rtl::OUString BaseName = _rURL.getBase();
+        ::rtl::OUString sExtension = _rURL.getExtension();
+
         sal_Bool bElementExists = sal_True;
-               sal_Int32 i = 1;
-        while (bElementExists == sal_True)
+
+        INetURLObject aExistenceCheck( _rURL );
+        for ( sal_Int32 i = 1; bElementExists; ++i )
         {
-            bElementExists = xSimpleFileAccess->exists(pURL->GetMainURL( 
INetURLObject::NO_DECODE ));
-                       if (bElementExists == sal_True)
+            bElementExists = xSimpleFileAccess->exists( 
aExistenceCheck.GetMainURL( INetURLObject::NO_DECODE ) );
+                       if ( bElementExists )
             {
-                       i++;
-                pURL->setBase(BaseName.concat(::rtl::OUString::valueOf(i)));
+                       ++i;
+                aExistenceCheck.setBase( BaseName.concat( 
::rtl::OUString::valueOf( i ) ) );
                        }
         }
+        return aExistenceCheck.getName( INetURLObject::LAST_SEGMENT, true, 
INetURLObject::DECODE_WITH_CHARSET );
     }
     // 
-----------------------------------------------------------------------------
     IWizardPage* ODbTypeWizDialogSetup::getWizardPage(TabPage* _pCurrentPage) 
const




---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to