extensions/spellcheck/src/mozSpellCheckerFactory.cpp

changeset 0
6474c204b198
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/extensions/spellcheck/src/mozSpellCheckerFactory.cpp	Wed Dec 31 06:09:35 2014 +0100
     1.3 @@ -0,0 +1,73 @@
     1.4 +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
     1.5 +/* This Source Code Form is subject to the terms of the Mozilla Public
     1.6 + * License, v. 2.0. If a copy of the MPL was not distributed with this
     1.7 + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
     1.8 +
     1.9 +
    1.10 +#include "mozilla/ModuleUtils.h"
    1.11 +#include "mozHunspell.h"
    1.12 +#include "mozHunspellDirProvider.h"
    1.13 +#include "mozSpellChecker.h"
    1.14 +#include "mozInlineSpellChecker.h"
    1.15 +#include "nsTextServicesCID.h"
    1.16 +#include "mozPersonalDictionary.h"
    1.17 +#include "mozSpellI18NManager.h"
    1.18 +#include "nsIFile.h"
    1.19 +
    1.20 +#define NS_SPELLCHECKER_CID         \
    1.21 +{ /* 8227f019-afc7-461e-b030-9f185d7a0e29 */    \
    1.22 +0x8227F019, 0xAFC7, 0x461e,                     \
    1.23 +{ 0xB0, 0x30, 0x9F, 0x18, 0x5D, 0x7A, 0x0E, 0x29} }
    1.24 +
    1.25 +#define MOZ_INLINESPELLCHECKER_CID         \
    1.26 +{ /* 9FE5D975-09BD-44aa-A01A-66402EA28657 */    \
    1.27 +0x9fe5d975, 0x9bd, 0x44aa,                      \
    1.28 +{ 0xa0, 0x1a, 0x66, 0x40, 0x2e, 0xa2, 0x86, 0x57} }
    1.29 +
    1.30 +NS_GENERIC_FACTORY_CONSTRUCTOR_INIT(mozHunspell, Init)
    1.31 +NS_GENERIC_FACTORY_CONSTRUCTOR(mozHunspellDirProvider)
    1.32 +NS_GENERIC_FACTORY_CONSTRUCTOR_INIT(mozSpellChecker, Init)
    1.33 +NS_GENERIC_FACTORY_CONSTRUCTOR_INIT(mozPersonalDictionary, Init)
    1.34 +NS_GENERIC_FACTORY_CONSTRUCTOR(mozSpellI18NManager)
    1.35 +NS_GENERIC_FACTORY_CONSTRUCTOR(mozInlineSpellChecker)
    1.36 +
    1.37 +NS_DEFINE_NAMED_CID(MOZ_HUNSPELL_CID);
    1.38 +NS_DEFINE_NAMED_CID(HUNSPELLDIRPROVIDER_CID);
    1.39 +NS_DEFINE_NAMED_CID(NS_SPELLCHECKER_CID);
    1.40 +NS_DEFINE_NAMED_CID(MOZ_PERSONALDICTIONARY_CID);
    1.41 +NS_DEFINE_NAMED_CID(MOZ_SPELLI18NMANAGER_CID);
    1.42 +NS_DEFINE_NAMED_CID(MOZ_INLINESPELLCHECKER_CID);
    1.43 +
    1.44 +static const mozilla::Module::CIDEntry kSpellcheckCIDs[] = {
    1.45 +    { &kMOZ_HUNSPELL_CID, false, nullptr, mozHunspellConstructor },
    1.46 +    { &kHUNSPELLDIRPROVIDER_CID, false, nullptr, mozHunspellDirProviderConstructor },
    1.47 +    { &kNS_SPELLCHECKER_CID, false, nullptr, mozSpellCheckerConstructor },
    1.48 +    { &kMOZ_PERSONALDICTIONARY_CID, false, nullptr, mozPersonalDictionaryConstructor },
    1.49 +    { &kMOZ_SPELLI18NMANAGER_CID, false, nullptr, mozSpellI18NManagerConstructor },
    1.50 +    { &kMOZ_INLINESPELLCHECKER_CID, false, nullptr, mozInlineSpellCheckerConstructor },
    1.51 +    { nullptr }
    1.52 +};
    1.53 +
    1.54 +static const mozilla::Module::ContractIDEntry kSpellcheckContracts[] = {
    1.55 +    { MOZ_HUNSPELL_CONTRACTID, &kMOZ_HUNSPELL_CID },
    1.56 +    { mozHunspellDirProvider::kContractID, &kHUNSPELLDIRPROVIDER_CID },
    1.57 +    { NS_SPELLCHECKER_CONTRACTID, &kNS_SPELLCHECKER_CID },
    1.58 +    { MOZ_PERSONALDICTIONARY_CONTRACTID, &kMOZ_PERSONALDICTIONARY_CID },
    1.59 +    { MOZ_SPELLI18NMANAGER_CONTRACTID, &kMOZ_SPELLI18NMANAGER_CID },
    1.60 +    { MOZ_INLINESPELLCHECKER_CONTRACTID, &kMOZ_INLINESPELLCHECKER_CID },
    1.61 +    { nullptr }
    1.62 +};
    1.63 +
    1.64 +static const mozilla::Module::CategoryEntry kSpellcheckCategories[] = {
    1.65 +    { XPCOM_DIRECTORY_PROVIDER_CATEGORY, "spellcheck-directory-provider", mozHunspellDirProvider::kContractID },
    1.66 +    { nullptr }
    1.67 +};
    1.68 +
    1.69 +const mozilla::Module kSpellcheckModule = {
    1.70 +    mozilla::Module::kVersion,
    1.71 +    kSpellcheckCIDs,
    1.72 +    kSpellcheckContracts,
    1.73 +    kSpellcheckCategories
    1.74 +};
    1.75 +
    1.76 +NSMODULE_DEFN(mozSpellCheckerModule) = &kSpellcheckModule;

mercurial