Mercurial > projects > dwt2
view org.eclipse.swt.gtk.linux.x86/src/org/eclipse/swt/internal/mozilla/nsISupports.d @ 53:7e78af7adab5
[swt lin]
author | Frank Benoit <benoit@tionex.de> |
---|---|
date | Fri, 27 Mar 2009 21:29:10 +0100 |
parents | f713da8bc051 |
children | 70388b0e6dad |
line wrap: on
line source
module org.eclipse.swt.internal.mozilla.nsISupports; import java.lang.all; import org.eclipse.swt.internal.mozilla.Common; import org.eclipse.swt.internal.mozilla.nsID; const char[] NS_ISUPPORTS_IID_STR = "00000000-0000-0000-c000-000000000046"; const nsIID NS_ISUPPORTS_IID= { 0x00000000, 0x0000, 0x0000, [ 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46 ] }; version(D_Version2){ mixin("alias const(nsIID) cnsIID;"); mixin("alias const(nsID) cnsID;"); } else { // D1 alias nsIID cnsIID; alias nsID cnsID; } interface IUnknown { static const char[] IID_STR = NS_ISUPPORTS_IID_STR; static const nsIID IID = NS_ISUPPORTS_IID; extern(System): nsresult QueryInterface( cnsIID* uuid, void **result); nsrefcnt AddRef(); nsrefcnt Release(); } // WHY WE USE COM's IUnknown for XPCOM: // // The IUnknown interface is special-cased in D and is specifically designed to be // compatible with MS COM. XPCOM's nsISupports interface is the exact equivalent // of IUnknown so we alias it here to take advantage of D's COM support. -JJR alias IUnknown nsISupports;