michael@0: /* -*- Mode: C++; 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 "nsISupports.idl" michael@0: michael@0: interface nsMenuBarX; michael@0: interface nsCocoaWindow; michael@0: interface nsIWidget; michael@0: michael@0: [ptr] native NSWindowPtr(NSWindow); michael@0: michael@0: // michael@0: // nsPIWidgetCocoa michael@0: // michael@0: // A private interface (unfrozen, private to the widget implementation) that michael@0: // gives us access to some extra features on a widget/window. michael@0: // michael@0: [uuid(f75ff69e-3a51-419e-bd29-042f804bc2ed)] michael@0: interface nsPIWidgetCocoa : nsISupports michael@0: { michael@0: void SendSetZLevelEvent(); michael@0: michael@0: // Find the displayed child sheet (if aShown) or a child sheet that michael@0: // wants to be displayed (if !aShown) michael@0: nsCocoaWindow GetChildSheet(in boolean aShown); michael@0: michael@0: // Get the parent widget (if any) StandardCreate() was called with. michael@0: nsIWidget GetRealParent(); michael@0: michael@0: // If the object implementing this interface is a sheet, this will return the michael@0: // native NSWindow it is attached to michael@0: readonly attribute NSWindowPtr sheetWindowParent; michael@0: michael@0: // True if window is a sheet michael@0: readonly attribute boolean isSheet; michael@0: michael@0: }; // nsPIWidgetCocoa