summaryrefslogtreecommitdiff
path: root/testautomation/writer/optional/includes/filter/w_filter.inc
diff options
context:
space:
mode:
Diffstat (limited to 'testautomation/writer/optional/includes/filter/w_filter.inc')
-rw-r--r--testautomation/writer/optional/includes/filter/w_filter.inc608
1 files changed, 608 insertions, 0 deletions
diff --git a/testautomation/writer/optional/includes/filter/w_filter.inc b/testautomation/writer/optional/includes/filter/w_filter.inc
new file mode 100644
index 000000000000..43a47baf0d2a
--- /dev/null
+++ b/testautomation/writer/optional/includes/filter/w_filter.inc
@@ -0,0 +1,608 @@
+'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
+' <http://www.openoffice.org/license.html>
+' for a copy of the LGPLv3 License.
+'
+'/************************************************************************
+'*
+'* Owner : helge.delfs@oracle.com
+'*
+'* short description :
+'*
+'*******************************************************************
+' #1 tSammleImportFilter
+' #1 tCollectSaveAsFilter
+' #1 tCollectExportFilters
+' #1 fReadComparePrintLists
+' #1 tGroupNameCheck
+'\******************************************************************
+
+testcase tSammleImportFilter
+'/// compare IST- with SOLL- import filter state ///'
+
+ Dim i as Integer
+ Dim j as Integer
+ Dim x as Integer
+ Dim Ende as Integer
+ Dim EndeSoll as Integer
+
+' Dim Zaehler as Integer ' count entries with "(STAROFFICE WRITER)" in IST
+ Dim gZaehler as Integer ' do the same as 'i' in 'compare for-next' ?
+ Dim gZaehler2 as Integer ' do the same as 'i' in 'compare for-next' ?
+
+ Dim lsListe(350) as String ' IST list gets generated with tested SO and written into
+ Dim Eintrag as String ' during compare: entry (i) from IST list
+ Dim lsListeFail(350) as String ' List that gets set from the compare function, if anny filters are not available, optional parammeter to function
+
+'----new implementation of filter lists
+ Dim sPlatform as String
+ Dim fStandardFilterList as String
+ Dim fStandardLanguageFilterList as String
+ Dim fExceptionLanguageFilterList as String
+ Dim fCompleteDiffFilterList as String
+ Dim fW4WDiffFilterList as String
+ Dim fActualFilterFile as String
+ Dim fSortedFilterFile as String
+ Dim iFilterCount as Integer
+ Dim a as integer
+ Dim b as integer
+ Dim c as integer
+'--------------------------------------
+
+' INIT Stuff
+ gZaehler = 0
+ lsListe(0)=0
+
+'/// There are 3 files with filter lists ///'
+'///+ 1. Language independent, System independent, Standard installation : if_st_all.txt ///'
+'///+ 2. Language dependent, System independent, Standard installation : if_st_xx_all.txt ///'
+'///+ 2. Language dependent, System independent, Standard installation, Exceptions : if_st_xx_exe.txt ///'
+'///+ 3. Language independent, System dependent, Complete installation diff to 1.) & 2.) : if_cod_xxx.txt ///'
+'///+ 3. Language independent, System dependent, Standard installation diff to 1.) : if_w4w_xxx.txt ///'
+'///+ they are all found in "input\\writer\\la_sp\\" ///'
+'/// System depends on: w95, sol, lin; if system is not regcognizeable: Fallback to lin ///'
+'///+ Path to filter lists: 'input\\writer\\la_sp\\' ///
+'///+ Filter files have to be saved as Unicode UTF8 encoded ///'
+
+' since utf8 encoding isn't supported as list-write-format it doesn't make sense to save the list
+
+ ' set Platform variable
+ 'printlog " + + + gPCName: "+ gPCName+ " gPlatgroup: "+ gPlatgroup +" gPlatform: "+ gPlatform + " gSYSName: "+gSYSName
+ select case gPlatgroup
+ case "w95" : sPlatform = "w95"
+ case "unx" :
+ select case gPlatform
+ case "lin" : sPlatform = "lin"
+ case "x86" : sPlatform = "lin" ' i think there were w4w licensing problems
+ case "sol" : sPlatform = "w95"
+ case else : sPlatform = "lin" ' minimal filter list
+ end select
+ case else : sPlatform = "lin" ' minimal filter list
+ end select
+
+ 'this one gets hard coded!
+ fStandardFilterList = ConvertPath(gTesttoolPath + "writer\optional\input\filter\if_st_all." + "txt")
+ fStandardLanguageFilterList = ConvertPath(gTesttoolPath + "writer\optional\input\filter\if_st_"+ iSprache+"_all." + "txt")
+ fExceptionLanguageFilterList = ConvertPath(gTesttoolPath + "writer\optional\input\filter\if_st_"+ iSprache+"_exe." + "txt")
+
+ fCompleteDiffFilterList = ConvertPath(gTesttoolPath + "writer\optional\input\filter\if_cod_" + sPlatform + ".txt")
+ fW4WDiffFilterList = ConvertPath(gTesttoolPath + "writer\optional\input\filter\if_w4w_" + sPlatform + ".txt")
+
+ fActualFilterFile = ConvertPath(gTesttoolPath + "writer\optional\input\filter\actual.txt") 'unsorted
+ fSortedFilterFile = ConvertPath(gTesttoolPath + "writer\optional\input\filter\sorted.txt") 'sorted
+
+'' generate IST-list and write to file ///'
+ FileOpen
+ sleep (3)
+ Kontext "OeffnenDlg"
+ sleep (3)
+ iFilterCount = Dateityp.GetItemCount ' have to substract already used ones at the end somewhere...
+ sleep (3)
+ for i=1 to Dateityp.GetItemCount
+ ListAppend ( lsListe(), DateiTyp.GetItemText (i) )
+ next i
+ OeffnenDlg.Cancel
+ 'ListWrite(lsListe(),fActualFilterFile, "utf8")
+ 'Call ListCopy(lsListe(),lsListeSort())
+ Call ListSort(lsListe())
+ 'ListWrite(lsListe(),fSortedFilterFile, "utf8")
+ ' printlog "-------------------------------------------------------------"
+ ' for i=1 to ListCount ( lsListeSort() )
+ ' printlog lsListeSort(i)
+ ' next i
+ ' printlog "-------------------------------------------------------------"
+ 'Printlog "- Got Filters from Office; written to: " + fActualFilterFile + "; Count: "+ ListCount (lsListe())
+ 'Printlog "- Got Filters from Office; written to: " + fSortedFilterFile + chr(13)
+
+ lsListeFail(0) = 0
+ printlog "'///- comparing ## Language independent ## Standard installation ## filters with existing ones"
+ printlog "----- found : "+ fReadComparePrintLists (fStandardFilterList, lsListe(),lsListeFail()) + chr(13)
+
+ a = ListCount (lsListeFail()) ' not found filters
+ if (a > 0) then ' sort out filters for platforms, where we don't have licenses for OR the translator has good reasons....(swedish)
+ if (iSprache = 46) then
+ b = fReadComparePrintLists (fExceptionLanguageFilterList, lsListeFail())
+ printlog "----- found : "+ b + chr(13)
+ if (ListCount (lsListeFail()) <> 0) then
+ a = ListCount ( lsListeFail() )
+ for i=1 to a
+ Printlog lsListeFail(i)
+ next i
+ printlog "----- NOT found : "+ c + chr(13)
+ else
+ qaErrorLog "--------- EVERYTHING is fine now, ignore every failure above about not found filters! :-) --------------"
+ end if
+ end if
+ if (sPlatform = "lin") then
+ qaErrorLog "ok there are failures, lets check them: sort out filters that are not allowed on this platform! (LINUX) :-)"
+ b = fReadComparePrintLists (fW4WDiffFilterList, lsListeFail())
+ printlog "----- found : "+ b + chr(13)
+ if (ListCount (lsListeFail()) <> 0) then
+ warnlog "By now, there are STILL some Filters realy missing :-("
+ c = ListCount ( lsListeFail() )
+ for i=1 to c
+ Printlog lsListeFail(i)
+ next i
+ printlog "----- NOT found : "+ c + chr(13)
+ else
+ qaErrorLog "--------- EVERYTHING is fine now, ignore every failure above about not found filters! :-) --------------"
+ end if
+ else
+ Warnlog ("The above filters are missing: " + a)
+ end if
+ end if
+
+ printlog "'///- comparing ## Language dependent ## Standard installation ## filters with existing ones"
+ b = fReadComparePrintLists (fStandardLanguageFilterList, lsListe())
+ printlog "----- found : "+ b + chr(13)
+ if b = 0 then
+ warnlog " No filters found :-( - maybe because list-file is empty, please create it!"
+ warnlog " take the file </testtool/input/writer/la_sp/if_st_1.all> and put all filters for this language on the same position into the file: " +fStandardLanguageFilterList
+ end if
+ a = ListCount (lsListeFail()) ' not found filters
+ if (a > 0) then
+ Warnlog ("The above filters are missing: " + a)
+ end if
+
+ '///' delete ------------ filters from IST-list (used filters appear twice) ///'
+ '/// <font color=#ff0000> TBO TODO: select them! nice behaviour i think :-) </FONT> ///'
+ printlog "- remove seperators ----------------------------"
+ gZaehler2 = 0
+ for i=1 to ListCount ( lsListe() )
+ Eintrag = lsListe(i)
+ if instr(Eintrag,"---------") then
+ gZaehler2 = gZaehler2 + 1
+ ListDelete ( lsListe(), i ) ' delete seperator
+ i=i-1 ' so the i-counter has to be decremented by one
+ end if
+ next i
+ printlog " + (" + gZaehler2 + "/8) seperators are available."
+ if gZaehler2 <> 8 then
+ warnlog " there are seperators missing or too much :-("
+ Printlog " check if all groups are available! the groupnames can be found in the tostcase <tGroupNameCheck> later on"
+ warnlog " !!! NO FILTER IS ALLOWED TO HAVE THE SAME NAME AS ANY GROUPNAME !!! because than this group won't show up in the FileOpen Dialog!"
+ end if
+ '///' delete <...> filters from IST-list (used filters appear twice) ///'
+ printlog "- Already used filters in previous tests."
+ gZaehler = 0
+ for i=1 to ListCount ( lsListe() )
+ Eintrag = lsListe(i)
+ if Left$(Eintrag,1) = "<" and Right$(Eintrag,1) = ">" then
+ gZaehler = gZaehler + 1
+ printlog "" + Eintrag
+ ListDelete ( lsListe(), i ) ' delete already used filter (i)
+ i=i-1 ' so the i-counter has to be decremented by one
+ end if
+ next i
+ printlog " + " + gZaehler + " Filters have been used in previous tests."
+ printlog "++++++ this was now : " + (iFilterCount - gZaehler - gZaehler2) +" existing filters in office"
+
+ if ListCount (lsListe()) > 50 then
+ printlog chr(13)+"'/// - this is a COMPLETE Installation ?! (>50 filters still available): "+ListCount (lsListe()) + chr(13)
+ printlog "'///- comparing ## Language independent ## Complete installation ## filters with existing ones"
+ printlog "----- found : "+ fReadComparePrintLists (fCompleteDiffFilterList, lsListe()) + chr(13)
+ else
+ printlog chr(13)+"'/// - this is a STANDARD Installation ?! (<50 filters still available): "+ListCount (lsListe()) + chr(13)
+ end if
+
+ if ListCount ( lsListe() ) <> 0 then
+ printlog Chr(13)
+ Warnlog "*** The following Filters are available, but nobody wants them??'!" + "; Count: "+ ListCount (lsListe())
+ Warnlog ("please compare them to the missing ones from above!")
+ for i=1 to ListCount ( lsListe() )
+ Printlog lsListe(i)
+ next i
+ end if
+endcase
+
+'------------------------------------------------------------------------------------------------------------------------------
+
+testcase tCollectSaveAsFilter
+ Dim i as Integer
+ Dim j as Integer
+ Dim x as Integer
+
+ Dim lsListe(350) as String ' IST list gets generated with tested SO and written into
+ Dim iFilterCount as Integer
+ Dim fActualFilterFile as String
+ Dim fSortedFilterFile as String
+
+ ListAllDelete(lsListe())
+ x = 0
+
+ fActualFilterFile = ConvertPath(gOfficePath + "user/work/sa_actua."+iSprache) 'unsorted
+ fSortedFilterFile = ConvertPath(gOfficePath + "user/work/sa_sorte."+iSprache) 'sorted
+
+'/// go into every application and print out the filters found under 'File -> SaveAs' ///'
+ for j = 1 to 7
+ select case j
+ case 1: gApplication = "WRITER"
+ case 2: gApplication = "CALC"
+ case 3: gApplication = "IMPRESS"
+ case 4: gApplication = "DRAW"
+ case 5: gApplication = "MASTERDOCUMENT"
+ case 6: gApplication = "MATH"
+ case 7: gApplication = "HTML"
+ end select
+ hNewDocument()
+ '' generate IST-list and write to file ///'
+ FileSaveAs
+ sleep (3)
+ Kontext "SpeichernDlg"
+ sleep (3)
+ iFilterCount = Dateityp.GetItemCount ' have to substract already used ones at the end somewhere...
+ x = x + iFilterCount
+ sleep (3)
+ printlog " ---- " + gApplication + " : " + iFilterCount
+ for i=1 to Dateityp.GetItemCount
+ ListAppend ( lsListe(), DateiTyp.GetItemText (i) )
+ Printlog DateiTyp.GetItemText (i)
+ next i
+ Printlog "-----------------------------------------------"
+ SpeichernDlg.Cancel
+ hCloseDocument()
+ next j
+
+ Printlog chr(13)+" This are "+ x + " - from 85 expected." + chr(13)
+ if x <> 85 then warnlog "Somewhere Over the rainbow... there are filters missing / too much :-("
+
+ if (app.dir(fActualFilterFile) = "") then
+ Call ListWrite(lsListe(),fActualFilterFile, "utf8")
+ Printlog "- Got Filters from Office; written to: " + fActualFilterFile + "; Count: "+ ListCount (lsListe())
+ end if
+ if (app.dir(fSortedFilterFile) = "") then
+ Call ListSort(lsListe())
+ Call ListWrite(lsListe(),fSortedFilterFile, "utf8")
+ Printlog "- Got Filters from Office; written to: " + fSortedFilterFile + chr(13)
+ end if
+endcase
+
+'------------------------------------------------------------------------------------------------------------------------------
+
+testcase tCollectExportFilters
+ Dim i as Integer
+ Dim j as Integer
+ Dim x as Integer
+
+ Dim lsListe(350) as String ' IST list gets generated with tested SO and written into
+ Dim iFilterCount as Integer
+ Dim fActualFilterFile as String
+ Dim fSortedFilterFile as String
+
+ ListAllDelete(lsListe())
+ x = 0
+
+ fActualFilterFile = ConvertPath(gOfficePath + "user/work/ex_actua."+iSprache) 'unsorted
+ fSortedFilterFile = ConvertPath(gOfficePath + "user/work/ex_sorte."+iSprache) 'sorted
+
+'/// go into every application and print out the filters found under 'File -> SaveAs' ///'
+ for j = 1 to 7
+ select case j
+ case 1: gApplication = "WRITER"
+ case 2: gApplication = "CALC"
+ case 3: gApplication = "IMPRESS"
+ case 4: gApplication = "DRAW"
+ case 5: gApplication = "MASTERDOCUMENT"
+ case 6: gApplication = "MATH"
+ case 7: gApplication = "HTML"
+ end select
+ hNewDocument()
+ '' generate IST-list and write to file ///'
+ FileExport
+ sleep (3)
+ Kontext "SpeichernDlg"
+ sleep (3)
+ iFilterCount = Dateityp.GetItemCount ' have to substract already used ones at the end somewhere...
+ x = x + iFilterCount
+ sleep (3)
+ printlog " ---- " + gApplication + " : " + iFilterCount
+ for i=1 to Dateityp.GetItemCount
+ ListAppend ( lsListe(), DateiTyp.GetItemText (i) )
+ Printlog DateiTyp.GetItemText (i)
+ next i
+ Printlog "-----------------------------------------------"
+ SpeichernDlg.Cancel
+ hCloseDocument()
+ next j
+
+ Printlog chr(13)+" This are "+ x + " - from 65 expected." + chr(13)
+ if x <> 65 then warnlog "Somewhere Over the rainbow... there are filters missing / too much :-("
+
+ if (app.dir(fActualFilterFile) = "") then
+ Call ListWrite(lsListe(),fActualFilterFile, "utf8")
+ Printlog "- Got Filters from Office; written to: " + fActualFilterFile + "; Count: "+ ListCount (lsListe())
+ end if
+ if (app.dir(fSortedFilterFile) = "") then
+ Call ListSort(lsListe())
+ Call ListWrite(lsListe(),fSortedFilterFile, "utf8")
+ Printlog "- Got Filters from Office; written to: " + fSortedFilterFile + chr(13)
+ end if
+' Should look like this:
+' ---- WRITER : 3
+'PDF - Portable Document Format (.pdf)
+'------------------------------------------
+'XHTML (.xhtml)
+'-----------------------------------------------
+' ---- CALC : 3
+'PDF - Portable Document Format (.pdf)
+'------------------------------------------
+'XHTML (.xhtml)
+'-----------------------------------------------
+' ---- IMPRESS : 23
+'HTML Document (StarOffice Impress) (.html;.htm)
+'PDF - Portable Document Format (.pdf)
+'Macromedia Flash (SWF) (.swf)
+'------------------------------------------
+'BMP - Windows Bitmap (.bmp)
+'EMF - Enhanced Metafile (.emf)
+'EPS - Encapsulated PostScript (.eps)
+'GIF - Graphics Interchange Format (.gif)
+'JPEG - Joint Photographic Experts Group (.jpg;.jpeg;.jfif;.jif;.jpe)
+'MET - OS/2 Metafile (.met)
+'PBM - Portable Bitmap (.pbm)
+'PCT - Mac Pict (.pct)
+'PGM - Portable Graymap (.pgm)
+'PNG - Portable Network Graphic (.png)
+'PPM - Portable Pixelmap (.ppm)
+'PWP - PlaceWare (.pwp)
+'RAS - Sun Raster Image (.ras)
+'SVG - Scalable Vector Graphics (.svg)
+'SVM - StarView Metafile (.svm)
+'TIFF - Tagged Image File Format (.tif;.tiff)
+'WMF - Windows Metafile (.wmf)
+'XPM - X PixMap (.xpm)
+'XHTML (.xhtml)
+'-----------------------------------------------
+' ---- DRAW : 22
+'HTML Document (StarOffice Draw) (.html;.htm)
+'PDF - Portable Document Format (.pdf)
+'Macromedia Flash (SWF) (.swf)
+'------------------------------------------
+'BMP - Windows Bitmap (.bmp)
+'EMF - Enhanced Metafile (.emf)
+'EPS - Encapsulated PostScript (.eps)
+'GIF - Graphics Interchange Format (.gif)
+'JPEG - Joint Photographic Experts Group (.jpg;.jpeg;.jfif;.jif;.jpe)
+'MET - OS/2 Metafile (.met)
+'PBM - Portable Bitmap (.pbm)
+'PCT - Mac Pict (.pct)
+'PGM - Portable Graymap (.pgm)
+'PNG - Portable Network Graphic (.png)
+'PPM - Portable Pixelmap (.ppm)
+'RAS - Sun Raster Image (.ras)
+'SVG - Scalable Vector Graphics (.svg)
+'SVM - StarView Metafile (.svm)
+'TIFF - Tagged Image File Format (.tif;.tiff)
+'WMF - Windows Metafile (.wmf)
+'XPM - X PixMap (.xpm)
+'XHTML (.xhtml)
+'-----------------------------------------------
+' ---- GLOBALDOC : 7
+'PDF - Portable Document Format (.pdf)
+'------------------------------------------
+'StarOffice 6.0 Text Document (.sxw)
+'StarWriter 5.0 (.sdw)
+'StarWriter 4.0 (.sdw)
+'StarWriter 3.0 (.sdw)
+'Open Office Text (.oot)
+'-----------------------------------------------
+' ---- MATH : 1
+'PDF - Portable Document Format (.pdf)
+'-----------------------------------------------
+' ---- HTML : 7
+'PDF - Portable Document Format (.pdf)
+'------------------------------------------
+'StarOffice Text Document (StarOffice Writer/Web) (.sxw)
+'StarWriter 5.0 (StarOffice Writer/Web) (.sdw)
+'StarWriter 4.0 (StarOffice Writer/Web) (.sdw)
+'StarWriter 3.0 (StarOffice Writer/Web) (.sdw)
+'Open Office Text (StarOffice Writer/Web) (.oot)
+'-----------------------------------------------
+endcase
+
+function fReadComparePrintLists (fFilterList as string, gFilterList() as string, optional gFilterListFail() as string) as integer
+'/// input : filename of the to load list, existing list, return filter list of fails ///'
+'///+ output: changed existing list, generates file of list, if not available.. sometimes ///'
+'///+ count of found list entries ///'
+'///+ optional gFilterListFail gets set to the missing filters, for further evaluation! ///
+'///+ function: loads list from file, searches, prints, deletes found listentries from given list ///'
+'///+ prints listentries from loaded list, which were not found ///'
+
+ Dim lFilterList(350) as String
+ Dim Eintrag as String
+ Dim i as Integer
+ Dim j as Integer
+ Dim x as Integer
+ Dim Ende as Integer
+ Dim EndeSoll as Integer
+ Dim gZaehler as Integer ' do the same as 'i' in 'compare for-next' ?
+
+'----temp stuff only used, if filternames change again :-[
+ Dim lsTemp(350) as String
+ dim iTemp as integer
+ dim sTemp as string
+ dim fTempFilterList as string
+'--------------------------------------
+
+ lFilterList(0) = 0
+ fReadComparePrintLists = -1 ' worst case
+
+'/// read Standard-list ONE from file ///'
+ if Dir ( fFilterList ) <> "" then
+ ListRead ( lFilterList(), fFilterList, "utf8" )
+ Printlog " - Read Filters-to-find-List from: " + fFilterList + "; Count: "+ ListCount (lFilterList())
+ '------------temp stuff------------- to get the part in braces '()'
+ ' lsTemp(0) = 0
+ ' for iTemp =1 to ListCount (lFilterList())
+ ' sTemp = lFilterList(iTemp)
+ ' ListAppend (lsTemp(), mid (sTemp, inStr(sTemp, "("), len(stemp)+1-inStr(sTemp, "(") ))
+ ' Printlog " " + lsTemp(iTemp)
+ ' next iTemp
+ ' fTempFilterList = ConvertPath(gTesttoolPath + "writer\optional\input\filter\if_st_XX_all_ext.txt")
+ ' ListRead ( lsTemp(), fTempFilterList, "utf8" )
+ ' for iTemp =1 to ListCount (lFilterList())
+ ' sTemp = lFilterList(iTemp) + lsTemp(iTemp)
+ ' Printlog " " + sTemp
+ ' lsTemp(iTemp) = sTemp
+ ' next iTemp
+ ' ListWrite ( lsTemp(), fFilterList+"X", "utf8" )
+ '-----------------------------------
+'/// delete ONE filters from both, IS and ONE, lists and print out found & not found ones ///'
+ Call ListSort(lFilterList())
+ Call ListSort(gFilterList())
+ printlog " - List Filters which have been found in both Lists:"
+ x=0 ' count found filters
+ Ende = ListCount ( gFilterList() )
+ for i=1 to Ende
+ gZaehler = gZaehler + 1
+ Eintrag = gFilterList(i)
+ for j=1 to ListCount ( lFilterList() )
+ if Eintrag = lFilterList(j) then ' if entry found -> delete from IST & SOLL list
+ Printlog " - " + lFilterList(j)
+ x=x+1
+ ListDelete ( lFilterList(), j )
+ ' don't modify the gFilterList, copy the not found entry to new global list !!!!
+ ListDelete ( gFilterList(), i )
+ i=i-1
+ ' here i have to check the function, how a list gets deleted... ! i think evrything from that entry on moves one up
+ j = 1000 ' goto next entry
+' Fehler = FALSE ' -> found state
+ else
+' Fehler = TRUE
+ end if
+ next j
+ if gZaehler = Ende then i=1000 ' Abbruch, weil die Schleife einmal druchgegangen ist
+ next i
+ 'printlog "+++ these are " + x
+ else
+ warnlog " Missing list file, create empty file: "+fFilterList
+ ListWrite ( lFilterList(), fFilterList, "utf8")
+ end if
+ '/// print filters which were not found from ONE list ///'
+ if ListCount ( lFilterList() ) <> 0 then
+ qaErrorLog "The following filters aren't available in the Office! look what happend to them !!!" + "; Count: "+ ListCount (lFilterList())
+ for i=1 to ListCount ( lFilterList() )
+ Printlog "" + lFilterList(i)
+ next i
+ ListCopy (lFilterList(), gFilterListFail())
+ else
+ ListAllDelete (gFilterListFail())
+ end if
+ fReadComparePrintLists = x
+end function
+
+'------------------------------------------------------------------------------------------------------------------------------
+
+testcase tGroupNameCheck
+ if gPlatGroup = "unx" then
+ Printlog "No testing under Unix/Linux. Exiting testcase."
+ goto endsub
+ end if
+
+'///' inspired from #97305 : 86+88: missing import filters in fileopen dialog ///'
+'///+' -> 97723 97758 ///'
+'///' solution for sucha problem is, that the group name (Webseiten) is the same as a filtername (Webseite) in the translation. ///'
+'///+' so you have to keep an eye on the names in 'UI.xml' & 'TypeDetection.xml' from '\share\config\registry\instance\org\openoffice\Office' ///'
+'///+' they have to be different! ///'
+
+ Dim saGroups (50) as string
+ dim i as integer
+
+'TypeDetection.xml
+ saGroups (0)=0
+' cfg:value; xml:lang = de...
+' saGroups = TBOXMLGetFirstCharsForElement ( "UI;FilterClassification;GlobalFilters;Classes;FilterClass;DisplayName;cfg:value", UIxml, TRUE )
+ TBOXMLGetListOfFilterGroups (iSprache, saGroups ())
+ for i = 1 to ListCount (saGroups())
+ Printlog " "+i+": '" + saGroups(i)+"'"
+ next i
+endcase
+
+function TBOXMLGetListOfFilterGroups ( iLang as integer, sList() as string ) as String
+'/// parse xml file for special needs ///'
+ dim sElementLine as String
+ dim sXMLFile as String
+
+ Dim bCloseLocal as Boolean
+ dim i as integer
+ Dim x as integer
+ Dim y as integer
+ dim sLang, sClass as string
+ dim iAttrCount as integer
+
+ sElementLine = "UI;FilterClassification;GlobalFilters;Classes"
+ sXMLFile = gNetzOfficePath & ConvertPath("Basis\share\registry\res\" + gISOLang + "\org\openoffice\Office\UI.xcu")
+
+ if (dir(sXMLFile) = "") then
+ qaErrorLog "File doesn't exist :-( '" + sXMLFile + "'"
+ exit function
+ end if
+ SAXReadFile ( sXMLFile )
+ bCloseLocal = TRUE
+ call hXMLGotoElement ( sElementLine )
+
+ for i = 1 to SAXGetChildCount
+ SAXSeekElement ( i )
+' if SAXGetNodeType <> NodeTypeCharacter then
+' Printlog " '"+SAXGetAttributeName (1) +"' : '"+SAXGetAttributeValue (1) +"' :"
+ for y = 1 to SAXGetChildCount
+ SAXSeekElement ( y )
+ SAXSeekElement ( 1 )
+ sLang = SAXGetAttributeValue (1)
+ SAXSeekElement ( 1 )
+ if (y = 1) then
+' if SAXGetNodeType = NodeTypeCharacter then Printlog " "+ConvertLanguage2( slang )+":"+slang +":"+i+":"+SAXGetChars
+ if (ConvertLanguage2( slang, TRUE ) = iLang) then ListAppend (sList(),SAXGetChars)
+ else
+' if SAXGetNodeType = NodeTypeCharacter then Printlog " "+":"+slang +":"+i+":"+SAXGetChars
+ end if
+ SAXSeekElement ( 0 )
+ SAXSeekElement ( 0 )
+ SAXSeekElement ( 0 )
+ next y
+' end if
+ SAXSeekElement ( 0 )
+ next i
+ if bCloseLocal = TRUE then SAXRelease
+end function
+