'encoding UTF-8 Do not remove or change this line! '************************************************************************* ' ' Licensed to the Apache Software Foundation (ASF) under one ' or more contributor license agreements. See the NOTICE file ' distributed with this work for additional information ' regarding copyright ownership. The ASF licenses this file ' to you under the Apache License, Version 2.0 (the ' "License"); you may not use this file except in compliance ' with the License. You may obtain a copy of the License at ' ' http://www.apache.org/licenses/LICENSE-2.0 ' ' Unless required by applicable law or agreed to in writing, ' software distributed under the License is distributed on an ' "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY ' KIND, either express or implied. See the License for the ' specific language governing permissions and limitations ' under the License. ' '************************************************************************* '* '* short description : General option test (sub-routines for options tests) '* '\****************************************************************************** function hToolsOptions ( Applicationname as string, Tabpagename as string, OPTIONAL bSilent as Boolean ) as Boolean const CFN = "global::tools::includes::required::t_option.inc:" Dim bCorPage as Boolean Dim bFirst as Boolean Dim InitialNodeCount as Integer ' All nodes collapsed Dim CurrentNodeCount as Integer ' Number of nodes when a top node is expanded Dim iCurrentPage as Integer ' Increment variable for stepping through the nodes Dim startpos as integer Applicationname = ucase( Applicationname ) Tabpagename = ucase( Tabpagename ) '///hToolsOptions: Routine to select the correct option page '///+input: The groupname as string, name of optionpage as string '///+note: The options dialog has to be opened '///+OPTIONAL: TRUE as an additional parameter if you want a printlog instead of a warning if a page has not been found. if IsMissing(bSilent) then bSilent = FALSE end if Kontext "Active" try if Active.Exists(1) then Active.OK catch if Active.Exists(1) then Active.No endcatch '///Group names list: '///+ Kontext "ExtrasOptionenDlg" if ExtrasOptionenDlg.Exists then Optionsliste.TypeKeys "" for iCurrentPage = 1 to 12+1 Optionsliste.TypeKeys "-" next iCurrentPage 'Optionsliste.TypeKeys "" InitialNodeCount = Optionsliste.GetItemCount select case Applicationname case "STAROFFICE" : startpos = 1 case "LOADSAVE" : startpos = 2 case "LANGUAGESETTINGS" : startpos = 3 case "WRITER" : startpos = 4 case "MASTERDOCUMENT" : startpos = 4 case "HTML" : startpos = 5 case "CALC" : startpos = 4 case "IMPRESS" : startpos = 4 case "DRAW" : startpos = 4 case "MATH" : startpos = 4 case "DATASOURCES" : startpos = InitialNodeCount -2 case "CHART" : startpos = InitialNodeCount -1 case "INTERNET" : startpos = InitialNodeCount ' always the last one case else warnlog( CFN & "Invalid Application name specified: " & Applicationname ) printlog( "Valid options are:" ) printlog( "gApplications: WRITER, CALC, MASTERDOCUMENT, DRAW, IMPRESS, HTML, MATH, CHART" ) printlog( "additionally.: STAROFFICE, LOADSAVE, LANGUAGESETTINGS, DATASOURCES, INTERNET" ) printlog( "All names must be uppercase" ) exit function end select Optionsliste.select Startpos Optionsliste.typekeys "+" CurrentNodeCount = Optionsliste.GetItemCount bFirst = TRUE for iCurrentPage = 1 to CurrentNodeCount - InitialNodeCount bCorPage = FALSE Kontext "ExtrasOptionenDlg" Optionsliste.TypeKeys "" WaitSlot() ' Some sort of NOOP select case Applicationname case "STAROFFICE" '///Pages in group "StarOffice"are: '///+
  • "UserData"
  • '///+
  • "General"
  • '///+
  • "Memory"
  • '///+
  • "View"
  • '///+
  • "Print"
  • '///+
  • "Paths"
  • '///+
  • "Colors"
  • '///+
  • "FontReplacement"
  • '///+
  • "Security"
  • '///+
  • "Appearence"
  • '///+
  • "Accessibility"
  • '///+
  • "Java"
select case Tabpagename case "USERDATA" Kontext "TabBenutzerdaten" if TabBenutzerdaten.exists then bCorPage = TRUE case "GENERAL" if bFirst = TRUE then Optionsliste.Select ( startpos + 2 ) bFirst = FALSE Kontext "TabSonstigesAllgemein" If TabSonstigesAllgemein.exists(2) then bCorPage = TRUE case "MEMORY" if bFirst = TRUE then Optionsliste.Select ( startpos + 3 ) bFirst = FALSE Kontext "TabMemory" If TabMemory.exists(2) then bCorPage = TRUE case "VIEW" if bFirst = TRUE then Optionsliste.Select ( startpos + 4 ) bFirst = FALSE Kontext "TabAnsichtAllgemein" If TabAnsichtAllgemein.exists(2) then bCorPage = TRUE case "PRINT" if bFirst = TRUE then Optionsliste.Select ( startpos + 5 ) bFirst = FALSE Kontext "TabPrintStarOffice" if TabPrintStarOffice.exists(2) then bCorPage = TRUE case "PATHS" if bFirst = TRUE then Optionsliste.Select ( startpos + 6 ) bFirst = FALSE Kontext "TabPfade" If TabPfade.exists(2) then bCorPage = TRUE case "COLORS" if bFirst = TRUE then Optionsliste.Select ( startpos + 7 ) bFirst = FALSE Kontext "TabFarben" If TabFarben.exists(4) then bCorPage = TRUE case "FONTREPLACEMENT" if bFirst = TRUE then Optionsliste.Select ( startpos + 8 ) bFirst = FALSE Kontext "TabSchriftErsetzung" If TabSchriftErsetzung.exists(2) then bCorPage = TRUE case "SECURITY" if bFirst = TRUE then Optionsliste.Select ( startpos + 9 ) bFirst = FALSE Kontext "TabSecurity" If TabSecurity.exists(2) then bCorPage = TRUE case "APPEARANCE" if bFirst = TRUE then Optionsliste.Select ( startpos + 10 ) bFirst = FALSE Kontext "TabAppearance" If TabAppearance.exists(2) then bCorPage = TRUE case "ACCESSIBILITY" if bFirst = TRUE then Optionsliste.Select ( startpos + 11 ) bFirst = FALSE Kontext "TabAccessibility" If TabAccessibility.exists(2) then bCorPage = TRUE case "JAVA" if bFirst = TRUE then Optionsliste.Select ( startpos + 12 ) bFirst = FALSE Kontext "TabJava" If TabJava.exists(2) then bCorPage = TRUE case "ONLINEUPDATE" if bFirst = TRUE then Optionsliste.Select ( startpos + 13 ) bFirst = FALSE Kontext "TabOnlineUpdate" If TabOnlineUpdate.exists(2) then bCorPage = TRUE case "IMPROVEMENT" if bFirst = TRUE then Optionsliste.Select ( startpos + 14 ) bFirst = FALSE Kontext "TabOOoImprovement" If TabOOoImprovement.exists(2) then bCorPage = TRUE case else : bCorPage = FALSE end select case "LOADSAVE" '///Pages in group "LoadSave"are: '///+
  • "General"
  • '///+
  • "VBAProperties"
  • '///+
  • "MicrosoftOffice"
  • '///+
  • "HTMLCompatibility"
select case Tabpagename case "GENERAL" Kontext "TabSpeichern" if TabSpeichern.exists then bCorPage = TRUE case "VBAPROPERTIES" if bFirst = TRUE then Optionsliste.Select ( startpos + 2 ) bFirst = FALSE Kontext "TabMicrosoftOffice97" If WinwordBasicLaden.exists(4) then bCorPage = TRUE case "MICROSOFTOFFICE" if bFirst = TRUE then Optionsliste.Select ( startpos + 3 ) bFirst = FALSE Kontext "TabMicrosoftOffice2" If Auswahl.exists(4) then bCorPage = TRUE case "HTMLCOMPATIBILITY" if bFirst = TRUE then Optionsliste.Select ( startpos + 4 ) bFirst = FALSE Kontext "TabHtml" If TabHtml.exists(2) then bCorPage = TRUE case else : bCorPage = FALSE end select case "LANGUAGESETTINGS" '///Pages in group "LanguageSettings"are: '///+
  • "Language"
  • '///+
  • "WritingAids"
  • '///+
  • "SearchingJapanese"
  • '///+
  • "AsianLayout"
'///+
  • "Complex Text Layout"
  • Kontext "Active" if Active.Exists then Active.OK Kontext "ExtrasOptionenDlg" select case Tabpagename case "LANGUAGES" Kontext "TabSprachen" If TabSprachen.exists(2) then bCorPage = TRUE case "WRITINGAIDS" if bFirst = TRUE then Optionsliste.Select ( startpos + 2 ) bFirst = FALSE Kontext "TabLinguistik" If TabLinguistik.exists(2) then bCorPage = TRUE case "SEARCHINGINJAPANESE" if bFirst = TRUE then Optionsliste.Select ( startpos + 3 ) bFirst = FALSE Kontext "TabJapaneseFind" if TabJapaneseFind.exists(2) then bCorPage = TRUE case "ASIANLAYOUT" if bFirst = TRUE then Optionsliste.Select ( startpos + 4 ) bFirst = FALSE Kontext "TabAsianLayoutOptions" if TabAsianLayoutOptions.exists(2) then bCorPage = TRUE case "COMPLEXTEXTLAYOUT" if bFirst = TRUE then Optionsliste.Select ( startpos + 5 ) bFirst = FALSE Kontext "TabComplexTextLayout" if TabComplexTextLayout.exists(2) then bCorPage = TRUE case else : bCorPage = FALSE end select case "INTERNET" '///Pages in group "Internet"are: '///+
    • "Proxy"
    • '///+
    • "Search"
    Kontext "Active" if Active.Exists then Active.OK Kontext "ExtrasOptionenDlg" select case Tabpagename case "PROXY" Kontext "TabProxyServer" if TabProxyServer.exists(2) then bCorPage = TRUE case "SEARCH" if bFirst = TRUE then Optionsliste.Select ( startpos + 2 ) bFirst = FALSE Kontext "TabSuche" If TabSuche.exists(2) then bCorPage = TRUE case "EMAIL" if bFirst = TRUE then Optionsliste.Select ( startpos + 3 ) bFirst = FALSE Kontext "TabEmail" If TabEmail.exists(2) then bCorPage = TRUE case else : bCorPage = FALSE end select case "WRITER" '///Pages in group "TextDocument"are: '///+
    • "General"
    • '///+
    • "View"
    • '///+
    • "FormattinAids"
    • '///+
    • "Grid"
    • '///+
    • "BasicFonts"
    • '///+
    • "BasicFontsAsian"
    • '///+
    • "BasicFontsCTL"
    • '///+
    • "Print"
    • '///+
    • "Table"
    • '///+
    • "Changes"
    select case Tabpagename case "GENERAL" Kontext "TabLaden" If TabLaden.exists then bCorPage = TRUE case "VIEW" if bFirst = TRUE then Optionsliste.Select ( startpos + 2 ) bFirst = FALSE Kontext "TabInhalteWriter" If TabInhalteWriter.exists(2) then bCorPage = TRUE case "FORMATTINGAIDS" if bFirst = TRUE then Optionsliste.Select ( startpos + 3 ) bFirst = FALSE Kontext "TabDirektCursor" If TabDirektCursor.exists(2) then bCorPage = TRUE case "GRID" if bFirst = TRUE then Optionsliste.Select ( startpos + 4 ) bFirst = FALSE Kontext "TabRaster" If TabRaster.exists(2) then bCorPage = TRUE case "BASICFONTS" if bFirst = TRUE then Optionsliste.Select ( startpos + 5 ) bFirst = FALSE Kontext "TabGrundschriften" If TabGrundschriften.exists(2) then bCorPage = TRUE case "BASICFONTSASIAN" if bFirst = TRUE then Optionsliste.Select ( startpos + 6 ) bFirst = FALSE Kontext "TabGrundschriftenASIAN" If TabGrundschriftenASIAN.exists(2) then bCorPage = TRUE case "BASICFONTSCTL" if bFirst = TRUE then Optionsliste.Select ( startpos + 6 ) bFirst = FALSE Kontext "TabGrundschriftenCTL" If TabGrundschriftenCTL.exists(2) then bCorPage = TRUE case "PRINT" if bFirst = TRUE then Optionsliste.Select ( startpos + 6 ) bFirst = FALSE Kontext "TabDruckenWriter" If TabDruckenWriter.exists(2) then bCorPage = TRUE case "TABLE" if bFirst = TRUE then Optionsliste.Select ( startpos + 7 ) bFirst = FALSE Kontext "TabTabelleOptionen" If TabTabelleOptionen.exists(2) then bCorPage = TRUE case "CHANGES" if bFirst = TRUE then Optionsliste.Select ( startpos + 8 ) bFirst = FALSE Kontext "TabAenderungenWriter" If TabAenderungenWriter.exists(2) then bCorPage = TRUE case "COMPATIBILITY" if bFirst = TRUE then Optionsliste.Select ( startpos + 9 ) bFirst = FALSE Kontext "TabCompatibility" If TabCompatibility.exists(2) then bCorPage = TRUE case "AUTOCAPTION" if bFirst = TRUE then Optionsliste.Select ( startpos + 10 ) bFirst = FALSE Kontext "TabAutoCaption" If TabAutoCaption.exists(2) then bCorPage = TRUE case "MAILMERGEEMAIL" if bFirst = TRUE then Optionsliste.Select ( startpos + 11 ) bFirst = FALSE Kontext "TabMailMergeEMail" If TabMailMergeEMail.exists(2) then bCorPage = TRUE case else : bCorPage = FALSE end select case "HTML" '///Pages in group "HTMLDocument"are: '///+
    • "General"
    • '///+
    • "View"
    • '///+
    • "Grid"
    • '///+
    • "Print"
    • '///+
    • "Table"
    • '///+
    • "Source"
    • '///+
    • "Background"
    select case Tabpagename case "VIEW" Kontext "TabInhalteHTML" If TabInhalteHTML.exists then bCorPage = TRUE case "FORMATTINGAIDS" if bFirst = TRUE then Optionsliste.Select ( startpos + 2 ) bFirst = FALSE Kontext "TabDirektCursor" If TabDirektCursor.exists(2) then bCorPage = TRUE case "GRID" if bFirst = TRUE then Optionsliste.Select ( startpos + 3 ) bFirst = FALSE Kontext "TabRaster" If TabRaster.exists(2) then bCorPage = TRUE case "PRINT" if bFirst = TRUE then Optionsliste.Select ( startpos + 4 ) bFirst = FALSE Kontext "TabDruckenHTML" If TabDruckenHTML.exists(2) then bCorPage = TRUE case "TABLE" if bFirst = TRUE then Optionsliste.Select ( startpos + 5 ) bFirst = FALSE Kontext "TabTabelleOptionen" If TabTabelleOptionen.exists(2) then bCorPage = TRUE case "BACKGROUND" if bFirst = TRUE then Optionsliste.Select ( startpos + 6 ) bFirst = FALSE Kontext "TabHintergrund" If TabHintergrund.exists then bCorPage = TRUE case else : bCorPage = FALSE end select case "CALC" '///Pages in group "Spreadsheet"are: '///+
    • "General"
    • '///+
    • "View"
    • '///+
    • "Calculate"
    • '///+
    • "Sortlists"
    • '///+
    • "Changes"
    • '///+
    • "Grid"
    • '///+
    • "Print"
    select case Tabpagename case "GENERAL" Kontext "TabLayoutCalc" If TabLayoutCalc.exists(2) then bCorPage = TRUE case "VIEW" if bFirst = TRUE then Optionsliste.Select ( startpos + 2 ) bFirst = FALSE Kontext "TabInhaltCalc" If TabInhaltCalc.exists(2) then bCorPage = TRUE case "CALCULATE" if bFirst = TRUE then Optionsliste.Select ( startpos + 3 ) bFirst = FALSE Kontext "TabBerechnen" If TabBerechnen.exists(2) then bCorPage = TRUE case "SORTLISTS" if bFirst = TRUE then Optionsliste.Select ( startpos + 4 ) bFirst = FALSE Kontext "TabSortierlisten" If TabSortierlisten.exists(2) then bCorPage = TRUE case "CHANGES" if bFirst = TRUE then Optionsliste.Select ( startpos + 5 ) bFirst = FALSE Kontext "TabAenderungenCalc" If TabAenderungenCalc.exists(2) then bCorPage = TRUE case "GRID" if bFirst = TRUE then Optionsliste.Select ( startpos + 6 ) bFirst = FALSE Kontext "TabRaster" If TabRaster.exists(2) then bCorPage = TRUE case "PRINT" if bFirst = TRUE then Optionsliste.Select ( startpos + 7 ) bFirst = FALSE Kontext "TabPrintCalcOptions" If TabPrintCalcOptions.exists(2) then bCorPage = TRUE case else : bCorPage = FALSE end select case "IMPRESS" '///Pages in group "Presentation"are: '///+
    • "General"
    • '///+
    • "View"
    • '///+
    • "Grid"
    • '///+
    • "Print"
    select case Tabpagename case "GENERAL" Kontext "TabSonstigesDraw" If TabSonstigesDraw.exists then bCorPage = TRUE case "VIEW" if bFirst = TRUE then Optionsliste.Select ( startpos + 2 ) bFirst = FALSE Kontext "TabInhalteDraw" If TabInhalteDraw.exists(2) then bCorPage = TRUE case "GRID" if bFirst = TRUE then Optionsliste.Select ( startpos + 3 ) bFirst = FALSE Kontext "TabRaster" If TabRaster.exists(2) then bCorPage = TRUE case "PRINT" if bFirst = TRUE then Optionsliste.Select ( startpos + 4 ) bFirst = FALSE Kontext "TabDruckenDraw" If TabDruckenDraw.exists(2) then bCorPage = TRUE case else : bCorPage = FALSE end select case "DRAW" '///Pages in group "Drawing"are: '///+
    • "General"
    • '///+
    • "View"
    • '///+
    • "Grid"
    • '///+
    • "Print"
    select case Tabpagename case "GENERAL" Kontext "TabSonstigesDraw" If TabSonstigesDraw.exists then bCorPage = TRUE case "VIEW" if bFirst = TRUE then Optionsliste.Select ( startpos + 2 ) bFirst = FALSE Kontext "TabInhalteDraw" If TabInhalteDraw.exists(2) then bCorPage = TRUE case "GRID" if bFirst = TRUE then Optionsliste.Select ( startpos + 3 ) bFirst = FALSE Kontext "TabRaster" If TabRaster.exists(2) then bCorPage = TRUE case "PRINT" if bFirst = TRUE then Optionsliste.Select ( startpos + 4 ) bFirst = FALSE Kontext "TabDruckenDraw" If TabDruckenDraw.exists(2) then bCorPage = TRUE case else : bCorPage = FALSE end select case "MATH" '///Page(s) in group "Formula"are: '///+
    • "Settings"
    select case Tabpagename case "SETTINGS" Kontext "TabDruckenMath" If TabDruckenMath.exists then bCorPage = TRUE case else : bCorPage = FALSE end select case "CHART" '///Pages in group "Chart"are: '///+
    • "DefaultColors"
    select case Tabpagename case "DEFAULTCOLORS" Kontext "TabGrundfarben" If TabGrundfarben.exists(4) then bCorPage = TRUE case else : bCorPage = FALSE end select case "DATASOURCES" '///Pages in group "Datasource"are: '///+
    • "Connetions"
    select case Tabpagename case "CONNECTIONS" Kontext "TabConnections" If TabConnections.exists(4) then bCorPage = TRUE case "DATABASES" Kontext "TabRegisteredDatabase" If TabRegisteredDatabase.exists(4) then bCorPage = TRUE case else : bCorPage = FALSE end select case else bCorPage = False end select If bCorPage = TRUE then Exit for next iCurrentPage if ( NOT bCorPage ) then if ( NOT bSilent ) then warnlog CFN & Applicationname + " / " + Tabpagename + " could not be found! Please review your test!" else printlog CFN & Applicationname + " / " + Tabpagename + " could not be found!" end if end if else bCorPage = FALSE warnlog CFN & "Please open the option-dialog with 'ToolsOptions' before you called this routine!" end if hToolsOptions = bCorPage end function