25 #include <QtCore/QStringList>
26 #include <QtCore/QVariant>
27 #ifndef KDE_NO_DEPRECATED
90 KService( QDataStream& str,
int offset );
99 bool isApplication()
const;
106 #ifndef KDE_NO_DEPRECATED
107 KDE_DEPRECATED
QString type()
const;
133 bool terminal()
const;
143 QString terminalOptions()
const;
149 bool substituteUid()
const;
173 #ifndef KDE_NO_DEPRECATED
174 KDE_DEPRECATED
QString desktopEntryPath()
const;
183 QString desktopEntryName()
const;
218 DBusStartupType dbusStartupType()
const;
249 QString untranslatedGenericName()
const;
286 bool hasServiceType(
const QString& serviceTypePtr )
const;
306 #ifndef KDE_NO_DEPRECATED
307 KDE_DEPRECATED
bool hasMimeType(
const KServiceType* mimeTypePtr )
const;
316 bool hasMimeType(
const QString& mimeType )
const;
328 bool allowAsDefault()
const;
341 bool allowMultipleFiles()
const;
349 int initialPreference()
const;
358 bool noDisplay()
const;
370 bool showInKDE()
const;
416 void setMenuId(
const QString &menuId);
421 void setTerminal(
bool b);
426 void setTerminalOptions(
const QString &options);
438 #ifndef KDE_NO_DEPRECATED
439 static Ptr serviceByName(
const QString& _name );
451 static Ptr serviceByDesktopPath(
const QString& _path );
467 static Ptr serviceByDesktopName(
const QString& _name );
477 static Ptr serviceByMenuId(
const QString& _menuId );
488 static Ptr serviceByStorageId(
const QString& _storageId );
499 static List allServices();
516 static QString newServicePath(
bool showInMenu,
const QString &suggestedName,
534 const QVariantList &args = QVariantList(),
QString *error = 0)
const
536 return createInstance<T>(0, parent, args, error);
553 T *createInstance(QWidget *parentWidget,
QObject *parent,
554 const QVariantList &args = QVariantList(),
QString *error = 0)
const
559 T *o = factory->template create<T>(parentWidget, parent, pluginKeyword(), args);
561 *error =
i18n(
"The service '%1' does not provide an interface '%2' with keyword '%3'",
562 name(), QString::fromLatin1(T::staticMetaObject.className()), pluginKeyword());
567 pluginLoader.unload();
575 #ifndef KDE_NO_DEPRECATED
578 const QVariantList &args = QVariantList(),
QString *error = 0)
588 #ifndef KDE_NO_DEPRECATED
596 if ( library.isEmpty() ) {
602 return KLibLoader::createInstance<T>( library, parent, args, error );
621 #ifndef KDE_NO_DEPRECATED
622 template <
class T,
class ServiceIterator>
623 static KDE_DEPRECATED
T *createInstance(ServiceIterator begin, ServiceIterator end,
QObject *parent = 0,
624 const QVariantList &args = QVariantList(),
QString *error = 0)
626 for (; begin != end; ++begin) {
632 T *component = createInstance<T>(service, parent, args, error);
644 #ifndef KDE_NO_DEPRECATED
645 template <
class T,
class ServiceIterator>
646 static KDE_DEPRECATED
T *createInstance( ServiceIterator begin, ServiceIterator end,
651 for (; begin != end; ++begin ) {
656 T *component = createInstance<T>( service, parent, args, error );
667 friend class KMimeAssociations;
668 friend class KBuildServiceFactory;
674 : preference(-1), serviceType() {}
676 : preference(pref), serviceType(servType) {}
681 QVector<ServiceTypeAndPreference>& _k_accessServiceTypes();