diff --git a/mozilla/content/xtf/public/nsIXTFBindableElement.idl b/mozilla/content/xtf/public/nsIXTFBindableElement.idl deleted file mode 100644 index d20f2e3ad04..00000000000 --- a/mozilla/content/xtf/public/nsIXTFBindableElement.idl +++ /dev/null @@ -1,65 +0,0 @@ -/* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ -/* ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla 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/MPL/ - * - * 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 the Mozilla XTF project. - * - * The Initial Developer of the Original Code is - * Olli Pettay. - * Portions created by the Initial Developer are Copyright (C) 2005 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Olli Pettay (original author) - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - -#include "nsIXTFElement.idl" - -interface nsIXTFBindableElementWrapper; - -/** - * nsIXTFBindableElement can be used to add support for new interfaces to - * normal XML elements. XBL bindings do work with this kind of XTF elements. - * - * @note getScriptingInterfaces don't work at the moment with - * nsIXTFBindableElements. The problem is that XBL does not play nicely - * with that kind of interfaces. - * However, if nsIXTFBindableElement implements scriptable interfaces, those - * can be used by explicitly QIing to them. - */ - -[scriptable, uuid(8dcc630c-9adc-4c60-9954-a004cb45e4a7)] -interface nsIXTFBindableElement : nsIXTFElement -{ - /** - * onCreated will be called before any notifications are sent to - * the xtf element. - * - * @param wrapper is a weak proxy to the wrapping element - * (i.e. holding a reference to this will not create a cycle). - */ - void onCreated(in nsIXTFBindableElementWrapper wrapper); -}; diff --git a/mozilla/content/xtf/public/nsIXTFBindableElementWrapper.idl b/mozilla/content/xtf/public/nsIXTFBindableElementWrapper.idl deleted file mode 100644 index cb61a0b67c1..00000000000 --- a/mozilla/content/xtf/public/nsIXTFBindableElementWrapper.idl +++ /dev/null @@ -1,45 +0,0 @@ -/* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ -/* ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla 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/MPL/ - * - * 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 the Mozilla XTF project. - * - * The Initial Developer of the Original Code is - * Olli Pettay. - * Portions created by the Initial Developer are Copyright (C) 2005 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Olli Pettay (original author) - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - -#include "nsIXTFStyledElementWrapper.idl" - -[scriptable, uuid(7914d5f2-14b4-47d0-88f8-70715cfbdfb7)] -interface nsIXTFBindableElementWrapper : nsIXTFStyledElementWrapper -{ -}; - diff --git a/mozilla/content/xtf/public/nsIXTFGenericElement.idl b/mozilla/content/xtf/public/nsIXTFGenericElement.idl deleted file mode 100644 index 7a3b3d6b881..00000000000 --- a/mozilla/content/xtf/public/nsIXTFGenericElement.idl +++ /dev/null @@ -1,51 +0,0 @@ -/* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ -/* ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla 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/MPL/ - * - * 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 the Mozilla XTF project. - * - * The Initial Developer of the Original Code is - * Alex Fritze. - * Portions created by the Initial Developer are Copyright (C) 2004 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Alex Fritze (original author) - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - -#include "nsIXTFElement.idl" - -interface nsIXTFGenericElementWrapper; - -[scriptable, uuid(e339eb1d-3ea8-4c85-87ce-644eb7a19034)] -interface nsIXTFGenericElement : nsIXTFElement -{ - // onCreated: Will be called before any notifications are sent to - // the xtf element. Parameter 'wrapper' is a weak proxy to the - // wrapping element (i.e. it can safely be addrefed by the xtf - // element without creating cyclic XPCOM referencing). - void onCreated(in nsIXTFGenericElementWrapper wrapper); -}; diff --git a/mozilla/content/xtf/public/nsIXTFGenericElementWrapper.idl b/mozilla/content/xtf/public/nsIXTFGenericElementWrapper.idl deleted file mode 100644 index 0cef78b4157..00000000000 --- a/mozilla/content/xtf/public/nsIXTFGenericElementWrapper.idl +++ /dev/null @@ -1,45 +0,0 @@ -/* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ -/* ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla 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/MPL/ - * - * 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 the Mozilla XTF project. - * - * The Initial Developer of the Original Code is - * Alex Fritze. - * Portions created by the Initial Developer are Copyright (C) 2004 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Alex Fritze (original author) - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - -#include "nsIXTFElementWrapper.idl" - -[scriptable, uuid(5e0cf513-5b87-4da2-a5ce-d9ba3a30d540)] -interface nsIXTFGenericElementWrapper : nsIXTFElementWrapper -{ -}; - diff --git a/mozilla/content/xtf/public/nsIXTFSVGVisual.idl b/mozilla/content/xtf/public/nsIXTFSVGVisual.idl deleted file mode 100644 index 0d2c484a572..00000000000 --- a/mozilla/content/xtf/public/nsIXTFSVGVisual.idl +++ /dev/null @@ -1,53 +0,0 @@ -/* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ -/* ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla 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/MPL/ - * - * 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 the Mozilla XTF project. - * - * The Initial Developer of the Original Code is - * Alex Fritze. - * Portions created by the Initial Developer are Copyright (C) 2004 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Alex Fritze (original author) - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - -#include "nsIXTFVisual.idl" - -interface nsIXTFSVGVisualWrapper; -interface nsIDOMElement; - -[scriptable, uuid(5fd47925-03b2-4318-b55e-c37134124b6a)] -interface nsIXTFSVGVisual : nsIXTFVisual -{ - // onCreated: Will be called before any notifications are sent to - // the xtf element or before the element will be asked for its - // visualContent. Parameter 'wrapper' is a weak proxy to the - // wrapping element (i.e. it can safely be addrefed by the xtf - // element without creating cyclic XPCOM referencing). - void onCreated(in nsIXTFSVGVisualWrapper wrapper); -}; diff --git a/mozilla/content/xtf/public/nsIXTFSVGVisualWrapper.idl b/mozilla/content/xtf/public/nsIXTFSVGVisualWrapper.idl deleted file mode 100644 index 8a97a110cb5..00000000000 --- a/mozilla/content/xtf/public/nsIXTFSVGVisualWrapper.idl +++ /dev/null @@ -1,45 +0,0 @@ -/* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ -/* ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla 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/MPL/ - * - * 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 the Mozilla XTF project. - * - * The Initial Developer of the Original Code is - * Alex Fritze. - * Portions created by the Initial Developer are Copyright (C) 2004 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Alex Fritze (original author) - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - -#include "nsIXTFStyledElementWrapper.idl" - -[scriptable, uuid(78582ad3-db1e-4aa6-a15b-b055a7846352)] -interface nsIXTFSVGVisualWrapper : nsIXTFStyledElementWrapper -{ -}; - diff --git a/mozilla/content/xtf/public/nsIXTFStyledElementWrapper.idl b/mozilla/content/xtf/public/nsIXTFStyledElementWrapper.idl deleted file mode 100644 index aac9d5ab372..00000000000 --- a/mozilla/content/xtf/public/nsIXTFStyledElementWrapper.idl +++ /dev/null @@ -1,51 +0,0 @@ -/* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ -/* ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla 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/MPL/ - * - * 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 the Mozilla XTF project. - * - * The Initial Developer of the Original Code is - * Olli Pettay. - * Portions created by the Initial Developer are Copyright (C) 2005 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Olli Pettay (original author) - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - -#include "nsIXTFElementWrapper.idl" - -[scriptable, uuid(814dbfdd-32ff-4734-9aea-b84c925bc9c0)] -interface nsIXTFStyledElementWrapper : nsIXTFElementWrapper -{ - /** - * This sets the name of the class attribute. - * Should be called only during ::onCreated. - * Note! nsIXTFAttributeHandler can't be used to handle class attribute. - */ - void setClassAttributeName(in nsIAtom name); -}; - diff --git a/mozilla/content/xtf/public/nsIXTFVisual.idl b/mozilla/content/xtf/public/nsIXTFVisual.idl deleted file mode 100644 index b8a1f172025..00000000000 --- a/mozilla/content/xtf/public/nsIXTFVisual.idl +++ /dev/null @@ -1,75 +0,0 @@ -/* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ -/* ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla 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/MPL/ - * - * 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 the Mozilla XTF project. - * - * The Initial Developer of the Original Code is - * Alex Fritze. - * Portions created by the Initial Developer are Copyright (C) 2004 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Alex Fritze (original author) - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - -#include "nsIXTFElement.idl" - -interface nsIDOMElement; - -[scriptable, uuid(2ee5520b-6593-43c1-b660-4885939a6b68)] -interface nsIXTFVisual : nsIXTFElement -{ - // The content tree rooted in 'visualContent' will be rendered where - // the xtf visual is placed into an appropriate context. A visual - // will be asked for its visual content once at most. The tree - // cannot be dynamically replaced during the lifetime of the - // element, it may however be dynamically manipulated (i.e. you can - // insert/remove content, set attributes, etc., but *not* exchange - // the root element for something else). - readonly attribute nsIDOMElement visualContent; - - // Children of the xtf visual which are themselves 'visuals' - // (i.e. built-ins elements, other xtf visuals or xbl elements with - // visual ) will be rendered as if they were children of - // 'insertionPoint'. 'insertionPoint' should either be null (in - // which case the children will not be automatically rendered) or - // point into the 'visualContent' tree. - readonly attribute nsIDOMElement insertionPoint; - - // If 'true', document style sheets will apply to the visual - // content. If 'false', only UA and user style sheets will be - // applied. - readonly attribute boolean applyDocumentStyleSheets; - - // Notification mask constants: - // To receive a given event set the corresponding bit in - // nsIXTFElementWrapper::notificationMask. - const unsigned long NOTIFY_DID_LAYOUT = 0x00020000; - - // Event notifications: - void didLayout(); -}; diff --git a/mozilla/content/xtf/public/nsIXTFXMLVisual.idl b/mozilla/content/xtf/public/nsIXTFXMLVisual.idl deleted file mode 100644 index aba18bc95c9..00000000000 --- a/mozilla/content/xtf/public/nsIXTFXMLVisual.idl +++ /dev/null @@ -1,53 +0,0 @@ -/* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ -/* ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla 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/MPL/ - * - * 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 the Mozilla XTF project. - * - * The Initial Developer of the Original Code is - * Alex Fritze. - * Portions created by the Initial Developer are Copyright (C) 2004 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Alex Fritze (original author) - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - -#include "nsIXTFVisual.idl" - -interface nsIXTFXMLVisualWrapper; -interface nsIDOMElement; - -[scriptable, uuid(e63d240d-bd00-4857-ba65-2f9cc599eead)] -interface nsIXTFXMLVisual : nsIXTFVisual -{ - // onCreated: Will be called before any notifications are sent to - // the xtf element or before the element will be asked for its - // visualContent. Parameter 'wrapper' is a weak proxy to the - // wrapping element (i.e. it can safely be addrefed by the xtf - // element without creating cyclic XPCOM referencing). - void onCreated(in nsIXTFXMLVisualWrapper wrapper); -}; diff --git a/mozilla/content/xtf/public/nsIXTFXMLVisualWrapper.idl b/mozilla/content/xtf/public/nsIXTFXMLVisualWrapper.idl deleted file mode 100644 index 93c75579248..00000000000 --- a/mozilla/content/xtf/public/nsIXTFXMLVisualWrapper.idl +++ /dev/null @@ -1,45 +0,0 @@ -/* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ -/* ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla 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/MPL/ - * - * 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 the Mozilla XTF project. - * - * The Initial Developer of the Original Code is - * Alex Fritze. - * Portions created by the Initial Developer are Copyright (C) 2004 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Alex Fritze (original author) - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - -#include "nsIXTFStyledElementWrapper.idl" - -[scriptable, uuid(656c9417-744e-4fa3-8e2b-8218185efe21)] -interface nsIXTFXMLVisualWrapper : nsIXTFStyledElementWrapper -{ -}; - diff --git a/mozilla/content/xtf/public/nsIXTFXULVisual.idl b/mozilla/content/xtf/public/nsIXTFXULVisual.idl deleted file mode 100644 index f4394a4c039..00000000000 --- a/mozilla/content/xtf/public/nsIXTFXULVisual.idl +++ /dev/null @@ -1,53 +0,0 @@ -/* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ -/* ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla 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/MPL/ - * - * 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 the Mozilla XTF project. - * - * The Initial Developer of the Original Code is - * Alex Fritze. - * Portions created by the Initial Developer are Copyright (C) 2004 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Alex Fritze (original author) - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - -#include "nsIXTFVisual.idl" - -interface nsIXTFXULVisualWrapper; -interface nsIDOMElement; - -[scriptable, uuid(a1173d91-4428-4829-8e3e-fe66e558f161)] -interface nsIXTFXULVisual : nsIXTFVisual -{ - // onCreated: Will be called before any notifications are sent to - // the xtf element or before the element will be asked for its - // visualContent. Parameter 'wrapper' is a weak proxy to the - // wrapping element (i.e. it can safely be addrefed by the xtf - // element without creating cyclic XPCOM referencing). - void onCreated(in nsIXTFXULVisualWrapper wrapper); -}; diff --git a/mozilla/content/xtf/public/nsIXTFXULVisualWrapper.idl b/mozilla/content/xtf/public/nsIXTFXULVisualWrapper.idl deleted file mode 100644 index 4a06f2a4455..00000000000 --- a/mozilla/content/xtf/public/nsIXTFXULVisualWrapper.idl +++ /dev/null @@ -1,45 +0,0 @@ -/* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ -/* ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla 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/MPL/ - * - * 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 the Mozilla XTF project. - * - * The Initial Developer of the Original Code is - * Alex Fritze. - * Portions created by the Initial Developer are Copyright (C) 2004 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Alex Fritze (original author) - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - -#include "nsIXTFStyledElementWrapper.idl" - -[scriptable, uuid(1ab4b724-fd7e-41af-bc19-80bb7299f3c0)] -interface nsIXTFXULVisualWrapper : nsIXTFStyledElementWrapper -{ -}; - diff --git a/mozilla/content/xtf/src/nsXTFBindableElementWrapper.cpp b/mozilla/content/xtf/src/nsXTFBindableElementWrapper.cpp deleted file mode 100644 index d27c9431aad..00000000000 --- a/mozilla/content/xtf/src/nsXTFBindableElementWrapper.cpp +++ /dev/null @@ -1,229 +0,0 @@ -/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ -/* ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla 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/MPL/ - * - * 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 the Mozilla XTF project. - * - * The Initial Developer of the Original Code is - * Alex Fritze. - * Portions created by the Initial Developer are Copyright (C) 2005 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Alex Fritze (original author) - * Olli Pettay - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - -#include "nsCOMPtr.h" -#include "nsXTFElementWrapper.h" -#include "nsIXTFBindableElement.h" -#include "nsXTFWeakTearoff.h" -#include "nsIXTFBindableElementWrapper.h" -#include "nsXTFInterfaceAggregator.h" - -typedef nsXTFStyledElementWrapper nsXTFBindableElementWrapperBase; - -//////////////////////////////////////////////////////////////////////// -// nsXTFBindableElementWrapper class -class nsXTFBindableElementWrapper : public nsXTFBindableElementWrapperBase, - public nsIXTFBindableElementWrapper -{ -protected: - friend nsresult NS_NewXTFBindableElementWrapper(nsIXTFBindableElement* xtfElement, - nsINodeInfo* ni, - nsIContent** aResult); - - nsXTFBindableElementWrapper(nsINodeInfo* aNodeInfo, nsIXTFBindableElement* xtfElement); - virtual ~nsXTFBindableElementWrapper(); - nsresult Init(); -public: - // nsISupports interface - NS_DECL_ISUPPORTS_INHERITED - - // nsIXTFElementWrapperPrivate interface - virtual PRUint32 GetElementType() { return nsIXTFElement::ELEMENT_TYPE_BINDABLE; } - - // nsIXTFBindableElementWrapper interface - NS_DECL_NSIXTFBINDABLEELEMENTWRAPPER - - // nsIXTFStyledElementWrapper - NS_FORWARD_NSIXTFSTYLEDELEMENTWRAPPER(nsXTFStyledElementWrapper::) - - // nsIXTFElementWrapper interface - NS_FORWARD_NSIXTFELEMENTWRAPPER(nsXTFBindableElementWrapperBase::) - - NS_IMETHOD GetInterfaces(PRUint32 *count, nsIID * **array); -private: - virtual nsIXTFElement *GetXTFElement() const { return mXTFElement; } - - nsCOMPtr mXTFElement; -}; - -//---------------------------------------------------------------------- -// implementation: - -nsXTFBindableElementWrapper::nsXTFBindableElementWrapper(nsINodeInfo* aNodeInfo, - nsIXTFBindableElement* xtfElement) -: nsXTFBindableElementWrapperBase(aNodeInfo), mXTFElement(xtfElement) -{ -#ifdef DEBUG -// printf("nsXTFBindableElementWrapper CTOR\n"); -#endif - NS_ASSERTION(mXTFElement, "xtfElement is null"); -} - -nsresult -nsXTFBindableElementWrapper::Init() -{ - nsXTFBindableElementWrapperBase::Init(); - - // pass a weak wrapper (non base object ref-counted), so that - // our mXTFElement can safely addref/release. - nsISupports *weakWrapper = nsnull; - nsresult rv = NS_NewXTFWeakTearoff(NS_GET_IID(nsIXTFBindableElementWrapper), - (nsIXTFBindableElementWrapper*)this, - &weakWrapper); - if (!weakWrapper) { - NS_ERROR("could not construct weak wrapper"); - return rv; - } - - mXTFElement->OnCreated((nsIXTFBindableElementWrapper*)weakWrapper); - NS_RELEASE(weakWrapper); - - return NS_OK; -} - -NS_IMETHODIMP -nsXTFBindableElementWrapper::GetInterfaces(PRUint32 *count, nsIID * **array) -{ - *count = 0; - *array = nsnull; - return NS_OK; -} - -nsXTFBindableElementWrapper::~nsXTFBindableElementWrapper() -{ - mXTFElement->OnDestroyed(); - mXTFElement = nsnull; - -#ifdef DEBUG -// printf("nsXTFBindableElementWrapper DTOR\n"); -#endif -} - -nsresult -NS_NewXTFBindableElementWrapper(nsIXTFBindableElement* xtfElement, - nsINodeInfo* ni, - nsIContent** aResult) -{ - *aResult = nsnull; - - if (!xtfElement) { - NS_ERROR("can't construct an xtf wrapper without an xtf element"); - return NS_ERROR_INVALID_ARG; - } - - nsXTFBindableElementWrapper* result = new nsXTFBindableElementWrapper(ni, xtfElement); - if (!result) - return NS_ERROR_OUT_OF_MEMORY; - - NS_ADDREF(result); - - nsresult rv = result->Init(); - - if (NS_FAILED(rv)) { - NS_RELEASE(result); - return rv; - } - - *aResult = result; - return NS_OK; -} - -//---------------------------------------------------------------------- -// nsISupports implementation - -NS_IMPL_ADDREF_INHERITED(nsXTFBindableElementWrapper, nsXTFBindableElementWrapperBase) -NS_IMPL_RELEASE_INHERITED(nsXTFBindableElementWrapper, nsXTFBindableElementWrapperBase) - -NS_IMETHODIMP -nsXTFBindableElementWrapper::QueryInterface(REFNSIID aIID, void** aInstancePtr) -{ - nsresult rv; - - if (aIID.Equals(NS_GET_IID(nsIXTFElementWrapperPrivate))) { - *aInstancePtr = NS_STATIC_CAST(nsIXTFElementWrapperPrivate*, this); - NS_ADDREF_THIS(); - return NS_OK; - } - - if(aIID.Equals(NS_GET_IID(nsIXTFElementWrapper))) { - *aInstancePtr = - NS_STATIC_CAST(nsIXTFElementWrapper*, - NS_STATIC_CAST(nsXTFBindableElementWrapperBase*, this)); - - NS_ADDREF_THIS(); - return NS_OK; - } - - if (aIID.Equals(NS_GET_IID(nsIXTFBindableElementWrapper))) { - *aInstancePtr = NS_STATIC_CAST(nsIXTFBindableElementWrapper*, this); - NS_ADDREF_THIS(); - return NS_OK; - } - - if (aIID.Equals(NS_GET_IID(nsIXTFStyledElementWrapper))) { - *aInstancePtr = NS_STATIC_CAST(nsIXTFStyledElementWrapper*, this); - NS_ADDREF_THIS(); - return NS_OK; - } - - // Note, using the nsIClassInfo from nsXMLElement. - if (NS_SUCCEEDED(rv = nsXTFElementWrapperBase::QueryInterface(aIID, aInstancePtr))) { - return rv; - } - - // try to get get the interface from our wrapped element: - nsCOMPtr inner; - QueryInterfaceInner(aIID, getter_AddRefs(inner)); - - if (inner) { - rv = NS_NewXTFInterfaceAggregator(aIID, inner, - NS_STATIC_CAST(nsIContent*, this), - aInstancePtr); - - return rv; - } - - return NS_ERROR_NO_INTERFACE; -} - -//---------------------------------------------------------------------- -// nsIXTFBindableElementWrapper implementation: - -// XXX nothing yet - diff --git a/mozilla/content/xtf/src/nsXTFBindableElementWrapper.h b/mozilla/content/xtf/src/nsXTFBindableElementWrapper.h deleted file mode 100644 index 80ab20adf55..00000000000 --- a/mozilla/content/xtf/src/nsXTFBindableElementWrapper.h +++ /dev/null @@ -1,51 +0,0 @@ -/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ -/* ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla 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/MPL/ - * - * 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 the Mozilla XTF project. - * - * The Initial Developer of the Original Code is - * Olli Pettay. - * Portions created by the Initial Developer are Copyright (C) 2005 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Olli Pettay (original author) - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - -#ifndef __NS_XTFBINDABLEELEMENTWRAPPER_H__ -#define __NS_XTFBINDABLEELEMENTWRAPPER_H__ - -class nsIXTFBindableElement; -class nsIContent; -class nsINodeInfo; - -nsresult -NS_NewXTFBindableElementWrapper(nsIXTFBindableElement* xtfElement, - nsINodeInfo* ni, - nsIContent** aResult); - -#endif // __NS_XTFBINDABLEELEMENTWRAPPER_H__ diff --git a/mozilla/content/xtf/src/nsXTFGenericElementWrapper.cpp b/mozilla/content/xtf/src/nsXTFGenericElementWrapper.cpp deleted file mode 100644 index 5db4195c0e8..00000000000 --- a/mozilla/content/xtf/src/nsXTFGenericElementWrapper.cpp +++ /dev/null @@ -1,170 +0,0 @@ -/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ -/* ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla 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/MPL/ - * - * 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 the Mozilla XTF project. - * - * The Initial Developer of the Original Code is - * Alex Fritze. - * Portions created by the Initial Developer are Copyright (C) 2004 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Alex Fritze (original author) - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - -#include "nsCOMPtr.h" -#include "nsXTFElementWrapper.h" -#include "nsIXTFGenericElement.h" -#include "nsXTFWeakTearoff.h" -#include "nsIXTFGenericElementWrapper.h" - -typedef nsXTFElementWrapper nsXTFGenericElementWrapperBase; - -//////////////////////////////////////////////////////////////////////// -// nsXTFGenericElementWrapper class -class nsXTFGenericElementWrapper : public nsXTFGenericElementWrapperBase, - public nsIXTFGenericElementWrapper -{ -protected: - friend nsresult - NS_NewXTFGenericElementWrapper(nsIXTFGenericElement* xtfElement, - nsINodeInfo* ni, - nsIContent** aResult); - - nsXTFGenericElementWrapper(nsINodeInfo* aNodeInfo, nsIXTFGenericElement* xtfElement); - virtual ~nsXTFGenericElementWrapper(); - nsresult Init(); - -public: - // nsISupports interface - NS_DECL_ISUPPORTS_INHERITED - - // nsIXTFElementWrapperPrivate interface - virtual PRUint32 GetElementType() { return nsIXTFElement::ELEMENT_TYPE_GENERIC_ELEMENT; } - - // nsIXTFGenericElementWrapper interface - NS_DECL_NSIXTFGENERICELEMENTWRAPPER - - // nsIXTFElementWrapper interface - NS_FORWARD_NSIXTFELEMENTWRAPPER(nsXTFGenericElementWrapperBase::) - -private: - virtual nsIXTFElement *GetXTFElement() const { return mXTFElement; } - - nsCOMPtr mXTFElement; -}; - -//---------------------------------------------------------------------- -// implementation: - -nsXTFGenericElementWrapper::nsXTFGenericElementWrapper(nsINodeInfo* aNodeInfo, - nsIXTFGenericElement* xtfElement) - : nsXTFGenericElementWrapperBase(aNodeInfo), mXTFElement(xtfElement) -{ -#ifdef DEBUG -// printf("nsXTFGenericElementWrapper CTOR\n"); -#endif - NS_ASSERTION(mXTFElement, "xtfElement is null"); -} - -nsresult -nsXTFGenericElementWrapper::Init() -{ - nsXTFGenericElementWrapperBase::Init(); - - // pass a weak wrapper (non base object ref-counted), so that - // our mXTFElement can safely addref/release. - nsISupports *weakWrapper=nsnull; - NS_NewXTFWeakTearoff(NS_GET_IID(nsIXTFGenericElementWrapper), - (nsIXTFGenericElementWrapper*)this, - &weakWrapper); - if (!weakWrapper) { - NS_ERROR("could not construct weak wrapper"); - return NS_ERROR_FAILURE; - } - - mXTFElement->OnCreated((nsIXTFGenericElementWrapper*)weakWrapper); - weakWrapper->Release(); - - return NS_OK; -} - -nsXTFGenericElementWrapper::~nsXTFGenericElementWrapper() -{ - mXTFElement->OnDestroyed(); - mXTFElement = nsnull; - -#ifdef DEBUG -// printf("nsXTFGenericElementWrapper DTOR\n"); -#endif -} - -nsresult -NS_NewXTFGenericElementWrapper(nsIXTFGenericElement* xtfElement, - nsINodeInfo* ni, - nsIContent** aResult) -{ - *aResult = nsnull; - - if (!xtfElement) { - NS_ERROR("can't construct an xtf wrapper without an xtf element"); - return NS_ERROR_FAILURE; - } - - nsXTFGenericElementWrapper* result = new nsXTFGenericElementWrapper(ni, xtfElement); - if (!result) - return NS_ERROR_OUT_OF_MEMORY; - - NS_ADDREF(result); - - nsresult rv = result->Init(); - - if (NS_FAILED(rv)) { - NS_RELEASE(result); - return rv; - } - - *aResult = result; - return NS_OK; -} - -//---------------------------------------------------------------------- -// nsISupports implementation - - -NS_IMPL_ADDREF_INHERITED(nsXTFGenericElementWrapper, nsXTFGenericElementWrapperBase) -NS_IMPL_RELEASE_INHERITED(nsXTFGenericElementWrapper, nsXTFGenericElementWrapperBase) - -NS_INTERFACE_MAP_BEGIN(nsXTFGenericElementWrapper) - NS_INTERFACE_MAP_ENTRY(nsIXTFGenericElementWrapper) -NS_INTERFACE_MAP_END_INHERITING(nsXTFGenericElementWrapperBase) - -//---------------------------------------------------------------------- -// nsIXTFGenericElementWrapper implementation: - -// XXX nothing yet - diff --git a/mozilla/content/xtf/src/nsXTFGenericElementWrapper.h b/mozilla/content/xtf/src/nsXTFGenericElementWrapper.h deleted file mode 100644 index 851054cb623..00000000000 --- a/mozilla/content/xtf/src/nsXTFGenericElementWrapper.h +++ /dev/null @@ -1,51 +0,0 @@ -/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ -/* ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla 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/MPL/ - * - * 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 the Mozilla XTF project. - * - * The Initial Developer of the Original Code is - * Alex Fritze. - * Portions created by the Initial Developer are Copyright (C) 2004 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Alex Fritze (original author) - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - -#ifndef __NS_XTFGENERICELEMENTWRAPPER_H__ -#define __NS_XTFGENERICELEMENTWRAPPER_H__ - -class nsIXTFGenericElement; -class nsIContent; -class nsINodeInfo; - -nsresult -NS_NewXTFGenericElementWrapper(nsIXTFGenericElement* xtfElement, - nsINodeInfo* ni, - nsIContent** aResult); - -#endif // __NS_XTFGENERICELEMENTWRAPPER_H__ diff --git a/mozilla/content/xtf/src/nsXTFSVGVisualWrapper.cpp b/mozilla/content/xtf/src/nsXTFSVGVisualWrapper.cpp deleted file mode 100644 index 785caa38889..00000000000 --- a/mozilla/content/xtf/src/nsXTFSVGVisualWrapper.cpp +++ /dev/null @@ -1,176 +0,0 @@ -/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ -/* ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla 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/MPL/ - * - * 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 the Mozilla XTF project. - * - * The Initial Developer of the Original Code is - * Alex Fritze. - * Portions created by the Initial Developer are Copyright (C) 2004 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Alex Fritze (original author) - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - -#include "nsCOMPtr.h" -#include "nsXTFVisualWrapper.h" -#include "nsIXTFSVGVisual.h" -#include "nsXTFWeakTearoff.h" -#include "nsIXTFSVGVisualWrapper.h" - -typedef nsXTFVisualWrapper nsXTFSVGVisualWrapperBase; - -//////////////////////////////////////////////////////////////////////// -// nsXTFSVGVisualWrapper class -class nsXTFSVGVisualWrapper : public nsXTFSVGVisualWrapperBase, - public nsIXTFSVGVisualWrapper -{ -protected: - friend nsresult - NS_NewXTFSVGVisualWrapper(nsIXTFSVGVisual* xtfElement, - nsINodeInfo* ni, - nsIContent** aResult); - - nsXTFSVGVisualWrapper(nsINodeInfo* ni, nsIXTFSVGVisual* xtfElement); - virtual ~nsXTFSVGVisualWrapper(); - nsresult Init(); - -public: - // nsISupports interface - NS_DECL_ISUPPORTS_INHERITED - - // nsIXTFElementWrapperPrivate interface - virtual PRUint32 GetElementType() { return nsIXTFElement::ELEMENT_TYPE_SVG_VISUAL; } - - // nsIXTFSVGVisualWrapper interface - NS_DECL_NSIXTFSVGVISUALWRAPPER - - // nsIXTFStyledElementWrapper - NS_FORWARD_NSIXTFSTYLEDELEMENTWRAPPER(nsXTFStyledElementWrapper::) - - // nsIXTFElementWrapper interface - NS_FORWARD_NSIXTFELEMENTWRAPPER(nsXTFSVGVisualWrapperBase::) - -private: - virtual nsIXTFElement *GetXTFElement() const { return mXTFElement; } - virtual nsIXTFVisual *GetXTFVisual() const { return mXTFElement; } - - nsCOMPtr mXTFElement; -}; - -//---------------------------------------------------------------------- -// implementation: - -nsXTFSVGVisualWrapper::nsXTFSVGVisualWrapper(nsINodeInfo* aNodeInfo, - nsIXTFSVGVisual* xtfElement) - : nsXTFSVGVisualWrapperBase(aNodeInfo), mXTFElement(xtfElement) -{ -#ifdef DEBUG -// printf("nsXTFSVGVisualWrapper CTOR\n"); -#endif - NS_ASSERTION(mXTFElement, "xtfElement is null"); -} - -nsresult -nsXTFSVGVisualWrapper::Init() -{ - nsXTFSVGVisualWrapperBase::Init(); - - // pass a weak wrapper (non base object ref-counted), so that - // our mXTFElement can safely addref/release. - nsISupports *weakWrapper=nsnull; - NS_NewXTFWeakTearoff(NS_GET_IID(nsIXTFSVGVisualWrapper), - (nsIXTFSVGVisualWrapper*)this, - &weakWrapper); - if (!weakWrapper) { - NS_ERROR("could not construct weak wrapper"); - return NS_ERROR_FAILURE; - } - - mXTFElement->OnCreated((nsIXTFSVGVisualWrapper*)weakWrapper); - weakWrapper->Release(); - - return NS_OK; -} - -nsXTFSVGVisualWrapper::~nsXTFSVGVisualWrapper() -{ - mXTFElement->OnDestroyed(); - mXTFElement = nsnull; - -#ifdef DEBUG -// printf("nsXTFSVGVisualWrapper DTOR\n"); -#endif -} - -nsresult -NS_NewXTFSVGVisualWrapper(nsIXTFSVGVisual* xtfElement, - nsINodeInfo* ni, - nsIContent** aResult) -{ - *aResult = nsnull; - - if (!xtfElement) { - NS_ERROR("can't construct an xtf wrapper without an xtf element"); - return NS_ERROR_FAILURE; - } - - nsXTFSVGVisualWrapper* result = new nsXTFSVGVisualWrapper(ni, xtfElement); - if (!result) - return NS_ERROR_OUT_OF_MEMORY; - - NS_ADDREF(result); - - nsresult rv = result->Init(); - - if (NS_FAILED(rv)) { - NS_RELEASE(result); - return rv; - } - - *aResult = result; - return NS_OK; -} - -//---------------------------------------------------------------------- -// nsISupports implementation - - -NS_IMPL_ADDREF_INHERITED(nsXTFSVGVisualWrapper, nsXTFSVGVisualWrapperBase) -NS_IMPL_RELEASE_INHERITED(nsXTFSVGVisualWrapper, nsXTFSVGVisualWrapperBase) - -NS_INTERFACE_MAP_BEGIN(nsXTFSVGVisualWrapper) - NS_INTERFACE_MAP_ENTRY(nsIXTFSVGVisualWrapper) - NS_INTERFACE_MAP_ENTRY(nsIXTFStyledElementWrapper) -NS_INTERFACE_MAP_END_INHERITING(nsXTFSVGVisualWrapperBase) - -//---------------------------------------------------------------------- -// nsIXTFSVGVisualWrapper implementation: - -// XXX nothing yet - - diff --git a/mozilla/content/xtf/src/nsXTFSVGVisualWrapper.h b/mozilla/content/xtf/src/nsXTFSVGVisualWrapper.h deleted file mode 100644 index e082dd76aa5..00000000000 --- a/mozilla/content/xtf/src/nsXTFSVGVisualWrapper.h +++ /dev/null @@ -1,51 +0,0 @@ -/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ -/* ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla 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/MPL/ - * - * 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 the Mozilla XTF project. - * - * The Initial Developer of the Original Code is - * Alex Fritze. - * Portions created by the Initial Developer are Copyright (C) 2004 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Alex Fritze (original author) - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - -#ifndef __NS_XTFSVGVISUALWRAPPER_H__ -#define __NS_XTFSVGVISUALWRAPPER_H__ - -class nsIXTFSVGVisual; -class nsIContent; -class nsINodeInfo; - -nsresult -NS_NewXTFSVGVisualWrapper(nsIXTFSVGVisual* xtfElement, - nsINodeInfo* ni, - nsIContent** aResult); - -#endif // __NS_XTFSVGVISUALWRAPPER_H__ diff --git a/mozilla/content/xtf/src/nsXTFVisualWrapper.cpp b/mozilla/content/xtf/src/nsXTFVisualWrapper.cpp deleted file mode 100644 index f46e327938f..00000000000 --- a/mozilla/content/xtf/src/nsXTFVisualWrapper.cpp +++ /dev/null @@ -1,124 +0,0 @@ -/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ -/* ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla 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/MPL/ - * - * 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 the Mozilla XTF project. - * - * The Initial Developer of the Original Code is - * Alex Fritze. - * Portions created by the Initial Developer are Copyright (C) 2004 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Alex Fritze (original author) - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - -#include "nsCOMPtr.h" -#include "nsXTFVisualWrapper.h" -#include "nsISupportsArray.h" -#include "nsIPresShell.h" -#include "nsPresContext.h" -#include "nsIDocument.h" - -nsXTFVisualWrapper::nsXTFVisualWrapper(nsINodeInfo* aNodeInfo) - : nsXTFVisualWrapperBase(aNodeInfo) -{} - -//---------------------------------------------------------------------- -// nsISupports implementation - - -NS_IMPL_ADDREF_INHERITED(nsXTFVisualWrapper,nsXTFVisualWrapperBase) -NS_IMPL_RELEASE_INHERITED(nsXTFVisualWrapper,nsXTFVisualWrapperBase) - -NS_INTERFACE_MAP_BEGIN(nsXTFVisualWrapper) - NS_INTERFACE_MAP_ENTRY(nsIXTFVisualWrapperPrivate) -NS_INTERFACE_MAP_END_INHERITING(nsXTFVisualWrapperBase) - -//---------------------------------------------------------------------- -// nsIXTFVisualWrapperPrivate implementation: - -NS_IMETHODIMP -nsXTFVisualWrapper::CreateAnonymousContent(nsPresContext* aPresContext, - nsISupportsArray& aAnonymousItems) -{ - nsIDocument *doc = GetCurrentDoc(); - NS_ASSERTION(doc, "no document; cannot create anonymous content"); - - if (!mVisualContent) { - GetXTFVisual()->GetVisualContent(getter_AddRefs(mVisualContent)); - } - if (!mVisualContent) return NS_OK; // nothing to append - - // Check if we are creating content for the primary presShell - bool isPrimaryShell = - (aPresContext->PresShell() == doc->GetShellAt(0)); - - nsCOMPtr contentToAppend; - if (!isPrimaryShell) { - // The presShell we are generating content for is not a primary - // shell. In practice that means it means we are constructing - // content for printing. Instead of asking the xtf element to - // construct new visual content, we just clone the exisiting - // content. In this way, the xtf element only ever has to provide - // one visual content tree which it can dynamically manipulate. - mVisualContent->CloneNode(PR_TRUE, getter_AddRefs(contentToAppend)); - } - else - contentToAppend = mVisualContent; - - if (contentToAppend) - aAnonymousItems.AppendElement(contentToAppend); - - return NS_OK; -} - -void -nsXTFVisualWrapper::DidLayout() -{ - if (mNotificationMask & nsIXTFVisual::NOTIFY_DID_LAYOUT) - GetXTFVisual()->DidLayout(); -} - -void -nsXTFVisualWrapper::GetInsertionPoint(nsIDOMElement** insertionPoint) -{ - GetXTFVisual()->GetInsertionPoint(insertionPoint); -} - -PRBool -nsXTFVisualWrapper::ApplyDocumentStyleSheets() -{ - PRBool retval = PR_FALSE; - GetXTFVisual()->GetApplyDocumentStyleSheets(&retval); - return retval; -} - -nsresult -nsXTFVisualWrapper::Init() -{ - return nsXTFVisualWrapperBase::Init(); -} diff --git a/mozilla/content/xtf/src/nsXTFVisualWrapper.h b/mozilla/content/xtf/src/nsXTFVisualWrapper.h deleted file mode 100644 index df7efe67822..00000000000 --- a/mozilla/content/xtf/src/nsXTFVisualWrapper.h +++ /dev/null @@ -1,75 +0,0 @@ -/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ -/* ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla 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/MPL/ - * - * 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 the Mozilla XTF project. - * - * The Initial Developer of the Original Code is - * Alex Fritze. - * Portions created by the Initial Developer are Copyright (C) 2004 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Alex Fritze (original author) - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - -#ifndef __NS_XTFVISUALWRAPPER_H__ -#define __NS_XTFVISUALWRAPPER_H__ - -#include "nsXTFElementWrapper.h" -#include "nsIDOMElement.h" -#include "nsIXTFVisualWrapperPrivate.h" -#include "nsIXTFVisual.h" - -typedef nsXTFStyledElementWrapper nsXTFVisualWrapperBase; - -class nsXTFVisualWrapper : public nsXTFVisualWrapperBase, - public nsIXTFVisualWrapperPrivate -{ -protected: - nsXTFVisualWrapper(nsINodeInfo* aNodeInfo); - -public: - // nsISupports interface - NS_DECL_ISUPPORTS_INHERITED - - // nsIXTFVisualWrapperPrivate - NS_IMETHOD CreateAnonymousContent(nsPresContext* aPresContext, - nsISupportsArray& aAnonymousItems); - virtual void DidLayout(); - virtual void GetInsertionPoint(nsIDOMElement** insertionPoint); - virtual PRBool ApplyDocumentStyleSheets(); - - nsresult Init(); - -protected: - // to be implemented by subclasses: - virtual nsIXTFVisual *GetXTFVisual() const = 0; - - nsCOMPtr mVisualContent; -}; - -#endif // __NS_XTFVISUALWRAPPER_H__ diff --git a/mozilla/content/xtf/src/nsXTFXMLVisualWrapper.cpp b/mozilla/content/xtf/src/nsXTFXMLVisualWrapper.cpp deleted file mode 100644 index 88ae010f15e..00000000000 --- a/mozilla/content/xtf/src/nsXTFXMLVisualWrapper.cpp +++ /dev/null @@ -1,179 +0,0 @@ -/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ -/* ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla 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/MPL/ - * - * 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 the Mozilla XTF project. - * - * The Initial Developer of the Original Code is - * Alex Fritze. - * Portions created by the Initial Developer are Copyright (C) 2004 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Alex Fritze (original author) - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - -#include "nsCOMPtr.h" -#include "nsXTFVisualWrapper.h" -#include "nsIXTFXMLVisual.h" -#include "nsXTFWeakTearoff.h" -#include "nsIXTFXMLVisualWrapper.h" - -typedef nsXTFVisualWrapper nsXTFXMLVisualWrapperBase; - -//////////////////////////////////////////////////////////////////////// -// nsXTFXMLVisualWrapper class -class nsXTFXMLVisualWrapper : public nsXTFXMLVisualWrapperBase, - public nsIXTFXMLVisualWrapper -{ -protected: - friend nsresult - NS_NewXTFXMLVisualWrapper(nsIXTFXMLVisual* xtfElement, - nsINodeInfo* ni, - nsIContent** aResult); - - nsXTFXMLVisualWrapper(nsINodeInfo* ni, nsIXTFXMLVisual* xtfElement); - virtual ~nsXTFXMLVisualWrapper(); - nsresult Init(); - -public: - // nsISupports interface - NS_DECL_ISUPPORTS_INHERITED - - // nsIXTFElementWrapperPrivate interface - virtual PRUint32 GetElementType() { return nsIXTFElement::ELEMENT_TYPE_XML_VISUAL; } - - // nsIXTFXMLVisualWrapper interface - NS_DECL_NSIXTFXMLVISUALWRAPPER - - // nsIXTFStyledElementWrapper - NS_FORWARD_NSIXTFSTYLEDELEMENTWRAPPER(nsXTFStyledElementWrapper::) - - // nsIXTFElementWrapper interface - NS_FORWARD_NSIXTFELEMENTWRAPPER(nsXTFXMLVisualWrapperBase::) - -private: - virtual nsIXTFElement *GetXTFElement() const { return mXTFElement; } - virtual nsIXTFVisual *GetXTFVisual() const { return mXTFElement; } - - nsCOMPtr mXTFElement; -}; - -//---------------------------------------------------------------------- -// implementation: - -nsXTFXMLVisualWrapper::nsXTFXMLVisualWrapper(nsINodeInfo* aNodeInfo, - nsIXTFXMLVisual* xtfElement) - : nsXTFXMLVisualWrapperBase(aNodeInfo), mXTFElement(xtfElement) -{ -#ifdef DEBUG -// printf("nsXTFXMLVisualWrapper CTOR\n"); -#endif - NS_ASSERTION(mXTFElement, "xtfElement is null"); -} - -nsresult -nsXTFXMLVisualWrapper::Init() -{ - nsXTFXMLVisualWrapperBase::Init(); - - // pass a weak wrapper (non base object ref-counted), so that - // our mXTFElement can safely addref/release. - nsISupports *weakWrapper=nsnull; - NS_NewXTFWeakTearoff(NS_GET_IID(nsIXTFXMLVisualWrapper), - (nsIXTFXMLVisualWrapper*)this, - &weakWrapper); - if (!weakWrapper) { - NS_ERROR("could not construct weak wrapper"); - return NS_ERROR_FAILURE; - } - - mXTFElement->OnCreated((nsIXTFXMLVisualWrapper*)weakWrapper); - weakWrapper->Release(); - - return NS_OK; -} - -nsXTFXMLVisualWrapper::~nsXTFXMLVisualWrapper() -{ - mXTFElement->OnDestroyed(); - mXTFElement = nsnull; - -#ifdef DEBUG -// printf("nsXTFXMLVisualWrapper DTOR\n"); -#endif -} - -nsresult -NS_NewXTFXMLVisualWrapper(nsIXTFXMLVisual* xtfElement, - nsINodeInfo* ni, - nsIContent** aResult) -{ - *aResult = nsnull; - - if (!xtfElement) { - NS_ERROR("can't construct an xtf wrapper without an xtf element"); - return NS_ERROR_FAILURE; - } - - nsXTFXMLVisualWrapper* result = new nsXTFXMLVisualWrapper(ni, xtfElement); - if (!result) - return NS_ERROR_OUT_OF_MEMORY; - - NS_ADDREF(result); - - nsresult rv = result->Init(); - - if (NS_FAILED(rv)) { - NS_RELEASE(result); - return rv; - } - - *aResult = result; - return NS_OK; -} - -//---------------------------------------------------------------------- -// nsISupports implementation - - -NS_IMPL_ADDREF_INHERITED(nsXTFXMLVisualWrapper,nsXTFXMLVisualWrapperBase) -NS_IMPL_RELEASE_INHERITED(nsXTFXMLVisualWrapper,nsXTFXMLVisualWrapperBase) - -NS_INTERFACE_MAP_BEGIN(nsXTFXMLVisualWrapper) - NS_INTERFACE_MAP_ENTRY(nsIXTFXMLVisualWrapper) - NS_INTERFACE_MAP_ENTRY(nsIXTFStyledElementWrapper) -NS_INTERFACE_MAP_END_INHERITING(nsXTFXMLVisualWrapperBase) - -//---------------------------------------------------------------------- -// nsIXTFXMLVisualWrapper implementation: - -// XXX nothing yet - - - - - diff --git a/mozilla/content/xtf/src/nsXTFXMLVisualWrapper.h b/mozilla/content/xtf/src/nsXTFXMLVisualWrapper.h deleted file mode 100644 index 0f564ca027c..00000000000 --- a/mozilla/content/xtf/src/nsXTFXMLVisualWrapper.h +++ /dev/null @@ -1,51 +0,0 @@ -/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ -/* ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla 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/MPL/ - * - * 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 the Mozilla XTF project. - * - * The Initial Developer of the Original Code is - * Alex Fritze. - * Portions created by the Initial Developer are Copyright (C) 2004 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Alex Fritze (original author) - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - -#ifndef __NS_XTFXMLVISUALWRAPPER_H__ -#define __NS_XTFXMLVISUALWRAPPER_H__ - -class nsIXTFXMLVisual; -class nsIContent; -class nsINodeInfo; - -nsresult -NS_NewXTFXMLVisualWrapper(nsIXTFXMLVisual* xtfElement, - nsINodeInfo* ni, - nsIContent** aResult); - -#endif // __NS_XTFXMLVISUALWRAPPER_H__ diff --git a/mozilla/content/xtf/src/nsXTFXULVisualWrapper.cpp b/mozilla/content/xtf/src/nsXTFXULVisualWrapper.cpp deleted file mode 100644 index 5f5f8405025..00000000000 --- a/mozilla/content/xtf/src/nsXTFXULVisualWrapper.cpp +++ /dev/null @@ -1,174 +0,0 @@ -/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ -/* ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla 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/MPL/ - * - * 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 the Mozilla XTF project. - * - * The Initial Developer of the Original Code is - * Alex Fritze. - * Portions created by the Initial Developer are Copyright (C) 2004 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Alex Fritze (original author) - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - -#include "nsCOMPtr.h" -#include "nsXTFVisualWrapper.h" -#include "nsIXTFXULVisual.h" -#include "nsXTFWeakTearoff.h" -#include "nsIXTFXULVisualWrapper.h" - -typedef nsXTFVisualWrapper nsXTFXULVisualWrapperBase; - -//////////////////////////////////////////////////////////////////////// -// nsXTFXULVisualWrapper class -class nsXTFXULVisualWrapper : public nsXTFXULVisualWrapperBase, - public nsIXTFXULVisualWrapper -{ -protected: - friend nsresult - NS_NewXTFXULVisualWrapper(nsIXTFXULVisual* xtfElement, - nsINodeInfo* ni, - nsIContent** aResult); - - nsXTFXULVisualWrapper(nsINodeInfo* ni, nsIXTFXULVisual* xtfElement); - virtual ~nsXTFXULVisualWrapper(); - nsresult Init(); - -public: - // nsISupports interface - NS_DECL_ISUPPORTS_INHERITED - - // nsIXTFElementWrapperPrivate interface - virtual PRUint32 GetElementType() { return nsIXTFElement::ELEMENT_TYPE_XUL_VISUAL; } - - // nsIXTFXULVisualWrapper interface - NS_DECL_NSIXTFXULVISUALWRAPPER - - // nsIXTFStyledElementWrapper - NS_FORWARD_NSIXTFSTYLEDELEMENTWRAPPER(nsXTFStyledElementWrapper::) - - // nsIXTFElementWrapper interface - NS_FORWARD_NSIXTFELEMENTWRAPPER(nsXTFXULVisualWrapperBase::) - -private: - virtual nsIXTFElement *GetXTFElement() const { return mXTFElement; } - virtual nsIXTFVisual *GetXTFVisual() const { return mXTFElement; } - - nsCOMPtr mXTFElement; -}; - -//---------------------------------------------------------------------- -// implementation: - -nsXTFXULVisualWrapper::nsXTFXULVisualWrapper(nsINodeInfo* aNodeInfo, - nsIXTFXULVisual* xtfElement) - : nsXTFXULVisualWrapperBase(aNodeInfo), mXTFElement(xtfElement) -{ -#ifdef DEBUG -// printf("nsXTFXULVisualWrapper CTOR\n"); -#endif - NS_ASSERTION(mXTFElement, "xtfElement is null"); -} - -nsresult -nsXTFXULVisualWrapper::Init() -{ - nsXTFXULVisualWrapperBase::Init(); - - // pass a weak wrapper (non base object ref-counted), so that - // our mXTFElement can safely addref/release. - nsISupports *weakWrapper=nsnull; - NS_NewXTFWeakTearoff(NS_GET_IID(nsIXTFXULVisualWrapper), - (nsIXTFXULVisualWrapper*)this, - &weakWrapper); - if (!weakWrapper) { - NS_ERROR("could not construct weak wrapper"); - return NS_ERROR_FAILURE; - } - - mXTFElement->OnCreated((nsIXTFXULVisualWrapper*)weakWrapper); - weakWrapper->Release(); - - return NS_OK; -} - -nsXTFXULVisualWrapper::~nsXTFXULVisualWrapper() -{ - mXTFElement->OnDestroyed(); - mXTFElement = nsnull; - -#ifdef DEBUG -// printf("nsXTFXULVisualWrapper DTOR\n"); -#endif -} - -nsresult -NS_NewXTFXULVisualWrapper(nsIXTFXULVisual* xtfElement, - nsINodeInfo* ni, - nsIContent** aResult) -{ - *aResult = nsnull; - - if (!xtfElement) { - NS_ERROR("can't construct an xtf wrapper without an xtf element"); - return NS_ERROR_FAILURE; - } - - nsXTFXULVisualWrapper* result = new nsXTFXULVisualWrapper(ni, xtfElement); - if (!result) - return NS_ERROR_OUT_OF_MEMORY; - - NS_ADDREF(result); - - nsresult rv = result->Init(); - - if (NS_FAILED(rv)) { - NS_RELEASE(result); - return rv; - } - - *aResult = result; - return NS_OK; -} - -//---------------------------------------------------------------------- -// nsISupports implementation - - -NS_IMPL_ADDREF_INHERITED(nsXTFXULVisualWrapper,nsXTFXULVisualWrapperBase) -NS_IMPL_RELEASE_INHERITED(nsXTFXULVisualWrapper,nsXTFXULVisualWrapperBase) - -NS_INTERFACE_MAP_BEGIN(nsXTFXULVisualWrapper) - NS_INTERFACE_MAP_ENTRY(nsIXTFXULVisualWrapper) - NS_INTERFACE_MAP_ENTRY(nsIXTFStyledElementWrapper) -NS_INTERFACE_MAP_END_INHERITING(nsXTFXULVisualWrapperBase) - -//---------------------------------------------------------------------- -// nsIXTFXULVisualWrapper implementation: - -// XXX nothing yet diff --git a/mozilla/content/xtf/src/nsXTFXULVisualWrapper.h b/mozilla/content/xtf/src/nsXTFXULVisualWrapper.h deleted file mode 100644 index 0631bd71376..00000000000 --- a/mozilla/content/xtf/src/nsXTFXULVisualWrapper.h +++ /dev/null @@ -1,51 +0,0 @@ -/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ -/* ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla 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/MPL/ - * - * 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 the Mozilla XTF project. - * - * The Initial Developer of the Original Code is - * Alex Fritze. - * Portions created by the Initial Developer are Copyright (C) 2004 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Alex Fritze (original author) - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - -#ifndef __NS_XTFXULVISUALWRAPPER_H__ -#define __NS_XTFXULVISUALWRAPPER_H__ - -class nsIXTFXULVisual; -class nsIContent; -class nsINodeInfo; - -nsresult -NS_NewXTFXULVisualWrapper(nsIXTFXULVisual* xtfElement, - nsINodeInfo* ni, - nsIContent** aResult); - -#endif // __NS_XTFXULVISUALWRAPPER_H__ diff --git a/mozilla/layout/xtf/Makefile.in b/mozilla/layout/xtf/Makefile.in deleted file mode 100644 index 23f8d14c92b..00000000000 --- a/mozilla/layout/xtf/Makefile.in +++ /dev/null @@ -1,48 +0,0 @@ -# ***** BEGIN LICENSE BLOCK ***** -# Version: MPL 1.1/GPL 2.0/LGPL 2.1 -# -# The contents of this file are subject to the Mozilla 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/MPL/ -# -# 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 the Mozilla XTF project. -# -# The Initial Developer of the Original Code is -# Alex Fritze. -# Portions created by the Initial Developer are Copyright (C) 2004 -# the Initial Developer. All Rights Reserved. -# -# Contributor(s): -# Alex Fritze (original author) -# -# Alternatively, the contents of this file may be used under the terms of -# either the GNU General Public License Version 2 or later (the "GPL"), or -# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), -# in which case the provisions of the GPL or the LGPL are applicable instead -# of those above. If you wish to allow use of your version of this file only -# under the terms of either the GPL or the LGPL, and not to allow others to -# use your version of this file under the terms of the MPL, indicate your -# decision by deleting the provisions above and replace them with the notice -# and other provisions required by the GPL or the LGPL. If you do not delete -# the provisions above, a recipient may use your version of this file under -# the terms of any one of the MPL, the GPL or the LGPL. -# -# ***** END LICENSE BLOCK ***** - -DEPTH = ../.. -topsrcdir = @top_srcdir@ -srcdir = @srcdir@ -VPATH = @srcdir@ - -include $(DEPTH)/config/autoconf.mk - -DIRS = src - -include $(topsrcdir)/config/rules.mk - diff --git a/mozilla/layout/xtf/src/Makefile.in b/mozilla/layout/xtf/src/Makefile.in deleted file mode 100644 index 829108891dd..00000000000 --- a/mozilla/layout/xtf/src/Makefile.in +++ /dev/null @@ -1,87 +0,0 @@ -# ***** BEGIN LICENSE BLOCK ***** -# Version: MPL 1.1/GPL 2.0/LGPL 2.1 -# -# The contents of this file are subject to the Mozilla 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/MPL/ -# -# 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 the Mozilla XTF project. -# -# The Initial Developer of the Original Code is -# Alex Fritze. -# Portions created by the Initial Developer are Copyright (C) 2004 -# the Initial Developer. All Rights Reserved. -# -# Contributor(s): -# Alex Fritze (original author) -# -# Alternatively, the contents of this file may be used under the terms of -# either the GNU General Public License Version 2 or later (the "GPL"), or -# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), -# in which case the provisions of the GPL or the LGPL are applicable instead -# of those above. If you wish to allow use of your version of this file only -# under the terms of either the GPL or the LGPL, and not to allow others to -# use your version of this file under the terms of the MPL, indicate your -# decision by deleting the provisions above and replace them with the notice -# and other provisions required by the GPL or the LGPL. If you do not delete -# the provisions above, a recipient may use your version of this file under -# the terms of any one of the MPL, the GPL or the LGPL. -# -# ***** END LICENSE BLOCK ***** - -DEPTH = ../../.. -topsrcdir = @top_srcdir@ -srcdir = @srcdir@ -VPATH = @srcdir@ - -include $(DEPTH)/config/autoconf.mk - - -MODULE = layout -LIBRARY_NAME = gkxtfbase_s -LIBXUL_LIBRARY = 1 - -REQUIRES = xpcom \ - string \ - content \ - gfx \ - widget \ - dom \ - locale \ - necko \ - webshell \ - $(NULL) - -CPPSRCS = \ - nsXTFXULDisplayFrame.cpp \ - nsXTFXMLDisplayFrame.cpp \ - nsXTFFrameUtils.cpp \ - $(NULL) - -ifdef MOZ_SVG -CPPSRCS += nsXTFSVGDisplayFrame.cpp -endif - - -include $(topsrcdir)/config/config.mk - -# we don't want the shared lib, but we want to force the creation of a static lib. -FORCE_STATIC_LIB = 1 - -include $(topsrcdir)/config/rules.mk - -LOCAL_INCLUDES = \ - -I$(srcdir)/../../generic \ - -I$(srcdir)/../../xul/base/src \ - $(NULL) -ifdef MOZ_SVG -LOCAL_INCLUDES += -I$(srcdir)/../../svg/base/src -endif - -DEFINES += -D_IMPL_NS_LAYOUT diff --git a/mozilla/layout/xtf/src/nsXTFFrameUtils.cpp b/mozilla/layout/xtf/src/nsXTFFrameUtils.cpp deleted file mode 100644 index cb889c873be..00000000000 --- a/mozilla/layout/xtf/src/nsXTFFrameUtils.cpp +++ /dev/null @@ -1,72 +0,0 @@ -/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ -/* ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla 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/MPL/ - * - * 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 the Mozilla XTF project. - * - * The Initial Developer of the Original Code is - * IBM Corporation. - * Portions created by the Initial Developer are Copyright (C) 2004 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Brian Ryner - * Alex Fritze - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - -#include "nsXTFFrameUtils.h" -#include "nsIFrame.h" -#include "nsIXTFVisualWrapperPrivate.h" -#include "nsIDOMElement.h" - -nsIFrame* -nsXTFFrameUtils::GetContentInsertionFrame(nsIFrame *aFrame) -{ - nsCOMPtr content = - nsXTFFrameUtils::GetContentInsertionNode(aFrame); - - NS_ASSERTION(content, "element not implementing nsIContent!?"); - - return aFrame->GetPresContext()->PresShell()->GetPrimaryFrameFor(content); -} - - -already_AddRefed -nsXTFFrameUtils::GetContentInsertionNode(nsIFrame *aFrame) -{ - nsCOMPtr visual = - do_QueryInterface(aFrame->GetContent()); - NS_ASSERTION(visual, "huh? associated content not implementing nsIXTFVisualWrapperPrivate"); - - nsCOMPtr childInsertionPoint; - visual->GetInsertionPoint(getter_AddRefs(childInsertionPoint)); - if (!childInsertionPoint) return nsnull; // we don't take visual child content - - nsIContent *content = nsnull; - CallQueryInterface(childInsertionPoint, &content); - return content; -} - diff --git a/mozilla/layout/xtf/src/nsXTFFrameUtils.h b/mozilla/layout/xtf/src/nsXTFFrameUtils.h deleted file mode 100644 index f0351ae4f30..00000000000 --- a/mozilla/layout/xtf/src/nsXTFFrameUtils.h +++ /dev/null @@ -1,58 +0,0 @@ -/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ -/* ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla 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/MPL/ - * - * 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 the Mozilla XTF project. - * - * The Initial Developer of the Original Code is - * IBM Corporation. - * Portions created by the Initial Developer are Copyright (C) 2004 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Brian Ryner - * Alex Fritze - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - -#ifndef nsXTFFrameUtils_h_ -#define nsXTFFrameUtils_h_ - -#include "nsIContent.h" -#include "nsCOMPtr.h" - -class nsIFrame; - -class nsXTFFrameUtils -{ -public: - - static NS_HIDDEN_(already_AddRefed) - GetContentInsertionNode(nsIFrame *aFrame); - - static NS_HIDDEN_(nsIFrame*) GetContentInsertionFrame(nsIFrame *aFrame); -}; - -#endif diff --git a/mozilla/layout/xtf/src/nsXTFSVGDisplayFrame.cpp b/mozilla/layout/xtf/src/nsXTFSVGDisplayFrame.cpp deleted file mode 100644 index fb343477829..00000000000 --- a/mozilla/layout/xtf/src/nsXTFSVGDisplayFrame.cpp +++ /dev/null @@ -1,103 +0,0 @@ -/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ -/* ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla 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/MPL/ - * - * 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 the Mozilla XTF project. - * - * The Initial Developer of the Original Code is - * Alex Fritze. - * Portions created by the Initial Developer are Copyright (C) 2004 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Alex Fritze (original author) - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - -#include "nsCOMPtr.h" -#include "nsContainerFrame.h" -#include "nsPresContext.h" -#include "nsISupportsArray.h" -#include "nsSVGGenericContainerFrame.h" -#include "nsIXTFVisualWrapperPrivate.h" -#include "nsIAnonymousContentCreator.h" - -typedef nsSVGGenericContainerFrame nsXTFSVGDisplayFrameBase; - -class nsXTFSVGDisplayFrame : public nsXTFSVGDisplayFrameBase, - public nsIAnonymousContentCreator -{ -public: - nsXTFSVGDisplayFrame(nsStyleContext* aContext) : nsXTFSVGDisplayFrameBase(aContext) {} - - friend nsIFrame* - NS_NewXTFSVGDisplayFrame(nsIPresShell* aPresShell, nsIContent* aContent, nsStyleContext* aContext); - // nsISupports interface: - NS_IMETHOD QueryInterface(const nsIID& aIID, void** aInstancePtr); -private: - NS_IMETHOD_(nsrefcnt) AddRef() { return NS_OK; } - NS_IMETHOD_(nsrefcnt) Release() { return NS_OK; } - -protected: - // nsIAnonymousContentCreator - NS_IMETHOD CreateAnonymousContent(nsPresContext* aPresContext, - nsISupportsArray& aAnonymousItems); - - // If the creator doesn't want to create special frame for frame hierarchy - // then it should null out the style content arg and return NS_ERROR_FAILURE - NS_IMETHOD CreateFrameFor(nsPresContext* aPresContext, - nsIContent * aContent, - nsIFrame** aFrame) { - if (aFrame) *aFrame = nsnull; return NS_ERROR_FAILURE; } -}; - -//---------------------------------------------------------------------- -// Implementation - -nsIFrame* -NS_NewXTFSVGDisplayFrame(nsIPresShell* aPresShell, nsIContent* aContent, nsStyleContext* aContext) -{ - return new (aPresShell) nsXTFSVGDisplayFrame(aContext); -} - -//---------------------------------------------------------------------- -// nsISupports methods - -NS_INTERFACE_MAP_BEGIN(nsXTFSVGDisplayFrame) - NS_INTERFACE_MAP_ENTRY(nsIAnonymousContentCreator) -NS_INTERFACE_MAP_END_INHERITING(nsXTFSVGDisplayFrameBase) - - -//---------------------------------------------------------------------- -// nsIAnonymousContentCreator methods: - -NS_IMETHODIMP -nsXTFSVGDisplayFrame::CreateAnonymousContent(nsPresContext* aPresContext, - nsISupportsArray& aAnonymousItems) -{ - nsCOMPtr visual = do_QueryInterface(mContent); - NS_ASSERTION(visual, "huh? associated content not implementing nsIXTFVisualWrapperPrivate"); - return visual->CreateAnonymousContent(aPresContext, aAnonymousItems); -} diff --git a/mozilla/layout/xtf/src/nsXTFXMLDisplayFrame.cpp b/mozilla/layout/xtf/src/nsXTFXMLDisplayFrame.cpp deleted file mode 100644 index 1bb15d5a27c..00000000000 --- a/mozilla/layout/xtf/src/nsXTFXMLDisplayFrame.cpp +++ /dev/null @@ -1,237 +0,0 @@ -/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ -/* ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla 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/MPL/ - * - * 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 the Mozilla XTF project. - * - * The Initial Developer of the Original Code is - * Alex Fritze. - * Portions created by the Initial Developer are Copyright (C) 2004 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Alex Fritze (original author) - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - -#include "nsCOMPtr.h" -#include "nsStyleSet.h" -#include "nsPresContext.h" -#include "nsIPresShell.h" -#include "nsBlockFrame.h" -#include "nsInlineFrame.h" -#include "nsIXTFXMLVisual.h" -#include "nsIDOMElement.h" -#include "nsIXTFVisualWrapperPrivate.h" -#include "nsIAnonymousContentCreator.h" -#include "nsXTFFrameUtils.h" - -//////////////////////////////////////////////////////////////////////// -// nsXTFXMLBlockDisplayFrame - -nsIFrame* NS_NewXTFXMLDisplayFrame(nsIPresShell* aPresShell, nsStyleContext* aContext, PRBool isBlock); - -typedef nsBlockFrame nsXTFXMLBlockDisplayFrameBase; - -class nsXTFXMLBlockDisplayFrame : public nsXTFXMLBlockDisplayFrameBase, - public nsIAnonymousContentCreator -{ -public: - nsXTFXMLBlockDisplayFrame(nsStyleContext* aContext) - : nsXTFXMLBlockDisplayFrameBase(aContext) {} - - // nsISupports interface: - NS_IMETHOD QueryInterface(const nsIID& aIID, void** aInstancePtr); -private: - NS_IMETHOD_(nsrefcnt) AddRef() { return NS_OK; } - NS_IMETHOD_(nsrefcnt) Release() { return NS_OK; } - -public: - // nsIFrame - virtual nsIFrame* GetContentInsertionFrame(); - virtual already_AddRefed GetContentInsertionNode(); - - NS_IMETHOD DidReflow(nsPresContext* aPresContext, - const nsHTMLReflowState* aReflowState, - nsDidReflowStatus aStatus); - - // nsIAnonymousContentCreator - NS_IMETHOD CreateAnonymousContent(nsPresContext* aPresContext, - nsISupportsArray& aAnonymousItems); - - // If the creator doesn't want to create special frame for frame hierarchy - // then it should null out the style content arg and return NS_ERROR_FAILURE - NS_IMETHOD CreateFrameFor(nsPresContext* aPresContext, - nsIContent * aContent, - nsIFrame** aFrame) { - if (aFrame) *aFrame = nsnull; return NS_ERROR_FAILURE; } -}; - -//---------------------------------------------------------------------- -// nsISupports methods - -NS_INTERFACE_MAP_BEGIN(nsXTFXMLBlockDisplayFrame) - NS_INTERFACE_MAP_ENTRY(nsIAnonymousContentCreator) -NS_INTERFACE_MAP_END_INHERITING(nsXTFXMLBlockDisplayFrameBase) - -//---------------------------------------------------------------------- -// nsIFrame methods - -nsIFrame* -nsXTFXMLBlockDisplayFrame::GetContentInsertionFrame() -{ - return nsXTFFrameUtils::GetContentInsertionFrame(this); -} - - -already_AddRefed -nsXTFXMLBlockDisplayFrame::GetContentInsertionNode() -{ - return nsXTFFrameUtils::GetContentInsertionNode(this); -} - -NS_IMETHODIMP -nsXTFXMLBlockDisplayFrame::DidReflow(nsPresContext* aPresContext, - const nsHTMLReflowState* aReflowState, - nsDidReflowStatus aStatus) -{ - nsresult rv = nsXTFXMLBlockDisplayFrameBase::DidReflow(aPresContext, aReflowState, aStatus); - nsCOMPtr visual = do_QueryInterface(mContent); - NS_ASSERTION(visual, "huh? associated content not implementing nsIXTFVisualWrapperPrivate"); - visual->DidLayout(); - - return rv; -} - -//---------------------------------------------------------------------- -// nsIAnonymousContentCreator methods: - -NS_IMETHODIMP -nsXTFXMLBlockDisplayFrame::CreateAnonymousContent(nsPresContext* aPresContext, - nsISupportsArray& aAnonymousItems) -{ - nsCOMPtr visual = do_QueryInterface(mContent); - NS_ASSERTION(visual, "huh? associated content not implementing nsIXTFVisualWrapperPrivate"); - return visual->CreateAnonymousContent(aPresContext, aAnonymousItems); -} - -//////////////////////////////////////////////////////////////////////// -// nsXTFXMLInlineDisplayFrame - -typedef nsInlineFrame nsXTFXMLInlineDisplayFrameBase; - -class nsXTFXMLInlineDisplayFrame : public nsXTFXMLInlineDisplayFrameBase, - public nsIAnonymousContentCreator -{ -public: - nsXTFXMLInlineDisplayFrame(nsStyleContext* aContext) - : nsXTFXMLInlineDisplayFrameBase(aContext) {} - - // nsISupports interface: - NS_IMETHOD QueryInterface(const nsIID& aIID, void** aInstancePtr); -private: - NS_IMETHOD_(nsrefcnt) AddRef() { return NS_OK; } - NS_IMETHOD_(nsrefcnt) Release() { return NS_OK; } - -public: - // nsIFrame - virtual nsIFrame* GetContentInsertionFrame(); - virtual already_AddRefed GetContentInsertionNode(); - - NS_IMETHOD DidReflow(nsPresContext* aPresContext, - const nsHTMLReflowState* aReflowState, - nsDidReflowStatus aStatus); - - // nsIAnonymousContentCreator - NS_IMETHOD CreateAnonymousContent(nsPresContext* aPresContext, - nsISupportsArray& aAnonymousItems); - - // If the creator doesn't want to create special frame for frame hierarchy - // then it should null out the style content arg and return NS_ERROR_FAILURE - NS_IMETHOD CreateFrameFor(nsPresContext* aPresContext, - nsIContent * aContent, - nsIFrame** aFrame) { - if (aFrame) *aFrame = nsnull; return NS_ERROR_FAILURE; } -}; - -//---------------------------------------------------------------------- -// nsISupports methods - -NS_INTERFACE_MAP_BEGIN(nsXTFXMLInlineDisplayFrame) - NS_INTERFACE_MAP_ENTRY(nsIAnonymousContentCreator) -NS_INTERFACE_MAP_END_INHERITING(nsXTFXMLInlineDisplayFrameBase) - -//---------------------------------------------------------------------- -// nsIFrame methods - -nsIFrame* -nsXTFXMLInlineDisplayFrame::GetContentInsertionFrame() -{ - return nsXTFFrameUtils::GetContentInsertionFrame(this); -} - -already_AddRefed -nsXTFXMLInlineDisplayFrame::GetContentInsertionNode() -{ - return nsXTFFrameUtils::GetContentInsertionNode(this); -} - -NS_IMETHODIMP -nsXTFXMLInlineDisplayFrame::DidReflow(nsPresContext* aPresContext, - const nsHTMLReflowState* aReflowState, - nsDidReflowStatus aStatus) -{ - nsresult rv = nsXTFXMLInlineDisplayFrameBase::DidReflow(aPresContext, aReflowState, aStatus); - nsCOMPtr visual = do_QueryInterface(mContent); - NS_ASSERTION(visual, "huh? associated content not implementing nsIXTFVisualWrapperPrivate"); - visual->DidLayout(); - - return rv; -} - -//---------------------------------------------------------------------- -// nsIAnonymousContentCreator methods: - -NS_IMETHODIMP -nsXTFXMLInlineDisplayFrame::CreateAnonymousContent(nsPresContext* aPresContext, - nsISupportsArray& aAnonymousItems) -{ - nsCOMPtr visual = do_QueryInterface(mContent); - NS_ASSERTION(visual, "huh? associated content not implementing nsIXTFVisualWrapperPrivate"); - return visual->CreateAnonymousContent(aPresContext, aAnonymousItems); -} - - -//////////////////////////////////////////////////////////////////////// -// Construction API - -nsIFrame* -NS_NewXTFXMLDisplayFrame(nsIPresShell* aPresShell, nsStyleContext* aContext, PRBool isBlock) -{ - if (isBlock) - return new (aPresShell) nsXTFXMLBlockDisplayFrame(aContext); - else - return new (aPresShell) nsXTFXMLInlineDisplayFrame(aContext); -} diff --git a/mozilla/layout/xtf/src/nsXTFXULDisplayFrame.cpp b/mozilla/layout/xtf/src/nsXTFXULDisplayFrame.cpp deleted file mode 100644 index eef76b31686..00000000000 --- a/mozilla/layout/xtf/src/nsXTFXULDisplayFrame.cpp +++ /dev/null @@ -1,136 +0,0 @@ -/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ -/* ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla 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/MPL/ - * - * 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 the Mozilla XTF project. - * - * The Initial Developer of the Original Code is - * Alex Fritze. - * Portions created by the Initial Developer are Copyright (C) 2004 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Alex Fritze (original author) - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - -#include "nsBoxFrame.h" -#include "nsIDOMElement.h" -#include "nsIXTFVisualWrapperPrivate.h" -#include "nsIAnonymousContentCreator.h" -#include "nsXTFFrameUtils.h" - -typedef nsBoxFrame nsXTFXULDisplayFrameBase; - -class nsXTFXULDisplayFrame : public nsXTFXULDisplayFrameBase, - public nsIAnonymousContentCreator -{ -public: - friend nsIFrame* NS_NewXTFXULDisplayFrame(nsIPresShell* aPresShell, nsStyleContext* aContext); - - nsXTFXULDisplayFrame(nsIPresShell* aPresShell, nsStyleContext* aContext); - - // nsISupports interface: - NS_IMETHOD QueryInterface(const nsIID& aIID, void** aInstancePtr); -private: - NS_IMETHOD_(nsrefcnt) AddRef() { return NS_OK; } - NS_IMETHOD_(nsrefcnt) Release() { return NS_OK; } - -public: - // nsIFrame - virtual nsIFrame* GetContentInsertionFrame(); - virtual already_AddRefed GetContentInsertionNode(); - - NS_IMETHOD EndLayout(nsBoxLayoutState& aState); - - // nsIAnonymousContentCreator - NS_IMETHOD CreateAnonymousContent(nsPresContext* aPresContext, - nsISupportsArray& aAnonymousItems); - - // If the creator doesn't want to create special frame for frame hierarchy - // then it should null out the style content arg and return NS_ERROR_FAILURE - NS_IMETHOD CreateFrameFor(nsPresContext* aPresContext, - nsIContent * aContent, - nsIFrame** aFrame) { - if (aFrame) *aFrame = nsnull; return NS_ERROR_FAILURE; } -}; - -//---------------------------------------------------------------------- -// Implementation - -nsIFrame* -NS_NewXTFXULDisplayFrame(nsIPresShell* aPresShell, nsStyleContext* aContext) -{ - return new (aPresShell) nsXTFXULDisplayFrame(aPresShell, aContext); -} - -nsXTFXULDisplayFrame::nsXTFXULDisplayFrame(nsIPresShell* aPresShell, nsStyleContext* aContext) - : nsXTFXULDisplayFrameBase(aPresShell, aContext, PR_FALSE, nsnull) -{} - -//---------------------------------------------------------------------- -// nsISupports methods - -NS_INTERFACE_MAP_BEGIN(nsXTFXULDisplayFrame) - NS_INTERFACE_MAP_ENTRY(nsIAnonymousContentCreator) -NS_INTERFACE_MAP_END_INHERITING(nsXTFXULDisplayFrameBase) - -//---------------------------------------------------------------------- -// nsIFrame mehthods - -nsIFrame* -nsXTFXULDisplayFrame::GetContentInsertionFrame() -{ - return nsXTFFrameUtils::GetContentInsertionFrame(this); -} - -already_AddRefed -nsXTFXULDisplayFrame::GetContentInsertionNode() -{ - return nsXTFFrameUtils::GetContentInsertionNode(this); -} - -NS_IMETHODIMP -nsXTFXULDisplayFrame::EndLayout(nsBoxLayoutState& aState) -{ - nsresult rv = nsXTFXULDisplayFrameBase::EndLayout(aState); - nsCOMPtr visual = do_QueryInterface(mContent); - NS_ASSERTION(visual, "huh? associated content not implementing nsIXTFVisualWrapperPrivate"); - visual->DidLayout(); - - return rv; -} - -//---------------------------------------------------------------------- -// nsIAnonymousContentCreator methods: - -NS_IMETHODIMP -nsXTFXULDisplayFrame::CreateAnonymousContent(nsPresContext* aPresContext, - nsISupportsArray& aAnonymousItems) -{ - nsCOMPtr visual = do_QueryInterface(mContent); - NS_ASSERTION(visual, "huh? associated content not implementing nsIXTFVisualWrapperPrivate"); - return visual->CreateAnonymousContent(aPresContext, aAnonymousItems); -}