/* -*- mode: IDL; c-basic-offset: 4; indent-tabs-mode: nil; -*- */ #include "nsISupports.idl" #include "nsIDOMWindow.idl" #include "compzillaIControlObserver.idl" [scriptable, uuid(fb192a55-b1de-4b23-a5b2-a5adf8a4e446)] interface compzillaIControl : nsISupports { boolean HasWindowManager (in nsIDOMWindow window); void RegisterWindowManager (in nsIDOMWindow window); // @property is just an atom name, which is ascii. PRUint32 InternAtom (in string property); void SendConfigureNotify (in PRUint32 xid, in PRUint32 x, in PRUint32 y, in PRUint32 width, in PRUint32 height, in PRUint32 border, in boolean overrideRedirect); void Configure (in PRUint32 xid, in PRUint32 x, in PRUint32 y, in PRUint32 width, in PRUint32 height, in PRUint32 border); void Kill (in PRUint32 xid); void MoveToTop (in PRUint32 xid); void MoveToBottom (in PRUint32 xid); void Map (in PRUint32 xid); void Unmap (in PRUint32 xid); void SetRootWindowProperty (in PRInt32 prop, in PRInt32 type, in PRUint32 count, [array, size_is (count)] in PRUInt32 valueArray); void DeleteRootWindowProperty (in PRInt32 prop); void addObserver (in compzillaIControlObserver observer); void removeObserver (in compzillaIControlObserver observer); }; %{ C++ #define COMPZILLA_CONTROL_CID \ { 0xfb192a55, 0xb1de, 0x4b23, \ { 0xa5, 0xb2, 0xa5, 0xad, 0xf8, 0xa4, 0xe4, 0x46 } } #define COMPZILLA_CONTROL_CONTRACTID "@pyrodesktop.org/compzillaService" %}