//This is file has been generated by xmltokross, you should not edit this file but the files used to generate it.

#include <QtCore/QObject>
#include <QtCore/QVariant>
#include <kross/core/manager.h>
#include <kross/core/wrapperinterface.h>
#include <interfaces/contextmenuextension.h>

class KrossKDevelopContextMenuExtension : public QObject, public Kross::WrapperInterface
{
	Q_OBJECT
	public:
		KrossKDevelopContextMenuExtension(KDevelop::ContextMenuExtension* obj, QObject* parent=0) : QObject(parent), wrapped(obj)		{ setObjectName("KDevelop::ContextMenuExtension"); }
		void* wrappedObject() const { return wrapped; }

		Q_PROPERTY(const QString  FileGroup READ getFileGroup SCRIPTABLE true)
		Q_SCRIPTABLE const QString  getFileGroup() const { return wrapped->FileGroup; }
		Q_PROPERTY(const QString  RefactorGroup READ getRefactorGroup SCRIPTABLE true)
		Q_SCRIPTABLE const QString  getRefactorGroup() const { return wrapped->RefactorGroup; }
		Q_PROPERTY(const QString  BuildGroup READ getBuildGroup SCRIPTABLE true)
		Q_SCRIPTABLE const QString  getBuildGroup() const { return wrapped->BuildGroup; }
		Q_PROPERTY(const QString  RunGroup READ getRunGroup SCRIPTABLE true)
		Q_SCRIPTABLE const QString  getRunGroup() const { return wrapped->RunGroup; }
		Q_PROPERTY(const QString  DebugGroup READ getDebugGroup SCRIPTABLE true)
		Q_SCRIPTABLE const QString  getDebugGroup() const { return wrapped->DebugGroup; }
		Q_PROPERTY(const QString  EditGroup READ getEditGroup SCRIPTABLE true)
		Q_SCRIPTABLE const QString  getEditGroup() const { return wrapped->EditGroup; }
		Q_PROPERTY(const QString  VcsGroup READ getVcsGroup SCRIPTABLE true)
		Q_SCRIPTABLE const QString  getVcsGroup() const { return wrapped->VcsGroup; }
		Q_PROPERTY(const QString  ProjectGroup READ getProjectGroup SCRIPTABLE true)
		Q_SCRIPTABLE const QString  getProjectGroup() const { return wrapped->ProjectGroup; }
		Q_PROPERTY(const QString  ExtensionGroup READ getExtensionGroup SCRIPTABLE true)
		Q_SCRIPTABLE const QString  getExtensionGroup() const { return wrapped->ExtensionGroup; }
		Q_SCRIPTABLE KDevelop::ContextMenuExtension operator=(const KDevelop::ContextMenuExtension& x0) { return wrapped->operator=(x0); }
		Q_SCRIPTABLE void addAction(const QString& x0, QAction* x1) { wrapped->addAction(x0, x1); }
		Q_SCRIPTABLE QList< QAction* > actions(const QString& x0) const { return wrapped->actions(x0); }
		Q_SCRIPTABLE void populateMenu(QMenu* x0, const QList< KDevelop::ContextMenuExtension >& x1) { wrapped->populateMenu(x0, x1); }
	private:
		KDevelop::ContextMenuExtension* wrapped;
};

bool krosscontextmenuextension_registerHandler(const QByteArray& name, Kross::MetaTypeHandler::FunctionPtr* handler)
{ Kross::Manager::self().registerMetaTypeHandler(name, handler); return false; }

namespace Handlers
{
QVariant _kDevelopContextMenuExtensionHandler(void* type)
{
	if(!type) return QVariant();
	KDevelop::ContextMenuExtension* t=static_cast<KDevelop::ContextMenuExtension*>(type);
	Q_ASSERT(dynamic_cast<KDevelop::ContextMenuExtension*>(t));
	return qVariantFromValue((QObject*) new KrossKDevelopContextMenuExtension(t, 0));
}
bool b_KDevelopContextMenuExtension1=krosscontextmenuextension_registerHandler("ContextMenuExtension*", _kDevelopContextMenuExtensionHandler);
bool b_KDevelopContextMenuExtension=krosscontextmenuextension_registerHandler("KDevelop::ContextMenuExtension*", _kDevelopContextMenuExtensionHandler);
QVariant kDevelopContextMenuExtensionHandler(KDevelop::ContextMenuExtension* type){ return _kDevelopContextMenuExtensionHandler(type); }
QVariant kDevelopContextMenuExtensionHandler(const KDevelop::ContextMenuExtension* type) { return _kDevelopContextMenuExtensionHandler((void*) type); }

}
#include "krosscontextmenuextension.moc"
