/* * DO NOT EDIT. THIS FILE IS GENERATED FROM nsITransferable.idl */ #ifndef __gen_nsITransferable_h__ #define __gen_nsITransferable_h__ #ifndef __gen_nsISupports_h__ #include "nsISupports.h" #endif #ifndef __gen_nsISupportsArray_h__ #include "nsISupportsArray.h" #endif #ifndef __gen_nsIFormatConverter_h__ #include "nsIFormatConverter.h" #endif /* For IDL files that don't want to include root IDL files. */ #ifndef NS_NO_VTABLE #define NS_NO_VTABLE #endif // these probably shouldn't live here, but in some central repository shared // by the entire app. #define kTextMime "text/plain" #define kUnicodeMime "text/unicode" #define kHTMLMime "text/html" #define kAOLMailMime "AOLMAIL" #define kPNGImageMime "image/png" #define kJPEGImageMime "image/jpg" #define kGIFImageMime "image/gif" #define kFileMime "application/x-moz-file" #define kURLMime "text/x-moz-url" /* starting interface: nsITransferable */ #define NS_ITRANSFERABLE_IID_STR "8b5314bc-db01-11d2-96ce-0060b0fb9956" #define NS_ITRANSFERABLE_IID \ {0x8b5314bc, 0xdb01, 0x11d2, \ { 0x96, 0xce, 0x00, 0x60, 0xb0, 0xfb, 0x99, 0x56 }} class NS_NO_VTABLE nsITransferable : public nsISupports { public: NS_DEFINE_STATIC_IID_ACCESSOR(NS_ITRANSFERABLE_IID) /** * Computes a list of flavors (mime types as nsISupportsString) that the transferable * can export, either through intrinsic knowledge or output data converters. * * @param aDataFlavorList fills list with supported flavors. This is a copy of * the internal list, so it may be edited w/out affecting the transferable. */ /* nsISupportsArray flavorsTransferableCanExport (); */ NS_IMETHOD FlavorsTransferableCanExport(nsISupportsArray **_retval) = 0; /** * Given a flavor retrieve the data. * * @param aFlavor (in parameter) the flavor of data to retrieve * @param aData the data. Some variant of class in nsISupportsPrimitives.idl * @param aDataLen the length of the data */ /* void getTransferData (in string aFlavor, out nsISupports aData, out unsigned long aDataLen); */ NS_IMETHOD GetTransferData(const char *aFlavor, nsISupports **aData, PRUint32 *aDataLen) = 0; /** * Returns the best flavor in the transferable, given those that have * been added to it with |AddFlavor()| * * @param aFlavor (out parameter) the flavor of data that was retrieved * @param aData the data. Some variant of class in nsISupportsPrimitives.idl * @param aDataLen the length of the data */ /* void getAnyTransferData (out string aFlavor, out nsISupports aData, out unsigned long aDataLen); */ NS_IMETHOD GetAnyTransferData(char **aFlavor, nsISupports **aData, PRUint32 *aDataLen) = 0; /** * Returns true if the data is large. */ /* boolean isLargeDataSet (); */ NS_IMETHOD IsLargeDataSet(PRBool *_retval) = 0; /** * Computes a list of flavors (mime types as nsISupportsString) that the transferable can * accept into it, either through intrinsic knowledge or input data converters. * * @param outFlavorList fills list with supported flavors. This is a copy of * the internal list, so it may be edited w/out affecting the transferable. */ /* nsISupportsArray flavorsTransferableCanImport (); */ NS_IMETHOD FlavorsTransferableCanImport(nsISupportsArray **_retval) = 0; /** * Sets the data in the transferable with the specified flavor. The transferable * will maintain its own copy the data, so it is not necessary to do that beforehand. * * @param aFlavor the flavor of data that is being set * @param aData the data, some variant of class in nsISupportsPrimitives.idl * @param aDataLen the length of the data */ /* void setTransferData (in string aFlavor, in nsISupports aData, in unsigned long aDataLen); */ NS_IMETHOD SetTransferData(const char *aFlavor, nsISupports *aData, PRUint32 aDataLen) = 0; /** * Add the data flavor, indicating that this transferable * can receive this type of flavor * * @param aDataFlavor a new data flavor to handle */ /* void addDataFlavor (in string aDataFlavor); */ NS_IMETHOD AddDataFlavor(const char *aDataFlavor) = 0; /** * Removes the data flavor matching the given one (string compare) and the data * that goes along with it. * * @param aDataFlavor a data flavor to remove */ /* void removeDataFlavor (in string aDataFlavor); */ NS_IMETHOD RemoveDataFlavor(const char *aDataFlavor) = 0; /* attribute nsIFormatConverter converter; */ NS_IMETHOD GetConverter(nsIFormatConverter * *aConverter) = 0; NS_IMETHOD SetConverter(nsIFormatConverter * aConverter) = 0; }; /* Use this macro when declaring classes that implement this interface. */ #define NS_DECL_NSITRANSFERABLE \ NS_IMETHOD FlavorsTransferableCanExport(nsISupportsArray **_retval); \ NS_IMETHOD GetTransferData(const char *aFlavor, nsISupports **aData, PRUint32 *aDataLen); \ NS_IMETHOD GetAnyTransferData(char **aFlavor, nsISupports **aData, PRUint32 *aDataLen); \ NS_IMETHOD IsLargeDataSet(PRBool *_retval); \ NS_IMETHOD FlavorsTransferableCanImport(nsISupportsArray **_retval); \ NS_IMETHOD SetTransferData(const char *aFlavor, nsISupports *aData, PRUint32 aDataLen); \ NS_IMETHOD AddDataFlavor(const char *aDataFlavor); \ NS_IMETHOD RemoveDataFlavor(const char *aDataFlavor); \ NS_IMETHOD GetConverter(nsIFormatConverter * *aConverter); \ NS_IMETHOD SetConverter(nsIFormatConverter * aConverter); /* Use this macro to declare functions that forward the behavior of this interface to another object. */ #define NS_FORWARD_NSITRANSFERABLE(_to) \ NS_IMETHOD FlavorsTransferableCanExport(nsISupportsArray **_retval) { return _to FlavorsTransferableCanExport(_retval); } \ NS_IMETHOD GetTransferData(const char *aFlavor, nsISupports **aData, PRUint32 *aDataLen) { return _to GetTransferData(aFlavor, aData, aDataLen); } \ NS_IMETHOD GetAnyTransferData(char **aFlavor, nsISupports **aData, PRUint32 *aDataLen) { return _to GetAnyTransferData(aFlavor, aData, aDataLen); } \ NS_IMETHOD IsLargeDataSet(PRBool *_retval) { return _to IsLargeDataSet(_retval); } \ NS_IMETHOD FlavorsTransferableCanImport(nsISupportsArray **_retval) { return _to FlavorsTransferableCanImport(_retval); } \ NS_IMETHOD SetTransferData(const char *aFlavor, nsISupports *aData, PRUint32 aDataLen) { return _to SetTransferData(aFlavor, aData, aDataLen); } \ NS_IMETHOD AddDataFlavor(const char *aDataFlavor) { return _to AddDataFlavor(aDataFlavor); } \ NS_IMETHOD RemoveDataFlavor(const char *aDataFlavor) { return _to RemoveDataFlavor(aDataFlavor); } \ NS_IMETHOD GetConverter(nsIFormatConverter * *aConverter) { return _to GetConverter(aConverter); } \ NS_IMETHOD SetConverter(nsIFormatConverter * aConverter) { return _to SetConverter(aConverter); } /* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */ #define NS_FORWARD_SAFE_NSITRANSFERABLE(_to) \ NS_IMETHOD FlavorsTransferableCanExport(nsISupportsArray **_retval) { return !_to ? NS_ERROR_NULL_POINTER : _to->FlavorsTransferableCanExport(_retval); } \ NS_IMETHOD GetTransferData(const char *aFlavor, nsISupports **aData, PRUint32 *aDataLen) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetTransferData(aFlavor, aData, aDataLen); } \ NS_IMETHOD GetAnyTransferData(char **aFlavor, nsISupports **aData, PRUint32 *aDataLen) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetAnyTransferData(aFlavor, aData, aDataLen); } \ NS_IMETHOD IsLargeDataSet(PRBool *_retval) { return !_to ? NS_ERROR_NULL_POINTER : _to->IsLargeDataSet(_retval); } \ NS_IMETHOD FlavorsTransferableCanImport(nsISupportsArray **_retval) { return !_to ? NS_ERROR_NULL_POINTER : _to->FlavorsTransferableCanImport(_retval); } \ NS_IMETHOD SetTransferData(const char *aFlavor, nsISupports *aData, PRUint32 aDataLen) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetTransferData(aFlavor, aData, aDataLen); } \ NS_IMETHOD AddDataFlavor(const char *aDataFlavor) { return !_to ? NS_ERROR_NULL_POINTER : _to->AddDataFlavor(aDataFlavor); } \ NS_IMETHOD RemoveDataFlavor(const char *aDataFlavor) { return !_to ? NS_ERROR_NULL_POINTER : _to->RemoveDataFlavor(aDataFlavor); } \ NS_IMETHOD GetConverter(nsIFormatConverter * *aConverter) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetConverter(aConverter); } \ NS_IMETHOD SetConverter(nsIFormatConverter * aConverter) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetConverter(aConverter); } #if 0 /* Use the code below as a template for the implementation class for this interface. */ /* Header file */ class nsTransferable : public nsITransferable { public: NS_DECL_ISUPPORTS NS_DECL_NSITRANSFERABLE nsTransferable(); virtual ~nsTransferable(); /* additional members */ }; /* Implementation file */ NS_IMPL_ISUPPORTS1(nsTransferable, nsITransferable) nsTransferable::nsTransferable() { NS_INIT_ISUPPORTS(); /* member initializers and constructor code */ } nsTransferable::~nsTransferable() { /* destructor code */ } /* nsISupportsArray flavorsTransferableCanExport (); */ NS_IMETHODIMP nsTransferable::FlavorsTransferableCanExport(nsISupportsArray **_retval) { return NS_ERROR_NOT_IMPLEMENTED; } /* void getTransferData (in string aFlavor, out nsISupports aData, out unsigned long aDataLen); */ NS_IMETHODIMP nsTransferable::GetTransferData(const char *aFlavor, nsISupports **aData, PRUint32 *aDataLen) { return NS_ERROR_NOT_IMPLEMENTED; } /* void getAnyTransferData (out string aFlavor, out nsISupports aData, out unsigned long aDataLen); */ NS_IMETHODIMP nsTransferable::GetAnyTransferData(char **aFlavor, nsISupports **aData, PRUint32 *aDataLen) { return NS_ERROR_NOT_IMPLEMENTED; } /* boolean isLargeDataSet (); */ NS_IMETHODIMP nsTransferable::IsLargeDataSet(PRBool *_retval) { return NS_ERROR_NOT_IMPLEMENTED; } /* nsISupportsArray flavorsTransferableCanImport (); */ NS_IMETHODIMP nsTransferable::FlavorsTransferableCanImport(nsISupportsArray **_retval) { return NS_ERROR_NOT_IMPLEMENTED; } /* void setTransferData (in string aFlavor, in nsISupports aData, in unsigned long aDataLen); */ NS_IMETHODIMP nsTransferable::SetTransferData(const char *aFlavor, nsISupports *aData, PRUint32 aDataLen) { return NS_ERROR_NOT_IMPLEMENTED; } /* void addDataFlavor (in string aDataFlavor); */ NS_IMETHODIMP nsTransferable::AddDataFlavor(const char *aDataFlavor) { return NS_ERROR_NOT_IMPLEMENTED; } /* void removeDataFlavor (in string aDataFlavor); */ NS_IMETHODIMP nsTransferable::RemoveDataFlavor(const char *aDataFlavor) { return NS_ERROR_NOT_IMPLEMENTED; } /* attribute nsIFormatConverter converter; */ NS_IMETHODIMP nsTransferable::GetConverter(nsIFormatConverter * *aConverter) { return NS_ERROR_NOT_IMPLEMENTED; } NS_IMETHODIMP nsTransferable::SetConverter(nsIFormatConverter * aConverter) { return NS_ERROR_NOT_IMPLEMENTED; } /* End of implementation class template. */ #endif #endif /* __gen_nsITransferable_h__ */ .