michael@0: /* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ michael@0: /* This Source Code Form is subject to the terms of the Mozilla Public michael@0: * License, v. 2.0. If a copy of the MPL was not distributed with this michael@0: * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ michael@0: michael@0: #include "nsIDOMElement.idl" michael@0: michael@0: interface nsIRDFCompositeDataSource; michael@0: interface nsIXULTemplateBuilder; michael@0: interface nsIRDFResource; michael@0: interface nsIControllers; michael@0: interface nsIBoxObject; michael@0: michael@0: michael@0: [scriptable, uuid(e89578c8-64ec-4047-984a-cce1b1735543)] michael@0: interface nsIDOMXULElement : nsIDOMElement michael@0: { michael@0: attribute DOMString className; michael@0: michael@0: // Layout properties michael@0: attribute DOMString align; michael@0: attribute DOMString dir; michael@0: attribute DOMString flex; michael@0: attribute DOMString flexGroup; michael@0: attribute DOMString ordinal; michael@0: attribute DOMString orient; michael@0: attribute DOMString pack; michael@0: michael@0: // Properties for hiding elements. michael@0: attribute boolean hidden; michael@0: attribute boolean collapsed; michael@0: michael@0: // Property for hooking up to broadcasters michael@0: attribute DOMString observes; michael@0: michael@0: // Properties for hooking up to popups michael@0: attribute DOMString menu; michael@0: attribute DOMString contextMenu; michael@0: attribute DOMString tooltip; michael@0: michael@0: // Width/height properties michael@0: attribute DOMString width; michael@0: attribute DOMString height; michael@0: attribute DOMString minWidth; michael@0: attribute DOMString minHeight; michael@0: attribute DOMString maxWidth; michael@0: attribute DOMString maxHeight; michael@0: michael@0: // Persistence michael@0: attribute DOMString persist; michael@0: michael@0: // Position properties for michael@0: // * popups - these are screen coordinates michael@0: // * other elements - these are client coordinates relative to parent stack. michael@0: attribute DOMString left; michael@0: attribute DOMString top; michael@0: michael@0: // XUL Template Builder michael@0: attribute DOMString datasources; michael@0: attribute DOMString ref; michael@0: michael@0: // Tooltip and status info michael@0: attribute DOMString tooltipText; michael@0: attribute DOMString statusText; michael@0: michael@0: attribute boolean allowEvents; michael@0: michael@0: readonly attribute nsIRDFCompositeDataSource database; michael@0: readonly attribute nsIXULTemplateBuilder builder; michael@0: readonly attribute nsIRDFResource resource; michael@0: readonly attribute nsIControllers controllers; michael@0: readonly attribute nsIBoxObject boxObject; michael@0: michael@0: void focus(); michael@0: void blur(); michael@0: void click(); michael@0: void doCommand(); michael@0: michael@0: nsIDOMNodeList getElementsByAttribute(in DOMString name, michael@0: in DOMString value); michael@0: michael@0: nsIDOMNodeList getElementsByAttributeNS(in DOMString namespaceURI, michael@0: in DOMString name, michael@0: in DOMString value); michael@0: };