diff options
author | Rüdiger Timm <rt@openoffice.org> | 2008-12-15 12:01:46 +0000 |
---|---|---|
committer | Rüdiger Timm <rt@openoffice.org> | 2008-12-15 12:01:46 +0000 |
commit | bd14d6bc197144d99ab8339f7d018d2a4678f610 (patch) | |
tree | eaef7aee129df80b32e6e61cb385a5a5ad7fb4b7 /linguistic/source/defs.hxx | |
parent | 095c77393155dfac5bbf3a62a5fdcabc6f0f93f2 (diff) |
CWS-TOOLING: integrate CWS tl56_DEV300
Diffstat (limited to 'linguistic/source/defs.hxx')
-rw-r--r-- | linguistic/source/defs.hxx | 95 |
1 files changed, 76 insertions, 19 deletions
diff --git a/linguistic/source/defs.hxx b/linguistic/source/defs.hxx index 08f5397a0681..ca3a611c30ee 100644 --- a/linguistic/source/defs.hxx +++ b/linguistic/source/defs.hxx @@ -31,42 +31,99 @@ #ifndef _LINGUISTIC_DEFS_HXX_ #define _LINGUISTIC_DEFS_HXX_ +#include <com/sun/star/linguistic2/XSpellChecker.hpp> +#include <com/sun/star/linguistic2/XProofreader.hpp> +#include <com/sun/star/linguistic2/XHyphenator.hpp> +#include <com/sun/star/linguistic2/XThesaurus.hpp> + /////////////////////////////////////////////////////////////////////////// #define A2OU(x) ::rtl::OUString::createFromAscii( x ) +namespace css = ::com::sun::star; + /////////////////////////////////////////////////////////////////////////// -struct SvcFlags +struct LangSvcEntries { - INT16 nLastTriedSvcIndex; // index in sequence of the last - // service tried to instantiate - // (used for cascading) - BOOL bAlreadyWarned : 1; - BOOL bDoWarnAgain : 1; - - SvcFlags() : - nLastTriedSvcIndex(-1), bAlreadyWarned(FALSE), bDoWarnAgain(FALSE) + css::uno::Sequence< ::rtl::OUString > aSvcImplNames; + + sal_Int16 nLastTriedSvcIndex; + bool bAlreadyWarned; + bool bDoWarnAgain; + + LangSvcEntries() : nLastTriedSvcIndex(-1), bAlreadyWarned(false), bDoWarnAgain(false) {} + + inline LangSvcEntries( const css::uno::Sequence< ::rtl::OUString > &rSvcImplNames ) : + aSvcImplNames(rSvcImplNames), + nLastTriedSvcIndex(-1), bAlreadyWarned(false), bDoWarnAgain(false) + { + } + + inline LangSvcEntries( const ::rtl::OUString &rSvcImplName ) : + nLastTriedSvcIndex(-1), bAlreadyWarned(false), bDoWarnAgain(false) { + aSvcImplNames.realloc(1); + aSvcImplNames[0] = rSvcImplName; + } + + bool IsAlreadyWarned() const { return bAlreadyWarned != 0; } + void SetAlreadyWarned( bool bVal ) { bAlreadyWarned = 0 != bVal; } + bool IsDoWarnAgain() const { return bDoWarnAgain != 0; } + void SetDoWarnAgain( bool bVal ) { bDoWarnAgain = 0 != bVal; } + + inline void Clear() + { + aSvcImplNames.realloc(0); + nLastTriedSvcIndex = -1; + bAlreadyWarned = false; + bDoWarnAgain = false; } }; +struct LangSvcEntries_Spell : public LangSvcEntries +{ + css::uno::Sequence< css::uno::Reference< css::linguistic2::XSpellChecker > > aSvcRefs; + + LangSvcEntries_Spell() : LangSvcEntries() {} + LangSvcEntries_Spell( const css::uno::Sequence< ::rtl::OUString > &rSvcImplNames ) : LangSvcEntries( rSvcImplNames ) {} +}; + +struct LangSvcEntries_Grammar : public LangSvcEntries +{ + css::uno::Sequence< css::uno::Reference< css::linguistic2::XProofreader > > aSvcRefs; + + LangSvcEntries_Grammar() : LangSvcEntries() {} + LangSvcEntries_Grammar( const ::rtl::OUString &rSvcImplName ) : LangSvcEntries( rSvcImplName ) {} +}; + +struct LangSvcEntries_Hyph : public LangSvcEntries +{ + css::uno::Sequence< css::uno::Reference< css::linguistic2::XHyphenator > > aSvcRefs; + + LangSvcEntries_Hyph() : LangSvcEntries() {} + LangSvcEntries_Hyph( const ::rtl::OUString &rSvcImplName ) : LangSvcEntries( rSvcImplName ) {} +}; + +struct LangSvcEntries_Thes : public LangSvcEntries +{ + css::uno::Sequence< css::uno::Reference< css::linguistic2::XThesaurus > > aSvcRefs; + + LangSvcEntries_Thes() : LangSvcEntries() {} + LangSvcEntries_Thes( const css::uno::Sequence< ::rtl::OUString > &rSvcImplNames ) : LangSvcEntries( rSvcImplNames ) {} +}; + /////////////////////////////////////////////////////////////////////////// // virtual base class for the different dispatchers class LinguDispatcher { public: - enum DspType { DSP_SPELL, DSP_HYPH, DSP_THES }; - - virtual void - SetServiceList( const ::com::sun::star::lang::Locale &rLocale, - const ::com::sun::star::uno::Sequence< - rtl::OUString > &rSvcImplNames ) = 0; - virtual ::com::sun::star::uno::Sequence< rtl::OUString > - GetServiceList( const ::com::sun::star::lang::Locale &rLocale ) const = 0; - virtual DspType - GetDspType() const = 0; + enum DspType { DSP_SPELL, DSP_HYPH, DSP_THES, DSP_GRAMMAR }; + + virtual void SetServiceList( const css::lang::Locale &rLocale, const css::uno::Sequence< rtl::OUString > &rSvcImplNames ) = 0; + virtual css::uno::Sequence< rtl::OUString > GetServiceList( const css::lang::Locale &rLocale ) const = 0; + virtual DspType GetDspType() const = 0; }; /////////////////////////////////////////////////////////////////////////// |