Line data Source code
1 : /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 : /* This Source Code Form is subject to the terms of the Mozilla Public
3 : * License, v. 2.0. If a copy of the MPL was not distributed with this
4 : * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
5 :
6 :
7 : #include "mozilla/ModuleUtils.h"
8 : #include "mozHunspell.h"
9 : #include "mozHunspellDirProvider.h"
10 : #include "mozSpellChecker.h"
11 : #include "mozInlineSpellChecker.h"
12 : #include "nsTextServicesCID.h"
13 : #include "mozPersonalDictionary.h"
14 : #include "mozSpellI18NManager.h"
15 : #include "nsIFile.h"
16 :
17 : #define NS_SPELLCHECKER_CID \
18 : { /* 8227f019-afc7-461e-b030-9f185d7a0e29 */ \
19 : 0x8227F019, 0xAFC7, 0x461e, \
20 : { 0xB0, 0x30, 0x9F, 0x18, 0x5D, 0x7A, 0x0E, 0x29} }
21 :
22 : #define MOZ_INLINESPELLCHECKER_CID \
23 : { /* 9FE5D975-09BD-44aa-A01A-66402EA28657 */ \
24 : 0x9fe5d975, 0x9bd, 0x44aa, \
25 : { 0xa0, 0x1a, 0x66, 0x40, 0x2e, 0xa2, 0x86, 0x57} }
26 :
27 2 : NS_GENERIC_FACTORY_CONSTRUCTOR_INIT(mozHunspell, Init)
28 6 : NS_GENERIC_FACTORY_CONSTRUCTOR(mozHunspellDirProvider)
29 2 : NS_GENERIC_FACTORY_CONSTRUCTOR_INIT(mozSpellChecker, Init)
30 2 : NS_GENERIC_FACTORY_CONSTRUCTOR_INIT(mozPersonalDictionary, Init)
31 0 : NS_GENERIC_FACTORY_CONSTRUCTOR(mozSpellI18NManager)
32 0 : NS_GENERIC_FACTORY_CONSTRUCTOR(mozInlineSpellChecker)
33 :
34 : NS_DEFINE_NAMED_CID(MOZ_HUNSPELL_CID);
35 : NS_DEFINE_NAMED_CID(HUNSPELLDIRPROVIDER_CID);
36 : NS_DEFINE_NAMED_CID(NS_SPELLCHECKER_CID);
37 : NS_DEFINE_NAMED_CID(MOZ_PERSONALDICTIONARY_CID);
38 : NS_DEFINE_NAMED_CID(MOZ_SPELLI18NMANAGER_CID);
39 : NS_DEFINE_NAMED_CID(MOZ_INLINESPELLCHECKER_CID);
40 :
41 : static const mozilla::Module::CIDEntry kSpellcheckCIDs[] = {
42 : { &kMOZ_HUNSPELL_CID, false, nullptr, mozHunspellConstructor },
43 : { &kHUNSPELLDIRPROVIDER_CID, false, nullptr, mozHunspellDirProviderConstructor },
44 : { &kNS_SPELLCHECKER_CID, false, nullptr, mozSpellCheckerConstructor },
45 : { &kMOZ_PERSONALDICTIONARY_CID, false, nullptr, mozPersonalDictionaryConstructor },
46 : { &kMOZ_SPELLI18NMANAGER_CID, false, nullptr, mozSpellI18NManagerConstructor },
47 : { &kMOZ_INLINESPELLCHECKER_CID, false, nullptr, mozInlineSpellCheckerConstructor },
48 : { nullptr }
49 : };
50 :
51 : static const mozilla::Module::ContractIDEntry kSpellcheckContracts[] = {
52 : { MOZ_HUNSPELL_CONTRACTID, &kMOZ_HUNSPELL_CID },
53 : { mozHunspellDirProvider::kContractID, &kHUNSPELLDIRPROVIDER_CID },
54 : { NS_SPELLCHECKER_CONTRACTID, &kNS_SPELLCHECKER_CID },
55 : { MOZ_PERSONALDICTIONARY_CONTRACTID, &kMOZ_PERSONALDICTIONARY_CID },
56 : { MOZ_SPELLI18NMANAGER_CONTRACTID, &kMOZ_SPELLI18NMANAGER_CID },
57 : { MOZ_INLINESPELLCHECKER_CONTRACTID, &kMOZ_INLINESPELLCHECKER_CID },
58 : { nullptr }
59 3 : };
60 :
61 : static const mozilla::Module::CategoryEntry kSpellcheckCategories[] = {
62 : { XPCOM_DIRECTORY_PROVIDER_CATEGORY, "spellcheck-directory-provider", mozHunspellDirProvider::kContractID },
63 : { nullptr }
64 3 : };
65 :
66 : const mozilla::Module kSpellcheckModule = {
67 : mozilla::Module::kVersion,
68 : kSpellcheckCIDs,
69 : kSpellcheckContracts,
70 : kSpellcheckCategories
71 : };
72 :
73 : NSMODULE_DEFN(mozSpellCheckerModule) = &kSpellcheckModule;
|