1 /************************************************************** 2 * 3 * Licensed to the Apache Software Foundation (ASF) under one 4 * or more contributor license agreements. See the NOTICE file 5 * distributed with this work for additional information 6 * regarding copyright ownership. The ASF licenses this file 7 * to you under the Apache License, Version 2.0 (the 8 * "License"); you may not use this file except in compliance 9 * with the License. You may obtain a copy of the License at 10 * 11 * http://www.apache.org/licenses/LICENSE-2.0 12 * 13 * Unless required by applicable law or agreed to in writing, 14 * software distributed under the License is distributed on an 15 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 16 * KIND, either express or implied. See the License for the 17 * specific language governing permissions and limitations 18 * under the License. 19 * 20 *************************************************************/ 21 22 23 24 // MARKER(update_precomp.py): autogen include statement, do not remove 25 #include "precompiled_sc.hxx" 26 27 #include "scabstdlg.hxx" 28 29 #include <osl/module.hxx> 30 #include <rtl/ustrbuf.hxx> 31 32 using ::rtl::OUStringBuffer; 33 34 typedef ScAbstractDialogFactory* (__LOADONCALLAPI *ScFuncPtrCreateDialogFactory)(); 35 thisModule()36extern "C" { static void SAL_CALL thisModule() {} } 37 Create()38ScAbstractDialogFactory* ScAbstractDialogFactory::Create() 39 { 40 ScFuncPtrCreateDialogFactory fp = 0; 41 static ::osl::Module aDialogLibrary; 42 43 OUStringBuffer aStrBuf; 44 aStrBuf.appendAscii( SVLIBRARY("scui") ); 45 46 if ( aDialogLibrary.is() || aDialogLibrary.loadRelative( &thisModule, aStrBuf.makeStringAndClear() ) ) 47 fp = ( ScAbstractDialogFactory* (__LOADONCALLAPI*)() ) 48 aDialogLibrary.getFunctionSymbol( ::rtl::OUString::createFromAscii("CreateDialogFactory") ); 49 if ( fp ) 50 return fp(); 51 return 0; 52 } 53