summaryrefslogtreecommitdiff
path: root/svx/source/inc
diff options
context:
space:
mode:
Diffstat (limited to 'svx/source/inc')
-rw-r--r--svx/source/inc/fmresids.hrc264
-rw-r--r--svx/source/inc/fmshimp.hxx2
-rw-r--r--svx/source/inc/fmsrccfg.hxx156
-rw-r--r--svx/source/inc/fmsrcimp.hxx401
-rw-r--r--svx/source/inc/sqlparserclient.hxx2
5 files changed, 2 insertions, 823 deletions
diff --git a/svx/source/inc/fmresids.hrc b/svx/source/inc/fmresids.hrc
deleted file mode 100644
index f6843801e522..000000000000
--- a/svx/source/inc/fmresids.hrc
+++ /dev/null
@@ -1,264 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-#ifndef _SVX_FMRESIDS_HRC
-#define _SVX_FMRESIDS_HRC
-
-// include -----------------------------------------------------------
-#include <svl/solar.hrc>
-
-// unnamed ressources -------------------------------------------------------
-// sub ressources .....................
-
-// ImageList-Id's -----------------------------------------------------------
-#define RID_SVXIMGLIST_FMEXPL (RID_FORMS_START + 0)
-#define RID_SVXIMGLIST_FMEXPL_HC (RID_FORMS_START + 2)
-
-// Image-Id's -----------------------------------------------------------
-//#define SID_FMSLOTS_START (SID_SVX_START + 592) -> svxids.hrc
-#define RID_SVXIMG_FORM SID_FM_CONFIG
-#define RID_SVXIMG_CONTROL SID_CHOOSE_CONTROLS
-#define RID_SVXIMG_COLLAPSEDNODE (RID_FORMS_START + 2)
-#define RID_SVXIMG_EXPANDEDNODE (RID_FORMS_START + 3)
-#define RID_SVXIMG_BUTTON SID_FM_PUSHBUTTON
-#define RID_SVXIMG_RADIOBUTTON SID_FM_RADIOBUTTON
-#define RID_SVXIMG_CHECKBOX SID_FM_CHECKBOX
-#define RID_SVXIMG_FIXEDTEXT SID_FM_FIXEDTEXT
-#define RID_SVXIMG_GROUPBOX SID_FM_GROUPBOX
-#define RID_SVXIMG_EDIT SID_FM_EDIT
-#define RID_SVXIMG_LISTBOX SID_FM_LISTBOX
-#define RID_SVXIMG_COMBOBOX SID_FM_COMBOBOX
-#define RID_SVXIMG_FORMS (RID_FORMS_START +13)
-#define RID_SVXIMG_IMAGEBUTTON SID_FM_IMAGEBUTTON
-#define RID_SVXIMG_IMAGECONTROL SID_FM_IMAGECONTROL
-#define RID_SVXIMG_FILECONTROL SID_FM_FILECONTROL
-#define RID_SVXIMG_DATEFIELD SID_FM_DATEFIELD
-#define RID_SVXIMG_TIMEFIELD SID_FM_TIMEFIELD
-#define RID_SVXIMG_NUMERICFIELD SID_FM_NUMERICFIELD
-#define RID_SVXIMG_CURRENCYFIELD SID_FM_CURRENCYFIELD
-#define RID_SVXIMG_PATTERNFIELD SID_FM_PATTERNFIELD
-#define RID_SVXIMG_HIDDEN (RID_FORMS_START +22)
-#define RID_SVXIMG_GRID SID_FM_DBGRID
-#define RID_SVXIMG_FORMATTEDFIELD SID_FM_FORMATTEDFIELD
-#define RID_SVXIMG_FILTER SID_FM_FILTERCRIT
-#define RID_SVXIMG_DATE_N_TIME_FIELDS SID_FM_TWOFIELDS_DATE_N_TIME
-#define RID_SVXIMG_FIELD (RID_FORMS_START +27)
-#define RID_SVXIMG_SCROLLBAR SID_FM_SCROLLBAR
-#define RID_SVXIMG_SPINBUTTON SID_FM_SPINBUTTON
-#define RID_SVXIMG_NAVIGATIONBAR SID_FM_NAVIGATIONBAR
-
-// Dialog-Id's -----------------------------------------------------------
-#define RID_SVXTBX_FORM (RID_FORMS_START + 1)
-#define TBX_FORM (RID_FORMS_START + 2)
-#define RID_SVXDLG_ADD_TABLE (RID_FORMS_START + 3)
-#define RID_SVXDLG_TAB_ORDER (RID_FORMS_START + 4)
-#define RID_SVXDLG_SETFORM (RID_FORMS_START + 5)
-#define RID_SVX_FMEXPLORER (RID_FORMS_START + 6)
-#define RID_SVXDLG_ADD_DATAITEM (RID_FORMS_START + 12)
-#define RID_SVXDLG_ADD_CONDITION (RID_FORMS_START + 13)
-#define RID_SVXDLG_NAMESPACE_ITEM (RID_FORMS_START + 14)
-#define RID_SVXDLG_MANAGE_NAMESPACE (RID_FORMS_START + 15)
-#define RID_SVXDLG_ADD_SUBMISSION (RID_FORMS_START + 16)
-#define RID_SVXDLG_ADD_MODEL (RID_FORMS_START + 17)
-#define RID_SVXDLG_ADD_INSTANCE (RID_FORMS_START + 18)
-#define RID_SVXWIN_DATANAVIGATOR (RID_FORMS_START + 19)
-#define RID_SVX_XFORMS_TABPAGES (RID_FORMS_START + 20)
-
-// Toolbars ------------------------------------------------------------
-#define RID_SVXTBX_FORM_NAVIGATION (RID_FORMS_START + 1)
-#define RID_SVXTBX_FORM_FILTER (RID_FORMS_START + 2)
-#define RID_SVXTBX_TEXT_CONTROL_ATTRIBUTES (RID_FORMS_START + 3)
-#define RID_SVXTBX_CONTROLS (RID_FORMS_START + 4)
-#define RID_SVXTBX_MORECONTROLS (RID_FORMS_START + 5)
-#define RID_SVXTBX_FORMDESIGN (RID_FORMS_START + 6)
-
-// Menu-Id's -----------------------------------------------------------
-#define RID_FMEXPLORER_POPUPMENU (RID_FORMS_START + 0)
-#define RID_SVXMNU_ROWS (RID_FORMS_START + 1)
-#define RID_SVXMNU_COLS (RID_FORMS_START + 2)
-#define RID_SVXMNU_CELL (RID_FORMS_START + 3)
-#define RID_FMSHELL_CONVERSIONMENU (RID_FORMS_START + 4)
-#define RID_FM_FILTER_MENU (RID_FORMS_START + 5)
-#define RID_FM_TEXTATTRIBUTE_MENU (RID_FORMS_START + 6)
-#define MENU_FM_TEXTATTRIBITES_STYLE (RID_FORMS_START + 7)
-#define MENU_FM_TEXTATTRIBITES_ALIGNMENT (RID_FORMS_START + 8)
-#define MENU_FM_TEXTATTRIBITES_SPACING (RID_FORMS_START + 9)
-#define RID_MENU_DATANAVIGATOR (RID_FORMS_START + 10)
-
-// QueryBox-Id's -----------------------------------------------------------
-#define RID_QRY_SAVEMODIFIED (RID_FORMS_START + 1)
-#define RID_QRY_REMOVE_MODEL (RID_FORMS_START + 2)
-#define RID_QRY_REMOVE_INSTANCE (RID_FORMS_START + 3)
-#define RID_QRY_REMOVE_ELEMENT (RID_FORMS_START + 4)
-#define RID_QRY_REMOVE_ATTRIBUTE (RID_FORMS_START + 5)
-#define RID_QRY_LINK_WARNING (RID_FORMS_START + 6)
-#define RID_QRY_REMOVE_SUBMISSION (RID_FORMS_START + 7)
-#define RID_QRY_REMOVE_BINDING (RID_FORMS_START + 8)
-
-// ErrorBox-Id's -----------------------------------------------------------
-#define RID_ERR_INVALID_XMLNAME (RID_FORMS_START + 1)
-#define RID_ERR_INVALID_XMLPREFIX (RID_FORMS_START + 2)
-#define RID_ERR_DOUBLE_MODELNAME (RID_FORMS_START + 3)
-#define RID_ERR_EMPTY_SUBMISSIONNAME (RID_FORMS_START + 4)
-
-// String-Id's -----------------------------------------------------------
-#define RID_STR_FORMSHELL (RID_FORMS_START + 10)
-#define RID_STR_STDFORMNAME (RID_FORMS_START + 11)
-#define RID_STR_REC_TEXT (RID_FORMS_START + 12)
-#define RID_STR_REC_FROM_TEXT (RID_FORMS_START + 13)
-#define RID_STR_UNDO_PROPERTY (RID_FORMS_START + 14)
-#define RID_STR_UNDO_CONTAINER_INSERT (RID_FORMS_START + 15)
-#define RID_STR_UNDO_CONTAINER_REMOVE (RID_FORMS_START + 16)
-#define RID_STR_UNDO_CONTAINER_REMOVE_MULTIPLE (RID_FORMS_START + 27)
-#define RID_STR_UNDO_CONTAINER_REPLACE (RID_FORMS_START + 28)
-#define RID_STR_UNDO_TABORDER (RID_FORMS_START + 29)
-#define RID_STR_UNDO_DELETE_LOGICAL (RID_FORMS_START + 30)
-#define RID_STR_UNDO_MODEL_REPLACE (RID_FORMS_START + 31)
-#define RID_STR_NAVIGATIONBAR (RID_FORMS_START + 32)
-#define RID_STR_DEFAULT_CONTROL (RID_FORMS_START + 33)
-#define RID_STR_FORM (RID_FORMS_START + 36)
-#define RID_STR_FIELDSELECTION (RID_FORMS_START + 37)
-#define RID_STR_NO_PROPERTIES (RID_FORMS_START + 38)
-#define RID_STR_PROPERTIES_CONTROL (RID_FORMS_START + 39)
-#define RID_STR_PROPERTIES_FORM (RID_FORMS_START + 40)
-#define RID_STR_FMEXPLORER (RID_FORMS_START + 41)
-#define RID_STR_FORMS (RID_FORMS_START + 42)
-#define RID_STR_WRITEERROR (RID_FORMS_START + 43)
-#define RID_STR_DELETECONFIRM_RECORD (RID_FORMS_START + 44)
-#define RID_STR_DELETECONFIRM (RID_FORMS_START + 45)
-#define RID_STR_GROUPBOX (RID_FORMS_START + 46)
-#define RID_STR_NAVIGATION (RID_FORMS_START + 47)
-#define RID_STR_COLUMN (RID_FORMS_START + 48)
-#define RID_STR_DATE (RID_FORMS_START + 49)
-#define RID_STR_TIME (RID_FORMS_START + 50)
-#define RID_STR_PROPTITLE_NAVBAR (RID_FORMS_START + 51)
-#define RID_STR_PROPTITLE_PUSHBUTTON (RID_FORMS_START + 52)
-#define RID_STR_PROPTITLE_RADIOBUTTON (RID_FORMS_START + 53)
-#define RID_STR_PROPTITLE_CHECKBOX (RID_FORMS_START + 54)
-#define RID_STR_PROPTITLE_FIXEDTEXT (RID_FORMS_START + 55)
-#define RID_STR_PROPTITLE_GROUPBOX (RID_FORMS_START + 56)
-#define RID_STR_PROPTITLE_EDIT (RID_FORMS_START + 57)
-#define RID_STR_PROPTITLE_LISTBOX (RID_FORMS_START + 58)
-#define RID_STR_PROPTITLE_COMBOBOX (RID_FORMS_START + 59)
-#define RID_STR_PROPTITLE_IMAGEBUTTON (RID_FORMS_START + 60)
-#define RID_STR_PROPTITLE_IMAGECONTROL (RID_FORMS_START + 61)
-#define RID_STR_PROPTITLE_FILECONTROL (RID_FORMS_START + 62)
-#define RID_STR_PROPTITLE_DATEFIELD (RID_FORMS_START + 63)
-#define RID_STR_PROPTITLE_TIMEFIELD (RID_FORMS_START + 64)
-#define RID_STR_PROPTITLE_NUMERICFIELD (RID_FORMS_START + 65)
-#define RID_STR_PROPTITLE_CURRENCYFIELD (RID_FORMS_START + 66)
-#define RID_STR_PROPTITLE_PATTERNFIELD (RID_FORMS_START + 67)
-#define RID_STR_PROPTITLE_DBGRID (RID_FORMS_START + 68)
-#define RID_STR_PROPTITLE_MULTISELECT (RID_FORMS_START + 69)
-#define RID_STR_DELETECONFIRM_RECORDS (RID_FORMS_START + 70)
-#define RID_STR_CONTROL (RID_FORMS_START + 71)
-#define RID_STR_POSTFIX_DATE (RID_FORMS_START + 72)
-#define RID_STR_POSTFIX_TIME (RID_FORMS_START + 73)
-#define RID_STR_NODATACONTROLS (RID_FORMS_START + 77)
-#define RID_STR_FILTER_NAVIGATOR (RID_FORMS_START + 78)
-#define RID_STR_FILTER_FILTER_FOR (RID_FORMS_START + 79)
-#define RID_STR_FILTER_FILTER_OR (RID_FORMS_START + 80)
-#define RID_STR_PROPTITLE_FORMATTED (RID_FORMS_START + 81)
-#define RID_STR_SYNTAXERROR (RID_FORMS_START + 82)
- // FREE
-#define RID_STR_NOCONTROLS_FOR_EXTERNALDISPLAY (RID_FORMS_START + 84)
-#define RID_STR_AUTOFIELD (RID_FORMS_START + 89)
-#define RID_STR_SVT_SQL_SYNTAX_ERROR (RID_FORMS_START + 90)
-#define RID_STR_SVT_SQL_SYNTAX_VALUE_NO_LIKE (RID_FORMS_START + 91)
-#define RID_STR_SVT_SQL_SYNTAX_FIELD_NO_LIKE (RID_FORMS_START + 92)
-#define RID_STR_SVT_SQL_SYNTAX_CRIT_NO_COMPARE (RID_FORMS_START + 93)
-#define RID_STR_SVT_SQL_SYNTAX_INT_NO_VALID (RID_FORMS_START + 94)
-#define RID_STR_SVT_SQL_SYNTAX_ACCESS_DAT_NO_VALID (RID_FORMS_START + 95)
-#define RID_STR_SVT_SQL_SYNTAX_REAL_NO_VALID (RID_FORMS_START + 96)
-#define RID_STR_SVT_SQL_SYNTAX_TABLE (RID_FORMS_START + 97)
-#define RID_STR_SVT_SQL_SYNTAX_COLUMN (RID_FORMS_START + 98)
-#define RID_STR_PROPTITLE_SCROLLBAR (RID_FORMS_START + 99)
-#define RID_STR_PROPTITLE_SPINBUTTON (RID_FORMS_START + 100)
-#define RID_STR_PROPTITLE_HIDDEN (RID_FORMS_START + 101)
- // FREE
- // FREE
- // FREE
- // FREE
- // FREE
- // FREE
- // FREE
- // FREE
- // FREE
- // FREE
- // FREE
- // FREE
- // FREE
- // FREE
- // FREE
- // FREE
- // FREE
- // FREE
- // FREE
- // FREE
- // FREE
- // FREE
-#define RID_STR_DATANAVIGATOR (RID_FORMS_START + 124)
-#define RID_STR_DATANAV_SUBM_PARENT (RID_FORMS_START + 125)
-#define RID_STR_DATANAV_SUBM_ID (RID_FORMS_START + 126)
-#define RID_STR_DATANAV_SUBM_ACTION (RID_FORMS_START + 127)
-#define RID_STR_DATANAV_SUBM_METHOD (RID_FORMS_START + 128)
-#define RID_STR_DATANAV_SUBM_REF (RID_FORMS_START + 129)
-#define RID_STR_DATANAV_SUBM_BIND (RID_FORMS_START + 130)
-#define RID_STR_DATANAV_SUBM_REPLACE (RID_FORMS_START + 131)
-#define RID_STR_DATANAV_ADD_ELEMENT (RID_FORMS_START + 132)
-#define RID_STR_DATANAV_EDIT_ELEMENT (RID_FORMS_START + 133)
-#define RID_STR_DATANAV_REMOVE_ELEMENT (RID_FORMS_START + 134)
-#define RID_STR_DATANAV_ADD_ATTRIBUTE (RID_FORMS_START + 135)
-#define RID_STR_DATANAV_EDIT_ATTRIBUTE (RID_FORMS_START + 136)
-#define RID_STR_DATANAV_REMOVE_ATTRIBUTE (RID_FORMS_START + 137)
-#define RID_STR_DATANAV_ADD_BINDING (RID_FORMS_START + 138)
-#define RID_STR_DATANAV_EDIT_BINDING (RID_FORMS_START + 139)
-#define RID_STR_DATANAV_REMOVE_BINDING (RID_FORMS_START + 140)
-#define RID_STR_DATANAV_ADD_SUBMISSION (RID_FORMS_START + 141)
-#define RID_STR_DATANAV_EDIT_SUBMISSION (RID_FORMS_START + 142)
-#define RID_STR_DATANAV_REMOVE_SUBMISSION (RID_FORMS_START + 143)
-#define RID_STR_DATANAV_LINKWARN_BUTTON (RID_FORMS_START + 144)
-#define RID_STR_SVT_SQL_SYNTAX_TABLE_OR_QUERY (RID_FORMS_START + 145)
-#define RID_STR_SVT_SQL_SYNTAX_TABLE_EXISTS (RID_FORMS_START + 146)
-#define RID_STR_SVT_SQL_SYNTAX_QUERY_EXISTS (RID_FORMS_START + 147)
-#define RID_STR_READONLY_VIEW (RID_FORMS_START + 148)
-#define RID_STR_ALREADYEXISTOVERWRITE (RID_FORMS_START + 149)
-#define RID_STR_OBJECT_LABEL (RID_FORMS_START + 150)
-
-// Error-String-Id's -----------------------------------------------------------
-#define RID_ERR_START (RID_FORMS_START + 600)
-#define RID_ERR_CONTEXT_ADDFORM (RID_ERR_START + 0)
-#define RID_ERR_DUPLICATE_NAME (RID_ERR_START + 1)
-#define RID_ERR_FIELDREQUIRED (RID_ERR_START + 2)
-#define RID_ERR_NO_ELEMENT (RID_ERR_START + 4)
-
-// untyped resources ----------------------------------------------------------
-
-#define RID_RSC_TABWIN_PREFIX ( RID_FORMS_START + 0 )
-#define RID_RSC_SQL_INTERNATIONAL ( RID_FORMS_START + 1 )
-
-#endif // _FM_FMPAGE_HXX
-
diff --git a/svx/source/inc/fmshimp.hxx b/svx/source/inc/fmshimp.hxx
index 88d2346b9d20..e56f9fd64a36 100644
--- a/svx/source/inc/fmshimp.hxx
+++ b/svx/source/inc/fmshimp.hxx
@@ -65,7 +65,7 @@
#include <svl/svstdarr.hxx>
#include <sfx2/mnuitem.hxx>
#include "svx/fmtools.hxx"
-#include "fmsrccfg.hxx"
+#include "svx/fmsrccfg.hxx"
#include <osl/mutex.hxx>
#include <vos/thread.hxx>
#include <tools/debug.hxx>
diff --git a/svx/source/inc/fmsrccfg.hxx b/svx/source/inc/fmsrccfg.hxx
deleted file mode 100644
index 3705f32b7494..000000000000
--- a/svx/source/inc/fmsrccfg.hxx
+++ /dev/null
@@ -1,156 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-#ifndef _FMSRCCF_HXX_
-#define _FMSRCCF_HXX_
-
-#include <tools/string.hxx>
-#include <unotools/configvaluecontainer.hxx>
-#include <com/sun/star/uno/Sequence.hxx>
-#include "svx/svxdllapi.h"
-
-// ===================================================================================================
-
-#define MATCHING_ANYWHERE 0
-#define MATCHING_BEGINNING 1
-#define MATCHING_END 2
-#define MATCHING_WHOLETEXT 3
-
-// diese Konstanten duerfen NICHT einfach geaendert werden, da der SearchDialog aus den Einstellungen seiner ListBox
-// keine Umrechnungen vornimmt, sondern die einfach in die entsprechenden Methoden der SearchEngine steckt
-// (wenn man also die Konstanten oder die Reihenfolge der Listbox-Eintraege im Dialog aendert, muss das jeweils andere
-// angepasst werden)
-
-
-//........................................................................
-namespace svxform
-{
-//........................................................................
-
- // ===================================================================================================
- // = struct FmSearchParams - Parameter einer Suche
- // ===================================================================================================
-
- struct SVX_DLLPUBLIC FmSearchParams
- {
- protected:
- sal_Int32 nTransliterationFlags;
- // they're way too sensitive for direct access ....
-
- public:
- // no bit fields at all (want to pass the addresses to the OConfigurationValueContainer)
- ::com::sun::star::uno::Sequence< ::rtl::OUString >
- aHistory;
- ::rtl::OUString sSingleSearchField;
-
- sal_Int16 nSearchForType;
- sal_Int16 nPosition;
- sal_Int16 nLevOther;
- sal_Int16 nLevShorter;
- sal_Int16 nLevLonger;
- sal_Bool bLevRelaxed;
-
- sal_Bool bAllFields;
- sal_Bool bUseFormatter;
- sal_Bool bBackwards;
- sal_Bool bWildcard;
- sal_Bool bRegular;
- sal_Bool bApproxSearch;
- // the last three are mutually exclusive
-
- sal_Bool bSoundsLikeCJK;
-
- // ......................................
- FmSearchParams();
-
- sal_Bool isIgnoreWidthCJK( ) const;
- void setIgnoreWidthCJK( sal_Bool _bIgnore );
-
- sal_Int32 getTransliterationFlags( ) const { return nTransliterationFlags; }
- void setTransliterationFlags( sal_Int32 _nFlags ) { nTransliterationFlags = _nFlags; }
-
- sal_Bool isCaseSensitive( ) const;
- void setCaseSensitive( sal_Bool _bCase );
- };
-
- // ===================================================================================================
- // = class FmSearchConfigItem - ein ConfigItem, dass sich Suchparameter merkt
- // ===================================================================================================
-
- class SVX_DLLPUBLIC FmSearchConfigItem
- :protected FmSearchParams
- ,public ::utl::OConfigurationValueContainer
- // order matters!
- {
- private:
- ::osl::Mutex m_aMutex;
-
- // wrapper properties:
- // some of the members of FmSearchParams are must be translated to be stored in the configuration
- ::rtl::OUString m_sSearchForType;
- ::rtl::OUString m_sSearchPosition;
-
- sal_Bool m_bIsMatchCase;
- sal_Bool m_bIsMatchFullHalfWidthForms;
- sal_Bool m_bIsMatchHiraganaKatakana;
- sal_Bool m_bIsMatchContractions;
- sal_Bool m_bIsMatchMinusDashCho_on;
- sal_Bool m_bIsMatchRepeatCharMarks;
- sal_Bool m_bIsMatchVariantFormKanji;
- sal_Bool m_bIsMatchOldKanaForms;
- sal_Bool m_bIsMatch_DiZi_DuZu;
- sal_Bool m_bIsMatch_BaVa_HaFa;
- sal_Bool m_bIsMatch_TsiThiChi_DhiZi;
- sal_Bool m_bIsMatch_HyuIyu_ByuVyu;
- sal_Bool m_bIsMatch_SeShe_ZeJe;
- sal_Bool m_bIsMatch_IaIya;
- sal_Bool m_bIsMatch_KiKu;
- sal_Bool m_bIsIgnorePunctuation;
- sal_Bool m_bIsIgnoreWhitespace;
- sal_Bool m_bIsIgnoreProlongedSoundMark;
- sal_Bool m_bIsIgnoreMiddleDot;
-
- public:
- FmSearchConfigItem();
- ~FmSearchConfigItem();
-
- const FmSearchParams& getParams( ) const;
- void setParams( const FmSearchParams& _rParams );
-
- private:
- SVX_DLLPRIVATE void implTranslateFromConfig( );
- SVX_DLLPRIVATE void implTranslateToConfig( );
- };
-
-//........................................................................
-} // namespace svxform
-//........................................................................
-
-// ===================================================================================================
-
-#endif // _FMSRCCF_HXX_
-
diff --git a/svx/source/inc/fmsrcimp.hxx b/svx/source/inc/fmsrcimp.hxx
deleted file mode 100644
index 3a3af0ac7d8f..000000000000
--- a/svx/source/inc/fmsrcimp.hxx
+++ /dev/null
@@ -1,401 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-#ifndef _FMSRCIMP_HXX
-#define _FMSRCIMP_HXX
-
-#include <svx/fmtools.hxx>
-#include "svx/svxdllapi.h"
-
-/** === begin UNO includes === **/
-#include <com/sun/star/awt/XCheckBox.hpp>
-#include <com/sun/star/awt/XListBox.hpp>
-#include <com/sun/star/awt/XTextComponent.hpp>
-#include <com/sun/star/util/XNumberFormatsSupplier.hpp>
-#include <com/sun/star/util/XNumberFormatter.hpp>
-/** === end UNO includes === **/
-
-#include <comphelper/stl_types.hxx>
-#include <cppuhelper/implbase1.hxx>
-#include <osl/mutex.hxx>
-#include <unotools/charclass.hxx>
-#include <unotools/collatorwrapper.hxx>
-#include <vos/thread.hxx>
-
-#include <deque>
-
-// ===================================================================================================
-// = class FmSearchThread - wie der Name schon sagt
-// ===================================================================================================
-
-class FmSearchEngine;
-class FmSearchThread : public ::vos::OThread
-{
- FmSearchEngine* m_pEngine;
- Link m_aTerminationHdl;
-
- virtual void SAL_CALL run();
- virtual void SAL_CALL onTerminated();
-
-public:
- FmSearchThread(FmSearchEngine* pEngine) : m_pEngine(pEngine) { }
- void setTerminationHandler(Link aHdl) { m_aTerminationHdl = aHdl; }
-};
-
-// ===================================================================================================
-// = struct FmSearchProgress - diese Struktur bekommt der Owner der SearchEngine fuer Status-Updates
-// = (und am Ende der Suche)
-// ===================================================================================================
-
-struct FmSearchProgress
-{
- enum STATE { STATE_PROGRESS, STATE_PROGRESS_COUNTING, STATE_CANCELED, STATE_SUCCESSFULL, STATE_NOTHINGFOUND, STATE_ERROR };
- // (Bewegung auf neuen Datensatz; Fortschritt beim Zaehlen von Datensaetzen; abgebrochen; Datensatz gefunden;
- // nichts gefunden, irgendein nicht zu handelnder Fehler)
- STATE aSearchState;
-
- // aktueller Datensatz - immer gueltig (ist zum Beispiel bei Abbrechen auch fuer das Weitersuchen interesant)
- sal_uInt32 nCurrentRecord;
- // Ueberlauf - nur gueltig bei STATE_PROGRESS
- sal_Bool bOverflow;
-
- // die Position des Such-Cursors - bei STATE_SUCCESSFULL, STATE_CANCELED und STATE_NOTHING_FOUND gueltig
- ::com::sun::star::uno::Any aBookmark;
- // das Feld, in dem der Text gefunden wurde - bei STATE_SUCCESSFULL gueltig
- sal_Int32 nFieldIndex;
-};
-
-// ===================================================================================================
-// = class FmRecordCountListener - Hilfsklasse fuer FmSearchEngine, lauscht an einem Cursor und teilt
-// = Aenderungem im RecordCount mit
-// ===================================================================================================
-
-class FmRecordCountListener : public ::cppu::WeakImplHelper1< ::com::sun::star::beans::XPropertyChangeListener>
-{
-// Atribute
- Link m_lnkWhoWantsToKnow;
- ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet > m_xListening;
-
-// Attribut-Zugriff
-public:
- Link SetPropChangeHandler(const Link& lnk);
-
-// Oprationen
-public:
- FmRecordCountListener(const ::com::sun::star::uno::Reference< ::com::sun::star::sdbc::XResultSet >& dbcCursor);
- // the set has to support the sdb::ResultSet service
- virtual ~FmRecordCountListener();
-
- // DECLARE_UNO3_AGG_DEFAULTS(FmPropertyListener, UsrObject);
- // virtual sal_Bool queryInterface(::com::sun::star::uno::Uik aUik, ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface >& rOut);
-
-// ::com::sun::star::lang::XEventListener
- virtual void SAL_CALL disposing(const ::com::sun::star::lang::EventObject& Source) throw(::com::sun::star::uno::RuntimeException);
-
-// ::com::sun::star::beans::XPropertyChangeListener
- virtual void SAL_CALL propertyChange(const ::com::sun::star::beans::PropertyChangeEvent& evt) throw(::com::sun::star::uno::RuntimeException);
-
- void DisConnect();
-
-private:
- void NotifyCurrentCount();
-
-};
-
-// ===================================================================================================
-// = class FmSearchEngine - Impl-Klasse fuer FmSearchDialog
-// ===================================================================================================
-
-namespace svxform {
- // We have three possible control types we may search in, determined by the supported interfaces : ::com::sun::star::awt::XTextComponent, ::com::sun::star::awt::XListBox, ::com::sun::star::awt::XCheckBox.
- // While searching we don't want to do this distinction for every control in every round. So we need some helpers.
- class ControlTextWrapper
- {
- // attributes
- ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > m_xControl;
- // attribute access
- public:
- ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > getControl() const{ return m_xControl; }
- public:
- ControlTextWrapper(const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface >& _xControl) { m_xControl = _xControl; }
- virtual ~ControlTextWrapper() { }
-
- virtual ::rtl::OUString getCurrentText() const = 0;
- };
- class SimpleTextWrapper : public ControlTextWrapper
- {
- ::com::sun::star::uno::Reference< ::com::sun::star::awt::XTextComponent > m_xText;
- public:
- SimpleTextWrapper(const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XTextComponent >& _xText);
- virtual ::rtl::OUString getCurrentText() const;
- };
- class ListBoxWrapper : public ControlTextWrapper
- {
- ::com::sun::star::uno::Reference< ::com::sun::star::awt::XListBox > m_xBox;
- public:
- ListBoxWrapper(const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XListBox >& _xBox);
- virtual ::rtl::OUString getCurrentText() const;
- };
- class CheckBoxWrapper : public ControlTextWrapper
- {
- ::com::sun::star::uno::Reference< ::com::sun::star::awt::XCheckBox > m_xBox;
- public:
- CheckBoxWrapper(const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XCheckBox >& _xBox);
- virtual ::rtl::OUString getCurrentText() const;
- };
-}
-
-enum FMSEARCH_MODE { SM_BRUTE, SM_ALLOWSCHEDULE, SM_USETHREAD };
-
-DECLARE_STL_VECTOR( ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface>, InterfaceArray);
-
-class SVX_DLLPUBLIC FmSearchEngine
-{
- friend class FmSearchThread;
-
- enum SEARCH_RESULT { SR_FOUND, SR_NOTFOUND, SR_ERROR, SR_CANCELED };
- enum SEARCHFOR_TYPE { SEARCHFOR_STRING, SEARCHFOR_NULL, SEARCHFOR_NOTNULL };
-
- // zugrundeliegende Daten
- CursorWrapper m_xSearchCursor;
- std::deque<sal_Int32> m_arrFieldMapping;
- // da der Iterator durchaus mehr Spalten haben kann, als ich eigentlich verwalte (in meiner Feld-Listbox),
- // muss ich mir hier ein Mapping dieser ::com::sun::star::form-Schluessel auf die Indizies der entsprechenden Spalten im Iterator halten
-
- // der Formatter
- ::com::sun::star::uno::Reference< ::com::sun::star::util::XNumberFormatsSupplier > m_xFormatSupplier;
- ::com::sun::star::uno::Reference< ::com::sun::star::util::XNumberFormatter > m_xFormatter;
-
- CharClass m_aCharacterClassficator;
- CollatorWrapper m_aStringCompare;
-
- // die Sammlung aller interesanten Felder (bzw. ihre ::com::sun::star::data::XDatabaseVariant-Interfaces und ihre FormatKeys)
- struct FieldInfo
- {
- ::com::sun::star::uno::Reference< ::com::sun::star::sdb::XColumn > xContents;
- sal_uInt32 nFormatKey;
- sal_Bool bDoubleHandling;
- };
-
- DECLARE_STL_VECTOR(FieldInfo, FieldCollection);
- FieldCollection m_arrUsedFields;
- sal_Int32 m_nCurrentFieldIndex; // der letzte Parameter von RebuildUsedFields, ermoeglicht mir Checks in FormatField
-
- DECLARE_STL_VECTOR(svxform::ControlTextWrapper*, ControlTextSuppliers);
- ControlTextSuppliers m_aControlTexts;
-
- sal_Bool m_bUsingTextComponents;
- CursorWrapper m_xOriginalIterator;
- CursorWrapper m_xClonedIterator;
-
- // Daten fuer Entscheidung, in welchem Feld ich ein "Found" akzeptiere
- ::com::sun::star::uno::Any m_aPreviousLocBookmark; // Position, an der ich zuletzt fuendig war
- FieldCollectionIterator m_iterPreviousLocField; // dito Feld
-
- // Kommunikation mit dem Thread, der die eigentliche Suche durchfuehrt
- ::rtl::OUString m_strSearchExpression; // Hinrichtung
- SEARCHFOR_TYPE m_eSearchForType; // dito
- SEARCH_RESULT m_srResult; // Rueckrichtung
-
- // der Link, dem ich Fortschritte und Ergebnisse mitteile
- Link m_aProgressHandler;
- sal_Bool m_bSearchingCurrently : 1; // laeuft gerade eine (asynchrone) Suche ?
- sal_Bool m_bCancelAsynchRequest : 1; // soll abgebrochen werden ?
- ::osl::Mutex m_aCancelAsynchAccess; // Zugriff auf m_bCancelAsynchRequest (eigentlich nur bei
- // m_eMode == SM_USETHREAD interesant)
- FMSEARCH_MODE m_eMode; //CHINA001 FmSearchDialog::SEARCH_MODE m_eMode; // der aktuelle Modus
- // der aktuelle Modus
-
- // Parameter fuer die Suche
- sal_Bool m_bFormatter : 1; // Feldformatierung benutzen
- sal_Bool m_bForward : 1; // Richtung
- sal_Bool m_bWildcard : 1; // Platzhalter-Suche ?
- sal_Bool m_bRegular : 1; // regulaerer Ausdruck
- sal_Bool m_bLevenshtein : 1; // Levenshtein-Suche
- sal_Bool m_bTransliteration : 1; // Levenshtein-Suche
-
- sal_Bool m_bLevRelaxed : 1; // Parameter fuer Levenshtein-Suche
- sal_uInt16 m_nLevOther;
- sal_uInt16 m_nLevShorter;
- sal_uInt16 m_nLevLonger;
-
- sal_uInt16 m_nPosition; // wenn nicht regulaer oder lev, dann einer der MATCHING_...-Werte
-
- sal_Int32 m_nTransliterationFlags;
-
-// -------------
-// Memberzugriff
-private:
- SVX_DLLPRIVATE sal_Bool CancelRequested(); // liefert eine durch m_aCancelAsynchAccess gesicherte Auswertung von m_bCancelAsynchRequest
-
-public:
- void SetCaseSensitive(sal_Bool bSet);
- sal_Bool GetCaseSensitive() const;
-
- void SetFormatterUsing(sal_Bool bSet); // das ist etwas umfangreicher, deshalb kein hier inline ....
- sal_Bool GetFormatterUsing() const { return m_bFormatter; }
-
- void SetDirection(sal_Bool bForward) { m_bForward = bForward; }
- sal_Bool GetDirection() const { return m_bForward; }
-
- void SetWildcard(sal_Bool bSet) { m_bWildcard = bSet; }
- sal_Bool GetWildcard() const { return m_bWildcard; }
-
- void SetRegular(sal_Bool bSet) { m_bRegular = bSet; }
- sal_Bool GetRegular() const { return m_bRegular; }
-
- void SetLevenshtein(sal_Bool bSet) { m_bLevenshtein = bSet; }
- sal_Bool GetLevenshtein() const { return m_bLevenshtein; }
-
- void SetIgnoreWidthCJK(sal_Bool bSet);
- sal_Bool GetIgnoreWidthCJK() const;
-
- void SetTransliteration(sal_Bool bSet) { m_bTransliteration = bSet; }
- sal_Bool GetTransliteration() const { return m_bTransliteration; }
-
- void SetLevRelaxed(sal_Bool bSet) { m_bLevRelaxed = bSet; }
- sal_Bool GetLevRelaxed() const { return m_bLevRelaxed; }
- void SetLevOther(sal_uInt16 nHowMuch) { m_nLevOther = nHowMuch; }
- sal_uInt16 GetLevOther() const { return m_nLevOther; }
- void SetLevShorter(sal_uInt16 nHowMuch) { m_nLevShorter = nHowMuch; }
- sal_uInt16 GetLevShorter() const { return m_nLevShorter; }
- void SetLevLonger(sal_uInt16 nHowMuch) { m_nLevLonger = nHowMuch; }
- sal_uInt16 GetLevLonger() const { return m_nLevLonger; }
- // die ganzen Lev-Werte werden nur bei m_bLevenshtein==sal_True beachtet
-
- void SetTransliterationFlags(sal_Int32 _nFlags) { m_nTransliterationFlags = _nFlags; }
- sal_Int32 GetTransliterationFlags() const { return m_nTransliterationFlags; }
-
- void SetPosition(sal_uInt16 nValue) { m_nPosition = nValue; }
- sal_uInt16 GetPosition() const { return m_nPosition; }
- // Position wird bei m_bWildCard==sal_True nicht beachtet
-
- FMSEARCH_MODE GetSearchMode() const { return m_eMode; }
-
-public:
- /** zwei Constructoren, beide analog zu denen des FmSearchDialog, Erklaerung siehe also dort ....
- xCursor muss jeweils den ::com::sun::star::data::DatabaseCursor-Service implementieren.
- wenn eMode == SM_USETHREAD, sollte ein ProgressHandler gesetzt sein, da dann die Ergebnisuebermittlung ueber diesen
- Handler erfolgt.
- Ist eMode != SM_USETHREAD, kehren SearchNext und StarOver nicht zurueck, bevor die Suche (erfolgreich oder nicht) beendet
- wurde, dann kann man das Ergebnis danach abfragen. Ist zusaetzlich der ProgressHandler gesetzt, wird dieser fuer jeden neuen
- Datensatz sowie am Ende der Suche aufgerufen.
- */
- FmSearchEngine(
- const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& _rxORB,
- const ::com::sun::star::uno::Reference< ::com::sun::star::sdbc::XResultSet >& xCursor,
- const ::rtl::OUString& strVisibleFields,
- const ::com::sun::star::uno::Reference< ::com::sun::star::util::XNumberFormatsSupplier >& xFormat,
- FMSEARCH_MODE eMode);//CHINA001 FmSearchDialog::SEARCH_MODE eMode);
- FmSearchEngine(
- const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& _rxORB,
- const ::com::sun::star::uno::Reference< ::com::sun::star::sdbc::XResultSet >& xCursor,
- const ::rtl::OUString& strVisibleFields,
- const InterfaceArray& arrFields,
- FMSEARCH_MODE eMode); //CHINA001 FmSearchDialog::SEARCH_MODE eMode);
-
- virtual ~FmSearchEngine();
-
- /** der Link wird fuer jeden Datensatz und nach Beendigung der Suche aufgerufen, Parameter ist ein Zeiger auf
- eine FmSearchProgress-Struktur
- der Handler sollte auf jeden Fall Thread-sicher sein
- */
- void SetProgressHandler(Link aHdl) { m_aProgressHandler = aHdl; }
-
- /// das naechste Vorkommen suchen (Werte fuer nDirection siehe DIRECTION_*-defines)
- void SearchNext(const ::rtl::OUString& strExpression);
- /// analogous, search for "NULL" (_bSearchForNull==sal_True) or "not NULL"
- void SearchNextSpecial(sal_Bool _bSearchForNull);
- /// das naechste Vorkommen suchen, abhaengig von nDirection wird dabei am Anfang oder am Ende neu begonnen
- void StartOver(const ::rtl::OUString& strExpression);
- /// analogous, search for "NULL" (_bSearchForNull==sal_True) or "not NULL"
- void StartOverSpecial(sal_Bool _bSearchForNull);
- /// die Angaben ueber letzte Fundstelle invalidieren
- void InvalidatePreviousLoc();
-
- /** baut m_arrUsedFields neu auf (nFieldIndex==-1 bedeutet alle Felder, ansonsten gibt es den Feldindex an)
- wenn bForce nicht gesetzt ist, passiert bei nFieldIndex == m_nCurrentFieldIndex nichts
- (ruft InvalidatePreviousLoc auf)
- */
- void RebuildUsedFields(sal_Int32 nFieldIndex, sal_Bool bForce = sal_False);
- ::rtl::OUString FormatField(sal_Int32 nWhich);
-
- /// kehrt sofort zurueck; nachdem wirklich abgebrochen wurde, wird der ProgressHandler mit STATE_CANCELED aufgerufen
- void CancelSearch();
-
- /** nur gueltig, wenn nicht gerade eine (asynchrone) Suche laeuft, die naechste Suche wird dann auf dem neuen Iterator
- mit den neuen Parametern durchgefuehrt
- */
- sal_Bool SwitchToContext(const ::com::sun::star::uno::Reference< ::com::sun::star::sdbc::XResultSet >& xCursor, const ::rtl::OUString& strVisibleFields, const InterfaceArray& arrFields,
- sal_Int32 nFieldIndex);
-
-protected:
- void Init(const ::rtl::OUString& strVisibleFields);
-
- void SearchNextImpl();
- // diese Impl-Methode laeuft im SearchThread
-
- // start a thread-search (or call SearchNextImpl directly, depending on the search mode)
- void ImplStartNextSearch();
-
-private:
- SVX_DLLPRIVATE void clearControlTexts();
- SVX_DLLPRIVATE void fillControlTexts(const InterfaceArray& arrFields);
-
- // three methods implementing a complete search loop (null/not null, wildcard, SearchText)
- // (they all have some code in common, but with this solution we have do do a distinction only once per search (before
- // starting the loop), not in every loop step
- SVX_DLLPRIVATE SEARCH_RESULT SearchSpecial(sal_Bool _bSearchForNull, sal_Int32& nFieldPos, FieldCollectionIterator& iterFieldLoop,
- const FieldCollectionIterator& iterBegin, const FieldCollectionIterator& iterEnd);
- SVX_DLLPRIVATE SEARCH_RESULT SearchWildcard(const ::rtl::OUString& strExpression, sal_Int32& nFieldPos, FieldCollectionIterator& iterFieldLoop,
- const FieldCollectionIterator& iterBegin, const FieldCollectionIterator& iterEnd);
- SVX_DLLPRIVATE SEARCH_RESULT SearchRegularApprox(const ::rtl::OUString& strExpression, sal_Int32& nFieldPos, FieldCollectionIterator& iterFieldLoop,
- const FieldCollectionIterator& iterBegin, const FieldCollectionIterator& iterEnd);
-
- SVX_DLLPRIVATE void PropagateProgress(sal_Bool _bDontPropagateOverflow);
- // ruft den ProgressHandler mit STATE_PROGRESS und der aktuellen Position des SearchIterators auf
-
- // helpers, die ich mehrmals brauche
- SVX_DLLPRIVATE sal_Bool MoveCursor();
- // bewegt m_xSearchIterator unter Beachtung von Richtung/Ueberlauf Cursor
- SVX_DLLPRIVATE sal_Bool MoveField(sal_Int32& nPos, FieldCollectionIterator& iter, const FieldCollectionIterator& iterBegin, const FieldCollectionIterator& iterEnd);
- // bewegt den Iterator unter Beachtung von Richtung/Ueberlauf Iterator/Ueberlauf Cursor
- SVX_DLLPRIVATE void BuildAndInsertFieldInfo(const ::com::sun::star::uno::Reference< ::com::sun::star::container::XIndexAccess >& xAllFields, sal_Int32 nField);
- // baut eine FieldInfo zum Feld Nummer nField (in xAllFields) auf und fuegt sie zu m_arrUsedFields hinzu
- // xAllFields muss den DatabaseRecord-Service unterstuetzen
- SVX_DLLPRIVATE ::rtl::OUString FormatField(const FieldInfo& rField);
- // formatiert das Feld mit dem NumberFormatter
-
- SVX_DLLPRIVATE sal_Bool HasPreviousLoc() { return m_aPreviousLocBookmark.hasValue(); }
-
- DECL_LINK(OnSearchTerminated, FmSearchThread*);
- // wird vom SuchThread benutzt, nach Rueckkehr aus diesem Handler loescht sich der Thread selber
- DECL_LINK(OnNewRecordCount, void*);
-};
-
-#endif // _FMSRCIMP_HXX
-
diff --git a/svx/source/inc/sqlparserclient.hxx b/svx/source/inc/sqlparserclient.hxx
index ced2a0708b9c..01e175d51e4e 100644
--- a/svx/source/inc/sqlparserclient.hxx
+++ b/svx/source/inc/sqlparserclient.hxx
@@ -29,7 +29,7 @@
#define SVX_SQLPARSERCLIENT_HXX
#include "svx/dbtoolsclient.hxx"
-#include "ParseContext.hxx"
+#include "svx/ParseContext.hxx"
#include <com/sun/star/lang/XMultiServiceFactory.hpp>
//........................................................................