1 /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
2 /* This Source Code Form is subject to the terms of the Mozilla Public
3 * License, v. 2.0. If a copy of the MPL was not distributed with this
4 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
6 #include "nsISupports.h"
8 #define NS_IPLUGINWIDGET_IID \
9 { 0xEB9207E0, 0xD8F1, 0x44B9, \
10 { 0xB7, 0x52, 0xAF, 0x8E, 0x9F, 0x8E, 0xBD, 0xF7 } }
13 class nsIPluginInstanceOwner
;
16 * This is used by Mac only.
18 class NS_NO_VTABLE nsIPluginWidget
: public nsISupports
22 NS_DECLARE_STATIC_IID_ACCESSOR(NS_IPLUGINWIDGET_IID
)
24 NS_IMETHOD
GetPluginClipRect(nsIntRect
& outClipRect
, nsIntPoint
& outOrigin
, bool& outWidgetVisible
) = 0;
26 NS_IMETHOD
StartDrawPlugin(void) = 0;
28 NS_IMETHOD
EndDrawPlugin(void) = 0;
30 NS_IMETHOD
SetPluginInstanceOwner(nsIPluginInstanceOwner
* pluginInstanceOwner
) = 0;
32 NS_IMETHOD
SetPluginEventModel(int inEventModel
) = 0;
34 NS_IMETHOD
GetPluginEventModel(int* outEventModel
) = 0;
36 NS_IMETHOD
SetPluginDrawingModel(int inDrawingModel
) = 0;
38 NS_IMETHOD
StartComplexTextInputForCurrentEvent() = 0;
41 NS_DEFINE_STATIC_IID_ACCESSOR(nsIPluginWidget
, NS_IPLUGINWIDGET_IID
)