See svtools/source/filepicker.cxx

	And see tools/inc/urlobj.hxx
	( tools/source/fsys/urlobj.cxx )

	It seems like the 'Edit FT_EXPLORERFILE_FILENAME' is the real
McCoy - _pFtFileName ( FixedText ). This seems not to be used internally,
merely passed outside by implGetControl nControlId == EDIT_FILEURI.

	Then again, there is _pEdFileName - a SvtURLBox - that looks
hopeful as well - AutoExtensionHdl_Impl ?


*** The sfx2 file dialog is just bunk & not used ***

sfx2/source/dialog/filedlghelper.cxx (getCurrentSfxFilter):
	+ Seems to indicate the dialog has an XFilterManager
	  UNO interface
	+ addFilters ... [ from SfxObjectFactory ]
	-> sfx2::appendFilters (filtergrouping.hxx)
	iterates over SfxFilterMatcher on SfxObjectFactory

sfx2/source/bastyp/fltfnc.cxx (SfxFilterMatcher) ->
	(ReadExternalFilters) -> does a query string on the
	(UNO container XNameAccess xFilterCFG):
	  xFilterCFG->getByName (
	    "_query_writer:sort_prop=uiname:use_order:default_first");

[ http://ooo.ximian.com/lxr/search?string=default_first
	a good overview of how this querying business works.
 framework/source/classes/filtercache.cxx (queryFilters) ]

	xFilterCFG created via UNO -> 
                xMan->createInstance(
			DEFINE_CONST_UNICODE( "com.sun.star.document.FilterFactory" ) ),
			::com::sun::star::uno::UNO_QUERY );

	lives in: framework/source/services/filterfactory.cxx
	(getByName) -> uses bits poked above & FilterCache.

Instantiated from:
	 Reference< XMultiServiceFactory > xFilterFactory(
		getProcessServiceFactory()->createInstance(
			SERVICENAME_FILTERFACTORY )

insertByName:
descr Use this method to register a new filter. We will write given information in our configuration
	file "org.openoffice.Office.TypeDetection.xml" and use it from follow office startup.

Discovered this data is registered from scp files eg:
	scp/source/calc/profile_calc.scp [ presumably generated from scp ]

	* Horrors, altering the mysterious '67' to '323' in the
	  system TypeDetection.xml file results in a new system
	  default; wow. The numbers tie up with 
	  sfx2/inc/docfilt.hxx's #define set.

	* The numbers get magically inserted into
		officecfg/data/org/openoffice/Office/TypeDetection.xcd

!	The names are defined twice in filterflags.h and docfilt.hxx

	So you have to hack the magic numbers in TypeDetection.xcd [!]


Trace of File->'Save As' from 'sw'

#0  0x40bee41e in select () from /lib/libc.so.6
#1  0x4040ff50 in __DTOR_END__ () from ./libvcl641li.so
#2  0x4036f71d in SalInstance::Yield(unsigned char) (this=0x4087bc60, bWait=1) at ../../../unx/inc/saldata.hxx:170
#3  0x401f103e in Application::Yield() () at /opt/OpenOffice/openoffice/build/unknown/OOO_STABLE_1/vcl/source/app/svapp.cxx:707
#4  0x402ae1a5 in Dialog::Execute() (this=0x433091c8)
    at /opt/OpenOffice/openoffice/build/unknown/OOO_STABLE_1/vcl/source/window/dialog.cxx:673
#5  0x44ae5398 in SvtFileDialog::Execute() (this=0x433091c8)
    at /opt/OpenOffice/openoffice/build/unknown/OOO_STABLE_1/svtools/source/filepicker/iodlg.cxx:2054
#6  0x44acfcff in SvtFilePicker_Impl::execute() (this=0x46676310)
    at /opt/OpenOffice/openoffice/build/unknown/OOO_STABLE_1/svtools/source/filepicker/filepicker.cxx:501
#7  0x44ad13e0 in SvtFilePicker::execute() (this=0x43306d20)
    at /opt/OpenOffice/openoffice/build/unknown/OOO_STABLE_1/svtools/source/filepicker/filepicker.cxx:707
#8  0x4436e7c0 in sfx2::FileDialogHelper_Impl::implDoExecute() (this=0x43312500)
    at /opt/OpenOffice/openoffice/build/unknown/OOO_STABLE_1/solver/641/unxlngi4.pro/inc/com/sun/star/uno/Reference.h:260
#9  0x4436e883 in sfx2::FileDialogHelper_Impl::execute(SvStringsDtor*&, SfxItemSet*&, String&) (this=0x43312500, rpURLList=@0xbfffe4f8, 
    rpSet=@0xbfffe574, rFilter=@0xbffff000)
    at /opt/OpenOffice/openoffice/build/unknown/OOO_STABLE_1/sfx2/source/dialog/filedlghelper.cxx:1246
#10 0x443730ac in sfx2::FileDialogHelper::Execute(SfxItemSet*&, String&) (this=0xbfffefe0, rpSet=@0xbfffe574, rFilter=@0xbffff000)
    at /opt/OpenOffice/openoffice/build/unknown/OOO_STABLE_1/sfx2/source/dialog/filedlghelper.cxx:1983
#11 0x4427d7eb in SfxObjectShell::SaveAs_Impl(unsigned char, SfxRequest*) (this=0x462a7eb8, bUrl=0 '\0', pRequest=0x46636730)
    at /opt/OpenOffice/openoffice/build/unknown/OOO_STABLE_1/sfx2/source/doc/objstor.cxx:1786
#12 0x4428734c in SfxObjectShell::ExecFile_Impl(SfxRequest&) (this=0x462a7eb8, rReq=@0x46636730)
    at /opt/OpenOffice/openoffice/build/unknown/OOO_STABLE_1/sfx2/source/doc/objserv.cxx:479
#13 0x442862ef in SfxStubSfxObjectShellExecFile_Impl(SfxShell*, SfxRequest&) (pShell=0x462a7eb8, rReq=@0x46636730)
    at ../../unxlngi4.pro/inc/sfxslots.hxx:187
#14 0x4430cbb7 in SfxDispatcher::Call_Impl(SfxShell&, SfxSlot const&, SfxRequest&, unsigned char) (this=0x462b18b0, rShell=@0x462a7eb8, 
    rSlot=@0x443f6f54, rReq=@0x46636730, bRecord=1) at ../../inc/shell.hxx:229
#15 0x4430f521 in SfxDispatcher::PostMsgHandler(SfxRequest*) (this=0x462b18b0, pReq=0x46636730)
    at /opt/OpenOffice/openoffice/build/unknown/OOO_STABLE_1/sfx2/source/control/dispatch.cxx:1524
#16 0x4430f3ef in SfxDispatcher::LinkStubPostMsgHandler(void*, void*) (pThis=0x462b18b0, pCaller=0x46636730)
    at /opt/OpenOffice/openoffice/build/unknown/OOO_STABLE_1/sfx2/source/control/dispatch.cxx:1491
#17 0x4432c838 in SfxHintPoster::Event(SfxHint*) (this=0x462c15a8, pPostedHint=0x46636730)
    at /opt/OpenOffice/openoffice/build/unknown/OOO_STABLE_1/solver/641/unxlngi4.pro/inc/tools/link.hxx:156
#18 0x4432c7d4 in SfxHintPoster::LinkStubDoEvent_Impl(void*, void*) (pThis=0x462c15a8, pCaller=0x46636730)
    at /opt/OpenOffice/openoffice/build/unknown/OOO_STABLE_1/sfx2/source/notify/hintpost.cxx:110
#19 0x402eda91 in ImplHandleUserEvent(ImplSVEvent*) (pSVEvent=0x46670710)
    at /opt/OpenOffice/openoffice/build/unknown/OOO_STABLE_1/solver/641/unxlngi4.pro/inc/tools/link.hxx:156
#20 0x402ee1a9 in ImplWindowFrameProc(void*, SalFrame*, unsigned short, void const*) (pInst=0x4536ed10, pFrame=0x4536ef68, nEvent=22, 
    pEvent=0x46670710) at /opt/OpenOffice/openoffice/build/unknown/OOO_STABLE_1/vcl/source/window/winproc.cxx:2030
#21 0x40346219 in SalFrameData::HandleClientMessage(XClientMessageEvent*) (this=0x4536ef68, pEvent=0xbffff734)
    at ../../../unx/inc/salframe.h:252
#22 0x4034689a in SalFrameData::Dispatch(_XEvent*) (this=0x4536ef68, pEvent=0xbffff734)
    at /opt/OpenOffice/openoffice/build/unknown/OOO_STABLE_1/vcl/unx/source/window/salframe.cxx:3326
#23 0x4036c385 in SalDisplay::Dispatch(_XEvent*) (this=0x4087b7a8, pEvent=0xbffff734)
    at /opt/OpenOffice/openoffice/build/unknown/OOO_STABLE_1/vcl/unx/source/app/saldisp.cxx:2659
#24 0x4036c0b8 in SalDisplay::Yield(unsigned char) (this=0x4087b7a8, bWait=1)
    at /opt/OpenOffice/openoffice/build/unknown/OOO_STABLE_1/vcl/unx/source/app/saldisp.cxx:2560
#25 0x40367995 in DisplayYield(int, SalDisplay*) (fd=4, pDisplay=0x4087b7a8)
    at /opt/OpenOffice/openoffice/build/unknown/OOO_STABLE_1/vcl/unx/source/app/saldisp.cxx:810
#26 0x40366514 in SalXLib::Yield(unsigned char) (this=0x4087b408, bWait=1 '\001')
    at /opt/OpenOffice/openoffice/build/unknown/OOO_STABLE_1/vcl/unx/source/app/saldata.cxx:644
#27 0x4036f71d in SalInstance::Yield(unsigned char) (this=0x4087bc60, bWait=1) at ../../../unx/inc/saldata.hxx:170
#28 0x401f103e in Application::Yield() () at /opt/OpenOffice/openoffice/build/unknown/OOO_STABLE_1/vcl/source/app/svapp.cxx:707
#29 0x401f0f78 in Application::Execute() () at /opt/OpenOffice/openoffice/build/unknown/OOO_STABLE_1/vcl/source/app/svapp.cxx:666
#30 0x0805e0cd in Desktop::Main() (this=0x807d714)
    at /opt/OpenOffice/openoffice/build/unknown/OOO_STABLE_1/desktop/source/app/app.cxx:1581
#31 0x401f3727 in SVMain() () at /opt/OpenOffice/openoffice/build/unknown/OOO_STABLE_1/vcl/source/app/svmain.cxx:281
#32 0x4036539a in main (argc=1, argv=0xbffffbe4)
    at /opt/OpenOffice/openoffice/build/unknown/OOO_STABLE_1/vcl/unx/source/app/salmain.cxx:87
#33 0x40b2f1c4 in __libc_start_main () from /lib/libc.so.6

	* poked at offmgr/source/offapp/dialog/optfltr.src,
	  seems to be part of some generic filter mechanism.
	  'RID_OFAPAGE_MSFILTEROPT' / 'GB_WORD'



It appears these filters are for something else:
	Filters registered:
		sfx2/inc/docfac.hxx: RegisterFilter, GetFilter, xf SFX_.*_FILTER_REGISTRATION
	SfxFactoryFilterContainer:
		sfx2/source/bastyp/fltfnc.cxx
	See:
		sfx2/source/doc/objstor.cxx
