'encoding UTF-8 Do not remove or change this line! '************************************************************************** ' DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. ' ' Copyright 2000, 2010 Oracle and/or its affiliates. ' ' OpenOffice.org - a multi-platform office productivity suite ' ' 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 ' ' for a copy of the LGPLv3 License. ' '/************************************************************************ ' ** ' ** owner : joerg.skottke@oracle.com ' ** ' ** short description : Helper functions for Macro tests ' ** '\****************************************************************************** function hInsertMacroFromFile( cMacroId as string, optional cSource as string ) as integer '///

Paste a macro (taken from a file) to the basic IDE

'///uses: framework/tools/input/macros.txt
'///Starting point: Basic IDE
'///Note: Overwrites any existing macros in the current module
'///Input: '///
    '///+
  1. Name (ID) of the macro to be inserted (string)
  2. '/// '///
'///Returns: '///
    '///+
  1. Number of lines inserted (integer)
  2. '/// '///
'///Description: '/// end function '******************************************************************************* function hMacroOrganizerRunMacro( cMacroName as string ) as integer ' Run a macro by name. Returnvalues as follows: ' = 0: any error ' > 0: position of macro in the list, success. const CFN = "hMacroOrganizerRunMacro::" const RETVAL_FAILURE = 0 dim iMacroPosition as integer ToolsMacro_uno kontext "Makro" if ( Makro.exists( 2 ) ) then hExpandAllNodes( MakroAus ) iMacroPosition = hSelectNodeByName( MakroAus, cMacroName ) if ( iMacroPosition ) then iMacroPosition = hSelectNextNode( MakroAus ) if ( hClickButton( Ausfuehren ) ) then hMacroOrganizerRunMacro() = iMacroPosition else ' run macro button not enabled warnlog( CFN & "Unable to click button" ) hMacroOrganizerRunMacro() = RETVAL_FAILURE endif else warnlog( CFN & "Macro was not found" ) hMacroOrganizerRunMacro() = RETVAL_FAILURE endif else warnlog( CFN & "Failed to open Macro Organizer" ) hMacroOrganizerRunMacro() = RETVAL_FAILURE endif end function '******************************************************************************* function hBasicIDERunMacro( cIdentifier as string ) as boolean const CFN = "hBasicIDERunMacro(): " const MAX_WAIT = 1 dim cMessage as string : cMessage = "" kontext "BasicIDE" if ( BasicIDE.exists() ) then Wait( 2000 ) kontext "MacroBar" if ( MacroBar.exists() ) then BasicRun.click() else warnlog( "MacroBar not accessible" ) endif kontext "Active" if ( Active.exists( MAX_WAIT ) ) then cMessage = Active.getText() hCloseDialog( Active, "ok" ) endif if ( cMessage = cIdentifier ) then printlog( "The expected macro was executed" ) hBasicIDERunMacro() = true else printlog( CFN & "Incorrect macro executed" ) hBasicIDERunMacro() = false endif else warnlog( CFN & "BasicIDE is not open" ) hBasicIDERunMacro() = false endif end function