/***************************************************************************
                            kde_KServiceTypeProfile.cpp -  description
                             -------------------
    begin                : Wed Feb  6 15:12:26 2002
    copyright            : (C) 2000-2001 Lost Highway Ltd. All rights reserved.
    email                : Lost_Highway@tipitina.demon.co.uk
    generated by         : duke@tipitina on Wed Feb  6 15:12:26 2002, using kalyptus 0.9.
 ***************************************************************************/

/***************************************************************************
 *                                                                         *
 *   This library is free software; you can redistribute it and/or modify  *
 *   it under the terms of the GNU Library General Public License as       *
 *   published by the Free Software Foundation; either version 2 of the    *
 *   License, or (at your option) any later version.                       *
 *                                                                         *
 ***************************************************************************/

extern "C" {
#include "kde_KServiceTypeProfile.h"
}

#include <kuserprofile.h>
#include <ktrader.h>

class KServiceTypeProfileBridge : public KServiceTypeProfile
{
public:
	~KServiceTypeProfileBridge() {}
	KServiceTypeProfileBridge(const QString& _servicetype, const QString& _genericServiceType) : KServiceTypeProfile(_servicetype, _genericServiceType) {}
	void protected_addService(const QString& _service, int _preference, bool _allow_as_default) {
		KServiceTypeProfile::addService(_service, _preference, _allow_as_default);
		return;
	}
};

void kde_del_KServiceTypeProfile( kde_KServiceTypeProfile* p ){
	delete (KServiceTypeProfileBridge*) p;
}
int kde_KServiceTypeProfile_preference( kde_KServiceTypeProfile* instPointer,qt_QString * _service){
	return (int) ((KServiceTypeProfileBridge*)instPointer)->preference((QString&)* (QString*)_service);
}
int kde_KServiceTypeProfile_allowAsDefault( kde_KServiceTypeProfile* instPointer,qt_QString * _service){
	return (int) ((KServiceTypeProfileBridge*)instPointer)->allowAsDefault((QString&)* (QString*)_service);
}
//kde_OfferList* kde_KServiceTypeProfile_offers( kde_KServiceTypeProfile* instPointer){
//	return (kde_OfferList*)new KTrader::OfferList(((KServiceTypeProfileBridge*)instPointer)->offers());
//}
//kde_KService_Ptr* kde_KServiceTypeProfile_preferredService( qt_QString * serviceType, qt_QString * genericServiceType){
//	return (kde_KService_Ptr*) KServiceTypeProfileBridge::preferredService((QString&)* (QString*)serviceType, (QString&)* (QString*)genericServiceType);
//}
kde_KServiceTypeProfile* kde_KServiceTypeProfile_serviceTypeProfile( qt_QString * servicetype, qt_QString * genericServiceType){
	return (kde_KServiceTypeProfile*) KServiceTypeProfileBridge::serviceTypeProfile((QString&)* (QString*)servicetype, (QString&)* (QString*)genericServiceType);
}
//kde_OfferList* kde_KServiceTypeProfile_offers1( qt_QString * servicetype, qt_QString * genericServiceType){
//	return (kde_OfferList*)new KTrader::OfferList(KServiceTypeProfileBridge::offers((QString&)* (QString*)servicetype, (QString&)* (QString*)genericServiceType));
//}
void kde_KServiceTypeProfile_clear( ){
	KServiceTypeProfileBridge::clear();
	return;
}
void kde_KServiceTypeProfile_setConfigurationMode( ){
	KServiceTypeProfileBridge::setConfigurationMode();
	return;
}
int kde_KServiceTypeProfile_configurationMode( ){
	return (int) KServiceTypeProfileBridge::configurationMode();
}
kde_KServiceTypeProfile * kde_new_KServiceTypeProfile(qt_QString * _servicetype, qt_QString * _genericServiceType){
	return (kde_KServiceTypeProfile *) new KServiceTypeProfileBridge((QString&)* (QString*)_servicetype, (QString&)* (QString*)_genericServiceType);
}
void kde_KServiceTypeProfile_addService( kde_KServiceTypeProfile* instPointer,qt_QString * _service, int _preference, int _allow_as_default){
	((KServiceTypeProfileBridge*)instPointer)->protected_addService((QString&)* (QString*)_service, (int)_preference, (bool)_allow_as_default);
	return;
}
