sbINativeWindowManager.idl
Go to the documentation of this file.
1 /*
2 //
3 // BEGIN SONGBIRD GPL
4 //
5 // This file is part of the Songbird web player.
6 //
7 // Copyright(c) 2005-2008 POTI, Inc.
8 // http://songbirdnest.com
9 //
10 // This file may be licensed under the terms of of the
11 // GNU General Public License Version 2 (the "GPL").
12 //
13 // Software distributed under the License is distributed
14 // on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either
15 // express or implied. See the GPL for the specific language
16 // governing rights and limitations.
17 //
18 // You should have received a copy of the GPL along with this
19 // program. If not, go to http://www.gnu.org/licenses/gpl.html
20 // or write to the Free Software Foundation, Inc.,
21 // 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
22 //
23 // END SONGBIRD GPL
24 //
25  */
26 #include "nsISupports.idl"
27 #include "nsIDOMMouseEvent.idl"
28 
43 [scriptable, uuid(9646A45E-8E0C-49F9-901B-5FC6E4E522DB)]
45 {
46  /* constants representing resize directions */
47  const PRInt32 DIRECTION_NORTH_WEST = 7;
48  const PRInt32 DIRECTION_NORTH = 8;
49  const PRInt32 DIRECTION_NORTH_EAST = 9;
50  const PRInt32 DIRECTION_WEST = 4;
51  const PRInt32 DIRECTION_EAST = 6;
52  const PRInt32 DIRECTION_SOUTH_WEST = 1;
53  const PRInt32 DIRECTION_SOUTH = 2;
54  const PRInt32 DIRECTION_SOUTH_EAST = 3;
55 
56  /* \brief ask the window manager to begin a resize of @aWindow,
57  * based on the mouse event in @aEvent in the direction
58  * indicated by @aDirection
59  */
60  void beginResizeDrag(in nsISupports aWindow, in nsIDOMMouseEvent aEvent, in PRInt32 aDirection);
61 
62  /* \brief is beginResizeDrag() supported by this implementation? */
63  readonly attribute boolean supportsResizeDrag;
64 
65  /* \brief set's the minimum size of @aWindow in the window manager to
66  * @aMinimumWidth x @aMinimumHeight
67  */
68  void setMinimumWindowSize(in nsISupports aWindow, in PRInt32 aMinimumWidth, in PRInt32 aMinimumHeight);
69 
70  /* \brief set's the maximum size of @aWindow in the window manager to
71  * @aMaximumWidth x @aMaximumHeight
72  */
73  void setMaximumWindowSize(in nsISupports aWindow, in PRInt32 aMaximumWidth, in PRInt32 aMaximumHeight);
74 
75  /* \brief is setMinimumWindowSize() supported by this implementation? */
76  readonly attribute boolean supportsMinimumWindowSize;
77 
78  /* \brief is setMaximumWindowSize() supported by this implementation? */
79  readonly attribute boolean supportsMaximumWindowSize;
80 
81  /* \brief asks the window manager to keep @aWindow above all other windows */
82  void setOnTop(in nsISupports aWindow, in boolean aOnTop);
83 
84  /* \brief asks the window manager to enable shadowing on the window */
85  void setShadowing(in nsISupports aWindow, in boolean aShadowing);
86 
87  /* \brief is setOnTop() supported by this implementation? */
88  readonly attribute boolean supportsOnTop;
89 
90  /* \brief is setShadowing() supported by this implementation? */
91  readonly attribute boolean supportsShadowing;
92 };
void setShadowing(in nsISupports aWindow, in boolean aShadowing)
readonly attribute boolean supportsMinimumWindowSize
readonly attribute boolean supportsShadowing
void setMaximumWindowSize(in nsISupports aWindow, in PRInt32 aMaximumWidth, in PRInt32 aMaximumHeight)
void setOnTop(in nsISupports aWindow, in boolean aOnTop)
var uuid
interface to the operating system's window manager This Interfaces to allows JavaScript to talk to th...
function B
void setMinimumWindowSize(in nsISupports aWindow, in PRInt32 aMinimumWidth, in PRInt32 aMinimumHeight)
readonly attribute boolean supportsMaximumWindowSize
readonly attribute boolean supportsOnTop
readonly attribute boolean supportsResizeDrag
void beginResizeDrag(in nsISupports aWindow, in nsIDOMMouseEvent aEvent, in PRInt32 aDirection)