diff options
author | Ivo Hinkelmann <ihi@openoffice.org> | 2009-06-17 11:36:51 +0000 |
---|---|---|
committer | Ivo Hinkelmann <ihi@openoffice.org> | 2009-06-17 11:36:51 +0000 |
commit | 6ed1958b83babfda36cef3512198dfeba98d5894 (patch) | |
tree | efae0b1cbeac4b284d6a280f2ddedf3667916d5b /testautomation/global/tools/includes/optional | |
parent | 2574c2381e36c7feac8ed6cfa83bc5bceae509ab (diff) |
CWS-TOOLING: integrate CWS automation006
2009-05-26 13:25:30 +0200 jsk r272296 : #i102088# - final cosmetic touch
2009-05-25 14:40:06 +0200 jsk r272244 : #i102202# - quite a chunk.
2009-05-25 05:29:48 +0200 jsk r272215 : #i102202# - Cleanup, code refactored, indention and headers fixed
2009-05-25 04:55:58 +0200 jsk r272214 : #i102088# - update .bas-files to load call GetOLEDefaultNames from external file
2009-05-20 12:55:18 +0200 jsk r272116 : #i102088# Replace old OLE stuff, get it from API, localized
Diffstat (limited to 'testautomation/global/tools/includes/optional')
-rwxr-xr-x | testautomation/global/tools/includes/optional/t_ole.inc | 146 |
1 files changed, 146 insertions, 0 deletions
diff --git a/testautomation/global/tools/includes/optional/t_ole.inc b/testautomation/global/tools/includes/optional/t_ole.inc new file mode 100755 index 000000000000..457704f20b13 --- /dev/null +++ b/testautomation/global/tools/includes/optional/t_ole.inc @@ -0,0 +1,146 @@ +'encoding UTF-8 Do not remove or change this line! +'******************************************************************************* +'* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. +'* +'* Copyright 2008 by Sun Microsystems, Inc. +'* +'* OpenOffice.org - a multi-platform office productivity suite +'* +'* $RCSfile: basic_delete_modules.inc,v $ +'* +'* $Revision: 1.1 $ +'* +'* last change: $Author: jsi $ $Date: 2008-06-16 12:18:13 $ +'* +'* This file is part of OpenOffice.org. +'* +'* OpenOffice.org is free software: you can redistribute it and/or modify +'* it under the terms of the GNU Lesser General Public License version 3 +'* only, as published by the Free Software Foundation. +'* +'* OpenOffice.org is distributed in the hope that it will be useful, +'* but WITHOUT ANY WARRANTY; without even the implied warranty of +'* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +'* GNU Lesser General Public License version 3 for more details +'* (a copy is included in the LICENSE file that accompanied this code). +'* +'* You should have received a copy of the GNU Lesser General Public License +'* version 3 along with OpenOffice.org. If not, see +'* <http://www.openoffice.org/license.html> +'* for a copy of the LGPLv3 License. +'* +'/****************************************************************************** +'* +'* owner : joerg.skottke@sun.com +'* +'* short description : Tools for OLE objects +'* +'\****************************************************************************** + +private const VERBOSE = FALSE + +'******************************************************************************* + +function hGetOfficeVersion() as string + + dim cPath as string + dim aItemList( 20 ) as string + + const CFN = "global::tools::includes::optional::t_ole.inc::hGetOfficeVersion(): " + + ' Path to info file + cPath = convertpath( gTesttoolPath & "global/input/officeinfo.txt" ) + if ( VERBOSE ) then printlog( CFN & "Reading: " & cPath ) + + ' Read the file + hGetDatafileSection( cPath, aItemList(), "", "", "" ) + + ' Set global variable + gOfficeVersion = hGetValueForKeyAsString( aItemList(), gProductName ) + + ' Set returnvalue + hGetOfficeVersion() = gOfficeVersion + +end function + +'******************************************************************************* + +function hGetOleObjectName( ObjectType as string ) as string
+
+ dim oUnoOfficeConnection as object
+ dim oUnoConfigurationAccess as object
+ dim aPropertyValue(1) as new com.sun.star.beans.PropertyValue
+ dim xViewRoot as object + dim cConfigString as string + dim cString as string
+
+ const CFN = "global::tools::includes::optional::t_ole.inc::hGetOleObjectName(): " + + ' Test function parameters. They are <> gApplication as the API is case sensitive + select case ObjectType + case "Writer" + case "Calc" + case "Impress" + case "Draw" + case "Math" + case "Chart" + case else + warnlog( CFN & "Invalid object type passed to function: " & ObjectType ) + warnlog( CFN & "This function is case sensitive." ) + warnlog( CFN & "Supported are: Writer, Calc, Impress, Draw, Math, Chart" ) + hGetOleObjectName() = "" + exit function + end select + + if ( VERBOSE ) then printlog( CFN & "Retrieving OLE name for: " & ObjectType ) + + ' ...Embedding is physical path, ObjectNames the top node
+ aPropertyValue( 0 ).Name = "nodepath"
+ aPropertyValue( 0 ).Value = "/org.openoffice.Office.Embedding/ObjectNames/" & ObjectType + + ' Connect to remote UNO
+ oUnoOfficeConnection = hGetUnoService( TRUE )
+
+ if ( isNull( oUnoOfficeConnection )) then
+ warnlog( CFN & "Failed to establish UNO connection, hGetUnoService failed" )
+ hGetOleObjectName() = ""
+ else + ' Get a configuration provider
+ oUnoConfigurationAccess = oUnoOfficeConnection.createInstance( "com.sun.star.configuration.ConfigurationProvider" ) + + ' Get access + xViewRoot = oUnoConfigurationAccess.createInstanceWithArguments( "com.sun.star.configuration.ConfigurationAccess", aPropertyValue() )
+ cConfigString = xViewRoot.getByName( "ObjectUIName" ) + + ' The string contains placeholders %PRODUCTNAME and %PRODUCTVERSION which have to be replaced + if ( gOfficeVersion = "" ) then + warnlog( CFN & "gOOoBaseVersion is empty, run hGetOfficeVersion() first" ) + cString = right( cConfigString, len( cConfigString ) - 29 ) + else + cString = gProductName & " " & gOfficeVersion & " " & right( cConfigString, len( cConfigString ) - 29 ) + endif +
+ endif + + hGetOleObjectName() = cString
+
+end function + +'******************************************************************************* + +function GetOleDefaultNames() + + const CFN = "global::tools::includes::optional::t_ole.inc::GetOleDefaultNames(): " + if ( VERBOSE ) then printlog( CFN & "Retrieving OLE names" ) + + hGetOfficeVersion() + gOLEWriter = hGetOleObjectName( "Writer" ) + gOLECalc = hGetOleObjectName( "Calc" ) + gOLEChart = hGetOleObjectName( "Chart" ) + gOLEImpress = hGetOleObjectName( "Impress" ) + gOLEDraw = hGetOleObjectName( "Draw" ) + gOLEMath = hGetOleObjectName( "Math" )
+ +end function + +'******************************************************************************* |