You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@openoffice.apache.org by ar...@apache.org on 2013/03/06 14:15:24 UTC

svn commit: r1453321 - /openoffice/trunk/main/sdext/source/minimizer/fileopendialog.cxx

Author: arielch
Date: Wed Mar  6 13:15:24 2013
New Revision: 1453321

URL: http://svn.apache.org/r1453321
Log:
i121857 - Presentation Minimizer: fix filter naming

Modified:
    openoffice/trunk/main/sdext/source/minimizer/fileopendialog.cxx

Modified: openoffice/trunk/main/sdext/source/minimizer/fileopendialog.cxx
URL: http://svn.apache.org/viewvc/openoffice/trunk/main/sdext/source/minimizer/fileopendialog.cxx?rev=1453321&r1=1453320&r2=1453321&view=diff
==============================================================================
--- openoffice/trunk/main/sdext/source/minimizer/fileopendialog.cxx (original)
+++ openoffice/trunk/main/sdext/source/minimizer/fileopendialog.cxx Wed Mar  6 13:15:24 2013
@@ -55,6 +55,7 @@
 #include <com/sun/star/view/XControlAccess.hpp>
 #include <com/sun/star/ucb/InteractiveAugmentedIOException.hpp>
 
+#include <rtl/ustrbuf.hxx>
 
 using namespace ::rtl;
 using namespace ::com::sun::star::uno;
@@ -138,6 +139,13 @@ FileOpenDialog::FileOpenDialog( const Re
 
 //	mxFilePicker->setDefaultName( );
 
+    const char filter[] = "*.";
+    // the filter title must be formed in the same it is currently done
+    // in the internal implementation: "UIName (.<extension>)"
+    rtl::OUStringBuffer aUIName;
+    // the filter must be in the form "*.<extension>"
+    rtl::OUStringBuffer aFilter;
+    rtl::OUString aExtension;
 	Reference< XFilterManager > xFilterManager( mxFilePicker, UNO_QUERY_THROW );
 	std::vector< FilterEntry >::iterator aIter( aFilterEntryList.begin() );
 	while( aIter != aFilterEntryList.end() )
@@ -158,7 +166,18 @@ FileOpenDialog::FileOpenDialog( const Re
 				}
 				if ( aExtensions.getLength() )
 				{
-					xFilterManager->appendFilter( aIter->maUIName, aExtensions[ 0 ] );
+                    aExtension = aExtensions[0];
+                    // form the title: "<UIName> (.<extension)"
+                    aUIName.append( aIter->maUIName );
+                    aUIName.appendAscii( RTL_CONSTASCII_STRINGPARAM( " (." ));
+                    aUIName.append( aExtension );
+                    aUIName.append( sal_Unicode( ')' ) );
+                    // form the filter: "(*.<extension>)"
+                    aFilter.appendAscii( RTL_CONSTASCII_STRINGPARAM( filter ) );
+                    aFilter.append( aExtensions[0] );
+
+                    xFilterManager->appendFilter( aUIName.makeStringAndClear(),
+                                                  aFilter.makeStringAndClear() );
 					if ( aIter->maFlags & 0x100 )
 						xFilterManager->setCurrentFilter( aIter->maUIName );
 				}