20#ifndef INCLUDED_LINGUISTIC_MISC_HXX
21#define INCLUDED_LINGUISTIC_MISC_HXX
23#include <com/sun/star/uno/Sequence.h>
24#include <com/sun/star/uno/Reference.h>
25#include <com/sun/star/beans/PropertyValues.hpp>
26#include <com/sun/star/frame/XTerminateListener.hpp>
27#include <com/sun/star/lang/Locale.hpp>
31#include <rtl/ustring.hxx>
43namespace osl {
class Mutex; }
50inline constexpr OUStringLiteral
SN_SPELLCHECKER =
u"com.sun.star.linguistic2.SpellChecker";
51inline constexpr OUStringLiteral
SN_HYPHENATOR =
u"com.sun.star.linguistic2.Hyphenator";
52inline constexpr OUStringLiteral
SN_THESAURUS =
u"com.sun.star.linguistic2.Thesaurus";
79sal_Int32
LevDistance( std::u16string_view rTxt1, std::u16string_view rTxt2 );
103std::vector< LanguageType >
105css::uno::Sequence<sal_Int16>
110bool IsReadOnly(
const OUString &rURL,
bool *pbExist =
nullptr );
125css::uno::Reference< css::linguistic2::XHyphenatedWord >
127 const OUString &rOrigWord,
128 css::uno::Reference< css::linguistic2::XHyphenatedWord >
const &rxHyphWord );
141css::uno::Reference< css::linguistic2::XSearchableDictionaryList >
GetDictionaryList();
146 const css::uno::Reference< css::beans::XPropertySet > &rxPropSet );
149 const css::uno::Reference< css::beans::XPropertySet > &rxPropSet );
152 css::linguistic2::XDictionaryEntry >
154 const css::uno::Reference< css::linguistic2::XSearchableDictionaryList >& rDicList,
156 bool bSearchPosDics,
bool bSearchSpellEntry );
159 css::uno::Reference< css::linguistic2::XDictionary >
const &rxDic,
160 const OUString &rWord,
bool bIsNeg,
161 const OUString &rRplcTxt,
162 bool bStripDot =
true );
171 public cppu::WeakImplHelper< css::frame::XTerminateListener >
173 css::uno::Reference< css::frame::XDesktop2 >
xDesktop;
185 virtual void SAL_CALL
disposing(
const css::lang::EventObject& Source )
override;
188 virtual void SAL_CALL
queryTermination(
const css::lang::EventObject& aEvent )
override;
189 virtual void SAL_CALL
notifyTermination(
const css::lang::EventObject& aEvent )
override;
virtual void SAL_CALL disposing(const css::lang::EventObject &Source) override
css::uno::Reference< css::frame::XDesktop2 > xDesktop
virtual void SAL_CALL queryTermination(const css::lang::EventObject &aEvent) override
virtual ~AppExitListener() override
virtual void SAL_CALL notifyTermination(const css::lang::EventObject &aEvent) override
constexpr OUStringLiteral SN_SPELLCHECKER
constexpr OUStringLiteral SN_HYPHENATOR
constexpr OUStringLiteral SN_GRAMMARCHECKER
constexpr OUStringLiteral SN_THESAURUS
class SAL_NO_VTABLE XPropertySet
OUString GetWritableDictionaryURL(std::u16string_view rDicName)
bool SaveDictionaries(const uno::Reference< XSearchableDictionaryList > &xDicList)
std::vector< LanguageType > LocaleSeqToLangVec(uno::Sequence< Locale > const &rLocaleSeq)
bool IsReadOnly(const OUString &rURL, bool *pbExist)
uno::Sequence< sal_Int16 > LocaleSeqToLangSeq(uno::Sequence< Locale > const &rLocaleSeq)
bool FileExists(const OUString &rMainURL)
bool LinguIsUnspecified(LanguageType nLanguage)
Checks if a LanguageType is one of the values that denote absence of language or undetermined languag...
uno::Reference< XSearchableDictionaryList > GetDictionaryList()
uno::Reference< XHyphenatedWord > RebuildHyphensAndControlChars(const OUString &rOrigWord, uno::Reference< XHyphenatedWord > const &rxHyphWord)
uno::Reference< XLinguProperties > GetLinguProperties()
CapType capitalType(const OUString &aTerm, CharClass const *pCC)
uno::Reference< XDictionaryEntry > SearchDicList(const uno::Reference< XSearchableDictionaryList > &xDicList, const OUString &rWord, LanguageType nLanguage, bool bSearchPosDics, bool bSearchSpellEntry)
OUString GetDictionaryWriteablePath()
sal_Int32 GetPosInWordToCheck(std::u16string_view rTxt, sal_Int32 nPos)
osl::Mutex & GetLinguMutex()
! multi-thread safe mutex for all platforms !!
bool IsUpper(const OUString &rText, sal_Int32 nPos, sal_Int32 nLen, LanguageType nLanguage)
bool IsIgnoreControlChars(const PropertyValues &rProperties, const uno::Reference< XPropertySet > &rxProp)
sal_Int32 LevDistance(std::u16string_view rTxt1, std::u16string_view rTxt2)
bool IsNumeric(std::u16string_view rText)
css::lang::Locale LinguLanguageToLocale(LanguageType nLanguage)
Convert LanguageType to Locale for legacy handling.
bool HasDigits(const OUString &rText)
std::vector< OUString > GetDictionaryPaths()
const LocaleDataWrapper & GetLocaleDataWrapper(LanguageType nLang)
DictionaryError AddEntryToDic(uno::Reference< XDictionary > const &rxDic, const OUString &rWord, bool bIsNeg, const OUString &rRplcTxt, bool bStripDot)
uno::Reference< XDictionary > GetIgnoreAllList()
LanguageType LinguLocaleToLanguage(const css::lang::Locale &rLocale)
Convert Locale to LanguageType for legacy handling.
bool IsUseDicList(const PropertyValues &rProperties, const uno::Reference< XPropertySet > &rxProp)