diff --git a/mozilla/modules/plugin/base/macbuild/pluginClassic.mcp b/mozilla/modules/plugin/base/macbuild/pluginClassic.mcp new file mode 100644 index 00000000000..14a034b82cf Binary files /dev/null and b/mozilla/modules/plugin/base/macbuild/pluginClassic.mcp differ diff --git a/mozilla/modules/plugin/base/macbuild/pluginClassicDebugPrefix.h b/mozilla/modules/plugin/base/macbuild/pluginClassicDebugPrefix.h new file mode 100644 index 00000000000..971d6ac0092 --- /dev/null +++ b/mozilla/modules/plugin/base/macbuild/pluginClassicDebugPrefix.h @@ -0,0 +1,27 @@ +/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- + * + * The contents of this file are subject to the Netscape Public + * License Version 1.1 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.mozilla.org/NPL/ + * + * Software distributed under the License is distributed on an "AS + * IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or + * implied. See the License for the specific language governing + * rights and limitations under the License. + * + * The Original Code is mozilla.org code. + * + * The Initial Developer of the Original Code is Netscape + * Communications Corporation. Portions created by Netscape are + * Copyright (C) 1998 Netscape Communications Corporation. All + * Rights Reserved. + * + * Contributor(s): + */ + +#define _IMPL_NS_PLUGINS 1 + +#include "MacSharedPrefix_debug.h" + +#undef TARGET_CARBON diff --git a/mozilla/modules/plugin/base/macbuild/pluginClassicPrefix.h b/mozilla/modules/plugin/base/macbuild/pluginClassicPrefix.h new file mode 100644 index 00000000000..b55e8449474 --- /dev/null +++ b/mozilla/modules/plugin/base/macbuild/pluginClassicPrefix.h @@ -0,0 +1,25 @@ +/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- + * + * The contents of this file are subject to the Netscape Public + * License Version 1.1 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.mozilla.org/NPL/ + * + * Software distributed under the License is distributed on an "AS + * IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or + * implied. See the License for the specific language governing + * rights and limitations under the License. + * + * The Original Code is mozilla.org code. + * + * The Initial Developer of the Original Code is Netscape + * Communications Corporation. Portions created by Netscape are + * Copyright (C) 1998 Netscape Communications Corporation. All + * Rights Reserved. + * + * Contributor(s): + */ + +#define _IMPL_NS_PLUGINS 1 + +#include "MacSharedPrefix.h" diff --git a/mozilla/modules/plugin/base/src/nsPluginClassicModule.cpp b/mozilla/modules/plugin/base/src/nsPluginClassicModule.cpp new file mode 100644 index 00000000000..b2d6cdd3fd4 --- /dev/null +++ b/mozilla/modules/plugin/base/src/nsPluginClassicModule.cpp @@ -0,0 +1,80 @@ +/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- + * + * The contents of this file are subject to the Netscape Public + * License Version 1.1 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.mozilla.org/NPL/ + * + * Software distributed under the License is distributed on an "AS + * IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or + * implied. See the License for the specific language governing + * rights and limitations under the License. + * + * The Original Code is Mozilla Communicator client code. + * + * The Initial Developer of the Original Code is Netscape Communications + * Corporation. Portions created by Netscape are + * Copyright (C) 1998 Netscape Communications Corporation. All + * Rights Reserved. + * + * Contributor(s): + * Pierre Phaneuf + */ + +#include "nsIGenericFactory.h" +#include "nsIClassicPluginFactory.h" +#include "ns4xPlugin.h" + +class nsClassicPluginFactory : public nsIClassicPluginFactory { +public: + NS_DECL_ISUPPORTS + + nsClassicPluginFactory(); + + static nsresult Create(nsISupports* aOuter, REFNSIID aIID, void** aResult); + + NS_IMETHOD CreatePlugin(nsIServiceManager* aServiceMgr, const char* aFileName, + PRLibrary* aLibrary, nsIPlugin** aResult); +}; + +NS_IMPL_ISUPPORTS1(nsClassicPluginFactory, nsIClassicPluginFactory) + +nsClassicPluginFactory::nsClassicPluginFactory() +{ + NS_INIT_ISUPPORTS(); +} + +nsresult nsClassicPluginFactory::Create(nsISupports* aOuter, REFNSIID aIID, void** aResult) +{ + NS_PRECONDITION(aOuter == nsnull, "no aggregation"); + if (aOuter) + return NS_ERROR_NO_AGGREGATION; + + nsCOMPtr factory = new nsClassicPluginFactory; + if (! factory) + return NS_ERROR_OUT_OF_MEMORY; + + return factory->QueryInterface(aIID, aResult); +} + +NS_METHOD nsClassicPluginFactory::CreatePlugin(nsIServiceManager* aServiceMgr, const char* aFileName, + PRLibrary* aLibrary, nsIPlugin** aResult) +{ + return ns4xPlugin::CreatePlugin(aServiceMgr, aFileName, aLibrary, aResult); +} + +static nsModuleComponentInfo gComponentInfo[] = { + { "Classic Plugin Factory", + NS_CLASSIC_PLUGIN_FACTORY_CID, + NS_CLASSIC_PLUGIN_FACTORY_CONTRACTID, + nsClassicPluginFactory::Create }, +}; + +PR_STATIC_CALLBACK(void) +nsPluginModuleDtor(nsIModule *self) +{ + ns4xPlugin::ReleaseStatics(); +} + +NS_IMPL_NSGETMODULE_WITH_DTOR("nsClassicPluginModule", gComponentInfo, + nsPluginModuleDtor); diff --git a/mozilla/modules/plugin/macbuild/pluginClassic.mcp b/mozilla/modules/plugin/macbuild/pluginClassic.mcp new file mode 100644 index 00000000000..14a034b82cf Binary files /dev/null and b/mozilla/modules/plugin/macbuild/pluginClassic.mcp differ diff --git a/mozilla/modules/plugin/macbuild/pluginClassicDebugPrefix.h b/mozilla/modules/plugin/macbuild/pluginClassicDebugPrefix.h new file mode 100644 index 00000000000..971d6ac0092 --- /dev/null +++ b/mozilla/modules/plugin/macbuild/pluginClassicDebugPrefix.h @@ -0,0 +1,27 @@ +/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- + * + * The contents of this file are subject to the Netscape Public + * License Version 1.1 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.mozilla.org/NPL/ + * + * Software distributed under the License is distributed on an "AS + * IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or + * implied. See the License for the specific language governing + * rights and limitations under the License. + * + * The Original Code is mozilla.org code. + * + * The Initial Developer of the Original Code is Netscape + * Communications Corporation. Portions created by Netscape are + * Copyright (C) 1998 Netscape Communications Corporation. All + * Rights Reserved. + * + * Contributor(s): + */ + +#define _IMPL_NS_PLUGINS 1 + +#include "MacSharedPrefix_debug.h" + +#undef TARGET_CARBON diff --git a/mozilla/modules/plugin/macbuild/pluginClassicPrefix.h b/mozilla/modules/plugin/macbuild/pluginClassicPrefix.h new file mode 100644 index 00000000000..b55e8449474 --- /dev/null +++ b/mozilla/modules/plugin/macbuild/pluginClassicPrefix.h @@ -0,0 +1,25 @@ +/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- + * + * The contents of this file are subject to the Netscape Public + * License Version 1.1 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.mozilla.org/NPL/ + * + * Software distributed under the License is distributed on an "AS + * IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or + * implied. See the License for the specific language governing + * rights and limitations under the License. + * + * The Original Code is mozilla.org code. + * + * The Initial Developer of the Original Code is Netscape + * Communications Corporation. Portions created by Netscape are + * Copyright (C) 1998 Netscape Communications Corporation. All + * Rights Reserved. + * + * Contributor(s): + */ + +#define _IMPL_NS_PLUGINS 1 + +#include "MacSharedPrefix.h" diff --git a/mozilla/modules/plugin/nglsrc/nsPluginClassicModule.cpp b/mozilla/modules/plugin/nglsrc/nsPluginClassicModule.cpp new file mode 100644 index 00000000000..b2d6cdd3fd4 --- /dev/null +++ b/mozilla/modules/plugin/nglsrc/nsPluginClassicModule.cpp @@ -0,0 +1,80 @@ +/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- + * + * The contents of this file are subject to the Netscape Public + * License Version 1.1 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.mozilla.org/NPL/ + * + * Software distributed under the License is distributed on an "AS + * IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or + * implied. See the License for the specific language governing + * rights and limitations under the License. + * + * The Original Code is Mozilla Communicator client code. + * + * The Initial Developer of the Original Code is Netscape Communications + * Corporation. Portions created by Netscape are + * Copyright (C) 1998 Netscape Communications Corporation. All + * Rights Reserved. + * + * Contributor(s): + * Pierre Phaneuf + */ + +#include "nsIGenericFactory.h" +#include "nsIClassicPluginFactory.h" +#include "ns4xPlugin.h" + +class nsClassicPluginFactory : public nsIClassicPluginFactory { +public: + NS_DECL_ISUPPORTS + + nsClassicPluginFactory(); + + static nsresult Create(nsISupports* aOuter, REFNSIID aIID, void** aResult); + + NS_IMETHOD CreatePlugin(nsIServiceManager* aServiceMgr, const char* aFileName, + PRLibrary* aLibrary, nsIPlugin** aResult); +}; + +NS_IMPL_ISUPPORTS1(nsClassicPluginFactory, nsIClassicPluginFactory) + +nsClassicPluginFactory::nsClassicPluginFactory() +{ + NS_INIT_ISUPPORTS(); +} + +nsresult nsClassicPluginFactory::Create(nsISupports* aOuter, REFNSIID aIID, void** aResult) +{ + NS_PRECONDITION(aOuter == nsnull, "no aggregation"); + if (aOuter) + return NS_ERROR_NO_AGGREGATION; + + nsCOMPtr factory = new nsClassicPluginFactory; + if (! factory) + return NS_ERROR_OUT_OF_MEMORY; + + return factory->QueryInterface(aIID, aResult); +} + +NS_METHOD nsClassicPluginFactory::CreatePlugin(nsIServiceManager* aServiceMgr, const char* aFileName, + PRLibrary* aLibrary, nsIPlugin** aResult) +{ + return ns4xPlugin::CreatePlugin(aServiceMgr, aFileName, aLibrary, aResult); +} + +static nsModuleComponentInfo gComponentInfo[] = { + { "Classic Plugin Factory", + NS_CLASSIC_PLUGIN_FACTORY_CID, + NS_CLASSIC_PLUGIN_FACTORY_CONTRACTID, + nsClassicPluginFactory::Create }, +}; + +PR_STATIC_CALLBACK(void) +nsPluginModuleDtor(nsIModule *self) +{ + ns4xPlugin::ReleaseStatics(); +} + +NS_IMPL_NSGETMODULE_WITH_DTOR("nsClassicPluginModule", gComponentInfo, + nsPluginModuleDtor);