Click here to Skip to main content
Click here to Skip to main content
Add your own
alternative version

A simple Firefox Addon with XP-COM Component

, 2 Jul 2010 CPOL
Beginning a Firefox Addon with the power of XP-COM
CodeprojectXPCOM.zip
CodeprojectXPCOM
CodeprojectXPCOM.suo
CodeprojectXPCOM.xpt
Release
xpcom_codeproject.com.zip
xpcom@codeproject.com.xpi
/*
 * DO NOT EDIT.  THIS FILE IS GENERATED FROM CodeprojectXPCOM.idl
 */

#ifndef __gen_CodeprojectXPCOM_h__
#define __gen_CodeprojectXPCOM_h__


#ifndef __gen_nsISupports_h__
#include "nsISupports.h"
#endif

/* For IDL files that don't want to include root IDL files. */
#ifndef NS_NO_VTABLE
#define NS_NO_VTABLE
#endif

/* starting interface:    ICodeprojectXPCOM */
#define ICODEPROJECTXPCOM_IID_STR "f290269f-600d-431c-8d8e-c147b063417a"

#define ICODEPROJECTXPCOM_IID \
  {0xf290269f, 0x600d, 0x431c, \
    { 0x8d, 0x8e, 0xc1, 0x47, 0xb0, 0x63, 0x41, 0x7a }}

class NS_NO_VTABLE NS_SCRIPTABLE ICodeprojectXPCOM : public nsISupports {
 public: 

  NS_DECLARE_STATIC_IID_ACCESSOR(ICODEPROJECTXPCOM_IID)

  /* long Action (in long cmd, in DOMString sParam); */
  NS_SCRIPTABLE NS_IMETHOD Action(PRInt32 cmd, const nsAString & sParam, PRInt32 *_retval) = 0;

  /* readonly attribute AString AboutText; */
  NS_SCRIPTABLE NS_IMETHOD GetAboutText(nsAString & aAboutText) = 0;

  /* attribute AString Homepage; */
  NS_SCRIPTABLE NS_IMETHOD GetHomepage(nsAString & aHomepage) = 0;
  NS_SCRIPTABLE NS_IMETHOD SetHomepage(const nsAString & aHomepage) = 0;

};

  NS_DEFINE_STATIC_IID_ACCESSOR(ICodeprojectXPCOM, ICODEPROJECTXPCOM_IID)

/* Use this macro when declaring classes that implement this interface. */
#define NS_DECL_ICODEPROJECTXPCOM \
  NS_SCRIPTABLE NS_IMETHOD Action(PRInt32 cmd, const nsAString & sParam, PRInt32 *_retval); \
  NS_SCRIPTABLE NS_IMETHOD GetAboutText(nsAString & aAboutText); \
  NS_SCRIPTABLE NS_IMETHOD GetHomepage(nsAString & aHomepage); \
  NS_SCRIPTABLE NS_IMETHOD SetHomepage(const nsAString & aHomepage); 

/* Use this macro to declare functions that forward the behavior of this interface to another object. */
#define NS_FORWARD_ICODEPROJECTXPCOM(_to) \
  NS_SCRIPTABLE NS_IMETHOD Action(PRInt32 cmd, const nsAString & sParam, PRInt32 *_retval) { return _to Action(cmd, sParam, _retval); } \
  NS_SCRIPTABLE NS_IMETHOD GetAboutText(nsAString & aAboutText) { return _to GetAboutText(aAboutText); } \
  NS_SCRIPTABLE NS_IMETHOD GetHomepage(nsAString & aHomepage) { return _to GetHomepage(aHomepage); } \
  NS_SCRIPTABLE NS_IMETHOD SetHomepage(const nsAString & aHomepage) { return _to SetHomepage(aHomepage); } 

/* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
#define NS_FORWARD_SAFE_ICODEPROJECTXPCOM(_to) \
  NS_SCRIPTABLE NS_IMETHOD Action(PRInt32 cmd, const nsAString & sParam, PRInt32 *_retval) { return !_to ? NS_ERROR_NULL_POINTER : _to->Action(cmd, sParam, _retval); } \
  NS_SCRIPTABLE NS_IMETHOD GetAboutText(nsAString & aAboutText) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetAboutText(aAboutText); } \
  NS_SCRIPTABLE NS_IMETHOD GetHomepage(nsAString & aHomepage) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetHomepage(aHomepage); } \
  NS_SCRIPTABLE NS_IMETHOD SetHomepage(const nsAString & aHomepage) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetHomepage(aHomepage); } 

#if 0
/* Use the code below as a template for the implementation class for this interface. */

/* Header file */
class _MYCLASS_ : public ICodeprojectXPCOM
{
public:
  NS_DECL_ISUPPORTS
  NS_DECL_ICODEPROJECTXPCOM

  _MYCLASS_();

private:
  ~_MYCLASS_();

protected:
  /* additional members */
};

/* Implementation file */
NS_IMPL_ISUPPORTS1(_MYCLASS_, ICodeprojectXPCOM)

_MYCLASS_::_MYCLASS_()
{
  /* member initializers and constructor code */
}

_MYCLASS_::~_MYCLASS_()
{
  /* destructor code */
}

/* long Action (in long cmd, in DOMString sParam); */
NS_IMETHODIMP _MYCLASS_::Action(PRInt32 cmd, const nsAString & sParam, PRInt32 *_retval)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* readonly attribute AString AboutText; */
NS_IMETHODIMP _MYCLASS_::GetAboutText(nsAString & aAboutText)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute AString Homepage; */
NS_IMETHODIMP _MYCLASS_::GetHomepage(nsAString & aHomepage)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP _MYCLASS_::SetHomepage(const nsAString & aHomepage)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* End of implementation class template. */
#endif


#endif /* __gen_CodeprojectXPCOM_h__ */

By viewing downloads associated with this article you agree to the Terms of Service and the article's licence.

If a file you wish to view isn't highlighted, and is a text file (not binary), please let us know and we'll add colourisation support for it.

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

Share

About the Author

KarstenK
Software Developer
Germany Germany
I am living in germany and now living from programming for some Years. In my spare time I like sports as jogging, playing football (soccer) and basketball.
 
We must take care for our planet, because we and our family has no other. And everybody has to do something for it.

| Advertise | Privacy | Mobile
Web03 | 2.8.141022.1 | Last Updated 2 Jul 2010
Article Copyright 2009 by KarstenK
Everything else Copyright © CodeProject, 1999-2014
Terms of Service
Layout: fixed | fluid