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 : #include "mozilla/ModuleUtils.h"
7 : #include "nsDialogParamBlock.h"
8 : #include "nsWindowWatcher.h"
9 : #include "nsAppStartupNotifier.h"
10 : #include "nsFind.h"
11 : #include "nsWebBrowserFind.h"
12 : #include "nsWebBrowserPersist.h"
13 : #include "nsCommandManager.h"
14 : #include "nsControllerCommandTable.h"
15 : #include "nsCommandParams.h"
16 : #include "nsCommandGroup.h"
17 : #include "nsBaseCommandController.h"
18 : #include "nsNetCID.h"
19 : #include "nsEmbedCID.h"
20 :
21 : #ifdef NS_PRINTING
22 : #include "nsPrintingPromptService.h"
23 : #include "nsPrintingProxy.h"
24 : #endif
25 :
26 :
27 4 : NS_GENERIC_FACTORY_CONSTRUCTOR_INIT(nsWindowWatcher, Init)
28 6 : NS_GENERIC_FACTORY_CONSTRUCTOR(nsAppStartupNotifier)
29 0 : NS_GENERIC_FACTORY_CONSTRUCTOR(nsFind)
30 0 : NS_GENERIC_FACTORY_CONSTRUCTOR(nsWebBrowserFind)
31 0 : NS_GENERIC_FACTORY_CONSTRUCTOR(nsWebBrowserPersist)
32 8 : NS_GENERIC_FACTORY_CONSTRUCTOR(nsControllerCommandTable)
33 0 : NS_GENERIC_FACTORY_CONSTRUCTOR(nsCommandManager)
34 0 : NS_GENERIC_FACTORY_CONSTRUCTOR(nsCommandParams)
35 0 : NS_GENERIC_FACTORY_CONSTRUCTOR(nsControllerCommandGroup)
36 12 : NS_GENERIC_FACTORY_CONSTRUCTOR(nsBaseCommandController)
37 :
38 : #ifdef MOZ_XUL
39 0 : NS_GENERIC_FACTORY_CONSTRUCTOR(nsDialogParamBlock)
40 : #ifdef NS_PRINTING
41 0 : NS_GENERIC_FACTORY_CONSTRUCTOR_INIT(nsPrintingPromptService, Init)
42 : #ifdef PROXY_PRINTING
43 0 : NS_GENERIC_FACTORY_SINGLETON_CONSTRUCTOR(nsPrintingProxy,
44 : nsPrintingProxy::GetInstance)
45 : #endif
46 : #endif
47 : #endif
48 :
49 : #ifdef MOZ_XUL
50 : NS_DEFINE_NAMED_CID(NS_DIALOGPARAMBLOCK_CID);
51 : #ifdef NS_PRINTING
52 : NS_DEFINE_NAMED_CID(NS_PRINTINGPROMPTSERVICE_CID);
53 : #endif
54 : #endif
55 : NS_DEFINE_NAMED_CID(NS_WINDOWWATCHER_CID);
56 : NS_DEFINE_NAMED_CID(NS_FIND_CID);
57 : NS_DEFINE_NAMED_CID(NS_WEB_BROWSER_FIND_CID);
58 : NS_DEFINE_NAMED_CID(NS_APPSTARTUPNOTIFIER_CID);
59 : NS_DEFINE_NAMED_CID(NS_WEBBROWSERPERSIST_CID);
60 : NS_DEFINE_NAMED_CID(NS_CONTROLLERCOMMANDTABLE_CID);
61 : NS_DEFINE_NAMED_CID(NS_COMMAND_MANAGER_CID);
62 : NS_DEFINE_NAMED_CID(NS_COMMAND_PARAMS_CID);
63 : NS_DEFINE_NAMED_CID(NS_CONTROLLER_COMMAND_GROUP_CID);
64 : NS_DEFINE_NAMED_CID(NS_BASECOMMANDCONTROLLER_CID);
65 :
66 : static const mozilla::Module::CIDEntry kEmbeddingCIDs[] = {
67 : #ifdef MOZ_XUL
68 : { &kNS_DIALOGPARAMBLOCK_CID, false, nullptr, nsDialogParamBlockConstructor },
69 : #ifdef NS_PRINTING
70 :
71 : #ifdef PROXY_PRINTING
72 : { &kNS_PRINTINGPROMPTSERVICE_CID, false, nullptr, nsPrintingPromptServiceConstructor,
73 : mozilla::Module::MAIN_PROCESS_ONLY },
74 : { &kNS_PRINTINGPROMPTSERVICE_CID, false, nullptr, nsPrintingProxyConstructor,
75 : mozilla::Module::CONTENT_PROCESS_ONLY },
76 : #else
77 : { &kNS_PRINTINGPROMPTSERVICE_CID, false, nullptr, nsPrintingPromptServiceConstructor },
78 : #endif
79 : #endif
80 : #endif
81 : { &kNS_WINDOWWATCHER_CID, false, nullptr, nsWindowWatcherConstructor },
82 : { &kNS_FIND_CID, false, nullptr, nsFindConstructor },
83 : { &kNS_WEB_BROWSER_FIND_CID, false, nullptr, nsWebBrowserFindConstructor },
84 : { &kNS_APPSTARTUPNOTIFIER_CID, false, nullptr, nsAppStartupNotifierConstructor },
85 : { &kNS_WEBBROWSERPERSIST_CID, false, nullptr, nsWebBrowserPersistConstructor },
86 : { &kNS_CONTROLLERCOMMANDTABLE_CID, false, nullptr, nsControllerCommandTableConstructor },
87 : { &kNS_COMMAND_MANAGER_CID, false, nullptr, nsCommandManagerConstructor },
88 : { &kNS_COMMAND_PARAMS_CID, false, nullptr, nsCommandParamsConstructor },
89 : { &kNS_CONTROLLER_COMMAND_GROUP_CID, false, nullptr, nsControllerCommandGroupConstructor },
90 : { &kNS_BASECOMMANDCONTROLLER_CID, false, nullptr, nsBaseCommandControllerConstructor },
91 : { nullptr }
92 : };
93 :
94 : static const mozilla::Module::ContractIDEntry kEmbeddingContracts[] = {
95 : #ifdef MOZ_XUL
96 : { NS_DIALOGPARAMBLOCK_CONTRACTID, &kNS_DIALOGPARAMBLOCK_CID },
97 : #ifdef NS_PRINTING
98 : { NS_PRINTINGPROMPTSERVICE_CONTRACTID, &kNS_PRINTINGPROMPTSERVICE_CID },
99 : #endif
100 : #endif
101 : { NS_WINDOWWATCHER_CONTRACTID, &kNS_WINDOWWATCHER_CID },
102 : { NS_FIND_CONTRACTID, &kNS_FIND_CID },
103 : { NS_WEB_BROWSER_FIND_CONTRACTID, &kNS_WEB_BROWSER_FIND_CID },
104 : { NS_APPSTARTUPNOTIFIER_CONTRACTID, &kNS_APPSTARTUPNOTIFIER_CID },
105 : { NS_WEBBROWSERPERSIST_CONTRACTID, &kNS_WEBBROWSERPERSIST_CID },
106 : { NS_CONTROLLERCOMMANDTABLE_CONTRACTID, &kNS_CONTROLLERCOMMANDTABLE_CID },
107 : { NS_COMMAND_MANAGER_CONTRACTID, &kNS_COMMAND_MANAGER_CID },
108 : { NS_COMMAND_PARAMS_CONTRACTID, &kNS_COMMAND_PARAMS_CID },
109 : { NS_CONTROLLER_COMMAND_GROUP_CONTRACTID, &kNS_CONTROLLER_COMMAND_GROUP_CID },
110 : { NS_BASECOMMANDCONTROLLER_CONTRACTID, &kNS_BASECOMMANDCONTROLLER_CID },
111 : { nullptr }
112 : };
113 :
114 : static const mozilla::Module kEmbeddingModule = {
115 : mozilla::Module::kVersion,
116 : kEmbeddingCIDs,
117 : kEmbeddingContracts
118 : };
119 :
120 : NSMODULE_DEFN(embedcomponents) = &kEmbeddingModule;
|