[Libreoffice-commits] core.git: 4 commits - avmedia/source basctl/source basic/source comphelper/source connectivity/source cui/source dbaccess/source desktop/source editeng/source extensions/source filter/source forms/source fpicker/source framework/source include/svl include/svtools include/tools linguistic/source scripting/source sc/source sd/source sfx2/source slideshow/source sot/source svgio/source svl/source svtools/source svx/source sw/qa sw/source toolkit/source tools/qa tools/source ucb/source unotools/source uui/source vbahelper/source vcl/source vcl/unx xmloff/source xmlsecurity/source xmlsecurity/workben

Noel Grandin noel.grandin at collabora.co.uk
Mon Dec 5 10:49:58 UTC 2016


 avmedia/source/framework/modeltools.cxx                     |    2 
 avmedia/source/gstreamer/gstmanager.cxx                     |    2 
 avmedia/source/macavf/manager.mm                            |    2 
 avmedia/source/opengl/oglplayer.cxx                         |    2 
 avmedia/source/quicktime/manager.mm                         |    2 
 avmedia/source/viewer/mediawindow.cxx                       |    4 
 avmedia/source/viewer/mediawindow_impl.cxx                  |    2 
 avmedia/source/win/manager.cxx                              |    2 
 basctl/source/basicide/baside3.cxx                          |    2 
 basctl/source/basicide/moduldl2.cxx                         |   22 
 basic/source/basmgr/basmgr.cxx                              |   14 
 basic/source/runtime/methods.cxx                            |   10 
 basic/source/runtime/methods1.cxx                           |    2 
 basic/source/uno/namecont.cxx                               |  114 ++--
 basic/source/uno/scriptcont.cxx                             |   16 
 comphelper/source/misc/documentinfo.cxx                     |    2 
 connectivity/source/drivers/calc/CConnection.cxx            |    2 
 connectivity/source/drivers/dbase/DTable.cxx                |   32 -
 connectivity/source/drivers/file/FConnection.cxx            |    2 
 connectivity/source/drivers/file/FDatabaseMetaData.cxx      |    8 
 connectivity/source/drivers/flat/ETable.cxx                 |    2 
 cui/source/dialogs/cuigaldlg.cxx                            |   10 
 cui/source/dialogs/hldocntp.cxx                             |   14 
 cui/source/dialogs/hlinettp.cxx                             |    4 
 cui/source/dialogs/hlmailtp.cxx                             |    2 
 cui/source/dialogs/hltpbase.cxx                             |    6 
 cui/source/dialogs/insdlg.cxx                               |    6 
 cui/source/dialogs/linkdlg.cxx                              |    6 
 cui/source/dialogs/multipat.cxx                             |    4 
 cui/source/options/doclinkdialog.cxx                        |    2 
 cui/source/options/optjava.cxx                              |   20 
 cui/source/options/optlingu.cxx                             |    2 
 cui/source/options/optpath.cxx                              |    4 
 cui/source/tabpages/backgrnd.cxx                            |    2 
 cui/source/tabpages/numpages.cxx                            |    2 
 cui/source/tabpages/tplnedef.cxx                            |    8 
 cui/source/tabpages/tplneend.cxx                            |    8 
 dbaccess/source/core/dataaccess/databasecontext.cxx         |    2 
 dbaccess/source/core/dataaccess/databasedocument.cxx        |    2 
 dbaccess/source/core/dataaccess/datasource.cxx              |    2 
 dbaccess/source/ext/macromigration/macromigrationpages.cxx  |    2 
 dbaccess/source/filter/xml/xmlfilter.cxx                    |    4 
 dbaccess/source/ui/app/AppController.cxx                    |    6 
 dbaccess/source/ui/browser/dbloader.cxx                     |    2 
 dbaccess/source/ui/browser/unodatbr.cxx                     |    6 
 dbaccess/source/ui/control/opendoccontrols.cxx              |    4 
 dbaccess/source/ui/dlg/ConnectionHelper.cxx                 |   12 
 dbaccess/source/ui/dlg/dbfindex.cxx                         |    2 
 dbaccess/source/ui/dlg/dbwizsetup.cxx                       |   14 
 dbaccess/source/ui/misc/TableCopyHelper.cxx                 |    2 
 dbaccess/source/ui/misc/UITools.cxx                         |    4 
 desktop/source/app/app.cxx                                  |    4 
 desktop/source/migration/migration.cxx                      |    6 
 desktop/source/migration/services/basicmigration.cxx        |    4 
 desktop/source/migration/services/oo3extensionmigration.cxx |    4 
 desktop/source/migration/services/wordbookmigration.cxx     |    4 
 editeng/source/editeng/eehtml.cxx                           |    2 
 editeng/source/items/flditem.cxx                            |   12 
 editeng/source/misc/acorrcfg.cxx                            |    2 
 editeng/source/misc/svxacorr.cxx                            |    8 
 extensions/source/abpilot/abpfinalpage.cxx                  |    2 
 extensions/source/abpilot/datasourcehandling.cxx            |    4 
 extensions/source/dbpilots/controlwizard.cxx                |    2 
 extensions/source/propctrlr/formcomponenthandler.cxx        |    2 
 filter/source/config/cache/filtercache.cxx                  |    2 
 filter/source/config/cache/typedetection.cxx                |    2 
 filter/source/msfilter/escherex.cxx                         |    2 
 filter/source/msfilter/msdffimp.cxx                         |    4 
 filter/source/pdf/pdfexport.cxx                             |    2 
 filter/source/storagefilterdetect/filterdetect.cxx          |    2 
 filter/source/textfilterdetect/filterdetect.cxx             |    2 
 filter/source/xmlfilteradaptor/XmlFilterAdaptor.cxx         |    4 
 filter/source/xsltdialog/xmlfiltertestdialog.cxx            |    2 
 filter/source/xsltfilter/XSLTFilter.cxx                     |    6 
 forms/source/component/Button.cxx                           |    2 
 forms/source/component/DatabaseForm.cxx                     |   14 
 forms/source/component/ImageButton.cxx                      |    2 
 forms/source/richtext/richtextvclcontrol.cxx                |    2 
 forms/source/xforms/submission/replace.cxx                  |    2 
 forms/source/xforms/submission/submission_get.cxx           |    2 
 forms/source/xforms/submission/submission_post.cxx          |    2 
 forms/source/xforms/submission/submission_put.cxx           |    2 
 fpicker/source/office/OfficeFilePicker.cxx                  |    6 
 fpicker/source/office/OfficeFolderPicker.cxx                |    2 
 fpicker/source/office/RemoteFilesDialog.cxx                 |   18 
 fpicker/source/office/iodlg.cxx                             |   44 -
 fpicker/source/office/iodlgimp.cxx                          |    2 
 framework/source/fwe/helper/titlehelper.cxx                 |    8 
 framework/source/services/autorecovery.cxx                  |    2 
 framework/source/services/substitutepathvars.cxx            |    6 
 framework/source/services/uriabbreviation.cxx               |    2 
 framework/source/services/urltransformer.cxx                |   26 -
 framework/source/uielement/fontmenucontroller.cxx           |    2 
 framework/source/uielement/generictoolbarcontroller.cxx     |    2 
 framework/source/uielement/recentfilesmenucontroller.cxx    |    4 
 include/svl/urihelper.hxx                                   |   12 
 include/svtools/place.hxx                                   |    2 
 include/tools/urlobj.hxx                                    |  296 ++++++------
 linguistic/source/convdiclist.cxx                           |    8 
 linguistic/source/dlistimp.cxx                              |    2 
 linguistic/source/misc2.cxx                                 |    6 
 sc/source/core/data/documen2.cxx                            |    2 
 sc/source/core/data/documen8.cxx                            |    4 
 sc/source/core/data/document.cxx                            |    6 
 sc/source/core/data/global2.cxx                             |    6 
 sc/source/core/data/globalx.cxx                             |    2 
 sc/source/core/tool/autoform.cxx                            |    4 
 sc/source/core/tool/compiler.cxx                            |    4 
 sc/source/core/tool/formulalogger.cxx                       |    2 
 sc/source/core/tool/interpr1.cxx                            |    2 
 sc/source/filter/excel/xecontent.cxx                        |   10 
 sc/source/filter/excel/xehelper.cxx                         |    4 
 sc/source/filter/excel/xicontent.cxx                        |    2 
 sc/source/filter/excel/xihelper.cxx                         |    2 
 sc/source/filter/lotus/lotus.cxx                            |    2 
 sc/source/filter/orcus/orcusfiltersimpl.cxx                 |    4 
 sc/source/filter/xcl97/xcl97rec.cxx                         |    2 
 sc/source/ui/app/drwtrans.cxx                               |    2 
 sc/source/ui/app/inputhdl.cxx                               |    2 
 sc/source/ui/docshell/docsh.cxx                             |    2 
 sc/source/ui/docshell/docsh8.cxx                            |   12 
 sc/source/ui/docshell/externalrefmgr.cxx                    |    6 
 sc/source/ui/formdlg/formula.cxx                            |    2 
 sc/source/ui/vba/vbaworkbook.cxx                            |    4 
 sc/source/ui/view/gridwin5.cxx                              |    2 
 sc/source/ui/view/prevwsh.cxx                               |    4 
 sc/source/ui/view/printfun.cxx                              |    4 
 sc/source/ui/view/tabvwsh3.cxx                              |    2 
 sc/source/ui/view/tabvwsh4.cxx                              |    4 
 sc/source/ui/view/viewfun4.cxx                              |    2 
 sc/source/ui/xmlsource/xmlsourcedlg.cxx                     |    2 
 scripting/source/dlgprov/dlgprov.cxx                        |    2 
 scripting/source/provider/MasterScriptProvider.cxx          |    2 
 scripting/source/stringresource/stringresource.cxx          |    4 
 sd/source/filter/cgm/sdcgmfilter.cxx                        |    2 
 sd/source/filter/eppt/epptso.cxx                            |    4 
 sd/source/filter/grf/sdgrffilter.cxx                        |    2 
 sd/source/filter/html/htmlex.cxx                            |    4 
 sd/source/filter/html/pubdlg.cxx                            |   10 
 sd/source/filter/ppt/pptin.cxx                              |   10 
 sd/source/ui/app/sdmod.cxx                                  |    2 
 sd/source/ui/dlg/PhotoAlbumDialog.cxx                       |    6 
 sd/source/ui/dlg/navigatr.cxx                               |    2 
 sd/source/ui/dlg/sdtreelb.cxx                               |    2 
 sd/source/ui/dlg/tpaction.cxx                               |    8 
 sd/source/ui/func/fudraw.cxx                                |   10 
 sd/source/ui/func/fuinsert.cxx                              |    2 
 sd/source/ui/func/fusel.cxx                                 |    4 
 sd/source/ui/func/futext.cxx                                |    2 
 sd/source/ui/sidebar/MasterPageDescriptor.cxx               |    2 
 sd/source/ui/slideshow/slideshowimpl.cxx                    |    6 
 sd/source/ui/unoidl/UnoDocumentSettings.cxx                 |    2 
 sd/source/ui/view/drviews3.cxx                              |    2 
 sd/source/ui/view/drviewse.cxx                              |    4 
 sd/source/ui/view/sdview4.cxx                               |    2 
 sfx2/source/appl/appdde.cxx                                 |    8 
 sfx2/source/appl/appopen.cxx                                |    2 
 sfx2/source/appl/macroloader.cxx                            |    6 
 sfx2/source/appl/newhelp.cxx                                |    4 
 sfx2/source/appl/opengrf.cxx                                |    6 
 sfx2/source/appl/sfxhelp.cxx                                |    2 
 sfx2/source/appl/sfxpicklist.cxx                            |    4 
 sfx2/source/appl/shutdowniconaqua.mm                        |    4 
 sfx2/source/bastyp/fltfnc.cxx                               |    4 
 sfx2/source/bastyp/frmhtmlw.cxx                             |    2 
 sfx2/source/bastyp/helper.cxx                               |    4 
 sfx2/source/control/recentdocsview.cxx                      |    2 
 sfx2/source/control/recentdocsviewitem.cxx                  |    4 
 sfx2/source/control/unoctitm.cxx                            |    2 
 sfx2/source/dialog/dinfdlg.cxx                              |    6 
 sfx2/source/dialog/filedlghelper.cxx                        |   26 -
 sfx2/source/dialog/mailmodel.cxx                            |   10 
 sfx2/source/doc/docfile.cxx                                 |   76 +--
 sfx2/source/doc/docinsert.cxx                               |    2 
 sfx2/source/doc/docmacromode.cxx                            |    2 
 sfx2/source/doc/doctempl.cxx                                |   34 -
 sfx2/source/doc/doctemplates.cxx                            |  114 ++--
 sfx2/source/doc/frmdescr.cxx                                |    2 
 sfx2/source/doc/guisaveas.cxx                               |   24 
 sfx2/source/doc/iframe.cxx                                  |    4 
 sfx2/source/doc/objcont.cxx                                 |    2 
 sfx2/source/doc/objmisc.cxx                                 |   26 -
 sfx2/source/doc/objstor.cxx                                 |    8 
 sfx2/source/doc/objxtor.cxx                                 |    2 
 sfx2/source/doc/printhelper.cxx                             |    4 
 sfx2/source/doc/sfxbasemodel.cxx                            |    2 
 sfx2/source/doc/templatedlg.cxx                             |    4 
 sfx2/source/inet/inettbc.cxx                                |    2 
 sfx2/source/notify/eventsupplier.cxx                        |    2 
 sfx2/source/view/viewfrm.cxx                                |   10 
 sfx2/source/view/viewfrm2.cxx                               |    2 
 sfx2/source/view/viewsh.cxx                                 |    4 
 slideshow/source/engine/shapes/shapeimporter.cxx            |    2 
 slideshow/source/engine/soundplayer.cxx                     |    2 
 sot/source/sdstor/storage.cxx                               |    4 
 sot/source/sdstor/ucbstorage.cxx                            |   10 
 svgio/source/svgreader/svgnode.cxx                          |    2 
 svl/source/fsstor/fsstorage.cxx                             |   74 +--
 svl/source/misc/filenotation.cxx                            |    2 
 svl/source/misc/inethist.cxx                                |   14 
 svl/source/misc/lockfilecommon.cxx                          |    4 
 svl/source/misc/urihelper.cxx                               |   30 -
 svtools/source/contnr/fileview.cxx                          |   16 
 svtools/source/contnr/foldertree.cxx                        |    4 
 svtools/source/control/breadcrumb.cxx                       |    4 
 svtools/source/control/inettbc.cxx                          |   48 -
 svtools/source/dialogs/PlaceEditDialog.cxx                  |   10 
 svtools/source/dialogs/ServerDetailsControls.cxx            |    4 
 svtools/source/dialogs/addresstemplate.cxx                  |    4 
 svtools/source/misc/imagemgr.cxx                            |    6 
 svtools/source/misc/imap.cxx                                |    2 
 svtools/source/misc/templatefoldercache.cxx                 |    6 
 svtools/source/misc/transfer.cxx                            |    2 
 svx/source/core/graphichelper.cxx                           |    4 
 svx/source/dialog/docrecovery.cxx                           |    6 
 svx/source/dialog/imapdlg.cxx                               |    8 
 svx/source/dialog/imapwnd.cxx                               |    2 
 svx/source/dialog/langbox.cxx                               |    2 
 svx/source/form/databaselocationinput.cxx                   |    2 
 svx/source/form/datanavi.cxx                                |    2 
 svx/source/form/fmpage.cxx                                  |    2 
 svx/source/gallery2/galbrws1.cxx                            |    2 
 svx/source/gallery2/galbrws2.cxx                            |   10 
 svx/source/gallery2/galctrl.cxx                             |    4 
 svx/source/gallery2/galexpl.cxx                             |    2 
 svx/source/gallery2/galini.cxx                              |    2 
 svx/source/gallery2/gallery1.cxx                            |   12 
 svx/source/gallery2/galmisc.cxx                             |   26 -
 svx/source/gallery2/galobj.cxx                              |    2 
 svx/source/gallery2/galtheme.cxx                            |   66 +-
 svx/source/gengal/gengal.cxx                                |    6 
 svx/source/sidebar/nbdtmg.cxx                               |    4 
 svx/source/svdraw/svdomedia.cxx                             |    2 
 svx/source/svdraw/svdotxln.cxx                              |    6 
 svx/source/unogallery/unogalitem.cxx                        |    2 
 svx/source/xoutdev/_xoutbmp.cxx                             |   18 
 svx/source/xoutdev/xtable.cxx                               |    6 
 sw/qa/core/uwriter.cxx                                      |    6 
 sw/source/core/doc/DocumentLinksAdministrationManager.cxx   |    2 
 sw/source/core/doc/docglbl.cxx                              |    2 
 sw/source/core/doc/notxtfrm.cxx                             |    4 
 sw/source/core/doc/visiturl.cxx                             |    2 
 sw/source/core/draw/dpage.cxx                               |    8 
 sw/source/core/edit/edglss.cxx                              |    4 
 sw/source/core/fields/docufld.cxx                           |   12 
 sw/source/core/graphic/ndgrf.cxx                            |    2 
 sw/source/core/swg/SwXMLTextBlocks.cxx                      |    2 
 sw/source/core/swg/swblocks.cxx                             |    2 
 sw/source/core/text/EnhancedPDFExportHelper.cxx             |    2 
 sw/source/core/unocore/swunohelper.cxx                      |    6 
 sw/source/filter/basflt/iodetect.cxx                        |    2 
 sw/source/filter/basflt/shellio.cxx                         |    4 
 sw/source/filter/html/SwAppletImpl.cxx                      |    2 
 sw/source/filter/html/htmlgrin.cxx                          |    2 
 sw/source/filter/html/htmlplug.cxx                          |    2 
 sw/source/filter/html/wrthtml.cxx                           |    2 
 sw/source/filter/ww8/wrtw8esh.cxx                           |    4 
 sw/source/filter/ww8/wrtw8nds.cxx                           |    8 
 sw/source/filter/ww8/ww8par.cxx                             |    6 
 sw/source/filter/xml/xmltexti.cxx                           |    4 
 sw/source/ui/chrdlg/chardlg.cxx                             |    2 
 sw/source/ui/dbui/addresslistdialog.cxx                     |    2 
 sw/source/ui/dbui/createaddresslistdialog.cxx               |    2 
 sw/source/ui/dbui/mmresultdialogs.cxx                       |    8 
 sw/source/ui/dialog/uiregionsw.cxx                          |   12 
 sw/source/ui/frmdlg/frmpage.cxx                             |    4 
 sw/source/ui/index/cnttab.cxx                               |    2 
 sw/source/ui/misc/glosbib.cxx                               |    2 
 sw/source/ui/vba/vbatemplate.cxx                            |    2 
 sw/source/uibase/app/docsh.cxx                              |    4 
 sw/source/uibase/app/docsh2.cxx                             |    2 
 sw/source/uibase/config/uinums.cxx                          |    2 
 sw/source/uibase/dbui/dbmgr.cxx                             |   32 -
 sw/source/uibase/dochdl/gloshdl.cxx                         |    2 
 sw/source/uibase/dochdl/swdtflvr.cxx                        |   12 
 sw/source/uibase/docvw/edtwin2.cxx                          |    4 
 sw/source/uibase/shells/grfsh.cxx                           |    2 
 sw/source/uibase/uiview/view2.cxx                           |    4 
 sw/source/uibase/uno/unoatxt.cxx                            |    2 
 sw/source/uibase/uno/unomailmerge.cxx                       |    4 
 sw/source/uibase/utlui/content.cxx                          |    4 
 sw/source/uibase/utlui/glbltree.cxx                         |   10 
 sw/source/uibase/utlui/navipi.cxx                           |    2 
 toolkit/source/awt/animatedimagespeer.cxx                   |    2 
 toolkit/source/controls/controlmodelcontainerbase.cxx       |    2 
 tools/qa/cppunit/test_urlobj.cxx                            |   64 +-
 tools/source/fsys/urlobj.cxx                                |  274 +++++------
 ucb/source/core/FileAccess.cxx                              |   46 -
 ucb/source/ucp/cmis/cmis_content.cxx                        |    8 
 ucb/source/ucp/cmis/cmis_url.cxx                            |   10 
 unotools/source/config/pathoptions.cxx                      |   16 
 unotools/source/ucbhelper/ucbhelper.cxx                     |   14 
 uui/source/fltdlg.cxx                                       |    2 
 uui/source/passworddlg.cxx                                  |    2 
 vbahelper/source/vbahelper/vbadocumentbase.cxx              |    2 
 vcl/source/bitmap/CommandImageResolver.cxx                  |    2 
 vcl/source/filter/graphicfilter.cxx                         |    8 
 vcl/source/filter/graphicfilter2.cxx                        |    2 
 vcl/source/filter/sgvmain.cxx                               |    4 
 vcl/source/gdi/impgraph.cxx                                 |   10 
 vcl/source/gdi/pdfwriter_impl.cxx                           |   16 
 vcl/source/image/ImplImageTree.cxx                          |    4 
 vcl/unx/generic/fontmanager/fontmanager.cxx                 |    6 
 vcl/unx/generic/fontmanager/helper.cxx                      |    2 
 vcl/unx/generic/printer/ppdparser.cxx                       |   10 
 vcl/unx/generic/printer/printerinfomanager.cxx              |    4 
 vcl/unx/gtk/fpicker/SalGtkFilePicker.cxx                    |    4 
 vcl/unx/gtk/fpicker/SalGtkPicker.cxx                        |    2 
 xmloff/source/core/xmlexp.cxx                               |    4 
 xmloff/source/core/xmlimp.cxx                               |    6 
 xmloff/source/draw/eventimp.cxx                             |    2 
 xmlsecurity/source/dialogs/macrosecurity.cxx                |    2 
 xmlsecurity/workben/signaturetest.cxx                       |    2 
 313 files changed, 1397 insertions(+), 1393 deletions(-)

New commits:
commit aa54f8aa093bcb62c1428d252150ed2591ce2c19
Author: Noel Grandin <noel.grandin at collabora.co.uk>
Date:   Mon Dec 5 10:11:37 2016 +0200

    convert EscapeType to scoped enum
    
    Change-Id: Ic688a9803772a7ce39d03374986118d85807c18c

diff --git a/include/tools/urlobj.hxx b/include/tools/urlobj.hxx
index a477e47..6630e51 100644
--- a/include/tools/urlobj.hxx
+++ b/include/tools/urlobj.hxx
@@ -814,11 +814,11 @@ public:
         PART_HTTP_QUERY             = 0x20000, //TODO! unused?
     };
 
-    enum EscapeType
+    enum class EscapeType
     {
-        ESCAPE_NO,
-        ESCAPE_OCTET,
-        ESCAPE_UTF32
+        NONE,
+        Octet,
+        Utf32
     };
 
     /** Encode some text as part of a URI.
diff --git a/tools/source/fsys/urlobj.cxx b/tools/source/fsys/urlobj.cxx
index b402d44..b841428 100644
--- a/tools/source/fsys/urlobj.cxx
+++ b/tools/source/fsys/urlobj.cxx
@@ -1246,7 +1246,7 @@ bool INetURLObject::setAbsURIRef(OUString const & rTheAbsURIRef,
                 EscapeType eEscapeType;
                 sal_uInt32 nUTF32 = getUTF32(p1, pUserInfoEnd, bOctets,
                                              eMechanism, eCharset, eEscapeType);
-                if (eEscapeType == ESCAPE_NO)
+                if (eEscapeType == EscapeType::NONE)
                 {
                     if (nUTF32 == ':' && bSupportsPassword)
                     {
@@ -1651,7 +1651,7 @@ bool INetURLObject::convertRelToAbs(OUString const & rTheRelURIRef,
                 sal_uInt32 nUTF32
                     = getUTF32(p, pEnd, false/*bOctets*/, eMechanism,
                                eCharset, eEscapeType);
-                if (eEscapeType == ESCAPE_NO)
+                if (eEscapeType == EscapeType::NONE)
                 {
                     if (nUTF32 == nSegmentDelimiter)
                         break;
@@ -1705,7 +1705,7 @@ bool INetURLObject::convertRelToAbs(OUString const & rTheRelURIRef,
             EscapeType eEscapeType;
             sal_uInt32 nUTF32
                 = getUTF32(p, pEnd, false/*bOctets*/, eMechanism, eCharset, eEscapeType);
-            if (eEscapeType == ESCAPE_NO)
+            if (eEscapeType == EscapeType::NONE)
             {
                 if (nUTF32 == nFragmentDelimiter)
                 {
@@ -2935,7 +2935,7 @@ bool INetURLObject::parsePath(INetProtocol eScheme,
                 EscapeType eEscapeType;
                 sal_uInt32 nUTF32 = getUTF32(pPos, pEnd, bOctets, eMechanism,
                                              eCharset, eEscapeType);
-                if (eEscapeType == ESCAPE_NO)
+                if (eEscapeType == EscapeType::NONE)
                 {
                     if (nUTF32 == nSegmentDelimiter
                         || nUTF32 == nAltSegmentDelimiter)
@@ -3043,7 +3043,7 @@ bool INetURLObject::parsePath(INetProtocol eScheme,
                 EscapeType eEscapeType;
                 sal_uInt32 nUTF32 = getUTF32(pPos, pEnd, bOctets, eMechanism,
                                              eCharset, eEscapeType);
-                if (eEscapeType == ESCAPE_NO && nUTF32 == '/')
+                if (eEscapeType == EscapeType::NONE && nUTF32 == '/')
                     aTheSynPath.append('/');
                 else
                     appendUCS4(aTheSynPath, nUTF32, eEscapeType, bOctets,
@@ -3089,7 +3089,7 @@ bool INetURLObject::parsePath(INetProtocol eScheme,
                 EscapeType eEscapeType;
                 sal_uInt32 nUTF32 = getUTF32(pPos, pEnd, bOctets, eMechanism,
                                              eCharset, eEscapeType);
-                if (eEscapeType == ESCAPE_NO && nUTF32 == '/')
+                if (eEscapeType == EscapeType::NONE && nUTF32 == '/')
                     aTheSynPath.append('/');
                 else
                     appendUCS4(aTheSynPath, nUTF32, eEscapeType, bOctets,
@@ -3406,15 +3406,15 @@ OUString INetURLObject::decode(sal_Unicode const * pBegin,
                                      EncodeMechanism::WasEncoded, eCharset, eEscapeType);
         switch (eEscapeType)
         {
-            case ESCAPE_NO:
+            case EscapeType::NONE:
                 aResult.appendUtf32(nUTF32);
                 break;
 
-            case ESCAPE_OCTET:
+            case EscapeType::Octet:
                 appendEscape(aResult, nUTF32);
                 break;
 
-            case ESCAPE_UTF32:
+            case EscapeType::Utf32:
                 if (
                      rtl::isAscii(nUTF32) &&
                      (
@@ -4507,7 +4507,7 @@ OUString INetURLObject::getFSysPath(FSysStyle eStyle,
                 sal_uInt32 nUTF32 = getUTF32(p, pEnd, false, EncodeMechanism::WasEncoded,
                                              RTL_TEXTENCODING_UTF8,
                                              eEscapeType);
-                if (eEscapeType == ESCAPE_NO && nUTF32 == '/')
+                if (eEscapeType == EscapeType::NONE && nUTF32 == '/')
                     aSynFSysPath.append('\\');
                 else
                     aSynFSysPath.appendUtf32(nUTF32);
@@ -4575,7 +4575,7 @@ void INetURLObject::appendUCS4(OUStringBuffer& rTheText, sal_uInt32 nUCS4,
     rtl_TextEncoding eTargetCharset = RTL_TEXTENCODING_DONTKNOW;
     switch (eEscapeType)
     {
-        case ESCAPE_NO:
+        case EscapeType::NONE:
             if (mustEncode(nUCS4, ePart))
             {
                 bEscape = true;
@@ -4586,12 +4586,12 @@ void INetURLObject::appendUCS4(OUStringBuffer& rTheText, sal_uInt32 nUCS4,
                 bEscape = false;
             break;
 
-        case ESCAPE_OCTET:
+        case EscapeType::Octet:
             bEscape = true;
             eTargetCharset = RTL_TEXTENCODING_ISO_8859_1;
             break;
 
-        case ESCAPE_UTF32:
+        case EscapeType::Utf32:
             if (mustEncode(nUCS4, ePart))
             {
                 bEscape = true;
@@ -4642,7 +4642,7 @@ sal_uInt32 INetURLObject::getUTF32(sal_Unicode const *& rBegin,
     switch (eMechanism)
     {
         case EncodeMechanism::All:
-            rEscapeType = ESCAPE_NO;
+            rEscapeType = EscapeType::NONE;
             break;
 
         case EncodeMechanism::WasEncoded:
@@ -4663,16 +4663,16 @@ sal_uInt32 INetURLObject::getUTF32(sal_Unicode const *& rBegin,
                         SAL_FALLTHROUGH;
                     case RTL_TEXTENCODING_ASCII_US:
                         rEscapeType = rtl::isAscii(nUTF32) ?
-                                          ESCAPE_UTF32 : ESCAPE_OCTET;
+                                          EscapeType::Utf32 : EscapeType::Octet;
                         break;
 
                     case RTL_TEXTENCODING_ISO_8859_1:
-                        rEscapeType = ESCAPE_UTF32;
+                        rEscapeType = EscapeType::Utf32;
                         break;
 
                     case RTL_TEXTENCODING_UTF8:
                         if (rtl::isAscii(nUTF32))
-                            rEscapeType = ESCAPE_UTF32;
+                            rEscapeType = EscapeType::Utf32;
                         else
                         {
                             if (nUTF32 >= 0xC0 && nUTF32 <= 0xF4)
@@ -4730,17 +4730,17 @@ sal_uInt32 INetURLObject::getUTF32(sal_Unicode const *& rBegin,
                                 {
                                     rBegin = p;
                                     nUTF32 = nEncoded;
-                                    rEscapeType = ESCAPE_UTF32;
+                                    rEscapeType = EscapeType::Utf32;
                                     break;
                                 }
                             }
-                            rEscapeType = ESCAPE_OCTET;
+                            rEscapeType = EscapeType::Octet;
                         }
                         break;
                 }
             }
             else
-                rEscapeType = ESCAPE_NO;
+                rEscapeType = EscapeType::NONE;
             break;
         }
 
@@ -4754,10 +4754,10 @@ sal_uInt32 INetURLObject::getUTF32(sal_Unicode const *& rBegin,
             {
                 rBegin += 2;
                 nUTF32 = nWeight1 << 4 | nWeight2;
-                rEscapeType = ESCAPE_OCTET;
+                rEscapeType = EscapeType::Octet;
             }
             else
-                rEscapeType = ESCAPE_NO;
+                rEscapeType = EscapeType::NONE;
             break;
         }
     }
commit 50151db9f740afee7f11a10cc5c61b437bf87caf
Author: Noel Grandin <noel.grandin at collabora.co.uk>
Date:   Mon Dec 5 09:27:09 2016 +0200

    convert FSysStyle to o3tl::typed_flags
    
    Change-Id: I58a63a0e6f619442f21827064644ecd8ca57b8ff

diff --git a/avmedia/source/framework/modeltools.cxx b/avmedia/source/framework/modeltools.cxx
index 9aacfc3..d2d5380 100644
--- a/avmedia/source/framework/modeltools.cxx
+++ b/avmedia/source/framework/modeltools.cxx
@@ -164,7 +164,7 @@ static void lcl_EmbedExternals(const OUString& rSourceURL, const uno::Reference<
 
     // Convert URL to a file path for loading
     const INetURLObject aURLObj(sTempFileURL);
-    std::string sUrl = OUStringToOString( aURLObj.getFSysPath(INetURLObject::FSYS_DETECT), RTL_TEXTENCODING_UTF8 ).getStr();
+    std::string sUrl = OUStringToOString( aURLObj.getFSysPath(FSysStyle::Detect), RTL_TEXTENCODING_UTF8 ).getStr();
 
     // Parse json, read externals' URI and modify this relative URI's so they remain valid in the new context.
     std::vector<std::string> vExternals;
diff --git a/avmedia/source/opengl/oglplayer.cxx b/avmedia/source/opengl/oglplayer.cxx
index 50fdf4c..bfc25d4 100644
--- a/avmedia/source/opengl/oglplayer.cxx
+++ b/avmedia/source/opengl/oglplayer.cxx
@@ -71,7 +71,7 @@ bool OGLPlayer::create( const OUString& rURL )
 
     // Convert URL to a system path
     const INetURLObject aURLObj(m_sURL);
-    const std::string sFilePath = OUStringToOString( aURLObj.getFSysPath(INetURLObject::FSYS_DETECT), RTL_TEXTENCODING_UTF8 ).getStr();
+    const std::string sFilePath = OUStringToOString( aURLObj.getFSysPath(FSysStyle::Detect), RTL_TEXTENCODING_UTF8 ).getStr();
 
     // Load *.json file and init renderer
     m_pHandle = gltf_renderer_init(sFilePath, m_vInputFiles);
diff --git a/connectivity/source/drivers/dbase/DTable.cxx b/connectivity/source/drivers/dbase/DTable.cxx
index 13cfc68..0229fae 100644
--- a/connectivity/source/drivers/dbase/DTable.cxx
+++ b/connectivity/source/drivers/dbase/DTable.cxx
@@ -685,7 +685,7 @@ void ODbaseTable::refreshIndexes()
         aURL.SetURL(getEntry(m_pConnection,m_Name));
 
         aURL.setExtension("inf");
-        Config aInfFile(aURL.getFSysPath(INetURLObject::FSYS_DETECT));
+        Config aInfFile(aURL.getFSysPath(FSysStyle::Detect));
         aInfFile.SetGroup(dBASE_III_GROUP);
         sal_uInt16 nKeyCnt = aInfFile.GetKeyCount();
         OString aKeyName;
diff --git a/cui/source/options/optjava.cxx b/cui/source/options/optjava.cxx
index 0f2005c..03f51c9 100644
--- a/cui/source/options/optjava.cxx
+++ b/cui/source/options/optjava.cxx
@@ -533,7 +533,7 @@ void SvxJavaOptionsPage::AddJRE( JavaInfo* _pInfo )
         sEntry.append(m_sAccessibilityText);
     SvTreeListEntry* pEntry = m_pJavaList->InsertEntry(sEntry.makeStringAndClear());
     INetURLObject aLocObj( OUString( _pInfo->sLocation ) );
-    OUString* pLocation = new OUString( aLocObj.getFSysPath( INetURLObject::FSYS_DETECT ) );
+    OUString* pLocation = new OUString( aLocObj.getFSysPath( FSysStyle::Detect ) );
     pEntry->SetUserData( pLocation );
 #else
     (void) this;
@@ -1004,7 +1004,7 @@ IMPL_LINK_NOARG(SvxJavaClassPathDlg, AddArchiveHdl_Impl, Button*, void)
     OUString sFolder;
     if ( m_pPathList->GetSelectEntryCount() > 0 )
     {
-        INetURLObject aObj( m_pPathList->GetSelectEntry(), INetURLObject::FSYS_DETECT );
+        INetURLObject aObj( m_pPathList->GetSelectEntry(), FSysStyle::Detect );
         sFolder = aObj.GetMainURL( INetURLObject::DecodeMechanism::NONE );
     }
     else
@@ -1014,7 +1014,7 @@ IMPL_LINK_NOARG(SvxJavaClassPathDlg, AddArchiveHdl_Impl, Button*, void)
     {
         OUString sURL = aDlg.GetPath();
         INetURLObject aURL( sURL );
-        OUString sFile = aURL.getFSysPath( INetURLObject::FSYS_DETECT );
+        OUString sFile = aURL.getFSysPath( FSysStyle::Detect );
         if ( !IsPathDuplicate( sURL ) )
         {
             sal_Int32 nPos = m_pPathList->InsertEntry( sFile, SvFileInformationManager::GetImage( aURL ) );
@@ -1039,7 +1039,7 @@ IMPL_LINK_NOARG(SvxJavaClassPathDlg, AddPathHdl_Impl, Button*, void)
     OUString sOldFolder;
     if ( m_pPathList->GetSelectEntryCount() > 0 )
     {
-        INetURLObject aObj( m_pPathList->GetSelectEntry(), INetURLObject::FSYS_DETECT );
+        INetURLObject aObj( m_pPathList->GetSelectEntry(), FSysStyle::Detect );
         sOldFolder = aObj.GetMainURL( INetURLObject::DecodeMechanism::NONE );
     }
     else
@@ -1049,7 +1049,7 @@ IMPL_LINK_NOARG(SvxJavaClassPathDlg, AddPathHdl_Impl, Button*, void)
     {
         OUString sFolderURL( xFolderPicker->getDirectory() );
         INetURLObject aURL( sFolderURL );
-        OUString sNewFolder = aURL.getFSysPath( INetURLObject::FSYS_DETECT );
+        OUString sNewFolder = aURL.getFSysPath( FSysStyle::Detect );
         if ( !IsPathDuplicate( sFolderURL ) )
         {
             sal_Int32 nPos = m_pPathList->InsertEntry( sNewFolder, SvFileInformationManager::GetImage( aURL ) );
@@ -1098,7 +1098,7 @@ bool SvxJavaClassPathDlg::IsPathDuplicate( const OUString& _rPath )
     sal_Int32 nCount = m_pPathList->GetEntryCount();
     for ( sal_Int32 i = 0; i < nCount; ++i )
     {
-        INetURLObject aOtherObj( m_pPathList->GetEntry(i), INetURLObject::FSYS_DETECT );
+        INetURLObject aOtherObj( m_pPathList->GetEntry(i), FSysStyle::Detect );
         if ( aOtherObj == aFileObj )
         {
             bRet = true;
@@ -1138,8 +1138,8 @@ void SvxJavaClassPathDlg::SetClassPath( const OUString& _rPath )
     for ( sal_Int32 i = 0; i < nCount; ++i )
     {
         OUString sToken = _rPath.getToken( 0, CLASSPATH_DELIMITER, nIdx );
-        INetURLObject aURL( sToken, INetURLObject::FSYS_DETECT );
-        OUString sPath = aURL.getFSysPath( INetURLObject::FSYS_DETECT );
+        INetURLObject aURL( sToken, FSysStyle::Detect );
+        OUString sPath = aURL.getFSysPath( FSysStyle::Detect );
         m_pPathList->InsertEntry( sPath, SvFileInformationManager::GetImage( aURL ) );
     }
     // select first entry
diff --git a/cui/source/options/optpath.cxx b/cui/source/options/optpath.cxx
index f612922..f975d7e 100644
--- a/cui/source/options/optpath.cxx
+++ b/cui/source/options/optpath.cxx
@@ -497,7 +497,7 @@ void SvxPathTabPage::ChangeCurrentEntry( const OUString& _rFolder )
     aNewObj.removeFinalSlash();
 
     // then the new path also an URL else system path
-    OUString sNewPathStr = bURL ? _rFolder : aNewObj.getFSysPath( INetURLObject::FSYS_DETECT );
+    OUString sNewPathStr = bURL ? _rFolder : aNewObj.getFSysPath( FSysStyle::Detect );
 
     bool bChanged =
 #ifdef UNX
diff --git a/cui/source/tabpages/backgrnd.cxx b/cui/source/tabpages/backgrnd.cxx
index 41e525d..5b40f39 100644
--- a/cui/source/tabpages/backgrnd.cxx
+++ b/cui/source/tabpages/backgrnd.cxx
@@ -1163,7 +1163,7 @@ IMPL_LINK( SvxBackgroundTabPage, FileClickHdl_Impl, Button*, pBox, void )
             INetURLObject aObj( aBgdGraphicPath );
             OUString aFilePath;
             if ( aObj.GetProtocol() == INetProtocol::File )
-                aFilePath = aObj.getFSysPath( INetURLObject::FSYS_DETECT );
+                aFilePath = aObj.getFSysPath( FSysStyle::Detect );
             else
                 aFilePath = aBgdGraphicPath;
             m_pFtFile->SetText( aFilePath );
diff --git a/editeng/source/items/flditem.cxx b/editeng/source/items/flditem.cxx
index f235b5e..8edcd9c 100644
--- a/editeng/source/items/flditem.cxx
+++ b/editeng/source/items/flditem.cxx
@@ -985,14 +985,14 @@ OUString SvxExtFileField::GetFormatted() const
         switch( eFormat )
         {
             case SVXFILEFORMAT_FULLPATH:
-                aString = aURLObj.getFSysPath(INetURLObject::FSYS_DETECT);
+                aString = aURLObj.getFSysPath(FSysStyle::Detect);
             break;
 
             case SVXFILEFORMAT_PATH:
                 aURLObj.removeSegment(INetURLObject::LAST_SEGMENT, false);
                 // #101742# Leave trailing slash at the pathname
                 aURLObj.setFinalSlash();
-                aString = aURLObj.getFSysPath(INetURLObject::FSYS_DETECT);
+                aString = aURLObj.getFSysPath(FSysStyle::Detect);
             break;
 
             case SVXFILEFORMAT_NAME:
diff --git a/fpicker/source/office/iodlg.cxx b/fpicker/source/office/iodlg.cxx
index 9ed2753..8b1f47a 100644
--- a/fpicker/source/office/iodlg.cxx
+++ b/fpicker/source/office/iodlg.cxx
@@ -1431,7 +1431,7 @@ IMPL_LINK( SvtFileDialog, SelectHdl_Impl, SvTreeListBox*, pBox, void )
             {
                 if ( !pUserData->mbIsFolder )
                     aObj.removeSegment();
-                OUString aName = aObj.getFSysPath( (INetURLObject::FSysStyle)(INetURLObject::FSYS_DETECT & ~INetURLObject::FSYS_VOS) );
+                OUString aName = aObj.getFSysPath( (FSysStyle)(FSysStyle::Detect & ~FSysStyle::Vos) );
                 pImpl->_pEdFileName->SetText( aName );
                 pImpl->_pEdFileName->SetSelection( Selection( 0, aName.getLength() ) );
                 _aPath = pUserData->maURL;
diff --git a/framework/source/services/autorecovery.cxx b/framework/source/services/autorecovery.cxx
index dec1ee8..610db9c 100644
--- a/framework/source/services/autorecovery.cxx
+++ b/framework/source/services/autorecovery.cxx
@@ -4173,7 +4173,7 @@ void AutoRecovery::impl_showFullDiscError()
     OUString sBackupURL(SvtPathOptions().GetBackupPath());
     INetURLObject aConverter(sBackupURL);
     sal_Unicode aDelimiter;
-    OUString sBackupPath = aConverter.getFSysPath(INetURLObject::FSYS_DETECT, &aDelimiter);
+    OUString sBackupPath = aConverter.getFSysPath(FSysStyle::Detect, &aDelimiter);
     if (sBackupPath.getLength() < 1)
         sBackupPath = sBackupURL;
 
diff --git a/framework/source/uielement/recentfilesmenucontroller.cxx b/framework/source/uielement/recentfilesmenucontroller.cxx
index c651b2e..e609cf1 100644
--- a/framework/source/uielement/recentfilesmenucontroller.cxx
+++ b/framework/source/uielement/recentfilesmenucontroller.cxx
@@ -184,7 +184,7 @@ void RecentFilesMenuController::fillPopupMenu( Reference< css::awt::XPopupMenu >
                 // Abbreviate URL
                 OUString   aMenuTitle;
                 INetURLObject   aURL( m_aRecentFilesItems[i] );
-                OUString aTipHelpText( aURL.getFSysPath( INetURLObject::FSYS_DETECT ) );
+                OUString aTipHelpText( aURL.getFSysPath( FSysStyle::Detect ) );
 
                 if ( aURL.GetProtocol() == INetProtocol::File )
                 {
diff --git a/include/svl/urihelper.hxx b/include/svl/urihelper.hxx
index b26a43f..487dc92 100644
--- a/include/svl/urihelper.hxx
+++ b/include/svl/urihelper.hxx
@@ -58,7 +58,7 @@ SVL_DLLPUBLIC OUString SmartRel2Abs(INetURLObject const & rTheBaseURIRef,
                                     INetURLObject::DecodeMechanism eDecodeMechanism = INetURLObject::DecodeMechanism::ToIUri,
                                     rtl_TextEncoding eCharset = RTL_TEXTENCODING_UTF8,
                                     bool bRelativeNonURIs = false,
-                                    INetURLObject::FSysStyle eStyle = INetURLObject::FSYS_DETECT);
+                                    FSysStyle eStyle = FSysStyle::Detect);
 
 SVL_DLLPUBLIC void SetMaybeFileHdl(Link<OUString *, bool> const & rTheMaybeFileHdl);
 
diff --git a/include/tools/urlobj.hxx b/include/tools/urlobj.hxx
index 52675f9..a477e47 100644
--- a/include/tools/urlobj.hxx
+++ b/include/tools/urlobj.hxx
@@ -25,6 +25,7 @@
 #include <rtl/ustrbuf.hxx>
 #include <rtl/textenc.h>
 #include <sal/types.h>
+#include <o3tl/typed_flags_set.hxx>
 
 #include <memory>
 
@@ -79,6 +80,101 @@ enum class INetProtocol
     LAST = Cmis
 };
 
+/** The supported notations for file system paths.
+ */
+enum class FSysStyle
+{
+    /** VOS notation (e.g., "//server/dir/file").
+     */
+    Vos = 0x1,
+
+    /** Unix notation (e.g., "/dir/file").
+     */
+    Unix = 0x2,
+
+    /** DOS notation (e.g., "a:\dir\file" and "\\server\dir\file").
+     */
+    Dos = 0x4,
+
+    /** Detect the used notation.
+
+        @descr  For the following descriptions, please note that
+        whereas FSYS_DEFAULT includes all style bits, combinations of only
+        a few style bits are also possible, and are also described.
+
+        @descr  When used to translate a file system path to a file URL,
+        the subset of the following productions for which the appropriate
+        style bit is set are checked in order (using the conventions of
+        RFC 2234, RFC 2396, and RFC 2732; UCS4 stands for any UCS4
+        character):
+
+         Production T1 (VOS local; FSysStyle::Vos only):
+            "//." ["/" *UCS4]
+          becomes
+            "file:///" *UCS4
+
+         Production T2 (VOS host; FSysStyle::Vos only):
+            "//" [host] ["/" *UCS4]
+          becomes
+            "file://" host "/" *UCS4
+
+         Production T3 (UNC; FSysStyle::Dos only):
+            "\\" [host] ["\" *UCS4]
+          becomes
+            "file://" host "/" *UCS4
+          replacing "\" by "/" within <*UCS4>
+
+         Production T4 (Unix-like DOS; FSysStyle::Dos only):
+            ALPHA ":" ["/" *UCS4]
+          becomes
+            "file:///" ALPHA ":/" *UCS4
+          replacing "\" by "/" within <*UCS4>
+
+         Production T5 (DOS; FSysStyle::Dos only):
+            ALPHA ":" ["\" *UCS4]
+          becomes
+            "file:///" ALPHA ":/" *UCS4
+          replacing "\" by "/" within <*UCS4>
+
+         Production T6 (any):
+            *UCS4
+          becomes
+            "file:///" *UCS4
+          replacing the delimiter by "/" within <*UCS4>.  The delimiter is
+          that character from the set { "/", "\" } which appears most
+          often in <*UCS4> (if FSysStyle::Unix is not among the style bits, "/"
+          is removed from the set; if FSysStyle::Dos is not among the style
+          bits, "\" is removed from the set).  If two or more
+          characters appear the same number of times, the character
+          mentioned first in that set is chosen.  If the first character
+          of <*UCS4> is the delimiter, that character is not copied.
+
+        @descr  When used to translate a file URL to a file system path,
+        the following productions are checked in order (using the
+        conventions of RFC 2234, RFC 2396, and RFC 2732):
+
+         Production F1 (VOS; FSysStyle::Vos):
+            "file://" host "/" fpath ["#" fragment]
+          becomes
+            "//" host "/" fpath
+
+         Production F2 (DOS; FSysStyle::Dos):
+            "file:///" ALPHA ":" ["/" fpath] ["#" fragment]
+          becomes
+            ALPHA ":" ["\" fpath]
+          replacing "/" by "\" in <fpath>
+
+         Production F3 (Unix; FSysStyle::Unix):
+            "file:///" fpath ["#" fragment]
+          becomes
+            "/" fpath
+     */
+    Detect = Vos | Unix | Dos
+};
+namespace o3tl {
+    template<> struct typed_flags<FSysStyle> : is_typed_flags<FSysStyle, 0x07> {};
+}
+
 class SAL_WARN_UNUSED TOOLS_DLLPUBLIC INetURLObject
 {
 public:
@@ -205,103 +301,11 @@ public:
 
     // Smart Parsing:
 
-    /** The supported notations for file system paths.
-     */
-    enum FSysStyle
-    {
-        /** VOS notation (e.g., "//server/dir/file").
-         */
-        FSYS_VOS = 0x1,
-
-        /** Unix notation (e.g., "/dir/file").
-         */
-        FSYS_UNX = 0x2,
-
-        /** DOS notation (e.g., "a:\dir\file" and "\\server\dir\file").
-         */
-        FSYS_DOS = 0x4,
-
-        /** Detect the used notation.
-
-            @descr  For the following descriptions, please note that
-            whereas FSYS_DEFAULT includes all style bits, combinations of only
-            a few style bits are also possible, and are also described.
-
-            @descr  When used to translate a file system path to a file URL,
-            the subset of the following productions for which the appropriate
-            style bit is set are checked in order (using the conventions of
-            RFC 2234, RFC 2396, and RFC 2732; UCS4 stands for any UCS4
-            character):
-
-             Production T1 (VOS local; FSYS_VOS only):
-                "//." ["/" *UCS4]
-              becomes
-                "file:///" *UCS4
-
-             Production T2 (VOS host; FSYS_VOS only):
-                "//" [host] ["/" *UCS4]
-              becomes
-                "file://" host "/" *UCS4
-
-             Production T3 (UNC; FSYS_DOS only):
-                "\\" [host] ["\" *UCS4]
-              becomes
-                "file://" host "/" *UCS4
-              replacing "\" by "/" within <*UCS4>
-
-             Production T4 (Unix-like DOS; FSYS_DOS only):
-                ALPHA ":" ["/" *UCS4]
-              becomes
-                "file:///" ALPHA ":/" *UCS4
-              replacing "\" by "/" within <*UCS4>
-
-             Production T5 (DOS; FSYS_DOS only):
-                ALPHA ":" ["\" *UCS4]
-              becomes
-                "file:///" ALPHA ":/" *UCS4
-              replacing "\" by "/" within <*UCS4>
-
-             Production T6 (any):
-                *UCS4
-              becomes
-                "file:///" *UCS4
-              replacing the delimiter by "/" within <*UCS4>.  The delimiter is
-              that character from the set { "/", "\" } which appears most
-              often in <*UCS4> (if FSYS_UNX is not among the style bits, "/"
-              is removed from the set; if FSYS_DOS is not among the style
-              bits, "\" is removed from the set).  If two or more
-              characters appear the same number of times, the character
-              mentioned first in that set is chosen.  If the first character
-              of <*UCS4> is the delimiter, that character is not copied.
-
-            @descr  When used to translate a file URL to a file system path,
-            the following productions are checked in order (using the
-            conventions of RFC 2234, RFC 2396, and RFC 2732):
-
-             Production F1 (VOS; FSYS_VOS):
-                "file://" host "/" fpath ["#" fragment]
-              becomes
-                "//" host "/" fpath
-
-             Production F2 (DOS; FSYS_DOS):
-                "file:///" ALPHA ":" ["/" fpath] ["#" fragment]
-              becomes
-                ALPHA ":" ["\" fpath]
-              replacing "/" by "\" in <fpath>
-
-             Production F3 (Unix; FSYS_UNX):
-                "file:///" fpath ["#" fragment]
-              becomes
-                "/" fpath
-         */
-        FSYS_DETECT = FSYS_VOS | FSYS_UNX | FSYS_DOS
-    };
-
     inline INetURLObject(OUString const & rTheAbsURIRef,
                          INetProtocol eTheSmartScheme,
                          EncodeMechanism eMechanism = EncodeMechanism::WasEncoded,
                          rtl_TextEncoding eCharset = RTL_TEXTENCODING_UTF8,
-                         FSysStyle eStyle = FSYS_DETECT);
+                         FSysStyle eStyle = FSysStyle::Detect);
 
     inline void SetSmartProtocol(INetProtocol eTheSmartScheme)
     { m_eSmartScheme = eTheSmartScheme; }
@@ -310,7 +314,7 @@ public:
     SetSmartURL(OUString const & rTheAbsURIRef,
                 EncodeMechanism eMechanism = EncodeMechanism::WasEncoded,
                 rtl_TextEncoding eCharset = RTL_TEXTENCODING_UTF8,
-                FSysStyle eStyle = FSYS_DETECT);
+                FSysStyle eStyle = FSysStyle::Detect);
 
     inline INetURLObject
     smartRel2Abs(OUString const & rTheRelURIRef,
@@ -319,7 +323,7 @@ public:
                  EncodeMechanism eMechanism = EncodeMechanism::WasEncoded,
                  rtl_TextEncoding eCharset = RTL_TEXTENCODING_UTF8,
                  bool bRelativeNonURIs = false,
-                 FSysStyle eStyle = FSYS_DETECT) const;
+                 FSysStyle eStyle = FSysStyle::Detect) const;
 
     // Relative URLs:
 
@@ -349,7 +353,7 @@ public:
               EncodeMechanism eEncodeMechanism = EncodeMechanism::WasEncoded,
               DecodeMechanism eDecodeMechanism = DecodeMechanism::ToIUri,
               rtl_TextEncoding eCharset = RTL_TEXTENCODING_UTF8,
-              FSysStyle eStyle = FSYS_DETECT);
+              FSysStyle eStyle = FSysStyle::Detect);
 
     // External URLs:
 
@@ -1230,7 +1234,7 @@ inline bool INetURLObject::GetNewAbsURL(OUString const & rTheRelURIRef,
     bool bWasAbsolute;
     if (!convertRelToAbs(rTheRelURIRef, aTheAbsURIRef, bWasAbsolute,
                          EncodeMechanism::WasEncoded, RTL_TEXTENCODING_UTF8, false/*bIgnoreFragment*/, false, false,
-                         FSYS_DETECT))
+                         FSysStyle::Detect))
         return false;
     if (pTheAbsURIRef)
         *pTheAbsURIRef = aTheAbsURIRef;
diff --git a/sc/source/filter/excel/xecontent.cxx b/sc/source/filter/excel/xecontent.cxx
index bbbbf4a..ee7ec4b 100644
--- a/sc/source/filter/excel/xecontent.cxx
+++ b/sc/source/filter/excel/xecontent.cxx
@@ -447,7 +447,7 @@ OUString XclExpHyperlink::BuildFileName(
         sal_uInt16& rnLevel, bool& rbRel, const OUString& rUrl, const XclExpRoot& rRoot, bool bEncoded )
 {
     INetURLObject aURLObject( rUrl );
-    OUString aDosName( bEncoded ? aURLObject.GetURLPath() : aURLObject.getFSysPath( INetURLObject::FSYS_DOS ) );
+    OUString aDosName( bEncoded ? aURLObject.GetURLPath() : aURLObject.getFSysPath( FSysStyle::Dos ) );
     rnLevel = 0;
     rbRel = rRoot.IsRelUrl();
 
@@ -2015,7 +2015,7 @@ XclExpWebQueryBuffer::XclExpWebQueryBuffer( const XclExpRoot& rRoot )
 
                     OUString aAbsDoc( ScGlobal::GetAbsDocName( aUrl, pShell ) );
                     INetURLObject aUrlObj( aAbsDoc );
-                    OUString aWebQueryUrl( aUrlObj.getFSysPath( INetURLObject::FSYS_DOS ) );
+                    OUString aWebQueryUrl( aUrlObj.getFSysPath( FSysStyle::Dos ) );
                     if( aWebQueryUrl.isEmpty() )
                         aWebQueryUrl = aAbsDoc;
 
diff --git a/sc/source/filter/excel/xehelper.cxx b/sc/source/filter/excel/xehelper.cxx
index 05201d6..ba13ae2 100644
--- a/sc/source/filter/excel/xehelper.cxx
+++ b/sc/source/filter/excel/xehelper.cxx
@@ -964,8 +964,8 @@ OUString lclEncodeDosUrl(
 
 OUString XclExpUrlHelper::EncodeUrl( const XclExpRoot& rRoot, const OUString& rAbsUrl, const OUString* pTableName )
 {
-    OUString aDosUrl = INetURLObject(rAbsUrl).getFSysPath(INetURLObject::FSYS_DOS);
-    OUString aDosBase = INetURLObject(rRoot.GetBasePath()).getFSysPath(INetURLObject::FSYS_DOS);
+    OUString aDosUrl = INetURLObject(rAbsUrl).getFSysPath(FSysStyle::Dos);
+    OUString aDosBase = INetURLObject(rRoot.GetBasePath()).getFSysPath(FSysStyle::Dos);
     return lclEncodeDosUrl(rRoot.GetBiff(), aDosUrl, aDosBase, pTableName);
 }
 
diff --git a/sc/source/filter/excel/xihelper.cxx b/sc/source/filter/excel/xihelper.cxx
index c20dd53..2d85d64 100644
--- a/sc/source/filter/excel/xihelper.cxx
+++ b/sc/source/filter/excel/xihelper.cxx
@@ -618,7 +618,7 @@ void XclImpUrlHelper::DecodeUrl(
     rbSameWb = false;
 
     sal_Unicode cCurrDrive = 0;
-    OUString aDosBase( INetURLObject( rRoot.GetBasePath() ).getFSysPath( INetURLObject::FSYS_DOS ) );
+    OUString aDosBase( INetURLObject( rRoot.GetBasePath() ).getFSysPath( FSysStyle::Dos ) );
     if (!aDosBase.isEmpty() && aDosBase.match(":\\", 1))
         cCurrDrive = aDosBase[0];
 
diff --git a/sc/source/filter/orcus/orcusfiltersimpl.cxx b/sc/source/filter/orcus/orcusfiltersimpl.cxx
index 66a9ca2..a27f270 100644
--- a/sc/source/filter/orcus/orcusfiltersimpl.cxx
+++ b/sc/source/filter/orcus/orcusfiltersimpl.cxx
@@ -33,9 +33,9 @@
 #include <com/sun/star/task/XStatusIndicator.hpp>
 
 #ifdef _WIN32
-#define SYSTEM_PATH INetURLObject::FSYS_DOS
+#define SYSTEM_PATH FSysStyle::Dos
 #else
-#define SYSTEM_PATH INetURLObject::FSYS_UNX
+#define SYSTEM_PATH FSysStyle::Unix
 #endif
 
 using namespace com::sun::star;
diff --git a/sd/source/ui/dlg/tpaction.cxx b/sd/source/ui/dlg/tpaction.cxx
index 0d917d6..3e28e9f 100644
--- a/sd/source/ui/dlg/tpaction.cxx
+++ b/sd/source/ui/dlg/tpaction.cxx
@@ -732,7 +732,7 @@ void SdTPAction::SetEditText( OUString const & rStr )
                 INetURLObject aURL( aText );
 
                 // try to convert to system path
-                OUString aTmpStr(aURL.getFSysPath(INetURLObject::FSYS_DETECT));
+                OUString aTmpStr(aURL.getFSysPath(FSysStyle::Detect));
 
                 if( !aTmpStr.isEmpty() )
                     aText = aTmpStr;    // was a system path
diff --git a/sfx2/source/appl/shutdowniconaqua.mm b/sfx2/source/appl/shutdowniconaqua.mm
index 2d466b4..a969e07 100644
--- a/sfx2/source/appl/shutdowniconaqua.mm
+++ b/sfx2/source/appl/shutdowniconaqua.mm
@@ -217,7 +217,7 @@ class RecentFilesStringLength : public ::cppu::WeakImplHelper< css::util::XStrin
         {
             // Do handle file URL differently => convert it to a system
             // path and abbreviate it with a special function:
-            ::rtl::OUString aSystemPath( aURL.getFSysPath( INetURLObject::FSYS_DETECT ) );
+            ::rtl::OUString aSystemPath( aURL.getFSysPath( FSysStyle::Detect ) );
             ::rtl::OUString aCompactedSystemPath;
 
             oslFileError nError = osl_abbreviateSystemPath( aSystemPath.pData, &aCompactedSystemPath.pData, 46, nullptr );
diff --git a/sfx2/source/control/recentdocsviewitem.cxx b/sfx2/source/control/recentdocsviewitem.cxx
index 0c12f38..5260f05 100644
--- a/sfx2/source/control/recentdocsviewitem.cxx
+++ b/sfx2/source/control/recentdocsviewitem.cxx
@@ -43,7 +43,7 @@ RecentDocsViewItem::RecentDocsViewItem(ThumbnailView &rView, const OUString &rUR
     INetURLObject aURLObj(rURL);
 
     if( aURLObj.GetProtocol() == INetProtocol::File )
-        m_sHelpText = aURLObj.getFSysPath(INetURLObject::FSYS_DETECT);
+        m_sHelpText = aURLObj.getFSysPath(FSysStyle::Detect);
     if( m_sHelpText.isEmpty() )
         m_sHelpText = aURLObj.GetURLNoPass();
 
diff --git a/sfx2/source/doc/guisaveas.cxx b/sfx2/source/doc/guisaveas.cxx
index cf93b3c..f7aa774 100644
--- a/sfx2/source/doc/guisaveas.cxx
+++ b/sfx2/source/doc/guisaveas.cxx
@@ -1241,7 +1241,7 @@ OUString ModelData_Impl::GetRecommendedName( const OUString& aSuggestedName, con
             if ( xTypeDetection.is() )
             {
                 INetURLObject aObj( "c:/" + aRecommendedName, INetProtocol::File,
-                        INetURLObject::EncodeMechanism::All, RTL_TEXTENCODING_UTF8, INetURLObject::FSYS_DOS );
+                        INetURLObject::EncodeMechanism::All, RTL_TEXTENCODING_UTF8, FSysStyle::Dos );
 
                 OUString aExtension = GetRecommendedExtension( aTypeName );
                 if ( !aExtension.isEmpty() )
diff --git a/sfx2/source/view/viewfrm.cxx b/sfx2/source/view/viewfrm.cxx
index 3e18546..42d97d8 100644
--- a/sfx2/source/view/viewfrm.cxx
+++ b/sfx2/source/view/viewfrm.cxx
@@ -408,7 +408,7 @@ void SfxViewFrame::ExecReload_Impl( SfxRequest& rReq )
             bool bIsWebDAV = aMedObj.isAnyKnownWebDAVScheme();
 
             if ( ( !bNeedsReload && ( ( aMedObj.GetProtocol() == INetProtocol::File &&
-                                        aMedObj.getFSysPath( INetURLObject::FSYS_DETECT ) != aPhysObj.getFSysPath( INetURLObject::FSYS_DETECT ) &&
+                                        aMedObj.getFSysPath( FSysStyle::Detect ) != aPhysObj.getFSysPath( FSysStyle::Detect ) &&
                                         !bPhysObjIsYounger )
                                       || ( bIsWebDAV && !bPhysObjIsYounger )
                                       || ( pMed->IsRemote() && !bIsWebDAV ) ) )
diff --git a/svl/source/misc/urihelper.cxx b/svl/source/misc/urihelper.cxx
index 4673a89..50c8b79 100644
--- a/svl/source/misc/urihelper.cxx
+++ b/svl/source/misc/urihelper.cxx
@@ -60,7 +60,7 @@ OUString URIHelper::SmartRel2Abs(INetURLObject const & rTheBaseURIRef,
                                  INetURLObject::DecodeMechanism eDecodeMechanism,
                                  rtl_TextEncoding eCharset,
                                  bool bRelativeNonURIs,
-                                 INetURLObject::FSysStyle eStyle)
+                                 FSysStyle eStyle)
 {
     // Backwards compatibility:
     if( rTheRelURIRef.startsWith("#") )
@@ -495,7 +495,7 @@ OUString URIHelper::FindFirstURLInText(OUString const & rText,
     // Productions 1--4 use the given eMechanism and eCharset.  Productions 5--9
     // use EncodeMechanism::All.
 
-    // Productions 6--9 are only applicable if the FSYS_DOS bit is set in
+    // Productions 6--9 are only applicable if the FSysStyle::Dos bit is set in
     // eStyle.
 
     bool bBoundary1 = true;
@@ -528,7 +528,7 @@ OUString URIHelper::FindFirstURLInText(OUString const & rText,
                     {
                         INetURLObject aUri(rText.copy(nPos, nUriEnd - nPos),
                                            INetProtocol::File, eMechanism, eCharset,
-                                           INetURLObject::FSYS_DETECT);
+                                           FSysStyle::Detect);
                         if (!aUri.HasError())
                         {
                             rBegin = nPos;
@@ -632,7 +632,7 @@ OUString URIHelper::FindFirstURLInText(OUString const & rText,
                                            INetProtocol::File,
                                            INetURLObject::EncodeMechanism::All,
                                            RTL_TEXTENCODING_UTF8,
-                                           INetURLObject::FSYS_DOS);
+                                           FSysStyle::Dos);
                         if (!aUri.HasError())
                         {
                             rBegin = nPos;
@@ -661,7 +661,7 @@ OUString URIHelper::FindFirstURLInText(OUString const & rText,
                                            INetProtocol::File,
                                            INetURLObject::EncodeMechanism::All,
                                            RTL_TEXTENCODING_UTF8,
-                                           INetURLObject::FSYS_DOS);
+                                           FSysStyle::Dos);
                         if (!aUri.HasError())
                         {
                             rBegin = nPos;
diff --git a/svtools/source/contnr/fileview.cxx b/svtools/source/contnr/fileview.cxx
index 335ef8b..218d0b5 100644
--- a/svtools/source/contnr/fileview.cxx
+++ b/svtools/source/contnr/fileview.cxx
@@ -256,7 +256,7 @@ NameTranslationList::NameTranslationList( const INetURLObject& rBaseURL ):
         if( aTestContent.isDocument() )
         {
             // ... also tests the existence of maTransFile by throwing an Exception
-            OUString        aFsysName( maTransFile.getFSysPath( INetURLObject::FSYS_DETECT ) );
+            OUString        aFsysName( maTransFile.getFSysPath( FSysStyle::Detect ) );
             Config          aConfig( aFsysName );
 
             aConfig.SetGroup( OString("TRANSLATIONNAMES") );
diff --git a/svtools/source/control/inettbc.cxx b/svtools/source/control/inettbc.cxx
index ed73fb9..6e4ad01 100644
--- a/svtools/source/control/inettbc.cxx
+++ b/svtools/source/control/inettbc.cxx
@@ -415,7 +415,7 @@ void SvtMatchContext_Impl::ReadFolder( const OUString& rURL,
                         sal_Unicode aDelimiter = '/';
                         if ( bSmart )
                             // when parsing is done "smart", the delimiter must be "guessed"
-                            aObj.getFSysPath( (INetURLObject::FSysStyle)(INetURLObject::FSYS_DETECT & ~INetURLObject::FSYS_VOS), &aDelimiter );
+                            aObj.getFSysPath( (FSysStyle)(FSysStyle::Detect & ~FSysStyle::Vos), &aDelimiter );
 
                         if ( bIsFolder )
                             aObj.setFinalSlash();
diff --git a/svx/source/gallery2/galbrws2.cxx b/svx/source/gallery2/galbrws2.cxx
index df1ce01..7e4cdca 100644
--- a/svx/source/gallery2/galbrws2.cxx
+++ b/svx/source/gallery2/galbrws2.cxx
@@ -1234,12 +1234,12 @@ OUString GalleryBrowser2::GetItemText( const GalleryTheme& rTheme, const SgaObje
 
     if( nItemTextFlags & GalleryItemFlags::Path )
     {
-        const OUString aPath( aURL.getFSysPath( INetURLObject::FSYS_DETECT ) );
+        const OUString aPath( aURL.getFSysPath( FSysStyle::Detect ) );
 
         if( !aPath.isEmpty() && ( nItemTextFlags & GalleryItemFlags::Title ) )
             aRet += " (";
 
-        aRet += aURL.getFSysPath( INetURLObject::FSYS_DETECT );
+        aRet += aURL.getFSysPath( FSysStyle::Detect );
 
         if( !aPath.isEmpty() && ( nItemTextFlags & GalleryItemFlags::Title ) )
             aRet += ")";
diff --git a/svx/source/gallery2/galmisc.cxx b/svx/source/gallery2/galmisc.cxx
index 765ad39..180cec4 100644
--- a/svx/source/gallery2/galmisc.cxx
+++ b/svx/source/gallery2/galmisc.cxx
@@ -195,7 +195,7 @@ OUString GetReducedString( const INetURLObject& rURL, sal_Int32 nMaxLen )
     if( INetProtocol::PrivSoffice != rURL.GetProtocol() )
     {
         sal_Unicode     aDelimiter;
-        const OUString  aPath( rURL.getFSysPath( INetURLObject::FSYS_DETECT, &aDelimiter ) );
+        const OUString  aPath( rURL.getFSysPath( FSysStyle::Detect, &aDelimiter ) );
         const OUString  aName( aReduced );
 
         if( aPath.getLength() > nMaxLen )
diff --git a/sw/source/filter/ww8/wrtw8esh.cxx b/sw/source/filter/ww8/wrtw8esh.cxx
index 2f61d329..f23072c 100644
--- a/sw/source/filter/ww8/wrtw8esh.cxx
+++ b/sw/source/filter/ww8/wrtw8esh.cxx
@@ -139,7 +139,7 @@ OUString SwBasicEscherEx::GetBasePath()
 
 OUString SwBasicEscherEx::BuildFileName(sal_uInt16& rnLevel, bool& rbRel, const OUString& rUrl)
 {
-    OUString aDosName( INetURLObject( rUrl ).getFSysPath( INetURLObject::FSYS_DOS ) );
+    OUString aDosName( INetURLObject( rUrl ).getFSysPath( FSysStyle::Dos ) );
     rnLevel = 0;
     rbRel = IsRelUrl();
 
diff --git a/sw/source/ui/dbui/mmresultdialogs.cxx b/sw/source/ui/dbui/mmresultdialogs.cxx
index 78836eb..a8527de 100644
--- a/sw/source/ui/dbui/mmresultdialogs.cxx
+++ b/sw/source/ui/dbui/mmresultdialogs.cxx
@@ -674,7 +674,7 @@ IMPL_LINK(SwMMResultSaveDialog, SaveOutputHdl_Impl, Button*, pButton, void)
         ScopedVclPtrInstance< PrintMonitor > aSaveMonitor(this, false, PrintMonitor::MONITOR_TYPE_SAVE);
         aSaveMonitor->m_pDocName->SetText(pSourceView->GetDocShell()->GetTitle(22));
         aSaveMonitor->SetCancelHdl(LINK(this, SwMMResultSaveDialog, SaveCancelHdl_Impl));
-        aSaveMonitor->m_pPrinter->SetText( INetURLObject( sPath ).getFSysPath( INetURLObject::FSYS_DETECT ) );
+        aSaveMonitor->m_pPrinter->SetText( INetURLObject( sPath ).getFSysPath( FSysStyle::Detect ) );
         m_bCancelSaving = false;
         aSaveMonitor->Show();
 
diff --git a/tools/qa/cppunit/test_urlobj.cxx b/tools/qa/cppunit/test_urlobj.cxx
index c2f2cf7..d2b7423 100644
--- a/tools/qa/cppunit/test_urlobj.cxx
+++ b/tools/qa/cppunit/test_urlobj.cxx
@@ -73,7 +73,7 @@ namespace tools_urlobj
             INetURLObject aUrl;
             aUrl.
                 setFSysPath( "\\\\137.65.170.24\\c$\\Img0001.jpg",
-                             INetURLObject::FSYS_DETECT );
+                             FSysStyle::Detect );
 #ifdef LINUX
             CPPUNIT_ASSERT( aUrl.GetMainURL( INetURLObject::DecodeMechanism::NONE )
                             == "smb://137.65.170.24/c$/Img0001.jpg" );
@@ -99,7 +99,7 @@ namespace tools_urlobj
             INetURLObject aUrl;
             aUrl.
                 setFSysPath( "\\\\hive-winxp-x86\\pmladek\\test2.odt",
-                             INetURLObject::FSYS_DETECT );
+                             FSysStyle::Detect );
 #ifdef LINUX
             CPPUNIT_ASSERT( aUrl.GetMainURL( INetURLObject::DecodeMechanism::NONE )
                             == "smb://hive-winxp-x86/pmladek/test2.odt" );
@@ -142,7 +142,7 @@ namespace tools_urlobj
         {
             INetURLObject aUrl;
             aUrl.setFSysPath( "//137.65.170.24/c$/Img0001.jpg",
-                              INetURLObject::FSYS_DETECT );
+                              FSysStyle::Detect );
 #ifdef LINUX
             CPPUNIT_ASSERT( aUrl.GetMainURL( INetURLObject::DecodeMechanism::NONE )
                             == "smb://137.65.170.24/c$/Img0001.jpg" );
@@ -167,7 +167,7 @@ namespace tools_urlobj
         {
             INetURLObject aUrl;
             aUrl.setFSysPath( "//hive-winxp-x86/pmladek/test2.odt",
-                              INetURLObject::FSYS_DETECT );
+                              FSysStyle::Detect );
 #ifdef LINUX
             CPPUNIT_ASSERT( aUrl.GetMainURL( INetURLObject::DecodeMechanism::NONE )
                             == "smb://hive-winxp-x86/pmladek/test2.odt" );
diff --git a/tools/source/fsys/urlobj.cxx b/tools/source/fsys/urlobj.cxx
index 73384cd..b402d44 100644
--- a/tools/source/fsys/urlobj.cxx
+++ b/tools/source/fsys/urlobj.cxx
@@ -614,22 +614,22 @@ std::unique_ptr<SvMemoryStream> INetURLObject::getData()
 
 namespace {
 
-INetURLObject::FSysStyle guessFSysStyleByCounting(sal_Unicode const * pBegin,
+FSysStyle guessFSysStyleByCounting(sal_Unicode const * pBegin,
                                                   sal_Unicode const * pEnd,
-                                                  INetURLObject::FSysStyle eStyle)
+                                                  FSysStyle eStyle)
 {
     DBG_ASSERT(eStyle
-                   & (INetURLObject::FSYS_UNX
-                          | INetURLObject::FSYS_DOS),
+                   & (FSysStyle::Unix
+                          | FSysStyle::Dos),
                "guessFSysStyleByCounting(): Bad style");
     DBG_ASSERT(std::numeric_limits< sal_Int32 >::min() < pBegin - pEnd
                && pEnd - pBegin <= std::numeric_limits< sal_Int32 >::max(),
                "guessFSysStyleByCounting(): Too big");
     sal_Int32 nSlashCount
-        = (eStyle & INetURLObject::FSYS_UNX) ?
+        = (eStyle & FSysStyle::Unix) ?
               0 : std::numeric_limits< sal_Int32 >::min();
     sal_Int32 nBackslashCount
-        = (eStyle & INetURLObject::FSYS_DOS) ?
+        = (eStyle & FSysStyle::Dos) ?
               0 : std::numeric_limits< sal_Int32 >::min();
     while (pBegin != pEnd)
         switch (*pBegin++)
@@ -643,7 +643,7 @@ INetURLObject::FSysStyle guessFSysStyleByCounting(sal_Unicode const * pBegin,
                 break;
         }
     return nSlashCount >= nBackslashCount ?
-                   INetURLObject::FSYS_UNX : INetURLObject::FSYS_DOS;
+                   FSysStyle::Unix : FSysStyle::Dos;
 }
 
 OUString parseScheme(
@@ -736,11 +736,11 @@ bool INetURLObject::setAbsURIRef(OUString const & rTheAbsURIRef,
             //    "//" (domain / IPv6reference) ["/" *UCS4]
             // 6th Production (Unix file):
             //    "/" *UCS4
-            // 7th Production (UNC file; FSYS_DOS only):
+            // 7th Production (UNC file; FSysStyle::Dos only):
             //    "\\" domain ["\" *UCS4]
-            // 8th Production (Unix-like DOS file; FSYS_DOS only):
+            // 8th Production (Unix-like DOS file; FSysStyle::Dos only):
             //    ALPHA ":" ["/" *UCS4]
-            // 9th Production (DOS file; FSYS_DOS only):
+            // 9th Production (DOS file; FSysStyle::Dos only):
             //    ALPHA ":" ["\" *UCS4]
 
             // For the 'non URL' file productions 6--9, the interpretation of
@@ -749,7 +749,7 @@ bool INetURLObject::setAbsURIRef(OUString const & rTheAbsURIRef,
             // taken as literal characters.
 
             sal_Unicode const * p1 = pPos;
-            if (eStyle & FSYS_DOS
+            if (eStyle & FSysStyle::Dos
                 && pEnd - p1 >= 2
                 && rtl::isAsciiAlpha(p1[0])
                 && p1[1] == ':'
@@ -772,7 +772,7 @@ bool INetURLObject::setAbsURIRef(OUString const & rTheAbsURIRef,
                 eMechanism = EncodeMechanism::All;
                 nFragmentDelimiter = 0x80000000;
             }
-            else if (eStyle & FSYS_DOS
+            else if (eStyle & FSysStyle::Dos
                      && pEnd - p1 >= 2
                      && p1[0] == '\\'
                      && p1[1] == '\\')
@@ -1037,12 +1037,12 @@ bool INetURLObject::setAbsURIRef(OUString const & rTheAbsURIRef,
                         }
                     }
 
-                    // 2nd Production (MS IE generated 1; FSYS_DOS only):
+                    // 2nd Production (MS IE generated 1; FSysStyle::Dos only):
                     //    "//" ALPHA ":" ["/" *path] ["#" *UCS4]
                     //  becomes
                     //    "file:///" ALPHA ":" ["/" *path] ["#" *UCS4]
                     //  replacing "\" by "/" within <*path>
-                    // 3rd Production (MS IE generated 2; FSYS_DOS only):
+                    // 3rd Production (MS IE generated 2; FSysStyle::Dos only):
                     //    "//" ALPHA ":" ["\" *path] ["#" *UCS4]
                     //  becomes
                     //    "file:///" ALPHA ":" ["/" *path] ["#" *UCS4]
@@ -1056,7 +1056,7 @@ bool INetURLObject::setAbsURIRef(OUString const & rTheAbsURIRef,
                         aSynAbsURIRef.append("//");
                         pPos += 2;
                         bSkippedInitialSlash = true;
-                        if ((eStyle & FSYS_DOS) != 0
+                        if ((eStyle & FSysStyle::Dos)
                             && pEnd - pPos >= 2
                             && rtl::isAsciiAlpha(pPos[0])
                             && pPos[1] == ':'
@@ -1076,12 +1076,12 @@ bool INetURLObject::setAbsURIRef(OUString const & rTheAbsURIRef,
                         break;
                     }
 
-                    // 6th Production (UNC; FSYS_DOS only):
+                    // 6th Production (UNC; FSysStyle::Dos only):
                     //    "\\" domain ["\" *path] ["#" *UCS4]
                     //  becomes
                     //    "file://" domain "/" *path ["#" *UCS4]
                     //  replacing "\" by "/" within <*path>
-                    if (eStyle & FSYS_DOS
+                    if (eStyle & FSysStyle::Dos
                         && pEnd - pPos >= 2
                         && pPos[0] == '\\'
                         && pPos[1] == '\\')
@@ -1109,17 +1109,17 @@ bool INetURLObject::setAbsURIRef(OUString const & rTheAbsURIRef,
                         }
                     }
 
-                    // 7th Production (Unix-like DOS; FSYS_DOS only):
+                    // 7th Production (Unix-like DOS; FSysStyle::Dos only):
                     //    ALPHA ":" ["/" *path] ["#" *UCS4]
                     //  becomes
                     //    "file:///" ALPHA ":" ["/" *path] ["#" *UCS4]
                     //  replacing "\" by "/" within <*path>
-                    // 8th Production (DOS; FSYS_DOS only):
+                    // 8th Production (DOS; FSysStyle::Dos only):
                     //    ALPHA ":" ["\" *path] ["#" *UCS4]
                     //  becomes
                     //    "file:///" ALPHA ":" ["/" *path] ["#" *UCS4]
                     //  replacing "\" by "/" within <*path>
-                    if (eStyle & FSYS_DOS
+                    if (eStyle & FSysStyle::Dos
                         && pEnd - pPos >= 2
                         && rtl::isAsciiAlpha(pPos[0])
                         && pPos[1] == ':'
@@ -1139,24 +1139,24 @@ bool INetURLObject::setAbsURIRef(OUString const & rTheAbsURIRef,
                     //    "file:///" *path ["#" *UCS4]
                     //  replacing the delimiter by "/" within <*path>.  The
                     //  delimiter is that character from the set { "/", "\"}
-                    // which appears most often in <*path> (if FSYS_UNX
+                    // which appears most often in <*path> (if FSysStyle::Unix
                     //  is not among the style bits, "/" is removed from the
-                    //  set; if FSYS_DOS is not among the style bits, "\" is
+                    //  set; if FSysStyle::Dos is not among the style bits, "\" is
                     //  removed from the set).  If two or
                     //  more characters appear the same number of times, the
                     //  character mentioned first in that set is chosen.  If
                     //  the first character of <*path> is the delimiter, that
                     //  character is not copied
-                    if (eStyle & (FSYS_UNX | FSYS_DOS))
+                    if (eStyle & (FSysStyle::Unix | FSysStyle::Dos))
                     {
                         aSynAbsURIRef.append("//");
                         switch (guessFSysStyleByCounting(pPos, pEnd, eStyle))
                         {
-                            case FSYS_UNX:
+                            case FSysStyle::Unix:
                                 nSegmentDelimiter = '/';
                                 break;
 
-                            case FSYS_DOS:
+                            case FSysStyle::Dos:
                                 nSegmentDelimiter = '\\';
                                 break;
 
@@ -1511,13 +1511,13 @@ bool INetURLObject::convertRelToAbs(OUString const & rTheRelURIRef,
         //    alphanum = ALPHA / DIGIT
         //    UCS4 = <any UCS4 character>
 
-        // 1st Production (UNC file; FSYS_DOS only):
+        // 1st Production (UNC file; FSysStyle::Dos only):
         //    "\\" domain ["\" *UCS4]
-        // 2nd Production (Unix-like DOS file; FSYS_DOS only):
+        // 2nd Production (Unix-like DOS file; FSysStyle::Dos only):
         //    ALPHA ":" ["/" *UCS4]
-        // 3rd Production (DOS file; FSYS_DOS only):
+        // 3rd Production (DOS file; FSysStyle::Dos only):
         //    ALPHA ":" ["\" *UCS4]
-        if (eStyle & FSYS_DOS)
+        if (eStyle & FSysStyle::Dos)
         {
             bool bFSys = false;
             sal_Unicode const * q = p;
@@ -1559,11 +1559,11 @@ bool INetURLObject::convertRelToAbs(OUString const & rTheRelURIRef,
         if (m_eScheme == INetProtocol::File)
             switch (guessFSysStyleByCounting(p, pEnd, eStyle))
             {
-                case FSYS_UNX:
+                case FSysStyle::Unix:
                     nSegmentDelimiter = '/';
                     break;
 
-                case FSYS_DOS:
+                case FSysStyle::Dos:
                     nSegmentDelimiter = '\\';
                     bRelativeNonURIs = true;
                     break;
@@ -3353,7 +3353,7 @@ bool INetURLObject::setFragment(OUString const & rTheFragment,
 bool INetURLObject::hasDosVolume(FSysStyle eStyle) const
 {
     sal_Unicode const * p = m_aAbsURIRef.getStr() + m_aPath.getBegin();
-    return (eStyle & FSYS_DOS) != 0
+    return (eStyle & FSysStyle::Dos)
            && m_aPath.getLength() >= 3
            && p[0] == '/'
            && rtl::isAsciiAlpha(p[1])
@@ -3839,7 +3839,7 @@ OUString INetURLObject::GetAbsURL(OUString const & rTheBaseURIRef,
             convertRelToAbs(rTheRelURIRef, aTheAbsURIRef,
                             bWasAbsolute, eEncodeMechanism,
                             eCharset, bIgnoreFragment, false,
-                            false, FSYS_DETECT)
+                            false, FSysStyle::Detect)
            || eEncodeMechanism != EncodeMechanism::WasEncoded
            || eDecodeMechanism != DecodeMechanism::ToIUri
            || eCharset != RTL_TEXTENCODING_UTF8 ?
@@ -4261,9 +4261,9 @@ bool INetURLObject::setFSysPath(OUString const & rFSysPath,
     sal_Unicode const * pFSysBegin = rFSysPath.getStr();
     sal_Unicode const * pFSysEnd = pFSysBegin + rFSysPath.getLength();
 
-    switch (((eStyle & FSYS_VOS) ? 1 : 0)
-                + ((eStyle & FSYS_UNX) ? 1 : 0)
-                + ((eStyle & FSYS_DOS) ? 1 : 0))
+    switch (((eStyle & FSysStyle::Vos) ? 1 : 0)
+                + ((eStyle & FSysStyle::Unix) ? 1 : 0)
+                + ((eStyle & FSysStyle::Dos) ? 1 : 0))
     {
         case 0:
             return false;
@@ -4272,7 +4272,7 @@ bool INetURLObject::setFSysPath(OUString const & rFSysPath,
             break;
 
         default:
-            if (eStyle & FSYS_VOS
+            if (eStyle & FSysStyle::Vos
                 && pFSysEnd - pFSysBegin >= 2
                 && pFSysBegin[0] == '/'
                 && pFSysBegin[1] == '/')
@@ -4281,7 +4281,7 @@ bool INetURLObject::setFSysPath(OUString const & rFSysPath,
                     && pFSysBegin[2] == '.'
                     && (pFSysEnd - pFSysBegin == 3 || pFSysBegin[3] == '/'))
                 {
-                    eStyle = FSYS_VOS; // Production T1
+                    eStyle = FSysStyle::Vos; // Production T1
                     break;
                 }
 
@@ -4290,12 +4290,12 @@ bool INetURLObject::setFSysPath(OUString const & rFSysPath,
                 if (parseHost(p, pFSysEnd, aHost)
                     && (p == pFSysEnd || *p == '/'))
                 {
-                    eStyle = FSYS_VOS; // Production T2
+                    eStyle = FSysStyle::Vos; // Production T2
                     break;
                 }
             }
 
-            if (eStyle & FSYS_DOS
+            if (eStyle & FSysStyle::Dos
                 && pFSysEnd - pFSysBegin >= 2
                 && pFSysBegin[0] == '\\'
                 && pFSysBegin[1] == '\\')
@@ -4305,12 +4305,12 @@ bool INetURLObject::setFSysPath(OUString const & rFSysPath,
                 if (parseHost(p, pFSysEnd, aHost)
                     && (p == pFSysEnd || *p == '\\'))
                 {
-                    eStyle = FSYS_DOS; // Production T3
+                    eStyle = FSysStyle::Dos; // Production T3
                     break;
                 }
             }
 
-            if (eStyle & FSYS_DOS
+            if (eStyle & FSysStyle::Dos
                 && pFSysEnd - pFSysBegin >= 2
                 && rtl::isAsciiAlpha(pFSysBegin[0])
                 && pFSysBegin[1] == ':'
@@ -4318,11 +4318,11 @@ bool INetURLObject::setFSysPath(OUString const & rFSysPath,
                     || pFSysBegin[2] == '/'
                     || pFSysBegin[2] == '\\'))
             {
-                eStyle = FSYS_DOS; // Productions T4, T5
+                eStyle = FSysStyle::Dos; // Productions T4, T5
                 break;
             }
 
-            if (!(eStyle & (FSYS_UNX | FSYS_DOS)))
+            if (!(eStyle & (FSysStyle::Unix | FSysStyle::Dos)))
                 return false;
 
             eStyle = guessFSysStyleByCounting(pFSysBegin, pFSysEnd, eStyle);
@@ -4334,7 +4334,7 @@ bool INetURLObject::setFSysPath(OUString const & rFSysPath,
 
     switch (eStyle)
     {
-        case FSYS_VOS:
+        case FSysStyle::Vos:
         {
             sal_Unicode const * p = pFSysBegin;
             if (pFSysEnd - p < 2 || *p++ != '/' || *p++ != '/')
@@ -4357,7 +4357,7 @@ bool INetURLObject::setFSysPath(OUString const & rFSysPath,
             break;
         }
 
-        case FSYS_UNX:
+        case FSysStyle::Unix:
         {
             sal_Unicode const * p = pFSysBegin;
             if (p != pFSysEnd && *p != '/')
@@ -4378,7 +4378,7 @@ bool INetURLObject::setFSysPath(OUString const & rFSysPath,
             break;
         }
 
-        case FSYS_DOS:
+        case FSysStyle::Dos:
         {
             sal_uInt32 nAltDelimiter = 0x80000000;
             sal_Unicode const * p = pFSysBegin;
@@ -4432,29 +4432,29 @@ OUString INetURLObject::getFSysPath(FSysStyle eStyle,
     if (m_eScheme != INetProtocol::File)
         return OUString();
 
-    if (((eStyle & FSYS_VOS) ? 1 : 0)
-                + ((eStyle & FSYS_UNX) ? 1 : 0)
-                + ((eStyle & FSYS_DOS) ? 1 : 0)
+    if (((eStyle & FSysStyle::Vos) ? 1 : 0)
+                + ((eStyle & FSysStyle::Unix) ? 1 : 0)
+                + ((eStyle & FSysStyle::Dos) ? 1 : 0)
             > 1)
     {
-        eStyle = eStyle & FSYS_VOS
+        eStyle = eStyle & FSysStyle::Vos
                  && m_aHost.isPresent()
                  && m_aHost.getLength() > 0 ?
-                     FSYS_VOS :
+                     FSysStyle::Vos :
                  hasDosVolume(eStyle)
-                 || ((eStyle & FSYS_DOS) != 0
+                 || ((eStyle & FSysStyle::Dos)
                     && m_aHost.isPresent()
                     && m_aHost.getLength() > 0) ?
-                     FSYS_DOS :
-                 eStyle & FSYS_UNX
+                     FSysStyle::Dos :
+                 eStyle & FSysStyle::Unix
                  && (!m_aHost.isPresent() || m_aHost.getLength() == 0) ?
-                     FSYS_UNX :
+                     FSysStyle::Unix :
                      FSysStyle(0);
     }
 
     switch (eStyle)
     {
-        case FSYS_VOS:
+        case FSysStyle::Vos:
         {
             if (pDelimiter)
                 *pDelimiter = '/';
@@ -4471,7 +4471,7 @@ OUString INetURLObject::getFSysPath(FSysStyle eStyle,
             return aSynFSysPath.makeStringAndClear();
         }
 
-        case FSYS_UNX:
+        case FSysStyle::Unix:
         {
             if (m_aHost.isPresent() && m_aHost.getLength() > 0)
                 return OUString();
@@ -4482,7 +4482,7 @@ OUString INetURLObject::getFSysPath(FSysStyle eStyle,
             return decode(m_aPath, DecodeMechanism::WithCharset, RTL_TEXTENCODING_UTF8);
         }
 
-        case FSYS_DOS:
+        case FSysStyle::Dos:
         {
             if (pDelimiter)
                 *pDelimiter = '\\';
diff --git a/vcl/unx/generic/fontmanager/fontmanager.cxx b/vcl/unx/generic/fontmanager/fontmanager.cxx
index b660d73..8e7ab17 100644
--- a/vcl/unx/generic/fontmanager/fontmanager.cxx
+++ b/vcl/unx/generic/fontmanager/fontmanager.cxx
@@ -175,7 +175,7 @@ int PrintFontManager::getDirectoryAtom( const OString& rDirectory, bool bCreate
 std::vector<fontID> PrintFontManager::addFontFile( const OString& rFileName )
 {
     rtl_TextEncoding aEncoding = osl_getThreadTextEncoding();
-    INetURLObject aPath( OStringToOUString( rFileName, aEncoding ), INetURLObject::FSYS_DETECT );
+    INetURLObject aPath( OStringToOUString( rFileName, aEncoding ), FSysStyle::Detect );
     OString aName( OUStringToOString( aPath.GetName( INetURLObject::DecodeMechanism::WithCharset, aEncoding ), aEncoding ) );
     OString aDir( OUStringToOString(
         INetURLObject::decode( aPath.GetPath(), INetURLObject::DecodeMechanism::WithCharset, aEncoding ), aEncoding ) );
diff --git a/vcl/unx/gtk/fpicker/SalGtkPicker.cxx b/vcl/unx/gtk/fpicker/SalGtkPicker.cxx
index d7f72b2..dbbec94 100644
--- a/vcl/unx/gtk/fpicker/SalGtkPicker.cxx
+++ b/vcl/unx/gtk/fpicker/SalGtkPicker.cxx
@@ -62,7 +62,7 @@ OUString SalGtkPicker::uritounicode(const gchar* pIn)
             OUString sEncoded(pEncodedFileName, strlen(pEncodedFileName),
                 osl_getThreadTextEncoding());
             g_free (pEncodedFileName);
-            INetURLObject aCurrentURL(sEncoded, INetURLObject::FSYS_UNX);
+            INetURLObject aCurrentURL(sEncoded, FSysStyle::Unix);
             aCurrentURL.SetHost(aURL.GetHost());
             sURL = aCurrentURL.getExternalURL();
         }
diff --git a/xmlsecurity/source/dialogs/macrosecurity.cxx b/xmlsecurity/source/dialogs/macrosecurity.cxx
index 62f67cb..01d1880 100644
--- a/xmlsecurity/source/dialogs/macrosecurity.cxx
+++ b/xmlsecurity/source/dialogs/macrosecurity.cxx
@@ -270,7 +270,7 @@ IMPL_LINK_NOARG(MacroSecurityTrustedSourcesTP, AddLocPBHdl, Button*, void)
 
         // then the new path also an URL else system path
         OUString aSystemFileURL = ( aNewObj.GetProtocol() != INetProtocol::NotValid ) ?
-            aPathStr : aNewObj.getFSysPath( INetURLObject::FSYS_DETECT );
+            aPathStr : aNewObj.getFSysPath( FSysStyle::Detect );
 
         OUString aNewPathStr(aSystemFileURL);
 
diff --git a/xmlsecurity/workben/signaturetest.cxx b/xmlsecurity/workben/signaturetest.cxx
index 252e488..97309c2 100644
--- a/xmlsecurity/workben/signaturetest.cxx
+++ b/xmlsecurity/workben/signaturetest.cxx
@@ -236,7 +236,7 @@ MyWin::MyWin( vcl::Window* pParent, WinBits nWinStyle ) :
     ::osl::File::getTempDirURL( aTempDirURL );
     INetURLObject aURLObj( aTempDirURL );
     aURLObj.insertName( "nss", true );
-    OUString aNSSFolder = aURLObj.getFSysPath( INetURLObject::FSYS_DETECT );
+    OUString aNSSFolder = aURLObj.getFSysPath( FSysStyle::Detect );
     maEditXMLFileName.SetText( aNSSFolder + "demo-sample.xml" );
     maEditBINFileName.SetText( aNSSFolder + "demo-sample.gif" );
     maEditDOCFileName.SetText( aNSSFolder + "demo-sample.sxw" );
commit bfde4866e07746eafa2f0d6173c29d805cc35ad0
Author: Noel Grandin <noel.grandin at collabora.co.uk>
Date:   Mon Dec 5 08:47:18 2016 +0200

    convert DecodeMechanism to scoped enum
    
    Change-Id: I5c56634b1bca8e37fa73d02d2428645301b6c547

diff --git a/avmedia/source/gstreamer/gstmanager.cxx b/avmedia/source/gstreamer/gstmanager.cxx
index d12a66e..f064cb1 100644
--- a/avmedia/source/gstreamer/gstmanager.cxx
+++ b/avmedia/source/gstreamer/gstmanager.cxx
@@ -46,7 +46,7 @@ uno::Reference< media::XPlayer > SAL_CALL Manager::createPlayer( const OUString&
     uno::Reference< media::XPlayer >    xRet( pPlayer );
     const INetURLObject                 aURL( rURL );
 
-    if( !pPlayer->create( aURL.GetMainURL( INetURLObject::DECODE_UNAMBIGUOUS ) )  )
+    if( !pPlayer->create( aURL.GetMainURL( INetURLObject::DecodeMechanism::Unambiguous ) )  )
         xRet.clear();
 
     return xRet;
diff --git a/avmedia/source/macavf/manager.mm b/avmedia/source/macavf/manager.mm
index 1283cb5..a8ff2ec 100644
--- a/avmedia/source/macavf/manager.mm
+++ b/avmedia/source/macavf/manager.mm
@@ -46,7 +46,7 @@ uno::Reference< media::XPlayer > SAL_CALL Manager::createPlayer( const ::rtl::OU
 
     OSL_TRACE( "avmediamacavf: Manager::createPlayer" );
 
-    if( !pPlayer->create( aURL.GetMainURL( INetURLObject::DECODE_UNAMBIGUOUS ) )  )
+    if( !pPlayer->create( aURL.GetMainURL( INetURLObject::DecodeMechanism::Unambiguous ) )  )
         xRet.clear();
 
     return xRet;
diff --git a/avmedia/source/quicktime/manager.mm b/avmedia/source/quicktime/manager.mm
index 0b2ac8d..bcb27b6 100644
--- a/avmedia/source/quicktime/manager.mm
+++ b/avmedia/source/quicktime/manager.mm
@@ -47,7 +47,7 @@ uno::Reference< media::XPlayer > SAL_CALL Manager::createPlayer( const ::rtl::OU
 
     SAL_INFO( "avmedia.quicktime", "Manager::createPlayer" );
 
-    if( !pPlayer->create( aURL.GetMainURL( INetURLObject::DECODE_UNAMBIGUOUS ) )  )
+    if( !pPlayer->create( aURL.GetMainURL( INetURLObject::DecodeMechanism::Unambiguous ) )  )
         xRet.clear();
 
     return xRet;
diff --git a/avmedia/source/viewer/mediawindow.cxx b/avmedia/source/viewer/mediawindow.cxx
index 9ae9070..312bf09 100644
--- a/avmedia/source/viewer/mediawindow.cxx
+++ b/avmedia/source/viewer/mediawindow.cxx
@@ -276,7 +276,7 @@ bool MediaWindow::executeMediaURLDialog(vcl::Window*,
     if( aDlg.Execute() == ERRCODE_NONE )
     {
         const INetURLObject aURL( aDlg.GetPath() );
-        rURL = aURL.GetMainURL( INetURLObject::DECODE_UNAMBIGUOUS );
+        rURL = aURL.GetMainURL( INetURLObject::DecodeMechanism::Unambiguous );
 
         if (o_pbLink)
         {
@@ -317,7 +317,7 @@ bool MediaWindow::isMediaURL( const OUString& rURL, const OUString& rReferer, bo
             try
             {
                 uno::Reference< media::XPlayer > xPlayer( priv::MediaWindowImpl::createPlayer(
-                                                            aURL.GetMainURL( INetURLObject::DECODE_UNAMBIGUOUS ),
+                                                            aURL.GetMainURL( INetURLObject::DecodeMechanism::Unambiguous ),
                                                             rReferer, nullptr ) );
 
                 if( xPlayer.is() )
diff --git a/avmedia/source/viewer/mediawindow_impl.cxx b/avmedia/source/viewer/mediawindow_impl.cxx
index d002801..5566251 100644
--- a/avmedia/source/viewer/mediawindow_impl.cxx
+++ b/avmedia/source/viewer/mediawindow_impl.cxx
@@ -285,7 +285,7 @@ void MediaWindowImpl::setURL( const OUString& rURL,
             INetURLObject aURL( rURL );
 
             if (aURL.GetProtocol() != INetProtocol::NotValid)
-                maFileURL = aURL.GetMainURL(INetURLObject::DECODE_UNAMBIGUOUS);
+                maFileURL = aURL.GetMainURL(INetURLObject::DecodeMechanism::Unambiguous);
             else
                 maFileURL = rURL;
         }
diff --git a/avmedia/source/win/manager.cxx b/avmedia/source/win/manager.cxx
index b829190..c024f7f 100644
--- a/avmedia/source/win/manager.cxx
+++ b/avmedia/source/win/manager.cxx
@@ -48,7 +48,7 @@ uno::Reference< media::XPlayer > SAL_CALL Manager::createPlayer( const OUString&
     uno::Reference< media::XPlayer >    xRet( pPlayer );
     const INetURLObject                 aURL( rURL );
 
-    if( !pPlayer->create( aURL.GetMainURL( INetURLObject::DECODE_UNAMBIGUOUS ) )  )
+    if( !pPlayer->create( aURL.GetMainURL( INetURLObject::DecodeMechanism::Unambiguous ) )  )
         xRet.clear();
 
     return xRet;
diff --git a/basctl/source/basicide/baside3.cxx b/basctl/source/basicide/baside3.cxx
index a7ef0e0..2d65873 100644
--- a/basctl/source/basicide/baside3.cxx
+++ b/basctl/source/basicide/baside3.cxx
@@ -761,7 +761,7 @@ void DialogWindow::SaveDialog()
                 aURLObj.removeExtension();
                 OUString aDialogName( aURLObj.getName() );
                 aURLObj.removeSegment();
-                OUString aURL( aURLObj.GetMainURL( INetURLObject::NO_DECODE ) );
+                OUString aURL( aURLObj.GetMainURL( INetURLObject::DecodeMechanism::NONE ) );
                 bool bReadOnly = false;
                 OUString aComment = "# " + aDialogName + " strings" ;
                 Reference< task::XInteractionHandler > xDummyHandler;
diff --git a/basctl/source/basicide/moduldl2.cxx b/basctl/source/basicide/moduldl2.cxx
index cb821f5..605897b 100644
--- a/basctl/source/basicide/moduldl2.cxx
+++ b/basctl/source/basicide/moduldl2.cxx
@@ -797,13 +797,13 @@ void LibPage::InsertLib()
 
         Reference< XSimpleFileAccess3 > xSFA( SimpleFileAccess::create(comphelper::getProcessComponentContext()) );
 
-        OUString aModURL( aModURLObj.GetMainURL( INetURLObject::NO_DECODE ) );
+        OUString aModURL( aModURLObj.GetMainURL( INetURLObject::DecodeMechanism::NONE ) );
         if ( xSFA->exists( aModURL ) )
         {
             xModLibContImport.set( script::DocumentScriptLibraryContainer::createWithURL(xContext, aModURL), UNO_QUERY );
         }
 
-        OUString aDlgURL( aDlgURLObj.GetMainURL( INetURLObject::NO_DECODE ) );
+        OUString aDlgURL( aDlgURLObj.GetMainURL( INetURLObject::DecodeMechanism::NONE ) );
         if ( xSFA->exists( aDlgURL ) )
         {
             xDlgLibContImport.set( script::DocumentDialogLibraryContainer::createWithURL(xContext, aDlgURL), UNO_QUERY );
@@ -959,7 +959,7 @@ void LibPage::InsertLib()
                                         aModStorageURLObj.setExtension( aLibExtension );
                                         aModStorageURLObj.setFinalSlash();
                                     }
-                                    OUString aModStorageURL( aModStorageURLObj.GetMainURL( INetURLObject::NO_DECODE ) );
+                                    OUString aModStorageURL( aModStorageURLObj.GetMainURL( INetURLObject::DecodeMechanism::NONE ) );
 
                                     // create library link
                                     xModLib.set( xModLibContainer->createLibraryLink( aLibName, aModStorageURL, true ), UNO_QUERY);
@@ -1027,7 +1027,7 @@ void LibPage::InsertLib()
                                         aDlgStorageURLObj.setExtension( aLibExtension );
                                         aDlgStorageURLObj.setFinalSlash();
                                     }
-                                    OUString aDlgStorageURL( aDlgStorageURLObj.GetMainURL( INetURLObject::NO_DECODE ) );
+                                    OUString aDlgStorageURL( aDlgStorageURLObj.GetMainURL( INetURLObject::DecodeMechanism::NONE ) );
 
                                     // create library link
                                     xDlgLib.set( xDlgLibContainer->createLibraryLink( aLibName, aDlgStorageURL, true ), UNO_QUERY);
@@ -1213,12 +1213,12 @@ void LibPage::ExportAsPackage( const OUString& aLibName )
         if( aURL.getExtension().isEmpty() )
             aURL.setExtension( "oxt" );
 
-        OUString aPackageURL( aURL.GetMainURL( INetURLObject::NO_DECODE ) );
+        OUString aPackageURL( aURL.GetMainURL( INetURLObject::DecodeMechanism::NONE ) );
 
         OUString aTmpPath = SvtPathOptions().GetTempPath();
         INetURLObject aInetObj( aTmpPath );
         aInetObj.insertName( aLibName, true, INetURLObject::LAST_SEGMENT, INetURLObject::EncodeMechanism::All );
-        OUString aSourcePath = aInetObj.GetMainURL( INetURLObject::NO_DECODE );
+        OUString aSourcePath = aInetObj.GetMainURL( INetURLObject::DecodeMechanism::NONE );
         if( xSFA->exists( aSourcePath ) )
             xSFA->kill( aSourcePath );
         Reference< task::XInteractionHandler > xDummyHandler( new DummyInteractionHandler( xHandler ) );
@@ -1250,7 +1250,7 @@ void LibPage::ExportAsPackage( const OUString& aLibName )
         INetURLObject aMetaInfInetObj( aTmpPath );
         aMetaInfInetObj.insertName( "META-INF",
             true, INetURLObject::LAST_SEGMENT, INetURLObject::EncodeMechanism::All );
-        OUString aMetaInfFolder = aMetaInfInetObj.GetMainURL( INetURLObject::NO_DECODE );
+        OUString aMetaInfFolder = aMetaInfInetObj.GetMainURL( INetURLObject::DecodeMechanism::NONE );
         if( xSFA->exists( aMetaInfFolder ) )
             xSFA->kill( aMetaInfFolder );
         xSFA->createFolder( aMetaInfFolder );
@@ -1279,7 +1279,7 @@ void LibPage::ExportAsPackage( const OUString& aLibName )
             true, INetURLObject::LAST_SEGMENT, INetURLObject::EncodeMechanism::All );
 
         // write buffered pipe data to content:
-        ::ucbhelper::Content manifestContent( aMetaInfInetObj.GetMainURL( INetURLObject::NO_DECODE ), xCmdEnv, comphelper::getProcessComponentContext() );
+        ::ucbhelper::Content manifestContent( aMetaInfInetObj.GetMainURL( INetURLObject::DecodeMechanism::NONE ), xCmdEnv, comphelper::getProcessComponentContext() );
         manifestContent.writeStream( Reference<io::XInputStream>( xPipe, UNO_QUERY_THROW ), true );
 
         ::ucbhelper::Content MetaInfContent( aMetaInfFolder, xCmdEnv, comphelper::getProcessComponentContext() );
diff --git a/basic/source/basmgr/basmgr.cxx b/basic/source/basmgr/basmgr.cxx
index 10efa07..f7ee7b1 100644
--- a/basic/source/basmgr/basmgr.cxx
+++ b/basic/source/basmgr/basmgr.cxx
@@ -468,7 +468,7 @@ BasicManager::BasicManager( SotStorage& rStorage, const OUString& rBaseURL, Star
         mpImpl->aBasicLibPath = *pLibPath;
     }
     OUString aStorName( rStorage.GetName() );
-    maStorageName = INetURLObject(aStorName, INetProtocol::File).GetMainURL( INetURLObject::NO_DECODE );
+    maStorageName = INetURLObject(aStorName, INetProtocol::File).GetMainURL( INetURLObject::DecodeMechanism::NONE );
 
 
     // If there is no Manager Stream, no further actions are necessary
@@ -688,7 +688,7 @@ void BasicManager::LoadBasicManager( SotStorage& rStorage, const OUString& rBase
         return;
     }
 
-    maStorageName = INetURLObject(aStorName, INetProtocol::File).GetMainURL( INetURLObject::NO_DECODE );
+    maStorageName = INetURLObject(aStorName, INetProtocol::File).GetMainURL( INetURLObject::DecodeMechanism::NONE );
     // #i13114 removed, DBG_ASSERT(aStorageName.Len() != 0, "Bad storage name");
 
     OUString aRealStorageName = maStorageName;  // for relative paths, can be modified through BaseURL
@@ -828,10 +828,10 @@ void BasicManager::LoadOldBasicManager( SotStorage& rStorage )
             else
             {
                 xStorageRef = new SotStorage( false, aLibAbsStorage.GetMainURL
-                    ( INetURLObject::NO_DECODE ), eStorageReadMode );
+                    ( INetURLObject::DecodeMechanism::NONE ), eStorageReadMode );
                 if ( xStorageRef->GetError() != ERRCODE_NONE )
                     xStorageRef = new SotStorage( false, aLibRelStorage.
-                    GetMainURL( INetURLObject::NO_DECODE ), eStorageReadMode );
+                    GetMainURL( INetURLObject::DecodeMechanism::NONE ), eStorageReadMode );
             }
             if ( xStorageRef.Is() )
             {
@@ -903,10 +903,10 @@ bool BasicManager::ImpLoadLibrary( BasicLibInfo* pLibInfo, SotStorage* pCurStora
         // #i13114 removed, DBG_ASSERT( aStorName.Len(), "No Storage Name!" );
 
         INetURLObject aCurStorageEntry(aStorName, INetProtocol::File);
-        // #i13114 removed, DBG_ASSERT(aCurStorageEntry.GetMainURL( INetURLObject::NO_DECODE ).Len() != 0, "Bad storage name");
+        // #i13114 removed, DBG_ASSERT(aCurStorageEntry.GetMainURL( INetURLObject::DecodeMechanism::NONE ).Len() != 0, "Bad storage name");
 
         INetURLObject aStorageEntry(aStorageName, INetProtocol::File);
-        // #i13114 removed, DBG_ASSERT(aCurStorageEntry.GetMainURL( INetURLObject::NO_DECODE ).Len() != 0, "Bad storage name");
+        // #i13114 removed, DBG_ASSERT(aCurStorageEntry.GetMainURL( INetURLObject::DecodeMechanism::NONE ).Len() != 0, "Bad storage name");
 
         if ( aCurStorageEntry == aStorageEntry )
         {
@@ -1068,7 +1068,7 @@ StarBASIC* BasicManager::AddLib( SotStorage& rStorage, const OUString& rLibName,
     OUString aStorName( rStorage.GetName() );
     DBG_ASSERT( !aStorName.isEmpty(), "No Storage Name!" );
 
-    OUString aStorageName = INetURLObject(aStorName, INetProtocol::File).GetMainURL( INetURLObject::NO_DECODE );
+    OUString aStorageName = INetURLObject(aStorName, INetProtocol::File).GetMainURL( INetURLObject::DecodeMechanism::NONE );
     DBG_ASSERT(!aStorageName.isEmpty(), "Bad storage name");
 
     OUString aNewLibName( rLibName );
diff --git a/basic/source/runtime/methods.cxx b/basic/source/runtime/methods.cxx
index d93c95a..1fa46b1 100644
--- a/basic/source/runtime/methods.cxx
+++ b/basic/source/runtime/methods.cxx
@@ -152,7 +152,7 @@ OUString getFullPath( const OUString& aRelPath )
 
     // #80204 Try first if it already is a valid URL
     INetURLObject aURLObj( aRelPath );
-    aFileURL = aURLObj.GetMainURL( INetURLObject::NO_DECODE );
+    aFileURL = aURLObj.GetMainURL( INetURLObject::DecodeMechanism::NONE );
 
     if( aFileURL.isEmpty() )
     {
@@ -642,7 +642,7 @@ RTLFUNC(MkDir)
 
                 aURLObj.SetURL( sCurPathURL );
                 aURLObj.Append( aPath );
-                File::getSystemPathFromFileURL(aURLObj.GetMainURL( INetURLObject::DECODE_TO_IURI  ),aPath ) ;
+                File::getSystemPathFromFileURL(aURLObj.GetMainURL( INetURLObject::DecodeMechanism::ToIUri  ),aPath ) ;
             }
         }
 
@@ -2813,7 +2813,7 @@ bool isRootDir( const OUString& aDirURLStr )
     else if( nCount == 1 )
     {
         OUString aSeg1 = aDirURLObj.getName( 0, true,
-                                             INetURLObject::DECODE_WITH_CHARSET );
+                                             INetURLObject::DecodeMechanism::WithCharset );
         if( aSeg1[1] == (sal_Unicode)':' )
         {
             bRoot = true;
@@ -2868,7 +2868,7 @@ RTLFUNC(Dir)
                         {
                             INetURLObject aFileURL( aFileURLStr );
                             aNameOnlyStr = aFileURL.getName( INetURLObject::LAST_SEGMENT,
-                                                             true, INetURLObject::DECODE_WITH_CHARSET );
+                                                             true, INetURLObject::DecodeMechanism::WithCharset );
                         }
                         rPar.Get(0)->PutString( aNameOnlyStr );
                         return;
@@ -2979,7 +2979,7 @@ RTLFUNC(Dir)
 
                             INetURLObject aURL( aFile );
                             aPath = aURL.getName( INetURLObject::LAST_SEGMENT, true,
-                                                  INetURLObject::DECODE_WITH_CHARSET );
+                                                  INetURLObject::DecodeMechanism::WithCharset );
                         }
 
                         bool bMatch = implCheckWildcard( aPath, pRTLData );
diff --git a/basic/source/runtime/methods1.cxx b/basic/source/runtime/methods1.cxx
index a93e988..34ead7f 100644
--- a/basic/source/runtime/methods1.cxx
+++ b/basic/source/runtime/methods1.cxx
@@ -1643,7 +1643,7 @@ RTLFUNC(ConvertToUrl)
     {
         OUString aStr = rPar.Get(1)->GetOUString();
         INetURLObject aURLObj( aStr, INetProtocol::File );
-        OUString aFileURL = aURLObj.GetMainURL( INetURLObject::NO_DECODE );
+        OUString aFileURL = aURLObj.GetMainURL( INetURLObject::DecodeMechanism::NONE );
         if( aFileURL.isEmpty() )
         {
             ::osl::File::getFileURLFromSystemPath( aFileURL, aFileURL );
diff --git a/basic/source/uno/namecont.cxx b/basic/source/uno/namecont.cxx
index 26a2036..1d39158 100644
--- a/basic/source/uno/namecont.cxx
+++ b/basic/source/uno/namecont.cxx
@@ -587,14 +587,14 @@ static void checkAndCopyFileImpl( const INetURLObject& rSourceFolderInetObj,
     aTargetFolderInetObj.insertName( rCheckFileName, true, INetURLObject::LAST_SEGMENT,
                                      INetURLObject::EncodeMechanism::All );
     aTargetFolderInetObj.setExtension( rCheckExtension );
-    OUString aTargetFile = aTargetFolderInetObj.GetMainURL( INetURLObject::NO_DECODE );
+    OUString aTargetFile = aTargetFolderInetObj.GetMainURL( INetURLObject::DecodeMechanism::NONE );
     if( !xSFI->exists( aTargetFile ) )
     {
         INetURLObject aSourceFolderInetObj( rSourceFolderInetObj );
         aSourceFolderInetObj.insertName( rCheckFileName, true, INetURLObject::LAST_SEGMENT,
                                          INetURLObject::EncodeMechanism::All );
         aSourceFolderInetObj.setExtension( rCheckExtension );
-        OUString aSourceFile = aSourceFolderInetObj.GetMainURL( INetURLObject::NO_DECODE );
+        OUString aSourceFile = aSourceFolderInetObj.GetMainURL( INetURLObject::DecodeMechanism::NONE );
         xSFI->copy( aSourceFile, aTargetFile );
     }
 }
@@ -636,7 +636,7 @@ void SfxLibraryContainer::init_Impl( const OUString& rInitialDocumentURL,
 
     meInitMode = DEFAULT;
     INetURLObject aInitUrlInetObj( maInitialDocumentURL );
-    OUString aInitFileName = aInitUrlInetObj.GetMainURL( INetURLObject::NO_DECODE );
+    OUString aInitFileName = aInitUrlInetObj.GetMainURL( INetURLObject::DecodeMechanism::NONE );
     if( !aInitFileName.isEmpty() )
     {
         // We need a BasicManager to avoid problems
@@ -650,7 +650,7 @@ void SfxLibraryContainer::init_Impl( const OUString& rInitialDocumentURL,
             meInitMode = CONTAINER_INIT_FILE;
             INetURLObject aLibPathInetObj( aInitUrlInetObj );
             aLibPathInetObj.removeSegment();
-            maLibraryPath = aLibPathInetObj.GetMainURL( INetURLObject::NO_DECODE );
+            maLibraryPath = aLibPathInetObj.GetMainURL( INetURLObject::DecodeMechanism::NONE );
         }
         else if( aExtension == "xlb" )
         {
@@ -783,7 +783,7 @@ void SfxLibraryContainer::init_Impl( const OUString& rInitialDocumentURL,
                 }
                 pLibInfoInetObj->insertName( maInfoFileName, false, INetURLObject::LAST_SEGMENT, INetURLObject::EncodeMechanism::All );
                 pLibInfoInetObj->setExtension( "xlc" );
-                aFileName = pLibInfoInetObj->GetMainURL( INetURLObject::NO_DECODE );
+                aFileName = pLibInfoInetObj->GetMainURL( INetURLObject::DecodeMechanism::NONE );
             }
 
             try
@@ -802,7 +802,7 @@ void SfxLibraryContainer::init_Impl( const OUString& rInitialDocumentURL,
                 INetURLObject aLibInfoInetObj( maLibraryPath.getToken(1, (sal_Unicode)';') );
                 aLibInfoInetObj.insertName( maOldInfoFileName, false, INetURLObject::LAST_SEGMENT, INetURLObject::EncodeMechanism::All );
                 aLibInfoInetObj.setExtension( "xli" );
-                aFileName = aLibInfoInetObj.GetMainURL( INetURLObject::NO_DECODE );
+                aFileName = aLibInfoInetObj.GetMainURL( INetURLObject::DecodeMechanism::NONE );
 
                 try
                 {
@@ -863,7 +863,7 @@ void SfxLibraryContainer::init_Impl( const OUString& rInitialDocumentURL,
 
                     aInetObj.insertName( rLib.aName, true, INetURLObject::LAST_SEGMENT,
                                          INetURLObject::EncodeMechanism::All );
-                    OUString aLibDirPath = aInetObj.GetMainURL( INetURLObject::NO_DECODE );
+                    OUString aLibDirPath = aInetObj.GetMainURL( INetURLObject::DecodeMechanism::NONE );
                     if( mxSFI->isFolder( aLibDirPath ) )
                     {
                         createVariableURL( rLib.aStorageURL, rLib.aName, maInfoFileName, true );
@@ -875,7 +875,7 @@ void SfxLibraryContainer::init_Impl( const OUString& rInitialDocumentURL,
                         INetURLObject aShareInetObj( maLibraryPath.getToken(0, (sal_Unicode)';') );
                         aShareInetObj.insertName( rLib.aName, true, INetURLObject::LAST_SEGMENT,
                                                   INetURLObject::EncodeMechanism::All );
-                        OUString aShareLibDirPath = aShareInetObj.GetMainURL( INetURLObject::NO_DECODE );
+                        OUString aShareLibDirPath = aShareInetObj.GetMainURL( INetURLObject::DecodeMechanism::NONE );
                         if( mxSFI->isFolder( aShareLibDirPath ) )
                         {
                             createVariableURL( rLib.aStorageURL, rLib.aName, maInfoFileName, false );
@@ -1031,7 +1031,7 @@ void SfxLibraryContainer::init_Impl( const OUString& rInitialDocumentURL,
         try
         {
             INetURLObject aPrevUserBasicInetObj = aPrevUserBasicInetObj_1;
-            OUString aPrevFolder = aPrevUserBasicInetObj.GetMainURL( INetURLObject::NO_DECODE );
+            OUString aPrevFolder = aPrevUserBasicInetObj.GetMainURL( INetURLObject::DecodeMechanism::NONE );
             if( mxSFI->isFolder( aPrevFolder ) )
             {
                 // Check if Standard folder exists and is complete
@@ -1041,7 +1041,7 @@ void SfxLibraryContainer::init_Impl( const OUString& rInitialDocumentURL,
                 INetURLObject aPrevUserBasicStandardInetObj( aPrevUserBasicInetObj );
                 aPrevUserBasicStandardInetObj.insertName( aStandardStr, true, INetURLObject::LAST_SEGMENT,
                                                         INetURLObject::EncodeMechanism::All );
-                OUString aPrevStandardFolder = aPrevUserBasicStandardInetObj.GetMainURL( INetURLObject::NO_DECODE );
+                OUString aPrevStandardFolder = aPrevUserBasicStandardInetObj.GetMainURL( INetURLObject::DecodeMechanism::NONE );
                 if( mxSFI->isFolder( aPrevStandardFolder ) )
                 {
                     OUString aXlbExtension( "xlb" );
@@ -1068,17 +1068,17 @@ void SfxLibraryContainer::init_Impl( const OUString& rInitialDocumentURL,
                 }
                 else
                 {
-                    OUString aStandardFolder = aUserBasicStandardInetObj.GetMainURL( INetURLObject::NO_DECODE );
+                    OUString aStandardFolder = aUserBasicStandardInetObj.GetMainURL( INetURLObject::DecodeMechanism::NONE );
                     mxSFI->copy( aStandardFolder, aPrevStandardFolder );
                 }
 
-                OUString aPrevCopyToFolder = aPrevUserBasicInetObj_2.GetMainURL( INetURLObject::NO_DECODE );
+                OUString aPrevCopyToFolder = aPrevUserBasicInetObj_2.GetMainURL( INetURLObject::DecodeMechanism::NONE );
                 mxSFI->copy( aPrevFolder, aPrevCopyToFolder );
             }
             else
             {
                 aPrevUserBasicInetObj = aPrevUserBasicInetObj_2;
-                aPrevFolder = aPrevUserBasicInetObj.GetMainURL( INetURLObject::NO_DECODE );
+                aPrevFolder = aPrevUserBasicInetObj.GetMainURL( INetURLObject::DecodeMechanism::NONE );
             }
             if( mxSFI->isFolder( aPrevFolder ) )
             {
@@ -1086,11 +1086,11 @@ void SfxLibraryContainer::init_Impl( const OUString& rInitialDocumentURL,
                 Reference< XInterface > xRef = static_cast< XInterface* >( static_cast< OWeakObject* >(pPrevCont) );
 
                 // Rename previous basic folder to make storage URLs correct during initialisation
-                OUString aFolderUserBasic = aUserBasicInetObj.GetMainURL( INetURLObject::NO_DECODE );
+                OUString aFolderUserBasic = aUserBasicInetObj.GetMainURL( INetURLObject::DecodeMechanism::NONE );
                 INetURLObject aUserBasicTmpInetObj( aUserBasicInetObj );
                 aUserBasicTmpInetObj.removeSegment();
                 aUserBasicTmpInetObj.Append( "__basic_tmp" );
-                OUString aFolderTmp = aUserBasicTmpInetObj.GetMainURL( INetURLObject::NO_DECODE );
+                OUString aFolderTmp = aUserBasicTmpInetObj.GetMainURL( INetURLObject::DecodeMechanism::NONE );
 
                 mxSFI->move( aFolderUserBasic, aFolderTmp );
                 try
@@ -1114,7 +1114,7 @@ void SfxLibraryContainer::init_Impl( const OUString& rInitialDocumentURL,
                 aPrevUserBasicLibInfoInetObj.insertName( maInfoFileName, false, INetURLObject::LAST_SEGMENT,
                                                     INetURLObject::EncodeMechanism::All );
                 aPrevUserBasicLibInfoInetObj.setExtension( "xlc");
-                OUString aLibInfoFileName = aPrevUserBasicLibInfoInetObj.GetMainURL( INetURLObject::NO_DECODE );
+                OUString aLibInfoFileName = aPrevUserBasicLibInfoInetObj.GetMainURL( INetURLObject::DecodeMechanism::NONE );
                 Sequence<Any> aInitSeq( 1 );
                 aInitSeq.getArray()[0] <<= aLibInfoFileName;
                 GbMigrationSuppressErrors = true;
@@ -1173,11 +1173,11 @@ void SfxLibraryContainer::init_Impl( const OUString& rInitialDocumentURL,
                         // Move folder if not already done
                         INetURLObject aUserBasicLibFolderInetObj( aUserBasicInetObj );
                         aUserBasicLibFolderInetObj.Append( aLibName );
-                        OUString aLibFolder = aUserBasicLibFolderInetObj.GetMainURL( INetURLObject::NO_DECODE );
+                        OUString aLibFolder = aUserBasicLibFolderInetObj.GetMainURL( INetURLObject::DecodeMechanism::NONE );
 
                         INetURLObject aPrevUserBasicLibFolderInetObj( aPrevUserBasicInetObj );
                         aPrevUserBasicLibFolderInetObj.Append( aLibName );
-                        OUString aPrevLibFolder = aPrevUserBasicLibFolderInetObj.GetMainURL( INetURLObject::NO_DECODE );
+                        OUString aPrevLibFolder = aPrevUserBasicLibFolderInetObj.GetMainURL( INetURLObject::DecodeMechanism::NONE );
 
                         if( mxSFI->isFolder( aPrevLibFolder ) && !mxSFI->isFolder( aLibFolder ) )
                         {
@@ -1218,12 +1218,12 @@ void SfxLibraryContainer::init_Impl( const OUString& rInitialDocumentURL,
             INetURLObject aPrevUserBasicInetObj_Err( aUserBasicInetObj );
             aPrevUserBasicInetObj_Err.removeSegment();
             aPrevUserBasicInetObj_Err.Append( "__basic_80_err" );
-            OUString aPrevFolder_Err = aPrevUserBasicInetObj_Err.GetMainURL( INetURLObject::NO_DECODE );
+            OUString aPrevFolder_Err = aPrevUserBasicInetObj_Err.GetMainURL( INetURLObject::DecodeMechanism::NONE );
 
             bool bSaved = false;
             try
             {
-                OUString aPrevFolder_1 = aPrevUserBasicInetObj_1.GetMainURL( INetURLObject::NO_DECODE );
+                OUString aPrevFolder_1 = aPrevUserBasicInetObj_1.GetMainURL( INetURLObject::DecodeMechanism::NONE );
                 if( mxSFI->isFolder( aPrevFolder_1 ) )
                 {
                     mxSFI->move( aPrevFolder_1, aPrevFolder_Err );
@@ -1234,7 +1234,7 @@ void SfxLibraryContainer::init_Impl( const OUString& rInitialDocumentURL,
             {}
             try
             {
-                OUString aPrevFolder_2 = aPrevUserBasicInetObj_2.GetMainURL( INetURLObject::NO_DECODE );
+                OUString aPrevFolder_2 = aPrevUserBasicInetObj_2.GetMainURL( INetURLObject::DecodeMechanism::NONE );
                 if( !bSaved && mxSFI->isFolder( aPrevFolder_2 ) )
                 {
                     mxSFI->move( aPrevFolder_2, aPrevFolder_Err );
@@ -1312,7 +1312,7 @@ void SfxLibraryContainer::checkStorageURL( const OUString& aSourceURL,
         // URL to xlb file
         aLibInfoFileURL = aExpandedSourceURL;
         aInetObj.removeSegment();
-        aStorageURL = aInetObj.GetMainURL( INetURLObject::NO_DECODE );
+        aStorageURL = aInetObj.GetMainURL( INetURLObject::DecodeMechanism::NONE );
     }
     else
     {
@@ -1320,7 +1320,7 @@ void SfxLibraryContainer::checkStorageURL( const OUString& aSourceURL,
         aStorageURL = aExpandedSourceURL;
         aInetObj.insertName( maInfoFileName, false, INetURLObject::LAST_SEGMENT, INetURLObject::EncodeMechanism::All );
         aInetObj.setExtension( "xlb" );
-        aLibInfoFileURL = aInetObj.GetMainURL( INetURLObject::NO_DECODE );
+        aLibInfoFileURL = aInetObj.GetMainURL( INetURLObject::DecodeMechanism::NONE );
     }
 }
 
@@ -1372,7 +1372,7 @@ OUString SfxLibraryContainer::createAppLibraryFolder( SfxLibrary* pLib, const OU
     {
         INetURLObject aInetObj( maLibraryPath.getToken(1, (sal_Unicode)';') );
         aInetObj.insertName( aName, true, INetURLObject::LAST_SEGMENT, INetURLObject::EncodeMechanism::All );
-        checkStorageURL( aInetObj.GetMainURL( INetURLObject::NO_DECODE ), pLib->maLibInfoFileURL,
+        checkStorageURL( aInetObj.GetMainURL( INetURLObject::DecodeMechanism::NONE ), pLib->maLibInfoFileURL,
                          pLib->maStorageURL, pLib->maUnexpandedStorageURL );
         aLibDirPath = pLib->maStorageURL;
     }
@@ -1481,7 +1481,7 @@ void SfxLibraryContainer::implStoreLibrary( SfxLibrary* pLib,
             {
                 INetURLObject aInetObj( aTargetURL );
                 aInetObj.insertName( aName, true, INetURLObject::LAST_SEGMENT, INetURLObject::EncodeMechanism::All );
-                aLibDirPath = aInetObj.GetMainURL( INetURLObject::NO_DECODE );
+                aLibDirPath = aInetObj.GetMainURL( INetURLObject::DecodeMechanism::NONE );
 
                 if( !xSFI->isFolder( aLibDirPath ) )
                 {
@@ -1504,7 +1504,7 @@ void SfxLibraryContainer::implStoreLibrary( SfxLibrary* pLib,
                                             INetURLObject::LAST_SEGMENT,
                                             INetURLObject::EncodeMechanism::All );
                 aElementInetObj.setExtension( maLibElementFileExtension );
-                OUString aElementPath( aElementInetObj.GetMainURL( INetURLObject::NO_DECODE ) );
+                OUString aElementPath( aElementInetObj.GetMainURL( INetURLObject::DecodeMechanism::NONE ) );
 
                 if( !isLibraryElementValid( pLib->getByName( aElementName ) ) )
                 {
@@ -1614,14 +1614,14 @@ void SfxLibraryContainer::implStoreLibraryIndexFile( SfxLibrary* pLib,
         {
             INetURLObject aInetObj( aTargetURL );
             aInetObj.insertName( rLib.aName, true, INetURLObject::LAST_SEGMENT, INetURLObject::EncodeMechanism::All );
-            OUString aLibDirPath = aInetObj.GetMainURL( INetURLObject::NO_DECODE );
+            OUString aLibDirPath = aInetObj.GetMainURL( INetURLObject::DecodeMechanism::NONE );
             if( !xSFI->isFolder( aLibDirPath ) )
             {
                 xSFI->createFolder( aLibDirPath );
             }
             aInetObj.insertName( maInfoFileName, false, INetURLObject::LAST_SEGMENT, INetURLObject::EncodeMechanism::All );
             aInetObj.setExtension( "xlb" );
-            aLibInfoPath = aInetObj.GetMainURL( INetURLObject::NO_DECODE );
+            aLibInfoPath = aInetObj.GetMainURL( INetURLObject::DecodeMechanism::NONE );
         }
         else
         {
@@ -2126,7 +2126,7 @@ void SfxLibraryContainer::storeLibraries_Impl( const uno::Reference< embed::XSto
         INetURLObject aLibInfoInetObj( maLibraryPath.getToken(1, (sal_Unicode)';') );
         aLibInfoInetObj.insertName( maInfoFileName, false, INetURLObject::LAST_SEGMENT, INetURLObject::EncodeMechanism::All );
         aLibInfoInetObj.setExtension( "xlc" );
-        OUString aLibInfoPath( aLibInfoInetObj.GetMainURL( INetURLObject::NO_DECODE ) );
+        OUString aLibInfoPath( aLibInfoInetObj.GetMainURL( INetURLObject::DecodeMechanism::NONE ) );
 
         try
         {
@@ -2334,7 +2334,7 @@ void SAL_CALL SfxLibraryContainer::removeLibrary( const OUString& Name )
         INetURLObject aInetObj( maLibraryPath.getToken(1, (sal_Unicode)';') );
         aInetObj.insertName( Name, true, INetURLObject::LAST_SEGMENT,
                              INetURLObject::EncodeMechanism::All );
-        OUString aLibDirPath = aInetObj.GetMainURL( INetURLObject::NO_DECODE );
+        OUString aLibDirPath = aInetObj.GetMainURL( INetURLObject::DecodeMechanism::NONE );
 
         try
         {
@@ -2482,7 +2482,7 @@ void SAL_CALL SfxLibraryContainer::loadLibrary( const OUString& Name )
                                             INetURLObject::LAST_SEGMENT,
                                             INetURLObject::EncodeMechanism::All );
                 aElementInetObj.setExtension( maLibElementFileExtension );
-                aFile = aElementInetObj.GetMainURL( INetURLObject::NO_DECODE );
+                aFile = aElementInetObj.GetMainURL( INetURLObject::DecodeMechanism::NONE );
             }
 
             Reference< XNameContainer > xLib( pImplLib );
@@ -2600,7 +2600,7 @@ void SAL_CALL SfxLibraryContainer::renameLibrary( const OUString& Name, const OU
         INetURLObject aDestInetObj( maLibraryPath.getToken(1, (sal_Unicode)';'));
         aDestInetObj.insertName( NewName, true, INetURLObject::LAST_SEGMENT,
                                  INetURLObject::EncodeMechanism::All );
-        OUString aDestDirPath = aDestInetObj.GetMainURL( INetURLObject::NO_DECODE );
+        OUString aDestDirPath = aDestInetObj.GetMainURL( INetURLObject::DecodeMechanism::NONE );
 
         // Store new URL
         OUString aLibInfoFileURL = pImplLib->maLibInfoFileURL;
@@ -2639,14 +2639,14 @@ void SAL_CALL SfxLibraryContainer::renameLibrary( const OUString& Name, const OU
                     aElementInetObj.insertName( aElementName, false,
                         INetURLObject::LAST_SEGMENT, INetURLObject::EncodeMechanism::All );
                     aElementInetObj.setExtension( maLibElementFileExtension );
-                    OUString aElementPath( aElementInetObj.GetMainURL( INetURLObject::NO_DECODE ) );
+                    OUString aElementPath( aElementInetObj.GetMainURL( INetURLObject::DecodeMechanism::NONE ) );
 
                     INetURLObject aElementDestInetObj( aDestDirPath );
                     aElementDestInetObj.insertName( aElementName, false,
                                                     INetURLObject::LAST_SEGMENT,
                                                     INetURLObject::EncodeMechanism::All );
                     aElementDestInetObj.setExtension( maLibElementFileExtension );

... etc. - the rest is truncated


More information about the Libreoffice-commits mailing list